:root{--navy:#073b5c;--navy2:#0b4f70;--teal:#16b4c1;--teal-dark:#0d8f9b;--bg:#f3f7f8;--surface:#fff;--surface2:#f8fbfc;--ink:#143548;--muted:#708794;--line:#dbe7eb;--good:#168b69;--warn:#b97917;--bad:#c94d55;--purple:#6657b7;--shadow:0 12px 34px rgba(7,59,92,.08)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:"Segoe UI",Tahoma,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}.shell{min-height:100vh;display:grid;grid-template-columns:270px 1fr}.sidebar{height:100vh;position:sticky;top:0;background:linear-gradient(180deg,#052d49 0%,#073b5c 55%,#0a5268 100%);color:white;padding:22px 14px;display:flex;flex-direction:column;z-index:40}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:2px 8px 22px;border-bottom:1px solid rgba(255,255,255,.12)}.brand-emblem{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(145deg,#fff,#c9f4f5);color:var(--navy);font-size:24px;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.13)}.sidebar-brand strong,.brand-lockup strong{font-size:19px;display:block;letter-spacing:.2px}.sidebar-brand span,.brand-lockup span{font-size:10px;letter-spacing:2px;color:#7de1e6}.sidebar-section-title{font-size:10px;letter-spacing:.7px;color:#88bbc6;margin:22px 12px 8px}.nav-list{display:grid;gap:5px}.nav-item{width:100%;border:0;background:transparent;color:#cfe2e7;min-height:46px;border-radius:12px;padding:0 12px;display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;text-align:right;cursor:pointer;transition:.2s}.nav-item svg,.icon-btn svg,.logout-btn svg,.search-box svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-item:hover{background:rgba(255,255,255,.08);color:white}.nav-item.active{background:linear-gradient(90deg,rgba(22,180,193,.25),rgba(255,255,255,.12));color:#fff;box-shadow:inset -3px 0 0 #36d7df}.nav-item i{font-style:normal;min-width:20px;height:20px;border-radius:10px;background:rgba(255,255,255,.11);display:none;place-items:center;font-size:10px}.nav-item i.has{display:grid}.sidebar-footer{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding:18px 9px 4px;display:flex;align-items:center;gap:10px}.prod-dot{width:9px;height:9px;background:#57d7a5;border-radius:50%;box-shadow:0 0 0 5px rgba(87,215,165,.11)}.sidebar-footer b{font-size:12px;display:block}.sidebar-footer small{font-size:9px;color:#8cc5cf}.workspace{min-width:0}.topbar{height:74px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 26px;position:sticky;top:0;z-index:30;backdrop-filter:blur(8px)}.topbar-title{display:flex;align-items:center;gap:12px}.topbar h1{font-size:20px;margin:2px 0 0}.eyebrow{font-size:9px;font-weight:800;letter-spacing:1.4px;color:var(--teal-dark)}.top-actions{display:flex;align-items:center;gap:8px}.connection-chip{display:flex;align-items:center;gap:7px;border:1px solid #ccebe3;background:#eefaf7;color:var(--good);height:38px;padding:0 12px;border-radius:12px;font-size:12px;font-weight:700}.connection-chip>span{width:8px;height:8px;border-radius:50%;background:currentColor}.connection-chip.offline{color:var(--bad);background:#fff4f4;border-color:#f2d4d4}.icon-btn{position:relative;width:40px;height:40px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);display:grid;place-items:center;cursor:pointer}.icon-btn:hover{background:#f1f8f9}.icon-btn em{position:absolute;top:-5px;left:-5px;display:none;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--bad);color:#fff;font-style:normal;font-size:9px;place-items:center}.icon-btn em.has{display:grid}.logout-btn{height:40px;border:1px solid #efd0d2;background:#fff7f7;color:#a9434a;border-radius:12px;padding:0 12px;display:flex;gap:7px;align-items:center;cursor:pointer}.logout-btn svg{width:17px}.mobile-menu{display:none;border:0;background:transparent;font-size:23px;color:var(--navy)}.main-content{padding:26px}.page{display:none}.page.active{display:block}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}.page-head h2{font-size:26px;margin:5px 0}.page-head p{margin:0;color:var(--muted);max-width:820px;line-height:1.8;font-size:13px}.page-meta{font-size:11px;color:var(--muted)}.kpi-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:16px;box-shadow:0 6px 20px rgba(7,59,92,.04);min-height:112px;display:flex;flex-direction:column;justify-content:space-between}.kpi-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px}.kpi-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#eef7f9;color:var(--navy);font-weight:900}.kpi b{font-size:27px;color:var(--navy);letter-spacing:-.5px}.kpi small{font-size:10px;color:var(--muted)}.kpi.alert b{color:var(--bad)}.dashboard-grid{display:grid;grid-template-columns:1.5fr .75fr;gap:14px;margin-top:14px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:17px;min-width:0}.panel-wide{min-width:0}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-head h3{font-size:16px;margin:4px 0 0}.legend{display:flex;gap:13px;color:var(--muted);font-size:10px}.legend span:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-left:5px}.legend-users:before{background:#16b4c1}.legend-trips:before{background:#073b5c}.legend-catches:before{background:#6657b7}.chart-wrap{height:270px;position:relative}.chart-wrap canvas{width:100%;height:100%}.health-list{display:grid;gap:9px}.health-item{display:flex;align-items:center;justify-content:space-between;padding:11px 12px;border-radius:12px;background:var(--surface2);border:1px solid #eaf1f3}.health-item div{display:flex;align-items:center;gap:9px}.status-dot{width:9px;height:9px;border-radius:50%}.status-dot.good{background:var(--good)}.status-dot.bad{background:var(--bad)}.health-item b{font-size:12px}.health-item span{font-size:10px;color:var(--muted)}.alerts-list{display:grid;gap:9px}.alert-row{border-radius:13px;padding:12px;border:1px solid var(--line);display:grid;grid-template-columns:42px 1fr;gap:11px}.alert-number{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-weight:900;background:#eef8f9;color:var(--navy)}.alert-row.critical{border-color:#f0d2d4;background:#fff9f9}.alert-row.critical .alert-number{background:#fdeced;color:var(--bad)}.alert-row.warning .alert-number{background:#fff3df;color:var(--warn)}.alert-row h4{font-size:12px;margin:1px 0 4px}.alert-row p{font-size:10px;color:var(--muted);margin:0;line-height:1.5}.text-btn{border:0;background:transparent;color:var(--teal-dark);font-weight:700;cursor:pointer;font-size:11px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px;background:#fff}.data-table{width:100%;border-collapse:collapse;min-width:980px}.data-table th,.data-table td{padding:12px 13px;border-bottom:1px solid #edf2f4;text-align:right;font-size:11px;white-space:nowrap;vertical-align:middle}.data-table th{background:#f1f6f8;color:#58727e;font-size:10px;position:sticky;top:0;z-index:2}.data-table tbody tr{cursor:default}.data-table tbody tr.clickable{cursor:pointer}.data-table tbody tr:hover td{background:#fbfdfd}.name-cell b{display:block;font-size:12px;color:var(--ink)}.name-cell small{display:block;color:var(--muted);margin-top:3px}.badge{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:0 9px;border-radius:12px;font-size:9px;font-weight:800;background:#edf5f6;color:#58727e}.badge.good{background:#e9f7f2;color:var(--good)}.badge.warn{background:#fff3df;color:var(--warn)}.badge.bad{background:#fdeced;color:var(--bad)}.badge.info{background:#eaf4fa;color:#2f7597}.toolbar{display:flex;gap:9px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.search-box{height:42px;min-width:320px;flex:1;max-width:520px;border:1px solid var(--line);background:#fff;border-radius:12px;display:flex;align-items:center;gap:9px;padding:0 12px}.search-box svg{width:17px;color:#7c929c}.search-box input{width:100%;border:0;outline:0;background:transparent;color:var(--ink)}.toolbar select{height:42px;border:1px solid var(--line);background:#fff;border-radius:12px;padding:0 12px;color:var(--ink);outline:0}.result-count{margin-right:auto;color:var(--muted);font-size:10px}.empty-state{padding:34px;text-align:center;color:var(--muted);font-size:12px}.operations-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px}.map-panel{padding:0;overflow:hidden}.map-toolbar{height:58px;padding:0 16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.map-toolbar b{font-size:13px}.map-toolbar>div>span{display:block;font-size:9px;color:var(--muted);margin-top:3px}.map-legend{display:flex!important;gap:11px;flex-direction:row!important}.map-legend span{display:flex!important;align-items:center;gap:5px}.dot-live,.dot-stale{width:8px;height:8px;border-radius:50%;display:inline-block}.dot-live{background:var(--good)}.dot-stale{background:var(--warn)}#operationsMap{height:620px;background:#e6eef0}.active-trips{display:grid;gap:9px;max-height:650px;overflow:auto}.trip-card{border:1px solid var(--line);border-radius:14px;padding:12px;cursor:pointer}.trip-card:hover{border-color:#b5dfe2;background:#fbfefe}.trip-card-top{display:flex;justify-content:space-between;gap:10px}.trip-card h4{font-size:12px;margin:0}.trip-card p{font-size:10px;color:var(--muted);margin:4px 0 0}.trip-meta{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.trip-meta div{background:#f5f9fa;border-radius:9px;padding:7px}.trip-meta span{display:block;font-size:8px;color:var(--muted)}.trip-meta b{font-size:10px}.app-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:14px}.release-current{display:grid;gap:10px}.release-version{padding:18px;border-radius:15px;background:linear-gradient(145deg,#073b5c,#0c6981);color:white}.release-version span{font-size:9px;color:#a8e7eb}.release-version b{display:block;font-size:32px;margin-top:5px}.release-kv{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:9px 2px;font-size:11px}.release-kv span{color:var(--muted)}.release-form label{display:grid;gap:6px;color:#536f7a;font-size:10px;margin-bottom:10px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.release-form input,.release-form textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:10px 11px;outline:0;color:var(--ink);background:#fff}.release-form input:focus,.release-form textarea:focus{border-color:var(--teal)}.switch-row{display:flex!important;align-items:center;gap:8px}.switch-row input{width:auto}.primary-btn{border:0;background:linear-gradient(95deg,var(--navy),#087b94);color:#fff;border-radius:12px;min-height:44px;padding:0 18px;font-weight:800;cursor:pointer}.form-message{font-size:10px;margin-top:8px}.section-gap{margin-top:14px}.system-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.system-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:17px}.system-card h3{margin:0 0 13px;font-size:14px}.kv-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf2f4;font-size:10px}.kv-row:last-child{border:0}.kv-row span{color:var(--muted)}.progress-track{height:8px;border-radius:8px;background:#edf3f4;overflow:hidden;margin-top:10px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--teal),var(--navy));border-radius:8px}.detail-drawer{position:fixed;top:0;left:-530px;width:min(520px,94vw);height:100vh;background:#fff;z-index:100;box-shadow:20px 0 50px rgba(7,59,92,.22);transition:.25s;display:flex;flex-direction:column}.detail-drawer.open{left:0}.drawer-backdrop{display:none;position:fixed;inset:0;background:rgba(2,23,37,.35);z-index:90}.drawer-backdrop.open{display:block}.drawer-head{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 20px}.drawer-head h3{margin:4px 0 0}.drawer-head button{width:38px;height:38px;border-radius:11px;border:1px solid var(--line);background:#fff;font-size:24px;color:var(--muted);cursor:pointer}.drawer-body{padding:18px;overflow:auto}.drawer-section{margin-bottom:18px}.drawer-section h4{font-size:12px;margin:0 0 10px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.detail-cell{background:#f6fafb;border:1px solid #e8f0f2;border-radius:11px;padding:10px}.detail-cell span{font-size:8px;color:var(--muted);display:block}.detail-cell b{font-size:11px;display:block;margin-top:4px;word-break:break-word}.danger-btn,.secondary-btn{border-radius:11px;min-height:40px;padding:0 14px;font-size:11px;font-weight:800;cursor:pointer}.danger-btn{border:1px solid #efc9cc;background:#fff5f5;color:var(--bad)}.secondary-btn{border:1px solid var(--line);background:#fff;color:var(--navy)}.mini-list{display:grid;gap:7px}.mini-row{border:1px solid var(--line);border-radius:11px;padding:9px;display:flex;justify-content:space-between;gap:12px}.mini-row b{font-size:10px}.mini-row span{font-size:9px;color:var(--muted)}.login-body{min-height:100vh;background:#eaf2f4}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr}.login-brand-panel{background:radial-gradient(circle at 20% 15%,#167895 0,#073b5c 38%,#052a43 100%);color:white;padding:58px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-brand-panel:after{content:"";position:absolute;width:540px;height:540px;border:1px solid rgba(255,255,255,.08);border-radius:50%;left:-220px;bottom:-220px;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.018)}.brand-lockup{display:flex;align-items:center;gap:12px;z-index:2}.login-copy{max-width:600px;z-index:2}.login-copy .eyebrow{color:#66d9df}.login-copy h1{font-size:42px;margin:10px 0 14px}.login-copy p{color:#c0d9df;line-height:2;font-size:15px}.security-note{z-index:2;font-size:11px;color:#9ac5ce}.login-form-panel{display:grid;place-items:center;padding:30px;background:#f4f8f9}.login-card{width:min(450px,92vw);background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:0 25px 70px rgba(7,59,92,.12)}.login-card-head{display:flex;align-items:center;gap:13px;margin-bottom:26px}.small-logo{width:48px;height:48px;border-radius:14px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}.login-card h2{margin:0 0 5px;font-size:20px}.login-card p{margin:0;color:var(--muted);font-size:11px}.login-card label{display:block;font-size:11px;font-weight:700;margin-bottom:8px}.password-wrap{display:flex;border:1px solid var(--line);border-radius:12px;overflow:hidden}.password-wrap:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(22,180,193,.08)}.password-wrap input{flex:1;border:0;outline:0;padding:0 13px;height:48px}.password-wrap button{border:0;background:#f4f8f9;color:var(--teal-dark);padding:0 14px;cursor:pointer}.login-card .primary-btn{width:100%;margin-top:13px}.form-error{min-height:22px;color:var(--bad);font-size:10px;margin-top:8px}.login-domain{text-align:center;color:#95a6ad;font-size:9px;margin-top:14px;letter-spacing:.5px}@media(max-width:1300px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.system-grid{grid-template-columns:1fr 1fr}}@media(max-width:1050px){.shell{grid-template-columns:84px 1fr}.sidebar{padding:18px 9px}.sidebar-brand>div:last-child,.sidebar-section-title,.nav-item span,.sidebar-footer div{display:none}.sidebar-brand{justify-content:center;padding:0 0 17px}.nav-item{grid-template-columns:1fr;text-align:center;place-items:center;padding:0}.nav-item i{position:absolute;margin-right:34px}.operations-layout{grid-template-columns:1fr}.app-grid{grid-template-columns:1fr}.logout-btn span{display:none}}@media(max-width:760px){.shell{display:block}.sidebar{position:fixed;right:-285px;width:270px;transition:.25s}.sidebar.mobile-open{right:0}.sidebar-brand>div:last-child,.sidebar-section-title,.nav-item span,.sidebar-footer div{display:block}.nav-item{grid-template-columns:22px 1fr auto;text-align:right;place-items:initial}.mobile-menu{display:block}.topbar{padding:0 12px}.topbar-title .eyebrow{display:none}.topbar h1{font-size:17px}.connection-chip{display:none}.main-content{padding:14px}.page-head{align-items:flex-start;flex-direction:column}.page-head h2{font-size:22px}.kpi-grid{grid-template-columns:1fr 1fr}.toolbar{align-items:stretch}.search-box{min-width:100%;max-width:none}.toolbar select{flex:1}.result-count{width:100%;margin:0}.system-grid{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.login-shell{grid-template-columns:1fr}.login-brand-panel{display:none}.login-form-panel{min-height:100vh}.legend{display:none}}@media(max-width:430px){.kpi-grid{grid-template-columns:1fr 1fr}.kpi{min-height:100px;padding:13px}.kpi b{font-size:23px}.top-actions{gap:5px}.icon-btn{width:37px}.logout-btn{width:37px;padding:0;justify-content:center}.main-content{padding:10px}.panel{padding:13px}}


/* ===== PHASE 2 OPERATIONS ===== */
.ops-kpis,.marine-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.ops-mini,.marine-mini{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px 15px;box-shadow:0 7px 22px rgba(7,59,92,.045)}.ops-mini span,.marine-mini span{display:block;color:var(--muted);font-size:10px;margin-bottom:7px}.ops-mini b,.marine-mini b{display:block;color:var(--navy);font-size:22px}.ops-mini small,.marine-mini small{display:block;color:var(--muted);font-size:9px;margin-top:5px}.operations-layout.phase2{grid-template-columns:minmax(0,1fr) 390px}.ops-side{max-height:690px;overflow:hidden;display:flex;flex-direction:column}.ops-side .active-trips{overflow:auto;padding-left:3px}.dot-offline{width:8px;height:8px;border-radius:50%;display:inline-block;background:#7d8f98}.trip-card{transition:.18s;border:1px solid #e3ecef}.trip-card:hover{transform:translateY(-1px);border-color:#b9dce1;box-shadow:0 8px 18px rgba(7,59,92,.07)}.trip-state{display:flex;align-items:center;gap:6px;font-size:9px;font-weight:800}.trip-state i{width:8px;height:8px;border-radius:50%}.trip-state.live{color:var(--good)}.trip-state.live i{background:var(--good);box-shadow:0 0 0 4px rgba(22,139,105,.10)}.trip-state.stale{color:var(--warn)}.trip-state.stale i{background:var(--warn)}.trip-state.offline{color:#748791}.trip-state.offline i{background:#8ba0a9}.ops-popup{min-width:210px;font-family:Tahoma,Arial,sans-serif;direction:rtl}.ops-popup h4{margin:0 0 5px;color:#073b5c;font-size:13px}.ops-popup p{margin:3px 0;color:#627985;font-size:10px}.ops-popup button{margin-top:8px;border:0;border-radius:8px;background:#073b5c;color:#fff;padding:7px 10px;cursor:pointer;font-size:10px}.drawer-trip-map{height:285px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#eaf2f4}.trip-summary-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.trip-summary-strip>div{padding:10px;background:#f7fafb;border:1px solid #e6eef1;border-radius:11px}.trip-summary-strip span{display:block;font-size:9px;color:var(--muted)}.trip-summary-strip b{display:block;font-size:13px;margin-top:4px;color:var(--navy)}.marine-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.source-health{display:grid;gap:10px}.source-card{display:grid;grid-template-columns:12px 1fr auto;gap:10px;align-items:center;padding:13px;border:1px solid var(--line);border-radius:13px;background:#fbfdfd}.source-card>i{width:10px;height:10px;border-radius:50%}.source-card.ok>i{background:var(--good)}.source-card.warn>i{background:var(--warn)}.source-card.bad>i{background:var(--bad)}.source-card b{display:block;font-size:12px}.source-card span{display:block;color:var(--muted);font-size:9px;margin-top:3px}.source-card em{font-style:normal;font-size:9px;font-weight:800}.point-form{display:grid;gap:12px}.point-form label{display:grid;gap:5px;color:var(--muted);font-size:10px}.point-form input{height:40px;border:1px solid var(--line);border-radius:10px;padding:0 10px;outline:0;color:var(--ink)}.point-result{margin-top:13px;border:1px solid var(--line);border-radius:13px;background:#f8fbfc;padding:13px;min-height:76px;color:var(--muted);font-size:10px;line-height:1.8}.point-data-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.point-data-grid>div{background:#fff;border:1px solid #e6eef1;border-radius:10px;padding:9px}.point-data-grid span{display:block;color:var(--muted);font-size:9px}.point-data-grid b{display:block;color:var(--navy);font-size:12px;margin-top:3px}.coverage-bar{height:6px;border-radius:5px;background:#e8eff1;overflow:hidden;margin-top:8px}.coverage-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--teal),var(--navy));border-radius:5px}.drawer-link{border:0;background:transparent;color:var(--teal-dark);padding:0;cursor:pointer;font-weight:800}.mini-row.clickable{cursor:pointer}.mini-row.clickable:hover{background:#f2f8f9}@media(max-width:1200px){.ops-kpis,.marine-kpis{grid-template-columns:repeat(2,1fr)}.operations-layout.phase2{grid-template-columns:1fr}.ops-side{max-height:none}.marine-grid{grid-template-columns:1fr}}@media(max-width:640px){.ops-kpis,.marine-kpis{grid-template-columns:1fr 1fr}.trip-summary-strip{grid-template-columns:1fr}.point-data-grid{grid-template-columns:1fr}}
/* ===== SETTINGS + ACCESS CONTROL V3 ===== */
:root{--navy:#0b5ea8;--navy2:#0a4d8c;--teal:#1473e6;--teal-dark:#0b5ea8;--black:#080b10;--bg:#f3f6f9;--surface:#fff;--surface2:#f7f9fc;--ink:#101923;--muted:#6f7d89;--line:#dce4eb}
.sidebar{background:linear-gradient(180deg,#070a0f,#0a111b 65%,#0b2032)!important}.nav-item.active{background:linear-gradient(90deg,rgba(20,115,230,.35),rgba(20,115,230,.10))!important;box-shadow:inset -3px 0 0 #2f8cff!important}.eyebrow{color:#1473e6!important}.primary-btn{background:linear-gradient(135deg,#0b5ea8,#1473e6)!important}.login-input{width:100%;height:46px;border:1px solid var(--line);border-radius:12px;padding:0 13px;outline:0;background:var(--surface);color:var(--ink);margin-bottom:10px}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice-card{border:1px solid var(--line);background:var(--surface2);color:var(--ink);border-radius:15px;padding:16px;text-align:right;cursor:pointer;min-height:90px}.choice-card.selected{border:2px solid #1473e6;background:rgba(20,115,230,.08);box-shadow:0 0 0 4px rgba(20,115,230,.08)}.choice-card b{display:block;margin-bottom:6px}.choice-card span{display:block;color:var(--muted);font-size:10px}.light-preview:before,.dark-preview:before{content:"";display:block;height:24px;border-radius:6px;margin-bottom:9px}.light-preview:before{background:linear-gradient(90deg,#080b10 0 30%,#fff 30% 68%,#1473e6 68%)}.dark-preview{background:#101722;color:#eef5ff}.dark-preview:before{background:linear-gradient(90deg,#05080c 0 38%,#101722 38% 72%,#1473e6 72%)}.brand-theme-note{margin-top:12px;border:1px solid var(--line);border-radius:13px;padding:12px;display:flex;gap:10px;align-items:center;background:var(--surface2)}.brand-theme-note i{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#080b10 0 48%,#1473e6 48%)}.settings-actions{display:flex;gap:12px;align-items:center;margin-top:14px}.admin-access-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(380px,.7fr);gap:14px}.admin-form-panel{align-self:start;position:sticky;top:92px}.permissions-head{display:flex;justify-content:space-between;margin:15px 0 8px}.permissions-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.permission-item{display:flex;gap:8px;border:1px solid var(--line);background:var(--surface2);border-radius:11px;padding:9px}.permission-item b{display:block;font-size:10px}.permission-item small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.secondary-btn{height:42px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);padding:0 16px;cursor:pointer}.form-actions{display:flex;gap:8px;margin-top:13px}
html[data-theme="dark"]{color-scheme:dark;--bg:#090d12;--surface:#101720;--surface2:#151e29;--ink:#e7f0f8;--muted:#93a4b3;--line:#273545;--good:#52c99c;--warn:#e7aa4d;--bad:#ef7078}html[data-theme="dark"] body,html[data-theme="dark"] .workspace{background:var(--bg);color:var(--ink)}html[data-theme="dark"] .topbar{background:rgba(12,18,25,.96);border-color:var(--line)}html[data-theme="dark"] .panel,html[data-theme="dark"] .kpi,html[data-theme="dark"] .table-wrap,html[data-theme="dark"] .ops-mini,html[data-theme="dark"] .marine-mini,html[data-theme="dark"] .system-card{background:var(--surface)!important;border-color:var(--line)!important;color:var(--ink)}html[data-theme="dark"] .data-table th{background:#151e29;color:#9fb0bf}html[data-theme="dark"] .data-table td{border-color:#202d3b}html[data-theme="dark"] .data-table tbody tr:hover td{background:#151e29}html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea,html[data-theme="dark"] .search-box,html[data-theme="dark"] .toolbar select{background:#0e151e!important;color:var(--ink)!important;border-color:var(--line)!important}html[data-theme="dark"] .health-item,html[data-theme="dark"] .source-card,html[data-theme="dark"] .brand-theme-note{background:var(--surface2)!important;border-color:var(--line)!important}html[dir="ltr"] .nav-item,html[dir="ltr"] .choice-card,html[dir="ltr"] .data-table th,html[dir="ltr"] .data-table td{text-align:left}@media(max-width:1100px){.settings-grid,.admin-access-grid{grid-template-columns:1fr}.admin-form-panel{position:static}}@media(max-width:650px){.choice-grid,.permissions-grid{grid-template-columns:1fr}}
/* ===== COMPANY BUSINESS & INTELLIGENCE V4 ===== */
.v4-kpis{grid-template-columns:repeat(6,minmax(0,1fr))}.v4-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.v4-alert-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.v4-alert-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:15px;box-shadow:var(--shadow)}.v4-alert-card b{font-size:24px;display:block;margin:7px 0;color:var(--ink)}.v4-alert-card span{font-size:10px;color:var(--muted)}.v4-alert-card small{display:block;font-size:9px;color:var(--muted);line-height:1.6}.v4-alert-card.critical{border-top:3px solid var(--bad)}.v4-alert-card.warning{border-top:3px solid var(--warn)}.v4-alert-card.ok{border-top:3px solid var(--good)}.v4-alert-card.info{border-top:3px solid var(--blue)}.compact{margin:0}.compact select{height:40px;border:1px solid var(--line);border-radius:11px;padding:0 10px;background:var(--surface);color:var(--ink)}.mini-bars{display:grid;gap:10px}.mini-bar-row{display:grid;grid-template-columns:minmax(110px,1fr) 2fr 70px;gap:10px;align-items:center;font-size:10px}.mini-bar-track{height:8px;background:var(--surface2);border-radius:8px;overflow:hidden;border:1px solid var(--line)}.mini-bar-track i{display:block;height:100%;background:linear-gradient(90deg,#0b5ea8,#1473e6);border-radius:8px}.market-actions{display:flex;gap:5px}.market-actions select{height:31px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font-size:9px}@media(max-width:1200px){.v4-kpis{grid-template-columns:repeat(3,1fr)}.v4-alert-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:850px){.v4-grid{grid-template-columns:1fr}.v4-alert-grid{grid-template-columns:1fr 1fr}}@media(max-width:580px){.v4-kpis,.v4-alert-grid{grid-template-columns:1fr 1fr}}
/* ===== LAUNCH, SUPPORT & SECURITY V5 ===== */
.v5-kpis{grid-template-columns:repeat(5,minmax(0,1fr))}.v5-two-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.launch-score-wrap{display:grid;grid-template-columns:220px 1fr;gap:14px}.launch-score-card{background:linear-gradient(145deg,#070a0f,#0d2b48);color:#fff;border-radius:18px;padding:22px;box-shadow:var(--shadow);min-height:150px;display:flex;flex-direction:column;justify-content:center}.launch-score-card span{font-size:10px;color:#a9cbed}.launch-score-card b{font-size:44px;line-height:1;margin:12px 0;color:#fff}.launch-score-card small{font-size:9px;color:#93aaca}.launch-auto-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.launch-check{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:13px}.launch-check b{display:block;font-size:11px;margin:7px 0;color:var(--ink)}.launch-check small{display:block;color:var(--muted);font-size:9px;line-height:1.5}.launch-check.ready{border-top:3px solid var(--good)}.launch-check.blocked{border-top:3px solid var(--bad)}.launch-check.pending{border-top:3px solid var(--warn)}.checklist-row{display:grid;grid-template-columns:130px minmax(220px,1fr) 160px minmax(240px,1fr) 90px;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:10px 0}.checklist-row:last-child{border-bottom:0}.checklist-row span,.checklist-row b{font-size:10px}.checklist-row select,.checklist-row input{height:34px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);padding:0 8px}.tiny-btn{height:32px;border:1px solid var(--line);border-radius:9px;background:var(--surface2);color:var(--ink);cursor:pointer;padding:0 10px}.quality-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.quality-card{border:1px solid var(--line);background:var(--surface2);border-radius:13px;padding:12px}.quality-card span{font-size:9px;color:var(--muted);display:block}.quality-card b{display:block;font-size:22px;margin-top:5px;color:var(--ink)}.quality-card.issue{border-right:3px solid var(--warn)}.ticket-priority.urgent{color:var(--bad);font-weight:700}.ticket-priority.high{color:var(--warn);font-weight:700}@media(max-width:1250px){.launch-auto-grid{grid-template-columns:repeat(3,1fr)}.v5-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.launch-score-wrap,.v5-two-grid{grid-template-columns:1fr}.launch-auto-grid{grid-template-columns:repeat(2,1fr)}.checklist-row{grid-template-columns:1fr}}@media(max-width:600px){.v5-kpis,.launch-auto-grid,.quality-grid{grid-template-columns:1fr}}

/* ======================================================================
   AYNALSAYYAD COMPANY CONTROL CENTER — FINAL POLISH V6
   Corporate UI system: clarity, density, accessibility, responsive design
   ====================================================================== */

:root{
  --brand-black:#070A0F;
  --brand-black-2:#0C1119;
  --brand-blue:#1565D8;
  --brand-blue-2:#0B4FA3;
  --brand-cyan:#0EA5C6;
  --brand-white:#FFFFFF;

  --bg:#F3F6FA;
  --surface:#FFFFFF;
  --surface2:#F8FAFC;
  --surface3:#EEF3F8;
  --ink:#101828;
  --muted:#667085;
  --muted2:#98A2B3;
  --line:#E2E8F0;
  --line-strong:#CBD5E1;

  --good:#138A63;
  --warn:#C77912;
  --bad:#C93B4A;
  --info:#246BCE;

  --radius-xs:8px;
  --radius-sm:11px;
  --radius-md:14px;
  --radius-lg:18px;
  --radius-xl:22px;
  --shadow-sm:0 1px 2px rgba(16,24,40,.035),0 4px 12px rgba(16,24,40,.035);
  --shadow-md:0 10px 28px rgba(16,24,40,.07);
  --shadow-lg:0 20px 55px rgba(3,12,24,.13);
  --sidebar-w:266px;
  --topbar-h:68px;
  --content-max:1880px;
  --page-accent:#1565D8;
  --page-accent-soft:color-mix(in srgb,var(--page-accent) 10%,transparent);
  --page-accent-line:color-mix(in srgb,var(--page-accent) 32%,var(--line));
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  overflow-x:hidden;
  background:var(--bg);
  color:var(--ink);
  font-family:system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;
  font-size:14px;
  line-height:1.55;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
button,input,select,textarea{font-family:inherit}
button{touch-action:manipulation}
::selection{background:rgba(21,101,216,.18);color:var(--ink)}
:focus-visible{outline:3px solid rgba(21,101,216,.22);outline-offset:2px}

/* Independent, stable application shell */
.shell{grid-template-columns:var(--sidebar-w) minmax(0,1fr);background:var(--bg)}
.workspace{min-width:0;min-height:100vh;background:var(--bg)}
.sidebar{
  width:var(--sidebar-w);
  padding:18px 12px 14px;
  background:
    radial-gradient(circle at 15% 8%,rgba(21,101,216,.25),transparent 25%),
    linear-gradient(180deg,#070A0F 0%,#09111D 54%,#0A1B2B 100%)!important;
  border-inline-end:1px solid rgba(255,255,255,.055);
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.16) transparent;
}
.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.16);border-radius:10px}
.sidebar-brand{padding:4px 8px 18px;gap:11px}
.brand-emblem{width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,#fff,#D9EAFE);color:#0B4FA3;box-shadow:0 9px 25px rgba(0,0,0,.2)}
.sidebar-brand strong,.brand-lockup strong{font-size:18px;font-weight:800;letter-spacing:0}
.sidebar-brand span,.brand-lockup span{font-size:9px;letter-spacing:1.8px;color:#7EB7F5!important}
.sidebar-section-title{margin:18px 10px 7px;color:#6E859D;font-size:9px;font-weight:800;letter-spacing:.8px}
.nav-list{gap:3px}
.nav-item{
  min-height:43px;
  border-radius:10px;
  padding:0 11px;
  color:#B9C7D5;
  font-size:12.5px;
  font-weight:570;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
.nav-item svg{width:18px;height:18px;opacity:.88}
.nav-item:hover{background:rgba(255,255,255,.065);color:#fff;transform:translateX(-1px)}
html[dir="ltr"] .nav-item:hover{transform:translateX(1px)}
.nav-item.active{
  background:linear-gradient(90deg,rgba(21,101,216,.30),rgba(21,101,216,.10))!important;
  color:#fff!important;
  box-shadow:inset -3px 0 0 #3B8CF5,0 7px 20px rgba(0,0,0,.08)!important;
}
html[dir="ltr"] .nav-item.active{box-shadow:inset 3px 0 0 #3B8CF5,0 7px 20px rgba(0,0,0,.08)!important}
.sidebar-footer{padding:14px 8px 2px}.sidebar-footer b{font-size:11px}.sidebar-footer small{font-size:8.5px;color:#7890A7}

/* Executive top bar */
.topbar{
  min-height:var(--topbar-h);
  height:var(--topbar-h);
  padding:0 24px;
  background:rgba(255,255,255,.91);
  border-bottom:1px solid rgba(203,213,225,.72);
  box-shadow:0 1px 0 rgba(255,255,255,.75),0 3px 16px rgba(15,23,42,.025);
  backdrop-filter:blur(14px) saturate(125%);
}
.topbar h1{font-size:18px;font-weight:800;letter-spacing:-.15px}.topbar .eyebrow{font-size:8px;color:#7B8DA0;letter-spacing:1.45px}
.top-actions{gap:7px}.connection-chip{height:36px;border-radius:10px;font-size:10.5px;padding:0 11px}
.icon-btn,.logout-btn{height:38px;border-radius:10px;background:var(--surface);box-shadow:none}
.icon-btn{width:38px}.logout-btn{font-size:11px}

/* Content geometry — use the screen, without feeling crowded */
.main-content{width:100%;max-width:var(--content-max);margin:0 auto;padding:22px 26px 42px}
.page{--page-accent:#1565D8;--page-accent-soft:color-mix(in srgb,var(--page-accent) 9%,transparent);animation:pageIn .18s ease-out}
@keyframes pageIn{from{opacity:.55;transform:translateY(3px)}to{opacity:1;transform:none}}

/* restrained page-specific accents */
#overview{--page-accent:#2563EB}
#operations{--page-accent:#0891B2}
#users{--page-accent:#4F46E5}
#trips{--page-accent:#0284C7}
#catches{--page-accent:#059669}
#sync{--page-accent:#C77912}
#marine{--page-accent:#0E7490}
#reports{--page-accent:#7C3AED}
#alertscenter{--page-accent:#D14343}
#knowledge{--page-accent:#6D5BD0}
#market{--page-accent:#D96B22}
#launchcenter{--page-accent:#159A65}
#supportcenter{--page-accent:#087F8C}
#securitycenter{--page-accent:#BE3A5A}
#development{--page-accent:#5B5BD6}
#settings{--page-accent:#2563EB}
#admins{--page-accent:#4F46E5}
#appmgmt{--page-accent:#0369A1}
#system{--page-accent:#475569}
#audit{--page-accent:#64748B}

.page-head{
  position:relative;
  align-items:center;
  min-height:102px;
  margin-bottom:16px;
  padding:18px 20px;
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  background:linear-gradient(100deg,var(--surface) 0%,var(--surface) 62%,var(--page-accent-soft) 100%);
  box-shadow:var(--shadow-sm);
  overflow:hidden;
}
.page-head:before{content:"";position:absolute;inset-block:15px;inset-inline-start:0;width:4px;background:var(--page-accent);border-radius:0 6px 6px 0}
html[dir="ltr"] .page-head:before{border-radius:6px 0 0 6px}
.page-head h2{margin:4px 0 4px;font-size:27px;line-height:1.25;font-weight:820;letter-spacing:-.35px;color:var(--ink)}
.page-head p{max-width:920px;font-size:12.5px;line-height:1.75;color:var(--muted)}
.page-head .eyebrow,.page .eyebrow{color:var(--page-accent)!important;font-size:8.5px;font-weight:850;letter-spacing:1.35px}
.page-meta{font-size:10px;color:var(--muted)}

/* Cards */
.panel,.kpi,.system-card,.launch-score-card,.quality-card{
  border-color:var(--line);
  box-shadow:var(--shadow-sm);
}
.panel{border-radius:var(--radius-lg);padding:16px;background:var(--surface)}
.panel:hover{border-color:color-mix(in srgb,var(--page-accent) 18%,var(--line))}
.panel-head{align-items:center;margin-bottom:13px;padding-bottom:11px;border-bottom:1px solid var(--line)}
.panel-head>div:first-child{min-width:0}
.panel-head h3{margin:3px 0 0;font-size:15px;font-weight:780;letter-spacing:-.1px;color:var(--ink)}
.panel-head:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--page-accent);box-shadow:0 0 0 5px var(--page-accent-soft);flex:0 0 auto}

.kpi-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.kpi{
  position:relative;
  min-height:106px;
  padding:14px 15px;
  border-radius:var(--radius-md);
  overflow:hidden;
  background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--page-accent) 3.5%,var(--surface)));
}
.kpi:after{content:"";position:absolute;inset-inline-end:-22px;inset-block-start:-30px;width:88px;height:88px;border-radius:50%;background:var(--page-accent-soft);pointer-events:none}
.kpi-top{font-size:10px;font-weight:650;position:relative;z-index:1}.kpi-icon{width:32px;height:32px;border-radius:9px;color:var(--page-accent);background:var(--page-accent-soft);position:relative;z-index:1}
.kpi b{font-size:27px;font-weight:820;color:var(--ink);font-variant-numeric:tabular-nums;position:relative;z-index:1}.kpi small{font-size:9px;position:relative;z-index:1}

.dashboard-grid{grid-template-columns:minmax(0,1.65fr) minmax(320px,.78fr);gap:12px;margin-top:12px}
.chart-wrap{height:260px}
.health-item{padding:10px 11px;border-radius:10px}.health-item b{font-size:11.5px}.health-item span{font-size:9px}
.alert-row{border-radius:11px;padding:10px}.alert-number{width:38px;height:38px;border-radius:10px}.alert-row h4{font-size:11px}.alert-row p{font-size:9px}

/* Toolbars, forms and buttons */
.toolbar{gap:8px;margin-bottom:11px}
.search-box,.toolbar select,.release-form input,.release-form textarea,.release-form select,.login-input{
  border-color:var(--line-strong);
  background:var(--surface);
  color:var(--ink);
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.search-box{height:40px;border-radius:10px;max-width:560px}.toolbar select{height:40px;border-radius:10px;font-size:11px}
.search-box:focus-within,.release-form input:focus,.release-form textarea:focus,.release-form select:focus,.login-input:focus{
  border-color:var(--page-accent)!important;
  box-shadow:0 0 0 3px var(--page-accent-soft)!important;
  outline:0;
}
.primary-btn{
  min-height:40px;
  border-radius:10px;
  padding:0 16px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--page-accent) 84%,#000),var(--page-accent))!important;
  box-shadow:0 7px 16px color-mix(in srgb,var(--page-accent) 15%,transparent);
  font-size:11px;
  font-weight:780;
  transition:transform .15s ease,filter .15s ease;
}
.primary-btn:hover{filter:brightness(1.04);transform:translateY(-1px)}
.secondary-btn,.tiny-btn{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}
.secondary-btn:hover,.tiny-btn:hover{border-color:var(--page-accent);color:var(--page-accent);background:var(--page-accent-soft)}
.text-btn{color:var(--page-accent);font-size:10.5px}
.result-count{font-size:9.5px}

/* Modern data tables */
.table-wrap{
  max-width:100%;
  overflow:auto;
  border-color:var(--line);
  border-radius:var(--radius-md);
  background:var(--surface);
  box-shadow:none;
  scrollbar-width:thin;
  scrollbar-color:#B9C5D2 transparent;
}
.table-wrap::-webkit-scrollbar{height:8px;width:8px}.table-wrap::-webkit-scrollbar-thumb{background:#B9C5D2;border-radius:10px;border:2px solid transparent;background-clip:padding-box}
.data-table{min-width:760px;width:100%;font-variant-numeric:tabular-nums}
.data-table th,.data-table td{padding:10px 11px;font-size:10.5px;border-bottom:1px solid var(--line);line-height:1.45}
.data-table th{top:0;background:color-mix(in srgb,var(--page-accent) 5%,var(--surface2));color:#516172;font-size:9.5px;font-weight:780;letter-spacing:.05px}
.data-table tbody tr:nth-child(even) td{background:color-mix(in srgb,var(--surface2) 55%,transparent)}
.data-table tbody tr:hover td{background:var(--page-accent-soft)!important}
.name-cell b{font-size:11.5px}.name-cell small{font-size:8.5px}.badge{min-height:22px;padding:0 8px;font-size:8.5px;border-radius:999px}
#knowledge .data-table,#reports .data-table,#audit .data-table{min-width:820px}

/* Operational map and live panels */
.operations-layout{grid-template-columns:minmax(0,1fr) minmax(320px,370px);gap:12px}
.map-panel{border-radius:var(--radius-lg)}
.map-toolbar{height:54px;padding:0 14px;background:var(--surface)}
.map-toolbar b{font-size:12px}.map-toolbar>div>span{font-size:8.5px}
#operationsMap{height:clamp(500px,66vh,760px);min-height:500px;background:#DDE7EF}
.active-trips{max-height:calc(66vh + 54px);gap:8px;padding-inline-end:2px}
.trip-card{border-radius:12px;padding:11px;background:var(--surface);transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.trip-card:hover{border-color:var(--page-accent);background:var(--page-accent-soft);box-shadow:var(--shadow-sm);transform:translateY(-1px)}
.trip-meta div{background:var(--surface2);border:1px solid var(--line)}

/* Settings, administration, support, launch */
.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.choice-grid{gap:9px}.choice-card{min-height:88px;border-radius:12px;padding:14px}.choice-card.selected{border-color:var(--page-accent);box-shadow:0 0 0 3px var(--page-accent-soft);background:var(--page-accent-soft)}
.admin-access-grid{grid-template-columns:minmax(0,1.45fr) minmax(360px,.72fr);gap:12px}.admin-form-panel{top:calc(var(--topbar-h) + 14px)}
.permissions-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.permission-item{border-radius:10px;padding:9px}.permission-item b{font-size:9.5px}.permission-item small{font-size:7.5px}
.launch-score-wrap{grid-template-columns:210px minmax(0,1fr);gap:12px}.launch-score-card{min-height:142px;border-radius:16px;background:linear-gradient(145deg,#07111F,color-mix(in srgb,var(--page-accent) 70%,#07111F))}
.launch-auto-grid{gap:8px}.launch-check{border-radius:11px;padding:11px}.launch-check b{font-size:10.5px}.launch-check small{font-size:8.5px}
.v5-two-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:12px}.quality-grid{gap:8px}.quality-card{border-radius:11px;padding:11px}.quality-card b{font-size:21px}

/* System, app management and drawer */
.system-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.system-card{border-radius:14px;padding:15px}.system-card h3{font-size:13px}.kv-row{font-size:9.5px;padding:8px 0}
.app-grid{grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:12px}.release-version{border-radius:13px;background:linear-gradient(145deg,#07111F,#0B4FA3)}
.detail-drawer{width:min(560px,94vw);background:var(--surface);box-shadow:25px 0 70px rgba(3,12,24,.24)}.drawer-head{height:72px}.drawer-body{padding:16px}.detail-cell{border-radius:10px;background:var(--surface2)}

/* Corporate Login */
.login-body{background:#EAF0F6}
.login-shell{grid-template-columns:minmax(0,1.12fr) minmax(430px,.88fr)}
.login-brand-panel{
  padding:54px 64px;
  background:
    radial-gradient(circle at 24% 20%,rgba(40,135,255,.48),transparent 31%),
    radial-gradient(circle at 75% 78%,rgba(14,165,198,.18),transparent 25%),
    linear-gradient(140deg,#05080D 0%,#091A2D 45%,#0B4FA3 100%);
}
.login-copy h1{font-size:43px;letter-spacing:-1px}.login-copy p{font-size:14px;max-width:580px;color:#C8D6E5}.security-note{color:#8FA8BF}
.login-form-panel{background:linear-gradient(145deg,#F7F9FC,#EEF3F8)}
.login-card{width:min(440px,92vw);padding:30px;border-radius:20px;border-color:#D6E0EB;box-shadow:0 28px 80px rgba(3,12,24,.12)}
.login-card h2{font-size:21px}.small-logo{background:linear-gradient(145deg,#07111F,#1565D8)}

/* Development center */
.dev-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.dev-stat{background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:14px;box-shadow:var(--shadow-sm)}
.dev-stat span{display:block;color:var(--muted);font-size:9px}.dev-stat b{display:block;margin-top:6px;font-size:19px;color:var(--ink)}.dev-stat small{display:block;margin-top:5px;color:var(--muted);font-size:8px}
.dev-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.dev-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:14px;min-height:135px;overflow:hidden}
.dev-card:before{content:"";position:absolute;inset-inline-start:0;inset-block:0;width:3px;background:var(--page-accent)}
.dev-card .dev-stage{font-size:8px;font-weight:850;letter-spacing:.8px;color:var(--page-accent)}.dev-card h4{font-size:12px;margin:7px 0 6px}.dev-card p{font-size:9px;color:var(--muted);line-height:1.65;margin:0}.dev-card .badge{margin-top:11px}
.dev-principles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.dev-principle{padding:12px;border-radius:11px;background:var(--surface2);border:1px solid var(--line)}.dev-principle b{display:block;font-size:10.5px}.dev-principle span{display:block;margin-top:4px;color:var(--muted);font-size:8.5px}

/* Dark theme — same visual hierarchy, not merely inverted colors */
html[data-theme="dark"]{
  --bg:#070B11;
  --surface:#0E151F;
  --surface2:#131D29;
  --surface3:#192534;
  --ink:#EAF1F8;
  --muted:#93A4B5;
  --muted2:#6F8295;
  --line:#223143;
  --line-strong:#314357;
  --shadow-sm:0 2px 12px rgba(0,0,0,.18);
  --shadow-md:0 14px 34px rgba(0,0,0,.25)
}
html[data-theme="dark"] .topbar{background:rgba(8,13,20,.91);border-color:var(--line)}
html[data-theme="dark"] .page-head{background:linear-gradient(100deg,var(--surface) 0%,var(--surface) 62%,var(--page-accent-soft) 100%)}
html[data-theme="dark"] .panel,html[data-theme="dark"] .kpi,html[data-theme="dark"] .table-wrap,html[data-theme="dark"] .system-card,html[data-theme="dark"] .quality-card,html[data-theme="dark"] .dev-stat,html[data-theme="dark"] .dev-card{background:var(--surface)!important;border-color:var(--line)!important}
html[data-theme="dark"] .data-table th{background:color-mix(in srgb,var(--page-accent) 7%,var(--surface2));color:#A9BAC9}
html[data-theme="dark"] .data-table tbody tr:nth-child(even) td{background:#111A25}
html[data-theme="dark"] .data-table tbody tr:hover td{background:var(--page-accent-soft)!important}
html[data-theme="dark"] .trip-meta div,html[data-theme="dark"] .dev-principle{background:var(--surface2)}
html[data-theme="dark"] .login-form-panel{background:linear-gradient(145deg,#080D14,#0D1520)}
html[data-theme="dark"] .login-card{background:#0E151F;border-color:#263548}
html[data-theme="dark"] #operationsMap{filter:brightness(.86) saturate(.9)}

/* RTL / LTR consistency */
html[dir="rtl"] .data-table th,html[dir="rtl"] .data-table td{text-align:right}
html[dir="ltr"] .data-table th,html[dir="ltr"] .data-table td{text-align:left}
html[dir="ltr"] .result-count{margin-left:auto;margin-right:0}
html[dir="ltr"] .page-head{text-align:left}
html[dir="rtl"] .page-head{text-align:right}

/* Responsive company layouts */
@media(min-width:1600px){
  :root{--sidebar-w:278px}.main-content{padding-inline:30px}.kpi-grid{gap:12px}.panel{padding:18px}.data-table th,.data-table td{padding:11px 13px;font-size:11px}
}
@media(max-width:1360px){
  .kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dev-overview-grid,.dev-board{grid-template-columns:repeat(2,minmax(0,1fr))}.dev-principles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-grid{grid-template-columns:minmax(0,1.4fr) minmax(300px,.8fr)}
}
@media(max-width:1180px){
  :root{--sidebar-w:84px}.shell{grid-template-columns:84px minmax(0,1fr)}.sidebar{width:84px;padding:16px 9px}.sidebar-brand>div:last-child,.sidebar-section-title,.nav-item span,.sidebar-footer div{display:none}.sidebar-brand{justify-content:center}.nav-item{grid-template-columns:1fr;place-items:center;padding:0}.main-content{padding-inline:18px}
  .dashboard-grid,.operations-layout,.app-grid,.admin-access-grid,.v5-two-grid{grid-template-columns:1fr}.admin-form-panel{position:static}.system-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  :root{--topbar-h:62px}.shell{display:block}.sidebar{position:fixed;width:276px;right:-290px;top:0;z-index:80;padding:18px 12px;box-shadow:-30px 0 60px rgba(0,0,0,.25);transition:right .2s ease}.sidebar.mobile-open{right:0}.sidebar-brand>div:last-child,.sidebar-section-title,.nav-item span,.sidebar-footer div{display:block}.nav-item{grid-template-columns:22px 1fr auto;place-items:initial}.mobile-menu{display:block}.topbar{padding:0 12px}.main-content{padding:12px 12px 32px}.page-head{min-height:auto;padding:15px 16px;align-items:flex-start;flex-direction:column}.page-head h2{font-size:22px}.page-head p{font-size:11.5px}.kpi-grid,.v5-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-grid,.launch-score-wrap{grid-template-columns:1fr}.launch-auto-grid{grid-template-columns:repeat(2,1fr)}.system-grid{grid-template-columns:1fr}.permissions-grid{grid-template-columns:1fr 1fr}.dev-overview-grid,.dev-board,.dev-principles{grid-template-columns:1fr 1fr}.login-shell{grid-template-columns:1fr}.login-brand-panel{display:none}.login-form-panel{min-height:100vh;padding:16px}.login-card{padding:24px}.table-wrap{border-radius:11px}.data-table{min-width:720px}
}
@media(max-width:520px){
  .main-content{padding-inline:9px}.topbar h1{font-size:15px}.top-actions{gap:4px}.icon-btn,.logout-btn{height:36px}.kpi-grid,.v5-kpis,.launch-auto-grid,.permissions-grid,.dev-overview-grid,.dev-board,.dev-principles{grid-template-columns:1fr}.kpi{min-height:92px}.kpi b{font-size:24px}.panel{padding:12px}.page-head{border-radius:13px}.page-head h2{font-size:20px}.toolbar{align-items:stretch}.search-box{min-width:100%;max-width:none}.toolbar select{flex:1}.data-table{min-width:680px}.choice-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* ===== MAP CONTROL CENTER V1 ===== */
#mapscenter{--page-accent:#0B84D8}.map-control-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px;margin-bottom:14px}.map-control-kpi{min-height:102px;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--surface,#fff)}.map-control-kpi span{display:block;color:var(--muted);font-size:9.5px}.map-control-kpi b{display:block;margin-top:8px;font-size:24px;color:var(--ink)}.map-control-kpi small{display:block;margin-top:7px;color:var(--muted);font-size:8.5px}.map-control-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.65fr);gap:14px}.maps-svg-toolbar{display:flex;gap:6px;margin-bottom:8px}#mapsCoverageSvgWrap{height:520px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#dcecf4;cursor:grab}#mapsCoverageSvg{width:100%;height:100%;display:block}.maps-sea-bg{fill:#dcecf4}html[data-theme="dark"] .maps-sea-bg{fill:#0d1822}.maps-region-path{stroke-width:1.6;vector-effect:non-scaling-stroke;cursor:pointer;transition:opacity .12s}.maps-region-path:hover{opacity:.75}.maps-region-label{font-size:13px;font-weight:800;fill:var(--ink);paint-order:stroke;stroke:var(--surface,#fff);stroke-width:3px;stroke-linejoin:round;pointer-events:none}.map-control-note{margin-top:8px;font-size:9px;color:var(--muted)}.map-resolver-form{display:grid;grid-template-columns:1fr 1fr;gap:9px}.map-resolver-form label{display:grid;gap:5px;color:var(--muted);font-size:9px}.map-resolver-form input{height:42px;border:1px solid var(--line);border-radius:10px;padding:0 10px;background:var(--surface,#fff);color:var(--ink)}.map-resolver-form button{grid-column:1/-1}.map-resolver-result{margin-top:11px;min-height:90px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface2,#f7fafb);font-size:10px;line-height:1.7;color:var(--muted)}.map-control-separator{height:1px;background:var(--line);margin:14px 0}.map-control-facts{display:grid;gap:8px}.map-control-fact{display:flex;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface2,#f7fafb)}.map-control-fact span{font-size:9px;color:var(--muted)}.map-control-fact b{font-size:10px}.map-package-name{display:grid;gap:2px}.map-package-name small{font-size:8px;color:var(--muted)}.map-sha{display:inline-block;max-width:135px;direction:ltr;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Consolas,monospace;font-size:8px;color:var(--muted)}.map-copy-btn{height:30px;border:1px solid var(--line);border-radius:8px;background:var(--surface,#fff);color:var(--ink);padding:0 9px;cursor:pointer;font-size:8.5px}.map-copy-btn:hover{border-color:#0B84D8;color:#0B84D8}@media(max-width:1250px){.map-control-kpis{grid-template-columns:repeat(3,1fr)}.map-control-layout{grid-template-columns:1fr}}@media(max-width:720px){.map-control-kpis{grid-template-columns:repeat(2,1fr)}#mapsCoverageSvgWrap{height:400px}.map-resolver-form{grid-template-columns:1fr}.map-resolver-form button{grid-column:auto}}@media(max-width:480px){.map-control-kpis{grid-template-columns:1fr}}
/* ===== /MAP CONTROL CENTER V1 ===== */
