:root{color-scheme:dark;--bg:#08111e;--panel:#101e2f;--panel2:#122236;--panel3:#1b3047;--stroke:#2a3c51;--stroke2:#374c63;--text:#e8f0fa;--muted:#93a7ba;--soft:#657f9b;--aqua:#50e2ca;--aqua-dark:#183e42;--amber:#ffca7a;--blue:#8cbcff;--red:#ff9898;--green:#a0f0ce;--shadow:0 18px 48px rgba(0,0,0,.16);--radius:17px;--font:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{background:var(--bg);font-family:var(--font);scroll-behavior:smooth}body{margin:0;color:var(--text);font-size:14px;line-height:1.48;min-width:320px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}a{color:var(--aqua)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--aqua);outline-offset:3px}button:focus-visible{position:relative;z-index:2}h1,h2,h3,h4,p{margin-top:0}h1{font-size:27px;letter-spacing:-.8px;line-height:1.15;font-weight:750}h2{font-size:19px;letter-spacing:-.4px}h3{font-size:15px}p{margin-bottom:12px}small{font-size:12px}svg{flex-shrink:0}strong{font-weight:700}.muted{color:var(--muted)}.soft{color:var(--soft)}.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hidden,[hidden]{display:none!important}
.app-shell{display:flex;min-height:100vh;min-height:100dvh}.sidebar{width:244px;flex:0 0 244px;background:#0c1727;border-right:1px solid #223348;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;height:100dvh;z-index:5;padding:30px 16px 22px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text);padding:1px 10px 35px}.brand-icon{width:41px;height:41px}.brand-name{font-weight:800;letter-spacing:.7px;font-size:16px;line-height:1.15}.brand-name small{display:block;font-weight:600;font-size:9px;letter-spacing:2.5px;color:var(--aqua);margin-top:4px}.side-section-label{font-size:10px;letter-spacing:2px;text-transform:uppercase;color:var(--soft);padding:7px 16px 12px;font-weight:750}.nav-links{display:grid;gap:6px}.nav-link{display:flex;align-items:center;gap:12px;text-align:left;border:1px solid transparent;border-radius:11px;background:transparent;color:#97abc0;padding:12px 13px;min-height:47px;font-weight:550;text-decoration:none;transition:background .12s,border-color .12s}.nav-link svg{width:18px;height:18px}.nav-link:hover{color:var(--text);background:#18283c}.nav-link.active{border-color:#28544f;background:#15332f;color:#a6ffed;font-weight:700}.nav-count{margin-left:auto;font-size:11px;background:#24403e;padding:2px 8px;border-radius:20px}.sidebar-bottom{margin-top:auto;padding:18px 10px 4px;border-top:1px solid var(--stroke)}.system-online{display:flex;gap:8px;align-items:center;text-transform:uppercase;font-size:10px;letter-spacing:1.4px;font-weight:800;color:var(--muted)}.online-dot{width:7px;height:7px;border-radius:50%;background:var(--aqua);box-shadow:0 0 11px #50e2ca70}.sidebar-foot{color:var(--soft);font-size:11px;margin-top:11px}.main-area{flex:1;min-width:0;max-width:1800px;margin:0 auto;width:100%;padding:0 39px 45px}.topbar{height:101px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #25364a;margin-bottom:32px;gap:20px}.topbar-breadcrumb{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--muted)}.topbar-breadcrumb b{color:var(--text);font-weight:650}.topbar-right{display:flex;align-items:center;gap:19px}.clock{font-size:14px;font-weight:700;letter-spacing:.4px}.clock-date{font-size:11px;color:var(--muted);text-align:right;margin-top:2px}.user-chip{width:35px;height:35px;background:#20384e;border:1px solid #3a5770;border-radius:10px;display:grid;place-items:center;color:#b1fbee;font-weight:750;font-size:12px}
.page-top{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:25px}.eyebrow{font-size:10px;text-transform:uppercase;color:var(--aqua);letter-spacing:2.5px;font-weight:750;margin:0 0 9px}.page-top h1{margin:0 0 7px}.page-description{color:var(--muted);margin:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 16px;min-height:43px;border-radius:10px;border:1px solid var(--stroke2);background:#1d3045;color:var(--text);text-decoration:none;font-weight:700;font-size:13px;transition:filter .12s,transform .12s}.button:hover:not(:disabled){filter:brightness(1.13)}.button:active:not(:disabled){transform:translateY(1px)}.button svg{width:16px;height:16px}.button-primary{border-color:#53eacb;background:var(--aqua);color:#052526}.button-primary:hover{background:#70efdb}.button-secondary{background:#132338}.button-quiet{border-color:transparent;background:transparent;color:#bdd0e1}.button-danger{border-color:#66414a;background:#38202b;color:#ffc0bd}.button-sm{padding:6px 10px;min-height:35px;font-size:12px}.button-lg{font-size:15px;min-height:51px;padding:12px 20px}.button-full{width:100%}.button-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline-link{background:transparent;border:0;padding:5px 0;color:var(--aqua);font-weight:650;text-decoration:none}.inline-link:hover{text-decoration:underline}.icon-button{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--stroke);border-radius:9px;background:#17293d;color:var(--muted)}.icon-button svg{width:16px;height:16px}
.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.stat-card{padding:19px 20px;background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius);min-height:112px;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;left:20px;top:0;width:37px;height:2px;background:#345976}.stat-card.accent:before{background:var(--aqua)}.stat-label{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:1.1px;font-weight:750;margin-bottom:12px}.stat-number{font-size:27px;letter-spacing:-1px;font-weight:800;line-height:1.1}.stat-sub{color:var(--muted);font-size:11px;margin-top:6px}.dashboard-grid{display:grid;grid-template-columns:minmax(280px,.83fr) minmax(410px,1.17fr);gap:20px;align-items:start}.stacked{display:grid;gap:20px}.panel{background:var(--panel);border:1px solid var(--stroke);border-radius:var(--radius);overflow:hidden}.panel-pad{padding:21px}.panel-head{padding:19px 21px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #263950}.panel-head h2{margin:0;font-size:15px}.panel-head-label{display:flex;align-items:center;gap:10px}.panel-head-label svg{color:var(--aqua);width:18px;height:18px}.panel-content{padding:10px 13px}.mission-row{display:flex;align-items:center;gap:12px;border:1px solid transparent;background:transparent;width:100%;color:var(--text);text-align:left;border-radius:12px;padding:13px 12px;margin:3px 0;min-height:77px}.mission-row:hover{background:#192c40}.mission-row.selected{border-color:#2e6e69;background:#163431}.mission-type{height:42px;width:42px;display:grid;place-items:center;background:#20344a;color:#c1def1;border:1px solid #325069;border-radius:12px}.mission-type svg{width:20px;height:20px}.mission-row-body{min-width:0;flex:1}.mission-row-name{font-weight:700;font-size:13px;margin-bottom:4px}.mission-row-route{font-size:12px;color:var(--muted)}.mission-row-time{text-align:right;flex-shrink:0}.mission-row-time b{font-size:12px}.mission-row-time span{display:block;font-size:10px;color:var(--muted);margin-top:5px}.section-hint{color:var(--muted);font-size:12px;padding:16px 8px;line-height:1.5}
.status{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border:1px solid var(--stroke2);border-radius:7px;font-size:10px;text-transform:uppercase;letter-spacing:1.2px;font-weight:800;color:#c0d0e0;white-space:nowrap}.status:before{content:"";width:6px;height:6px;border-radius:50%;background:#8097ad}.status-active{background:#173b35;color:#a0f6d9;border-color:#316e5f}.status-active:before{background:var(--aqua)}.status-ready{background:#443720;color:#ffd492;border-color:#6c5834}.status-ready:before{background:#ffc36a}.status-completed{background:#25374b;color:#bbdfff}.status-completed:before{background:#86bffb}.status-cancelled{background:#372833;color:#f2acb1}.status-cancelled:before{background:#e19aaa}
.briefing{position:relative}.briefing .panel-head{align-items:center}.briefing-body{padding:24px}.briefing-banner{border:1px solid #2e4f5d;border-radius:13px;background:radial-gradient(ellipse at 82% 8%,#214b5255,transparent 47%),linear-gradient(135deg,#193044,#112439 75%);padding:22px 23px 20px;position:relative;overflow:hidden}.briefing-banner:after{content:"";position:absolute;right:-29px;top:-29px;width:170px;height:170px;border:1px solid #538a8a21;border-radius:50%;box-shadow:0 0 0 31px #5689880a,0 0 0 64px #56898808;pointer-events:none}.briefing-code{color:var(--aqua);font-size:11px;letter-spacing:1.5px;margin-bottom:9px;font-weight:800}.briefing-banner h2{font-size:24px;line-height:1.2;letter-spacing:-.7px;max-width:380px;position:relative;margin-bottom:9px}.briefing-sub{position:relative;color:#a6bacb;font-size:12px}.route-map{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;margin:24px 0 16px}.route-pins{display:flex;flex-direction:column;align-items:center;padding-top:10px}.pin-ring{height:11px;width:11px;border:2px solid var(--aqua);border-radius:50%}.pin-target{height:12px;width:12px;background:var(--aqua);border:3px solid #19403e;box-shadow:0 0 0 1px var(--aqua);border-radius:50%}.route-line{flex:1;min-height:32px;width:1px;border-left:1px dashed #558c95;margin:6px 0}.route-points{display:flex;flex-direction:column;justify-content:space-between;gap:28px}.route-label{font-size:10px;letter-spacing:1.35px;text-transform:uppercase;color:var(--muted);margin-bottom:4px;font-weight:700}.route-title{font-size:15px;font-weight:750;overflow-wrap:anywhere}.divider{border:0;border-top:1px solid var(--stroke);margin:21px 0}.tiny-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:1.2px;font-weight:750}.mode-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.mode-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid #34506b;background:#17293c;color:#afc3d6;border-radius:9px;padding:9px 11px;font-weight:650;min-height:40px}.mode-pill svg{width:15px;height:15px}.mode-pill.selected{background:var(--aqua-dark);border-color:#3bcdb1;color:#c3fff1}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:18px 0}.info-tile{border:1px solid var(--stroke);background:#15273a;border-radius:11px;padding:14px}.info-tile .tiny-label{margin-bottom:6px}.info-tile .value{font-size:17px;font-weight:750;line-height:1.25}.info-tile .value.small-value{font-size:13px}.info-tile .detail{font-size:11px;color:var(--muted);margin-top:5px}.countdown-area{border:1px solid #3f6966;background:#13312f;border-radius:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;margin:18px 0 14px}.countdown-area .tiny-label{color:#b5ded7}.countdown-value{font-size:24px;font-weight:850;color:#b9ffeb;line-height:1.25}.countdown-area .hint{font-size:11px;color:#9bbdb9;margin-top:5px}.countdown-icon{color:#5ce7cf}.countdown-icon svg{width:31px;height:31px}.action-stack{display:grid;gap:9px}.action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.action-foot{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.5}.external-fallback{word-break:break-word;font-size:11px;margin-top:9px}.external-fallback a{font-size:11px}.provider-title{font-weight:750;font-size:13px}.provider-sub{font-size:11px;color:var(--muted)}.provider-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:20px 0 11px}.provider-card{border:1px solid var(--stroke);padding:13px 15px;border-radius:11px;background:#14263a;margin-top:9px}.provider-card .row-inline{display:flex;align-items:center;justify-content:space-between;gap:10px}.provider-time{font-size:19px;font-weight:850;letter-spacing:-.4px}.provider-line{color:var(--muted);font-size:12px;margin:6px 0}.provider-meta{font-size:11px;color:var(--muted);display:flex;flex-wrap:wrap;gap:10px}.source-note{color:var(--soft);font-size:10px;margin-top:9px}.warning{color:#ffc591;background:#392b1d;border:1px solid #694d2b;padding:11px 12px;border-radius:9px;font-size:12px;line-height:1.5}.data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.weather-tile{border:1px solid var(--stroke);border-radius:10px;background:#13263a;padding:13px}.weather-value{font-size:23px;font-weight:780;margin:6px 0 0}.weather-meta{font-size:11px;color:var(--muted)}.weather-role{text-transform:uppercase;font-size:10px;color:#c4d2e0;font-weight:700;letter-spacing:1px}.weather-unavailable{font-size:11px;color:var(--muted);margin-top:8px}.briefing-error{background:#342329;border:1px solid #6a3a45;color:#ffcbcb;padding:13px;border-radius:10px;margin:12px 0}
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:15px}.mission-card{border:1px solid var(--stroke);background:var(--panel);border-radius:15px;padding:19px;display:flex;flex-direction:column;gap:14px}.mission-card:hover{border-color:#466478}.mission-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.mission-card-icon{width:40px;height:40px;border-radius:11px;background:#243b50;display:grid;place-items:center;color:var(--aqua)}.mission-card-icon svg{width:19px;height:19px}.mission-card-code{font-size:10px;color:var(--aqua);letter-spacing:1.4px;font-weight:800;margin-bottom:6px}.mission-card h3{font-size:16px;line-height:1.3;margin-bottom:5px}.mission-card-route{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.mission-card-foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px;border-top:1px solid var(--stroke);padding-top:13px;margin-top:auto}.mission-card-actions{display:flex;gap:5px;flex-wrap:wrap}.tag{border:1px solid var(--stroke2);border-radius:7px;padding:4px 8px;color:#a6b9ce;font-size:11px;font-weight:600}.toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;margin:0 0 21px;flex-wrap:wrap}.toolbar input{max-width:320px}.filters{display:flex;gap:6px;flex-wrap:wrap}.filter{border:1px solid var(--stroke);background:#13243a;border-radius:8px;color:#b3c6da;padding:8px 12px;font-size:12px;font-weight:650;min-height:38px}.filter.active{background:#193a39;color:#b3fae9;border-color:#3e9482}.searchbox{display:flex;gap:9px;align-items:center;position:relative;flex:1;max-width:340px}.searchbox svg{position:absolute;left:12px;top:11px;color:var(--muted);width:15px;height:15px}.searchbox input{padding-left:38px}.schedule-list{display:grid;gap:10px}.schedule-item{border:1px solid var(--stroke);border-radius:13px;background:var(--panel);display:grid;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:19px;padding:15px 19px}.schedule-date{padding-right:14px;border-right:1px solid var(--stroke);display:grid;gap:3px}.schedule-date strong{font-size:19px;letter-spacing:-.5px}.schedule-date span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:750;letter-spacing:.5px}.schedule-meta{font-size:12px;color:var(--muted);margin-top:4px}.schedule-name{font-size:14px;font-weight:750}.schedule-actions{display:flex;align-items:center;gap:11px;flex-wrap:wrap}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;border:1px dashed #3b536d;border-radius:16px;padding:45px 24px;background:#111f30;gap:9px}.empty-icon{width:62px;height:62px;display:grid;place-items:center;color:var(--aqua);background:#1a333c;border:1px solid #386b68;border-radius:17px;margin-bottom:8px}.empty-icon svg{width:28px;height:28px}.empty-state h2{margin-bottom:0}.empty-state p{max-width:430px;color:var(--muted);margin:0 0 10px}.subtle-caption{color:var(--muted);font-size:11px;margin:12px 0}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-grid .panel{padding:23px}.settings-grid h2{font-size:17px}.settings-grid .muted{font-size:12px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label,.field-label{font-weight:680;font-size:12px;color:#c5d5e4}.field-hint{color:var(--muted);font-size:11px}.field input,.field textarea,.field select,input.ui-input,select.ui-input{border-radius:10px;border:1px solid #3c536b;background:#0d1c2d;color:var(--text);padding:11px 12px;width:100%;min-height:43px}.field textarea{resize:vertical;min-height:80px}.field input::placeholder,.field textarea::placeholder{color:#748aa2}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid .full{grid-column:1/-1}.check-line{display:flex;align-items:center;gap:10px;font-size:12px;cursor:pointer}.check-line input{accent-color:var(--aqua);width:18px;height:18px}.radio-days{display:flex;flex-wrap:wrap;gap:7px;margin-top:4px}.day-checkbox input{position:absolute;opacity:0}.day-checkbox span{display:grid;place-items:center;width:39px;height:39px;border-radius:9px;border:1px solid var(--stroke2);color:#acbfd1;font-weight:750;cursor:pointer}.day-checkbox input:checked+span{color:#c8fff4;border-color:var(--aqua);background:#1a4542}.day-checkbox input:focus-visible+span{outline:3px solid var(--aqua);outline-offset:2px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding:25px 28px 19px;border-bottom:1px solid var(--stroke)}.dialog-body{padding:25px 28px}.dialog-foot{display:flex;justify-content:flex-end;gap:10px;align-items:center;padding:18px 28px;border-top:1px solid var(--stroke);position:sticky;bottom:0;background:#101d2e}.mission-dialog{padding:0;color:var(--text);background:#101d2e;border:1px solid #496078;border-radius:19px;width:min(680px,calc(100vw - 24px));max-height:min(92dvh,880px);box-shadow:0 30px 100px #0009}.mission-dialog::backdrop{background:#020811d9;backdrop-filter:blur(3px)}.dialog-section{font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--aqua);margin:20px 0 12px}.dialog-section:first-child{margin-top:0}.location-autocomplete{position:relative}.suggestions{position:absolute;z-index:8;left:0;right:0;top:calc(100% + 5px);background:#21374d;border:1px solid #476783;border-radius:10px;box-shadow:var(--shadow);max-height:240px;overflow:auto}.suggest-option{width:100%;display:block;border:0;border-bottom:1px solid #3a5268;background:transparent;color:var(--text);text-align:left;padding:11px 12px}.suggest-option:hover,.suggest-option:focus-visible{background:#2a5060}.suggest-option small{display:block;color:var(--muted)}.notice{background:#132d3b;border:1px solid #31526a;padding:13px 14px;border-radius:10px;font-size:12px;color:#bbd2e3;line-height:1.55}.app-message{background:#231d16;color:#ffcf98;border:1px solid #614729;border-radius:10px;padding:13px;font-size:12px;margin:10px 0}
.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(375px,.85fr);background:var(--bg)}.login-visual{background:radial-gradient(circle at 45% 45%,#20504e 0,transparent 42%),radial-gradient(circle at 65% 65%,#163551 0,transparent 45%),#09182b;display:flex;align-items:center;justify-content:center;position:relative;border-right:1px solid #304154;overflow:hidden}.login-visual:before,.login-visual:after{content:"";position:absolute;width:530px;height:530px;border:1px solid #386d7960;border-radius:50%;box-shadow:0 0 0 65px #386d7915,0 0 0 150px #386d7910}.login-visual:after{width:230px;height:230px;border:1px dashed #86cdb345;box-shadow:none}.login-compass{position:relative;z-index:2;text-align:center}.login-compass svg{width:105px;height:105px;filter:drop-shadow(0 0 26px #4be9cd45)}.login-tagline{font-size:11px;letter-spacing:3px;color:var(--aqua);font-weight:800;margin-top:22px}.login-title{font-size:37px;font-weight:850;letter-spacing:-1.5px;margin:10px 0}.login-sub{color:#bbced9;max-width:315px;margin:auto}.login-panel{display:flex;justify-content:center;align-items:center;padding:32px 30px}.login-card{width:min(380px,100%)}.login-card h1{font-size:30px;margin:9px 0 12px}.login-card form{display:grid;gap:17px;margin:27px 0}.login-card .button{min-height:49px}.login-bottom{border-top:1px solid var(--stroke);padding-top:22px;color:var(--muted);font-size:11px}.toast-region{position:fixed;bottom:24px;right:24px;z-index:90;display:grid;gap:8px;max-width:min(400px,calc(100vw - 34px))}.toast{padding:13px 16px;border:1px solid #4b8b7b;background:#17362f;color:#dcfff5;border-radius:11px;box-shadow:var(--shadow);font-size:13px}.toast.error{background:#43262d;border-color:#9b4c57;color:#ffe0de}.skeleton{background:linear-gradient(90deg,#243448,#31475a,#243448);background-size:200% 100%;animation:load 1.4s infinite;border-radius:8px;min-height:50px}.loading-screen{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.loading-mark{display:grid;place-items:center;font-size:23px;font-weight:800;letter-spacing:2px;color:var(--aqua);width:72px;height:72px;border-radius:18px;background:#1c393e;border:1px solid #427e78}@keyframes load{0%{background-position:200% 0}100%{background-position:-200% 0}}
@media(max-width:1220px){.main-area{padding:0 25px 35px}.sidebar{width:213px;flex-basis:213px}.dashboard-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.briefing-body{padding:18px}}
@media(max-width:980px){.sidebar{width:77px;flex-basis:77px;padding:23px 12px}.brand{padding:1px 5px 32px}.brand-name,.side-section-label,.nav-link span:not(.nav-count),.sidebar-bottom{display:none}.nav-link{justify-content:center;padding:13px 8px}.nav-count{display:none}.nav-link svg{width:20px;height:20px}.dashboard-grid{grid-template-columns:1fr}.topbar{height:82px}.settings-grid{grid-template-columns:1fr}}
@media(max-width:650px){.app-shell{display:block}.sidebar{position:sticky;top:0;left:0;right:0;width:100%;height:auto;padding:9px 13px;background:#0a1626ed;backdrop-filter:blur(14px);border-right:0;border-bottom:1px solid #2d4259;flex-direction:row;justify-content:space-between;gap:8px;align-items:center}.brand{padding:0;margin-right:6px}.brand-icon{width:32px;height:32px}.nav-links{display:flex;flex:1;justify-content:flex-end;gap:3px}.nav-link{width:41px;height:42px;min-height:42px;padding:9px 0;border-radius:9px}.nav-link svg{width:19px;height:19px}.main-area{padding:0 15px 35px}.topbar{height:56px;margin-bottom:23px}.topbar-breadcrumb{font-size:11px}.clock{font-size:12px}.clock-date{font-size:10px}.topbar-right{gap:11px}.user-chip{width:29px;height:29px}.page-top{align-items:flex-start}.page-top h1{font-size:23px}.page-top .button{font-size:11px;padding:8px 10px;min-height:39px}.stat-grid{gap:9px;margin-bottom:18px}.stat-card{padding:14px;min-height:95px}.stat-label{font-size:10px;margin-bottom:8px}.stat-number{font-size:23px}.dashboard-grid,.stacked{gap:14px}.briefing-body{padding:15px}.briefing-banner{padding:18px}.briefing-banner h2{font-size:21px}.panel-head{padding:16px}.panel-pad{padding:15px}.info-grid{gap:8px}.info-tile{padding:11px}.info-tile .value{font-size:15px}.countdown-area{padding:13px}.countdown-value{font-size:21px}.button-lg{font-size:14px}.schedule-item{grid-template-columns:69px minmax(0,1fr);gap:11px;padding:12px}.schedule-actions{grid-column:1/-1;border-top:1px solid var(--stroke);padding-top:11px}.schedule-date strong{font-size:16px}.form-grid{gap:12px}.dialog-body{padding:19px}.dialog-head,.dialog-foot{padding:18px}.mission-dialog{max-height:94dvh}.card-grid{grid-template-columns:1fr}.login-page{grid-template-columns:1fr;grid-template-rows:180px 1fr}.login-visual:before,.login-visual:after{width:200px;height:200px;box-shadow:0 0 0 25px #386d7915}.login-visual:after{display:none}.login-compass svg{width:45px;height:45px}.login-tagline{font-size:9px;margin-top:7px}.login-title{font-size:23px;margin:3px 0}.login-sub{display:none}.login-panel{align-items:flex-start;padding-top:42px}}
@media(max-width:380px){.stat-grid{grid-template-columns:1fr 1fr}.stat-card{padding:11px}.stat-sub{font-size:10px}.action-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.mode-pill{padding:8px 9px;font-size:11px}.clock-date{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.inline-icon{width:14px;height:14px;display:inline-block;vertical-align:-3px}

@media(max-width:650px){#page{display:flex;flex-direction:column}#page>.page-top{order:0}#page>.dashboard-grid{order:1}#page>.stat-grid{order:2;margin-top:16px}.dashboard-grid>div:last-child{order:-1}}

/* Mission brief 1.1: clear primary action, time selection and every leg. */
.primary-start{background:linear-gradient(120deg,#163c43,#112b40);border:1px solid #357e77;border-radius:13px;padding:14px;margin:14px 0 20px;}
.primary-start .button{min-height:55px;font-size:16px;letter-spacing:.1px;}
.primary-start-note{font-size:12px;color:#b5cdd4;margin-top:9px;line-height:1.5;}
.timing-card{padding:16px;border-radius:13px;border:1px solid var(--stroke2);background:#0a1a2b;margin:18px 0 16px;}
.timing-card .tiny-label{margin-bottom:12px;}
.timing-grid{display:grid;grid-template-columns:minmax(130px,1fr) minmax(170px,1.4fr);gap:11px;align-items:end;}
.timing-grid .field{min-width:0;}
.timing-grid .field label{display:block;margin-bottom:6px;}
.timing-grid .field select,.timing-grid .field input{width:100%;max-width:100%;min-height:44px;}
.timing-submit{grid-column:1/-1;min-height:43px;justify-self:start;}
.timing-card .field-hint{margin-top:12px;margin-bottom:0;line-height:1.45;}
.transit-section{margin:24px 0;min-width:0;}
.transit-selection-status{display:flex;align-items:center;flex-wrap:wrap;gap:7px;background:#112f30;border:1px solid #295b50;color:#c1f5df;padding:12px;border-radius:10px;margin-bottom:14px;font-size:13px;}
.transit-selection-status svg{width:17px;height:17px;}
.transit-selection-status span{color:var(--muted);width:100%;margin-left:23px;}
.transit-selection-status.transit-unavailable{background:#332b21;border-color:#665035;color:var(--amber);}
.connection-options{display:grid;gap:13px;}
.connection-card{border:1px solid var(--stroke2);border-radius:12px;background:#101e2f;padding:14px 14px 12px;min-width:0;}
.connection-selected{border-color:#51cdb8;box-shadow:inset 0 0 0 1px #51cdb849;background:#152c36;}
.connection-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;}
.connection-times{font-size:21px;font-weight:760;color:var(--text);}
.connection-products{color:var(--muted);font-size:12px;margin-top:5px;overflow-wrap:anywhere;}
.connection-side{display:flex;flex-direction:column;gap:7px;align-items:flex-end;}
.connection-side .button{min-height:37px;padding:7px 10px;font-size:12px;}
.connection-badge{background:var(--aqua-dark);border:1px solid #3b8984;color:var(--aqua);border-radius:6px;padding:4px 8px;font-weight:750;font-size:12px;}
.connection-alert-count{color:var(--amber);font-weight:650;font-size:12px;}
.connection-legs{list-style:none;margin:13px 0 0;padding:13px 0 0;border-top:1px solid var(--stroke);display:grid;gap:12px;}
.leg{display:flex;gap:10px;align-items:flex-start;min-width:0;}
.leg-icon{background:#1a3348;color:var(--aqua);padding:7px;border-radius:8px;display:inline-flex;}
.leg-icon svg{width:16px;height:16px;}
.leg-details{flex:1;display:grid;gap:5px;color:#dbe9f7;min-width:0;font-size:12px;overflow-wrap:anywhere;}
.leg-top{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;}
.leg-top strong{font-size:13px;}
.leg-platforms{display:flex;flex-wrap:wrap;gap:5px 15px;color:#b8d4e7;}
.leg-platforms strong{color:#e8fbfa;font-size:13px;}
.leg-change{color:var(--amber);font-weight:640;}
.leg-walk{opacity:.86;}
.leg-walk .leg-icon{background:#24303c;color:#b1bccc;}
.live-alerts{background:#1c292f;border:1px solid #685b40;border-radius:11px;padding:14px;margin-bottom:14px;}
.live-alerts .muted{margin:8px 0 0;}
.alerts-list{padding:0;margin:8px 0 0;list-style:none;display:grid;gap:9px;}
.alert-line{display:flex;align-items:flex-start;gap:9px;border-left:3px solid var(--amber);padding:7px 10px;background:#422c1a;color:#ffe9ca;border-radius:5px;overflow-wrap:anywhere;}
.alert-line svg{width:17px;height:17px;}
.alert-critical{border-color:var(--red);background:#38252a;color:#ffd7d7;}
.connection-alert-preview{border-left:2px solid var(--amber);padding-left:9px;color:#f3d5a9;margin:12px 0 0;font-size:12px;}
@media(max-width:650px){.timing-grid{grid-template-columns:minmax(0,1fr);}.timing-submit{width:100%;}.connection-times{font-size:19px}.connection-side{align-items:flex-start;width:100%;}.connection-side .button{width:100%;}.connection-head{gap:10px}.leg-platforms{flex-direction:column;gap:3px}.primary-start{margin-top:10px;padding:11px;}}

/* Version 1.2: operations-focused briefing, route stages and quick scheduling. */
.mission-basecode{font-size:11px;color:#93c5d7;letter-spacing:.6px;margin-top:9px;overflow-wrap:anywhere}
.plan-shortcut{min-height:46px;margin-bottom:13px;border:1px dashed #43848b!important;background:#173540!important;color:#dcfff7!important}
.briefing-banner{border-left:4px solid #58e8cf;padding-left:20px}
.briefing-banner:before{content:"OPERATIONS / ROUTE CONTROL";display:block;font-size:9px;color:#9bc8cf;font-weight:750;letter-spacing:1.6px;margin-bottom:10px}
.briefing-code{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:12px}
.route-map{background:#0d1d2e;border:1px solid #2f4e60;border-radius:12px;padding:16px 17px;margin:17px 0 19px}
.route-points{gap:15px}.route-points>div:not(:last-child){padding-bottom:12px;border-bottom:1px dashed #35556a}
.aviation-brief{border:1px solid #587b8b;background:linear-gradient(135deg,#152b3a,#0c1b2b);border-radius:12px;padding:17px 18px;margin:21px 0}
.aviation-brief .tiny-label{color:#a3dfed}.aviation-codes{font-size:20px;letter-spacing:1px;font-weight:850;color:#bcfbf3;overflow-wrap:anywhere;margin:11px 0}
.aviation-brief p{font-size:12px;color:#acc6d2;line-height:1.7;margin-bottom:13px}
.transit-alternatives{margin:14px 0 0;border:1px solid #45647a;background:#122a3b;border-radius:12px;overflow:hidden}
.transit-alternatives>summary{display:flex;align-items:center;gap:11px;padding:15px 16px;cursor:pointer;list-style:none;color:#daf8f6;font-weight:700;font-size:13px;min-height:48px}
.transit-alternatives>summary::-webkit-details-marker{display:none}
.transit-alternatives>summary svg{width:16px;height:16px;transform:rotate(90deg);transition:transform .15s ease;color:#68e8d3}
.transit-alternatives[open]>summary svg{transform:rotate(-90deg)}
.transit-alternatives[open]>summary{border-bottom:1px solid #37576c}
.transit-alternatives .connection-options{padding:10px}
.connection-selected{border:2px solid #57cbb5!important;box-shadow:0 0 0 1px #55c7af12;}
.plan-dialog{width:min(540px,calc(100vw - 24px))}
.plan-dialog .dialog-head h2{font-size:19px;margin-top:8px}
.plan-route{border:1px solid #396076;background:#162b40;border-radius:12px;padding:16px;margin-bottom:20px;display:flex;flex-direction:column;gap:8px;overflow-wrap:anywhere}
.plan-route span{font-size:11px;color:#80dccb}.plan-route strong{font-size:15px}
.suggest-empty{padding:15px;color:#cdd8e6;font-size:12px}
@media (max-width:650px){.route-map{padding:12px}.briefing-banner{padding-left:15px}.aviation-codes{font-size:16px}.plan-shortcut{font-size:12px;}.mission-card-foot>div.button-group{width:100%}}

.briefing-description{font-size:12px;color:#c0dbe8;line-height:1.6;margin:12px 0 0;overflow-wrap:anywhere}
