:root{color-scheme:dark;--bg:#080f1e;--surface:#101b2d;--surface2:#0c1729;--edge:#283751;--muted:#8da1bb;--fg:#e7eefd;--purple:#7854ea;--blue:#408eff}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--fg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:filter .14s,background .14s}button:disabled{opacity:.45;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(1.17)}input,select,textarea{background:#15233a;border:1px solid #354760;border-radius:8px;color:#f2f6ff;padding:9px 10px;outline:none;min-width:0;width:100%}input:focus,select:focus,textarea:focus{border-color:#8c76ff;box-shadow:0 0 0 2px #7f60eb25}.shell{width:100%;min-height:100vh;background:radial-gradient(ellipse 1200px 530px at 61% -13%,#1d2153,transparent 60%),#080f1e}.header{justify-content:space-between;gap:14px;padding:14px 21px;border-bottom:1px solid #2b3555;min-height:78px}.header,.header-brand{display:flex;align-items:center}.header-brand{gap:10px;flex-shrink:0}.brand-mark{font-size:32px;color:#8f74ff;line-height:1}.brand-text{font-size:23px;font-weight:850;letter-spacing:-.75px}.brand-text em{font-style:normal;color:#ac8dff}.brand-sub{font-size:10px;color:#bac6e5;margin-top:1px}.pro-tag{font-size:9px;border-radius:18px;background:#332d79;color:#c4bafa;padding:4px 7px;font-weight:800;align-self:start}.main-menu{display:flex;align-items:center;gap:6px;font-size:12px}.main-menu span{padding:12px 13px;border-radius:9px;white-space:nowrap}.main-menu .nav-active{background:#292375;color:white;font-weight:750}.header-actions{display:flex;gap:8px;align-items:center}.header-actions button,.summary-controls button{color:#dfe8ff;border:1px solid #384965;background:#132239;border-radius:8px;padding:10px 13px;white-space:nowrap;font-size:11px;font-weight:700}.header-actions .button-primary{background:#6636d1;border-color:#7e5cff;color:#fff}.app-layout{display:grid;grid-template-columns:260px minmax(520px,1fr) 340px;gap:10px;padding:10px;align-items:start}.main-col,.sidebar{display:grid;gap:10px;min-width:0}.surface{border:1px solid var(--edge);border-radius:13px;background:linear-gradient(145deg,#121d31,#0d1728 82%);box-shadow:inset 0 1px #ffffff09;min-width:0;overflow:hidden}.left-col .surface,.right-col .surface{padding:15px 13px}.side-title{font-size:15px;font-weight:800;letter-spacing:-.2px;display:flex;align-items:center;justify-content:space-between}.muted{color:var(--muted)}.small{font-size:10px;line-height:1.5}.light-count{background:#233750;color:#afc6e2;border-radius:7px;padding:3px 8px;font-size:11px}.category-row{display:flex;flex-wrap:wrap;gap:6px;margin:13px 0}.pill{font-size:10px;border:1px solid #304261;border-radius:7px;padding:6px 9px;color:#a1b1c7}.selected-pill{background:#213c88;color:#fff;border-color:#4565bc}.left-col select{font-size:11px}.add-button,.secondary-wide{width:100%;background:#432a94;border:1px solid #784ff0;color:white;padding:10px 11px;border-radius:8px;font-weight:750;font-size:11px;margin-top:9px}.divider{height:1px;background:#2b3a51;margin:18px -3px 15px}.compound-links{display:grid;gap:6px;margin-top:14px}.compound-links button{display:flex;align-items:center;gap:9px;background:#0d192b;border:1px solid #253956;border-radius:8px;padding:10px;text-align:left;color:#dce7fc;font-size:10px}.compound-links button.active{background:#1c3151;border-color:#506ec7}.compound-links button span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1}.ellipsis{color:#8095b3;font-size:18px}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none}.edit-surface .side-title,.selected-name{margin-bottom:13px}.selected-name{display:flex;align-items:center;gap:8px;border:1px solid #324361;border-radius:8px;padding:10px;font-size:11px;background:#16243a}.field{display:grid;gap:5px;font-size:10px;color:#bacbe2;font-weight:650;min-width:0}.field input,.field select{font-size:11px;min-height:34px;padding:7px 9px}.field.full{grid-column:1/-1}.edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:10px}.phase-heading{display:flex;align-items:center;justify-content:space-between;font-size:12px}.phase-heading button{background:#332777;border:1px solid #5f4bbb;color:#e9e4ff;border-radius:7px;padding:5px 9px;font-size:10px}.phase-options{display:grid;gap:5px;margin-top:10px}.phase-options button{display:flex;gap:6px;justify-content:space-between;background:#132339;border:1px solid #2c4262;border-radius:7px;padding:9px;color:#aebfd3;text-align:left;font-size:10px}.phase-options button.picked{background:#223356;border-color:#7e6ed1;color:#f0eaff}.phase-options b{font-size:10px;color:#e6edff}.phase-editor{margin-top:12px;background:#0b182b;border:1px solid #2b3a58;border-radius:9px;padding:9px}.remove-button{border:0;color:#ed9c9e;background:transparent;padding:8px 4px;margin-top:7px;font-size:10px}.main-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:17px 19px;min-height:80px}.main-summary h1{font-size:17px;letter-spacing:-.3px;margin:0 0 6px}.main-summary p{font-size:10px;color:#aec0d9;margin:0}.summary-controls{display:flex;align-items:center;gap:8px}.summary-controls label{display:flex;align-items:center;gap:6px;font-size:10px}.summary-controls input{width:54px;padding:8px 5px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:9px;padding:14px 16px;border-bottom:1px solid #263851}.section-title h2{font-size:14px;letter-spacing:-.15px;margin:0}.section-title>span{font-size:10px;color:#8da4c1}.timeline-scroll{overflow-x:auto;scrollbar-width:thin;scrollbar-color:#43567f #0e192b}.timeline-inner{width:100%}.timeline-line{display:grid;grid-template-columns:200px minmax(0,1fr);border-bottom:1px solid #2a3951;min-height:69px}.timeline-line:last-child{border-bottom:0}.timeline-line:first-child{min-height:39px}.timeline-label{background:#111f33;border:0;border-right:1px solid #314664;display:flex;gap:9px;align-items:center;padding:10px;text-align:left;min-width:0;color:#e4ecfb}.timeline-label span{display:grid;min-width:0}.timeline-label b{font-size:10px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.timeline-label small{font-size:9px;color:#93a6c0;margin-top:4px}.timeline-label-head{font-size:10px;font-weight:800;color:#abc1e1}.weeks-ruler{position:relative;background:#15253b}.weeks-ruler span{position:absolute;border-left:1px solid #354766;top:0;bottom:0;padding:12px 0 0 7px;font-size:10px;color:#bdd0e7}.timeline-track{position:relative;background-image:linear-gradient(90deg,#ffffff13 1px,transparent 0);background-color:#0e1b2e}.phase-bar{position:absolute;top:14px;height:40px;border:1px solid #ffffff48;border-radius:7px;display:flex;justify-content:space-between;align-items:center;overflow:hidden;touch-action:none;cursor:grab;color:#08162a;-webkit-user-select:none;user-select:none;box-shadow:0 4px 18px #02091896}.phase-bar.active{outline:2px solid #fff8;outline-offset:1px;z-index:3}.phase-bar:active{cursor:grabbing}.phase-handle{cursor:ew-resize;padding:10px 5px;flex:none;font-size:15px}.phase-text{font-size:10px;font-weight:850;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1;pointer-events:none}.timeline-footer{padding:11px 16px;color:#91aac2;font-size:10px}.chart-mode{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.chart-mode button{padding:7px 8px;border:1px solid transparent;background:#16243c;color:#abb8cf;font-size:10px;border-radius:7px}.chart-mode button.chosen{background:#3e3384;border-color:#6152c1;color:#fff}.chart-content{padding:10px 13px 0}.curve-svg{width:100%;height:auto;display:block;max-height:330px}.axis-label{font-size:11px;fill:#91a8c0}.chart-empty{height:260px;display:grid;place-content:center;text-align:center;gap:8px;color:#8da6bc;font-size:11px}.chart-empty b{font-size:16px;color:#dfecff}.empty-orbit{font-size:44px;color:#846fff}.chart-legend{display:flex;gap:15px;flex-wrap:wrap;padding:5px 16px;font-size:10px;color:#bfcee4}.legend-entry{display:inline-flex;gap:7px;align-items:center}.legend-line{display:inline-block;width:20px;height:3px;border-radius:5px}.chart-meta{font-size:10px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;color:#8da5bf;padding:6px 16px}.chart-meta strong{color:#d2e5fe}.chart-caption{font-size:10px;color:#8297b2;padding:10px 16px 14px;border-top:1px solid #24334b;line-height:1.5}.warning-bar{background:#5b282c;color:#ffbdbd;padding:11px;font-size:11px}.bottom-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:10px}.cal-pager{display:flex;align-items:center;gap:9px;font-size:10px}.cal-pager button{border:1px solid #445779;background:#253756;color:white;border-radius:6px;font-size:15px;padding:1px 9px}.calendar-list{padding:10px}.calendar-list-day{display:grid;grid-template-columns:75px minmax(0,1fr);border-bottom:1px solid #253851;padding:6px 4px;min-height:36px;gap:6px}.calendar-list-day:last-child{border-bottom:0}.cal-day{color:#9db5d2;font-size:10px}.cal-entry{display:flex;align-items:center;gap:7px;font-size:10px;padding:4px 0}.cal-entry .dot{width:7px;height:7px}.cal-entry span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1}.cal-entry b{font-size:10px;white-space:nowrap}.indicators-surface{padding-bottom:13px}.tech-stat{margin:9px 13px;border:1px solid #32445c;background:#14243b;display:flex;align-items:center;gap:12px;border-radius:8px;padding:11px}.tech-stat b{font-size:21px;color:#a4b6fc;width:40px;text-align:right}.tech-stat span{font-size:10px;color:#bfd0e8}.tech-callout{margin:12px 13px 0;border:1px solid #6c573b;border-radius:8px;color:#e2bb86;background:#302519;padding:11px;font-size:10px;line-height:1.6}.ai-header{display:flex;gap:10px;align-items:center;margin-bottom:16px}.ai-header>div{display:grid;gap:5px;min-width:0}.ai-header strong{font-size:14px}.ai-header small{font-size:10px;color:#a1aee1}.ai-icon{display:grid;place-items:center;font-size:28px;border:1px solid #725bff;background:#24235d;width:43px;height:43px;border-radius:50%;color:#b2a4ff;box-shadow:0 0 20px #594be05d}.ai-state{font-size:9px;background:#153b33;color:#83e7c2;border:1px solid #256457;padding:5px;border-radius:5px;margin-left:auto}.compact-title{padding:12px 0;border:0}.compact-title h2{font-size:13px}.route-cost{display:flex;align-items:center;gap:5px;flex-wrap:wrap;padding:9px;background:#202c48;border-radius:8px;border:1px solid #414475;margin:11px 0;font-size:10px}.route-cost span:first-child{color:#b1bfd4}.route-cost b{color:#bcacff;text-transform:capitalize}.route-cost span:last-child{margin-left:auto;color:#eff2ff}.provider-box{border-radius:9px;border:1px solid #2e3e56;overflow:hidden;margin-bottom:8px}.provider-row{display:flex;justify-content:space-between;gap:6px;align-items:center;padding:10px 8px;border-bottom:1px solid #26374e}.provider-row:last-child{border-bottom:0}.provider-row>div{display:grid;grid-template-columns:9px 1fr;column-gap:7px;row-gap:2px}.provider-row b{font-size:10px;text-transform:capitalize}.provider-row small{font-size:9px;color:#8198bb;grid-column:2}.provider-row>span{font-size:10px;color:#c3d6ec}.connection-dot{width:7px;height:7px;background:#626e80;border-radius:50%;align-self:center}.connection-dot.connected{background:#40dfb3}.ai-flags{display:flex;justify-content:space-between;gap:10px;color:#91a9c6;font-size:10px;margin-top:10px}.ai-flags b{color:#d7e7fa}.secondary-wide{background:#1e3151;border-color:#49649c}.ai-report textarea{width:100%;height:68px;resize:vertical;font-size:11px;margin:6px 0}.ai-primary{width:100%;border:1px solid #7e60e2;background:#653cd2;color:white;font-weight:800;padding:11px;border-radius:8px;font-size:11px}.ai-tabbar{display:flex;gap:5px;margin:12px 0 8px;border-bottom:1px solid #2a3b56;padding-bottom:7px}.ai-tabbar button{border:0;background:transparent;color:#a1b0cb;font-size:10px;padding:6px 10px;border-radius:6px}.ai-tabbar button.picked{background:#343061;color:white}.cost-result,.report-output{max-height:360px;overflow-y:auto;background:#0d1a2c;border:1px solid #2b3d57;padding:11px;border-radius:8px;font-size:11px;line-height:1.6;color:#ccdbee;white-space:pre-wrap}.cost-result p,.report-output p{margin:0}.report-by{font-size:10px;color:#a4a4ef;font-weight:800;margin-bottom:10px}.notification{font-size:10px;color:#fae1a7;background:#483c22;padding:10px;border:1px solid #826941;border-radius:7px;margin-top:9px;overflow-wrap:anywhere}.safeguards h2{font-size:13px;margin:0 0 11px}.safeguards div{font-size:10px;line-height:1.6;color:#aebcd2;padding:7px 0;border-bottom:1px solid #253950}.safeguards div:last-child{border:0}footer{text-align:center;font-size:10px;padding:23px;color:#69809c}@media(max-width:1390px){.app-layout{grid-template-columns:245px minmax(480px,1fr) 290px}.main-menu{display:none}.header{flex-wrap:wrap}.brand-text{font-size:20px}}@media(max-width:1060px){.app-layout{grid-template-columns:245px minmax(0,1fr)}.main-col,.right-col{grid-column:2}.main-col{grid-row:1}.left-col{grid-row:1/span 2}}@media(max-width:730px){.header{padding:12px}.header-actions{width:100%;justify-content:flex-start}.app-layout{display:flex;flex-direction:column;padding:7px}.main-col,.sidebar{width:100%}.left-col{order:2}.main-col{order:1}.right-col{order:3}.main-summary{flex-wrap:wrap}.bottom-grid{grid-template-columns:1fr}.section-title{flex-wrap:wrap}.brand-text{font-size:19px}}.observation-form{padding:14px;display:flex;align-items:end;flex-wrap:wrap;gap:8px}.observation-form .field{width:95px}.observation-form .observation-text{flex:1 1;min-width:210px}.obs-add{padding:10px 12px;background:#32317b;border:1px solid #685ccc;color:#fff;border-radius:8px;font-size:11px}.observation-list{padding:0 14px 13px}.observation-list>p{font-size:10px;color:#8da4bd}.observation-list>div{display:flex;align-items:center;gap:10px;border-top:1px solid #293a54;padding:9px 0;font-size:10px}.observation-list span{color:#b4a7fc;flex:none}.observation-list b{font-weight:550;flex:1 1;overflow-wrap:anywhere}.observation-list button{background:none;color:#f99;border:0;font-size:18px}