.ops-app{display:grid;grid-template-columns:258px minmax(0,1fr);min-height:100dvh;background:#f2f5f5;font-size:14px}.ops-sidebar{background:#102c39;color:#c0d0d5;padding:25px 18px;position:sticky;top:0;height:100dvh;overflow-y:auto}.ops-brand{display:flex;gap:12px;align-items:center;padding:6px 8px 28px;color:white}.ops-brand img{width:49px;height:49px;object-fit:contain;border-radius:50%;background:#f6f4ee;padding:3px}.ops-brand strong{display:block;font-size:17px;letter-spacing:-.03em}.ops-brand span{display:block;font-size:8px;letter-spacing:.1em;color:#8faeb9;margin-top:5px}.ops-nav-label{font-size:10px;color:#7d9da8;padding:12px 14px;display:block}.ops-sidebar nav{display:flex;flex-direction:column;gap:4px}.ops-sidebar nav a{display:flex;align-items:center;gap:13px;padding:12px 14px;border-radius:8px;font-size:12px;transition:background .2s,color .2s}.ops-sidebar nav a:hover{background:#1a3e4d;color:white}.ops-sidebar nav a[aria-current=page]{background:#187683;color:white}.ops-sidebar nav .icon{width:19px;height:19px;flex-shrink:0}.ops-new{font-size:8px;border:1px solid #7dbec4;padding:2px 5px;border-radius:4px;margin-inline-start:auto}.ops-sidebar-bottom{border-top:1px solid #294553;margin-top:25px;padding:20px 12px;display:flex;flex-direction:column;gap:17px;font-size:11px}.ops-sidebar-bottom>a{display:flex;gap:12px;align-items:center}.ops-sidebar-bottom button{background:none;border:0;color:inherit;text-align:start;padding:0}.ops-workspace{min-width:0}.ops-header{display:flex;align-items:center;justify-content:space-between;padding:23px 35px;background:white;border-bottom:1px solid #dfe6e8;gap:20px}.ops-kicker{font-size:9px;letter-spacing:.08em;color:#7f9299}.ops-header h1{font-size:23px;margin-top:5px;font-weight:650}.ops-header-actions{display:flex;align-items:center;gap:15px}.ops-header-actions select{border:1px solid #dbe3e5;background:#f9fbfb;border-radius:7px;padding:9px 11px;font-size:11px;color:#244657}.ops-avatar{background:#e6f1f0;border:1px solid #d7e8e7;color:#217782;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700}.ops-demo-badge{background:#e4f2ef;color:#27776b;padding:6px 10px;border-radius:20px;font-size:10px;white-space:nowrap}.ops-language{font-size:11px;border-inline-start:1px solid #dee6e6;padding-inline-start:15px}.ops-preview-note{display:flex;align-items:center;gap:11px;padding:13px 35px;background:#e9f3f3;border-bottom:1px solid #d4e7e7;font-size:10px;color:#4f777d}.ops-preview-note p{flex:1;line-height:1.8}.ops-preview-note button{background:none;border:0;color:#247482;white-space:nowrap;font-size:10px;text-decoration:underline}.ops-live-dot{width:7px;height:7px;border-radius:50%;background:#3ca694;flex-shrink:0}.ops-content{padding:32px 35px 50px;min-height:75dvh}.ops-section-title{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:25px}.ops-section-title h2{font-size:25px;font-weight:650;line-height:1.5}.ops-section-title p{font-size:12px;color:#81939a;margin-top:8px;max-width:730px}.ops-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:25px}.ops-kpi{background:white;border:1px solid #dfe7e8;border-radius:12px;padding:22px;box-shadow:0 3px 5px #26384502;min-width:0}.ops-kpi-top{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#667f89;margin-bottom:17px}.ops-kpi-top .icon{color:#1c7e8b;background:#eaf3f2;width:30px;height:30px;padding:5px;border-radius:8px;flex-shrink:0}.ops-kpi strong{font-size:28px;letter-spacing:-.025em;color:#153746;font-weight:650;line-height:1.3;display:block;overflow-wrap:anywhere}.ops-kpi p{font-size:10px;color:#8b9ea5;margin-top:12px}.ops-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:23px;margin-bottom:25px}.ops-panel{background:white;border:1px solid #dfe7e8;border-radius:12px;padding:25px;min-width:0;margin-bottom:23px}.ops-two-columns .ops-panel{margin-bottom:0}.ops-panel h3{font-size:16px;font-weight:650;line-height:1.5}.ops-panel-heading{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:24px}.ops-panel-heading>a{font-size:10px;color:#248390;white-space:nowrap}.ops-bars{display:flex;flex-direction:column;gap:22px;margin-top:28px}.ops-bars .row{font-size:11px;gap:15px}.ops-bars .row>span{color:#6f858e}.ops-bars strong{font-size:12px;color:#234350}.ops-bar-track{height:9px;background:#edf3f3;border-radius:20px;overflow:hidden;margin-top:10px}.ops-bar-track span{display:block;height:100%;background:linear-gradient(90deg,#1c7687,#65b9b8);border-radius:20px;min-width:0}.ops-priority{display:flex;justify-content:space-between;gap:17px;align-items:center;border-bottom:1px solid #e6eded;padding-block:17px}.ops-priority:last-child{border-bottom:0}.ops-priority strong{display:block;font-size:12px;margin-top:10px;font-weight:600}.ops-priority>div>span:last-child{display:block;font-size:10px;color:#81969f;margin-top:7px}.ops-table-wrap{overflow:auto;max-width:100%;border:1px solid #e0e8e9;border-radius:10px;background:white}.ops-panel .ops-table-wrap{border:0;border-radius:0}.ops-table{border-collapse:collapse;text-align:start;width:100%;min-width:650px;font-size:11px;white-space:normal}.ops-table th,.ops-table td{text-align:start;padding:16px 17px;border-bottom:1px solid #e8eeee;vertical-align:middle}.ops-table th{font-size:10px;background:#f8fafa;color:#81969f;font-weight:500;white-space:nowrap}.ops-table td{color:#41616f;line-height:1.7}.ops-table td strong{font-weight:600;color:#173c4d}.ops-table td small{font-size:9px;color:#859ba3;display:block;margin-top:5px}.ops-table tbody tr:hover{background:#f9fbfb}.ops-order-link{background:none;border:0;padding:0;font-size:10px;color:#268694;font-weight:600;white-space:nowrap}.ops-status{display:inline-flex;align-items:center;padding:4px 10px;border-radius:5px;font-size:9px;white-space:nowrap;background:#edf1f3;color:#597781}.ops-status:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor;display:block;margin-inline-end:6px}.status-active,.status-done,.status-delivered{color:#2b8a6e;background:#e8f5ee}.status-new,.status-todo,.status-scheduled{color:#4086a9;background:#e9f2f8}.status-confirmed,.status-progress,.status-processing{color:#8567ba;background:#f0ebf9}.status-shipped,.status-low{color:#278c9a;background:#e6f4f6}.status-high,.status-cancelled,.status-blocked{color:#b26752;background:#f9eee8}.status-medium,.status-maintenance,.status-leave{color:#a28636;background:#f8f3e3}.status-inactive{color:#86969a;background:#edf1f3}.ops-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #177888;background:#177888;color:white;font-size:11px;padding:10px 15px;border-radius:7px;min-height:40px;white-space:nowrap;transition:background .2s,transform .2s}.ops-button:hover{background:#125868;transform:translateY(-1px)}.ops-button.secondary{border-color:#dbe5e7;background:white;color:#446570}.ops-button.secondary:hover{background:#edf5f4}.ops-table .ops-button{font-size:9px;padding:5px 9px;min-height:29px;margin:3px}.ops-delete{background:none;border:0;padding:5px;color:#9a7772}.ops-delete .icon{width:16px;height:16px}.ops-toolbar{display:flex;justify-content:space-between;gap:18px;margin-block:20px}.ops-search{display:flex;align-items:center;gap:12px;border:1px solid #dae4e6;border-radius:8px;padding:10px 14px;background:white;min-width:220px;max-width:400px;flex:1}.ops-search input{border:0;outline:0;background:none;font-size:11px;min-width:0;width:100%;color:#315668}.ops-search .icon{width:17px;height:17px;color:#899da5}.ops-select{border:1px solid #dbe5e7;background:white;padding:10px;font-size:10px;color:#4c707d;border-radius:7px;max-width:190px}.ops-inline-stats{display:flex;gap:25px;margin-block:18px;font-size:11px;color:#8297a0}.ops-inline-stats strong{color:#245567;margin-inline-start:6px}.ops-branch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.ops-branch-card{background:white;border:1px solid #dfe7e8;border-radius:12px;padding:25px;min-width:0}.ops-branch-icon{display:grid;place-items:center;width:45px;height:45px;background:#e9f4f3;color:#2a8a91;border-radius:10px}.ops-branch-card h3{font-size:19px;font-weight:650;line-height:1.6;margin-top:24px}.ops-branch-card>p{font-size:11px;color:#7a949d;margin-top:10px}.ops-branch-numbers{display:grid;grid-template-columns:repeat(3,1fr);padding-block:25px;margin-top:20px;border-top:1px solid #e4eded;gap:10px}.ops-branch-numbers strong{display:block;font-size:22px;color:#285363}.ops-branch-numbers span{display:block;font-size:9px;color:#89a0a7;margin-top:6px}.ops-kanban{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.ops-kanban>section{background:#e8eff0;padding:15px;border-radius:10px;min-height:380px}.ops-kanban>section>h3{font-size:12px;display:flex;align-items:center;gap:8px;margin-bottom:20px}.ops-kanban>section>h3>span:last-child{margin-inline-start:auto;border:1px solid #cedcde;padding:2px 7px;border-radius:5px;color:#6f8c97;font-size:10px}.ops-kanban-dot{width:7px;height:7px;display:block;border-radius:50%;background:currentColor}.ops-kanban article{padding:18px;background:white;border:1px solid #dce7e9;border-radius:9px;box-shadow:0 3px 8px #102c3904;margin-bottom:14px}.ops-kanban article .icon-button{width:25px;height:25px}.ops-kanban article .icon-button .icon{width:15px;height:15px;color:#7896a2}.ops-kanban h4{font-size:13px;line-height:1.7;margin-block:15px 12px;font-weight:600}.ops-kanban p{font-size:10px;color:#8298a1}.ops-task-person{display:flex;align-items:center;gap:8px;margin-top:20px;font-size:9px;color:#5d7c88}.ops-small-avatar{width:25px;height:25px;border-radius:50%;background:#e2efed;color:#2b8981;display:grid;place-items:center;flex-shrink:0}.ops-task-date{font-size:9px;color:#95a7ad;display:block;margin-block:13px}.ops-kanban select{width:100%;padding:8px;font-size:10px;background:#f6fafa;color:#628592;border:1px solid #dfe8e8;border-radius:5px}.ops-product-cell{display:flex;gap:13px;align-items:center;min-width:180px}.ops-product-cell img{width:52px;height:52px;object-fit:contain;background:#f0f5f2;border-radius:6px;padding:5px}.ops-table-link{font-size:9px;text-decoration:underline;color:#338d96;margin-inline:8px}.ops-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ops-field{display:flex;flex-direction:column;gap:9px;min-width:0}.ops-field.wide{grid-column:1/-1}.ops-field label{font-size:11px;color:#617f8c}.ops-field input,.ops-field textarea,.ops-field select{border:1px solid #d8e3e6;border-radius:7px;padding:12px;background:#fafcfc;color:#274f5f;font-size:12px;width:100%;min-width:0}.ops-field input[type=color]{height:45px;padding:6px}.ops-field textarea{min-height:95px;resize:vertical}.ops-cms{max-width:1100px}.ops-cms .ops-panel{padding:30px}.ops-section-chip{background:#eff5f4;border-radius:7px;font-size:10px;color:#659299;padding:6px 10px}.ops-cms-brand{display:grid;grid-template-columns:100px 1fr;gap:30px;align-items:start;margin-bottom:24px}.ops-cms-brand img{width:100px;height:100px;object-fit:contain;background:#f2f6f3;border:1px solid #dce7e4;padding:6px;border-radius:10px}.ops-upload{display:flex;flex-direction:column;gap:11px;background:#f4f8f7;border:1px dashed #bccfce;border-radius:8px;padding:17px;font-size:10px;color:#698b91;margin-top:18px}.ops-upload input{max-width:100%;font-size:10px}.ops-cms-save{position:sticky;bottom:12px;display:flex;align-items:center;gap:25px;justify-content:space-between;background:#102c39;color:#d8e8ed;border-radius:10px;padding:18px 23px;box-shadow:0 12px 30px #102c3930;z-index:15}.ops-cms-save p{font-size:10px;max-width:650px}.ops-cms-save .ops-button{background:#4aa0a7;flex-shrink:0}.ops-role-note{font-size:11px;padding:15px;background:#edf5f4;border-inline-start:3px solid #3b9198;color:#517c83;border-radius:5px;margin-bottom:24px}.ops-form-error{font-size:12px;color:#b36353;margin-top:17px}.ops-order-total{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-block:25px;padding:20px;background:#edf5f4;font-size:12px}.ops-order-total strong{font-size:24px;color:#186c79}.ops-order-detail>p{font-size:12px;color:#718f9a;margin-block:20px}.ops-notification{position:fixed;bottom:30px;inset-inline-end:30px;background:#173f4d;color:white;border-radius:10px;padding:17px 25px;box-shadow:0 10px 30px #153f4d30;font-size:12px;z-index:120;max-width:calc(100vw - 40px)}.ops-dialog{width:780px}.ops-dialog .dialog-head{background:#f9fbfb}.ops-dialog .dialog-body{background:white;padding:30px}.ops-footer{padding:20px 35px;display:flex;justify-content:space-between;gap:20px;font-size:9px;color:#96a9af;border-top:1px solid #dae5e7}.ops-mobile-menu{display:none}.ops-menu-backdrop{position:fixed;inset:0;z-index:80;background:#06192280;border:0}.ops-empty{padding:35px;text-align:center;color:#8aa0a8}html[lang=ar] .ops-app{font-size:15px}html[lang=ar] .ops-sidebar nav a{font-size:12px}html[lang=ar] .ops-kicker,html[lang=ar] .ops-nav-label{letter-spacing:0}
@media(max-width:1250px){.ops-app{grid-template-columns:220px 1fr}.ops-content{padding:25px}.ops-header{padding:20px 25px}.ops-preview-note{padding:12px 25px}.ops-kpi-grid{grid-template-columns:repeat(2,1fr)}.ops-branch-grid{grid-template-columns:repeat(2,1fr)}.ops-kanban{grid-template-columns:repeat(2,1fr)}.ops-demo-badge{display:none}.ops-two-columns{gap:18px}.ops-panel{padding:20px}}
@media(max-width:900px){.ops-app{grid-template-columns:1fr}.ops-sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:260px;z-index:90;transform:translateX(-110%);transition:transform .2s}.ops-sidebar.open{transform:translateX(0)}html[dir=rtl] .ops-sidebar{transform:translateX(110%)}html[dir=rtl] .ops-sidebar.open{transform:translateX(0)}.ops-mobile-menu{display:inline-flex}.ops-content{padding:25px}.ops-header h1{font-size:21px}.ops-header{padding:17px 20px}.ops-kicker{font-size:8px}.ops-two-columns{gap:20px}.ops-header-actions{gap:10px}.ops-preview-note{padding:12px 20px}}
@media(max-width:600px){.ops-content{padding:22px 15px 40px}.ops-header{padding:16px 12px;gap:10px}.ops-header>.actions{gap:6px}.ops-header h1{font-size:18px}.ops-header-actions{gap:8px}.ops-avatar{display:none}.ops-header-actions select{max-width:103px;padding:8px 6px;font-size:9px}.ops-language{padding-inline-start:8px;font-size:10px}.ops-kicker{font-size:7px;letter-spacing:0}.ops-mobile-menu{width:30px;height:30px}.ops-preview-note{padding:11px 15px;align-items:start;font-size:9px}.ops-preview-note button{font-size:9px}.ops-preview-note .ops-live-dot{margin-top:6px}.ops-section-title{flex-direction:column;align-items:start;gap:16px}.ops-section-title h2{font-size:23px}.ops-section-title p{font-size:11px}.ops-kpi-grid{gap:12px}.ops-kpi{padding:16px 13px}.ops-kpi strong{font-size:22px}.ops-kpi-top{font-size:10px;margin-bottom:14px;gap:8px}.ops-kpi-top .icon{width:25px;height:25px;padding:5px}.ops-kpi p{font-size:9px}.ops-two-columns{grid-template-columns:1fr}.ops-panel{padding:18px}.ops-panel-heading{gap:12px}.ops-panel h3{font-size:15px}.ops-panel-heading>a{font-size:9px}.ops-toolbar{flex-direction:column}.ops-search{max-width:none;min-width:0}.ops-toolbar>.actions{gap:8px}.ops-branch-grid{grid-template-columns:1fr}.ops-kanban{grid-template-columns:1fr}.ops-kanban>section{min-height:150px}.ops-form-grid{grid-template-columns:1fr;gap:17px}.ops-field.wide{grid-column:auto}.ops-cms .ops-panel{padding:20px}.ops-cms-brand{grid-template-columns:65px 1fr;gap:18px}.ops-cms-brand img{width:65px;height:65px}.ops-cms-save{bottom:8px;padding:15px;gap:14px;flex-direction:column;align-items:start}.ops-cms-save p{font-size:9px}.ops-dialog .dialog-body{padding:20px}.ops-footer{padding:20px 15px;flex-direction:column;gap:8px}.ops-branch-numbers strong{font-size:23px}.ops-inline-stats{font-size:10px;gap:20px;flex-wrap:wrap}.ops-order-total strong{font-size:21px}.ops-notification{bottom:18px;inset-inline:18px;max-width:none;font-size:11px}.ops-table{font-size:10px}.ops-table th,.ops-table td{padding:12px}.ops-select{max-width:170px}.ops-button{font-size:10px;padding:10px 12px}}
@media print{.ops-app{display:block;background:white}.ops-sidebar,.ops-header,.ops-preview-note,.ops-toolbar,.ops-cms-save,.ops-notification,.ops-footer,.ops-section-title>.actions{display:none!important}.ops-content{padding:0}.ops-two-columns,.ops-kpi-grid{display:block}.ops-panel,.ops-kpi{break-inside:avoid;border:1px solid #ddd;box-shadow:none}.ops-table-wrap{overflow:visible}.ops-table{min-width:0;font-size:9pt}.ops-table .ops-button,.ops-delete{display:none}.ops-branch-grid{grid-template-columns:1fr 1fr}.ops-kanban{grid-template-columns:1fr 1fr}}

.ops-line-chart{margin-top:25px}.ops-line-chart svg{display:block;width:100%;height:180px}.ops-line-chart>div{display:flex;justify-content:space-between;font-size:9px;color:#89a1ab;margin-top:13px}.ops-chart-legend{display:flex;gap:24px;font-size:10px;margin-top:24px;color:#278e90}.ops-chart-legend span:last-child{color:#b59861}.ops-flow{margin-top:18px}.ops-flow>div{display:flex;align-items:center;gap:15px;padding:12px;font-size:12px;position:relative}.ops-flow b,.ops-approval-flow b{background:#e5f2f0;color:#3b9695;display:grid;place-items:center;width:35px;height:35px;border-radius:9px;font-size:12px}.ops-flow small{margin-inline-start:auto;color:#85a7ae}.ops-delivery-grid,.ops-document-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ops-delivery-card>p,.ops-document>p{font-size:11px;color:#8299a4;margin-block:12px 20px}.ops-route-line{display:flex;align-items:center;gap:12px;color:#3f9298;margin:25px 0}.ops-route-line>div{border-top:2px dashed #c2d7d8;flex:1}.ops-document-type{font-weight:700;font-size:13px;display:grid;place-items:center;width:48px;height:55px;background:#eef5f1;color:#4e9692;border:1px solid #d9e9e4;border-radius:7px;margin-bottom:20px}.ops-document .ops-panel-heading{margin:25px 0 0}.ops-approval-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:30px}.ops-approval-flow>div{display:flex;align-items:center;gap:12px;font-size:11px}.ops-permission{color:#2d9a89}.ops-demo-paper{border:1px solid #e1e9e9;border-radius:10px;padding:30px}.ops-demo-paper h3{font-size:27px;margin-top:30px}.ops-demo-paper>p{font-size:12px;line-height:1.9;color:#7996a1;margin-top:20px}.ops-demo-paper .ops-panel-heading>span{font-size:9px;letter-spacing:1px;color:#718d98}.ops-sidebar{overflow-y:auto}.ops-sidebar nav a{padding-block:11px}@media(max-width:1200px){.ops-delivery-grid,.ops-document-grid{grid-template-columns:repeat(2,1fr)}.ops-approval-flow{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.ops-delivery-grid,.ops-document-grid,.ops-approval-flow{grid-template-columns:1fr}.ops-demo-paper{padding:18px}.ops-header h1{max-width:145px}.ops-flow>div{font-size:11px}}

html[lang=ar] .ops-table{font-size:12px}html[lang=ar] .ops-table th{font-size:11px}html[lang=ar] .ops-kpi p{font-size:11px}html[lang=ar] .ops-bars{font-size:12px}html[lang=ar] .ops-preview-note{font-size:11px}.ops-sidebar nav a[aria-current=page]{box-shadow:inset 3px 0 #78ccc8}.ops-content{animation:ops-enter .3s ease}@keyframes ops-enter{from{opacity:.5;transform:translateY(7px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.ops-content{animation:none}}@media(max-width:600px){html[lang=ar] .ops-preview-note{font-size:9px}html[lang=ar] .ops-kpi p{font-size:9px}}
/* The navigation opens as a drawer on every screen and starts closed. */
.ops-app { grid-template-columns: minmax(0, 1fr); }
.ops-sidebar {
  position: fixed;
  inset-block: 0;
  inset-inline-start: 0;
  width: min(300px, calc(100vw - 32px));
  height: 100dvh;
  z-index: 90;
  visibility: hidden;
  transform: translateX(-105%);
  transition: transform .25s ease, visibility .25s;
  box-shadow: 14px 0 50px #03283f25;
}
html[dir=rtl] .ops-sidebar { transform: translateX(105%); }
.ops-sidebar.open,
html[dir=rtl] .ops-sidebar.open { visibility: visible; transform: none; }
.ops-sidebar-close { position: absolute; top: 14px; inset-inline-end: 12px; color: #c6eaff; }
.ops-sidebar-close:hover { background: #ffffff14; }
.ops-sidebar .ops-brand { padding-inline-end: 24px; }
.ops-sidebar .ops-brand strong { font-size: 16px; }
.ops-mobile-menu { display: inline-flex; background: #eef7fc; border-radius: 10px; color: #0875a7; }
.ops-menu-backdrop { background: #03283f66; backdrop-filter: blur(3px); }
body.ops-drawer-open { overflow: hidden; }
.ops-header { min-height: 100px; }
.ops-header > .actions { min-width: 0; }
.ops-header h1 { line-height: 1.4; }
/* Analytics cards share the website's ocean blues and Cairo typography. */
.ops-analytics { margin-block: 28px; }
.ops-analytics-heading { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.ops-analytics-heading h3 { font-size: 21px; font-weight: 750; margin-top: 7px; }
.ops-chart-filters { display: flex; align-items: center; gap: 12px; }
.ops-chart-filters label { display: flex; flex-direction: column; gap: 7px; color: #6a8290; font-size: 10px; }
.ops-chart-filters select { background: #fff; color: #234f68; border: 1px solid #d8e7ef; border-radius: 9px; padding: 9px 12px; font-size: 12px; max-width: 235px; }
.ops-analytics-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) minmax(0, 1.1fr); gap: 20px; }
.ops-chart-card { position: relative; margin-bottom: 0; border-radius: 17px; padding: 23px; box-shadow: 0 7px 24px #063a5906; }
.ops-chart-heading { display: flex; justify-content: space-between; align-items: start; gap: 12px; }
.ops-chart-heading h3 { font-size: 15px; line-height: 1.5; font-weight: 750; }
.ops-chart-heading p { font-size: 10px; color: #7c94a2; line-height: 1.8; margin-top: 5px; }
.ops-chart-heading > a { font-size: 10px; color: #087eb2; white-space: nowrap; padding-block: 4px; }
.ops-chart-summary { color: #123f59; font-size: clamp(23px, 2vw, 30px); font-weight: 750; line-height: 1.5; margin-top: 19px; }
.ops-chart-summary > span { display: block; font-size: 10px; color: #8ba0ac; font-weight: 400; margin-top: 2px; }
.ops-chart-chip { background: #e6f7ff; color: #0878af; padding: 5px 10px; border-radius: 8px; font-size: 12px; font-weight: 750; }
.ops-chart-visual { position: relative; min-width: 0; margin-top: 14px; }
.ops-chart-visual svg { display: block; width: 100%; height: auto; overflow: visible; direction: ltr; font-family: var(--font); }
.ops-chart-gridline { stroke: #e6eef4; stroke-dasharray: 4 5; }
.ops-chart-axis { fill: #8a9fab; font-size: 11px; }
.ops-chart-line { fill: none; stroke: #069fde; stroke-width: 3.2; stroke-linecap: round; stroke-linejoin: round; }
.ops-chart-hit { fill: transparent; }
.ops-chart-dot { fill: #fff; stroke: #079fdd; stroke-width: 2.5; }
.ops-chart-point:hover .ops-chart-dot,
.ops-chart-point:focus .ops-chart-dot { fill: #069fde; }
.ops-chart-tooltip { position: absolute; inset-block-start: 0; inset-inline-end: 0; max-width: 100%; padding: 9px 12px; border-radius: 9px; box-shadow: 0 6px 20px #05395720; background: #083b57; color: #fff; font-size: 11px; line-height: 1.7; pointer-events: none; z-index: 2; }
.ops-donut-visual { max-width: 185px; margin: 14px auto 0; }
.ops-donut-total { font-size: 35px; font-weight: 800; fill: #123f59; }
.ops-donut-caption { font-size: 12px; fill: #8a9fab; }
.ops-chart-segment { cursor: help; }
.ops-chart-segment:hover,
.ops-chart-segment:focus { stroke-width: 28px; }
.ops-donut-legend { list-style: none; padding: 0; margin: 12px 0 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 11px 16px; }
.ops-donut-legend li { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 10px; color: #6a8493; }
.ops-donut-legend li > span { display: flex; align-items: center; gap: 7px; }
.ops-donut-legend i { width: 7px; height: 7px; border-radius: 50%; background: var(--chart-color); flex-shrink: 0; }
.ops-donut-legend strong { color: #234f68; font-size: 11px; }
.ops-stock-value { fill: #234f68; font-size: 12px; font-weight: 750; }
.ops-chart-footnote,
.ops-chart-empty { font-size: 10px; line-height: 1.8; color: #8ba0ac; margin-top: 12px; }
.ops-chart-empty { color: #52798c; background: #f0f8fc; padding: 10px 12px; border-radius: 9px; }
@media (max-width: 1280px) {
  .ops-analytics-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .ops-chart-trend { grid-column: 1 / -1; }
  .ops-value-svg { max-height: 260px; }
}
@media (max-width: 700px) {
  .ops-analytics-heading { flex-direction: column; align-items: stretch; }
  .ops-chart-filters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .ops-chart-filters select { width: 100%; min-width: 0; max-width: none; padding-inline: 8px; font-size: 11px; }
  .ops-analytics-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .ops-chart-card { padding: 20px 16px; }
  .ops-chart-summary { font-size: 26px; }
  .ops-chart-heading h3 { font-size: 15px; }
  .ops-chart-heading > a { font-size: 9px; }
  .ops-donut-legend { font-size: 11px; }
  .ops-value-svg .ops-chart-axis { font-size: 18px; }
  .ops-stock-svg .ops-chart-axis { font-size: 14px; }
}
@media (max-width: 380px) {
  .ops-header-actions select { max-width: 88px; }
  .ops-header .ops-kicker { font-size: 6px; }
  .ops-header .ops-language { font-size: 9px; padding-inline-start: 6px; }
}

@media (prefers-reduced-motion: reduce) { .ops-sidebar { transition: none; } }
@media print {
  .ops-sidebar, .ops-menu-backdrop { display: none !important; }
  .ops-chart-filters, .ops-chart-tooltip { display: none; }
  .ops-analytics-grid { grid-template-columns: 1fr 1fr; }
}

/* The dashboard opens with one ocean-colour sweep and a staged reveal. */
.ops-content { animation: none; }
@media (prefers-reduced-motion: no-preference) {
  .ops-opening-wave { position: fixed; inset: 0; overflow: hidden; z-index: 20; pointer-events: none; }
  .ops-opening-wave::before {
    content: '';
    position: absolute;
    inset: -35%;
    background: linear-gradient(110deg, transparent 40%, #00aeef10 47%, #60d4ff40 50%, #00aeef10 53%, transparent 60%);
    animation: ops-ocean-scan 1.15s cubic-bezier(.65, 0, .25, 1) both;
  }
  .ops-dashboard-arrival .ops-header { animation: ops-header-arrive .7s both; }
  .ops-dashboard-arrival .ops-preview-note { animation: ops-panel-arrive .65s .06s both; }
  .ops-dashboard-arrival .ops-section-title { animation: ops-panel-arrive .8s .12s both; }
  .ops-dashboard-arrival .ops-kpi { animation: ops-panel-arrive .8s var(--ops-arrival-delay, .18s) both; }
  .ops-dashboard-arrival .ops-analytics-heading { animation: ops-panel-arrive .8s .35s both; }
  .ops-dashboard-arrival .ops-chart-card { animation: ops-panel-arrive .85s .43s both; }
  .ops-dashboard-arrival .ops-chart-card:nth-child(2) { animation-delay: .52s; }
  .ops-dashboard-arrival .ops-chart-card:nth-child(3) { animation-delay: .61s; }
  .ops-dashboard-arrival .ops-chart-line {
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
    animation: ops-chart-draw 1.05s .7s both;
  }
  .ops-dashboard-arrival .ops-chart-area { animation: ops-data-appear .9s .88s both; }
  .ops-dashboard-arrival .ops-chart-point { animation: ops-data-appear .6s 1.05s both; }
  .ops-dashboard-arrival .ops-chart-segment { animation: ops-ring-arrive 1s .75s both; }
  .ops-dashboard-arrival .ops-stock-column {
    transform-box: fill-box;
    transform-origin: center bottom;
    animation: ops-stock-rise 1s .8s both;
  }
  .ops-dashboard-arrival .ops-stock-point:nth-of-type(2) .ops-stock-column { animation-delay: .9s; }
  .ops-dashboard-arrival .ops-stock-point:nth-of-type(3) .ops-stock-column { animation-delay: 1s; }
  .ops-dashboard-arrival .ops-stock-value { animation: ops-data-appear .6s 1.1s both; }
  .ops-dashboard-arrival [data-ops-view] > .ops-panel,
  .ops-dashboard-arrival [data-ops-view] > .ops-two-columns { animation: ops-panel-arrive .85s .5s both; }
  @keyframes ops-ocean-scan {
    0% { opacity: 0; transform: translate3d(-65%, 0, 0); }
    20% { opacity: 1; }
    75% { opacity: .7; }
    100% { opacity: 0; transform: translate3d(65%, 0, 0); }
  }
  @keyframes ops-header-arrive {
    from { opacity: 0; transform: translate3d(0, -14px, 0); }
    to { opacity: 1; transform: none; }
  }
  @keyframes ops-panel-arrive {
    from { opacity: 0; transform: translate3d(0, 22px, 0); }
    to { opacity: 1; transform: none; }
  }
  @keyframes ops-chart-draw { to { stroke-dashoffset: 0; } }
  @keyframes ops-data-appear { from { opacity: 0; } to { opacity: 1; } }
  @keyframes ops-ring-arrive {
    from { opacity: 0; stroke-width: 0; }
    to { opacity: 1; stroke-width: 23px; }
  }
  @keyframes ops-stock-rise { from { transform: scaleY(.03); } to { transform: scaleY(1); } }
}
@media print { .ops-opening-wave { display: none !important; } }
