/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}}:root{--ols-black:#060d1f;--ols-ink:#0a1221;--ols-panel:#0c1630;--ols-panel-raised:#0e1a38;--ols-border:#638cdc2e;--ols-border-soft:#638cdc1f;--ols-blue:#2563eb;--ols-blue-strong:#1d4ed8;--ols-blue-soft:#93c5fd;--ols-white:#f0f6ff;--ols-muted:#849ac7;--ols-muted-2:#5f76a8;--ols-success:#22c55e;--ols-warning:#f5be58;--ols-danger:#ff6477;--ols-radius-sm:8px;--ols-radius:12px;--ols-radius-lg:16px;--ols-shadow:0 18px 50px #00000052}*{box-sizing:border-box}html,body{background:var(--ols-black);width:100%;min-height:100%;color:var(--ols-white);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{overflow:hidden}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--ols-blue-soft);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.58}.visually-hidden{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.app-shell{background:radial-gradient(circle at 50% 28%, #2966cd1f, transparent 34%), var(--ols-black);grid-template-rows:66px 70px minmax(0,1fr);height:100vh;min-height:680px;display:grid}.topbar{border-bottom:1px solid var(--ols-border-soft);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#05070bf5;grid-template-columns:280px minmax(420px,1fr) auto;align-items:center;gap:24px;padding:0 22px;display:grid}.brand-block,.brand-block>div,.top-actions,.plan-state,.equipment-summary,.cargo-actions,.section-label,.scene-legend,.scene-caption>div,.selected-summary,.edit-buttons,.alternative-heading,.cargo-meta,.modal-heading,.modal-actions{align-items:center;display:flex}.brand-block{gap:12px}.brand-logo{flex:none;align-items:center;gap:10px;display:inline-flex}.brand-logo--compact{gap:9px}.brand-logo--standard{gap:10px}.brand-logo--hero{gap:14px}.brand-mark{background:linear-gradient(145deg,#193c76,#0c1b32);border:1px solid #347de6;border-radius:11px;grid-template-columns:repeat(3,1fr);align-items:end;gap:3px;width:38px;height:38px;padding:7px;display:grid;box-shadow:inset 0 0 0 1px #ffffff0d,0 8px 22px #2f7df438}.brand-mark i{background:#fff;border-radius:2px;height:62%;display:block}.brand-mark i:nth-child(3){height:78%}.brand-logo--compact .brand-mark{border-radius:10px;width:34px;height:34px;padding:6px}.brand-logo--standard .brand-mark{width:40px;height:40px}.brand-wordmark{white-space:nowrap;align-items:baseline;gap:6px;min-width:0;display:flex}.brand-wordmark strong{color:#f7faff;letter-spacing:.045em;font-size:18px}.brand-wordmark>span{color:var(--ols-blue-soft);letter-spacing:-.02em;font-size:15px;font-weight:680}.brand-logo--hero .brand-wordmark strong{font-size:clamp(23px,2.2vw,31px)}.brand-logo--hero .brand-wordmark>span{font-size:clamp(19px,1.8vw,25px)}.brand-block>div{letter-spacing:-.02em;gap:7px}.brand-block strong{letter-spacing:.03em;font-size:18px}.brand-block span{color:var(--ols-blue-soft);font-size:15px;font-weight:650}.transport-nav{border:1px solid var(--ols-border-soft);background:#090e17;border-radius:12px;grid-template-columns:repeat(4,minmax(88px,118px));justify-self:center;align-items:stretch;gap:4px;padding:4px;display:grid}.transport-nav button{min-height:44px;color:var(--ols-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 12px;transition:all .16s;display:flex}.transport-nav button:hover{color:var(--ols-white);background:#111a29}.transport-nav button.is-active{color:#fff;background:var(--ols-blue-strong);box-shadow:0 5px 15px #1769e83d}.transport-nav button span{text-transform:uppercase;font-size:12px;font-weight:750}.transport-nav button small{font-size:12px}.top-actions{justify-content:flex-end;gap:10px}.plan-state{color:#dce8fb;border-right:1px solid var(--ols-border);gap:7px;height:40px;padding:0 11px;font-size:12px}.plan-state small{background:var(--ols-panel-raised);color:var(--ols-muted);border-radius:5px;padding:2px 5px;font-size:10px}.status-dot{border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #ffffff0d}.status-dot--good{background:var(--ols-success)}.status-dot--warn{background:var(--ols-warning)}.status-dot--bad{background:var(--ols-danger)}.button,.avatar-button,.equipment-summary button{border-radius:var(--ols-radius-sm);cursor:pointer;border:1px solid #0000;min-height:42px;padding:0 14px;font-size:12px;font-weight:700;transition:all .15s}.button--ghost{border-color:var(--ols-border);color:#d9e7fb;background:#0a111d}.button--ghost:hover,.button--outline:hover{background:#131f31;border-color:#4e6b94}.button--primary{background:var(--ols-blue-strong);color:#fff;box-shadow:0 8px 20px #1769e838}.button--primary:hover,.optimize-button:hover{background:#2678f1;transform:translateY(-1px)}.button--outline{border-color:var(--ols-border);color:#d7e2f3;background:0 0}.button--light{color:#111a29;background:#f4f8ff}.button--light:hover{background:#fff;transform:translateY(-1px)}.avatar-button{color:#fff;background:linear-gradient(145deg,#2a6fd6,#173c75);border-color:#3868ad;width:42px;padding:0}.workspace-heading{border-bottom:1px solid var(--ols-border-soft);background:#080d16;justify-content:space-between;align-items:center;gap:24px;padding:10px 22px 9px;display:flex}.workspace-heading h1,.panel-heading h2,.alternative-heading h2,.modal-heading h2{color:var(--ols-white);letter-spacing:-.035em;margin:0}.workspace-heading h1{margin-top:3px;font-size:clamp(17px,1.55vw,23px);font-weight:675}.workspace-heading h1 span{color:var(--ols-blue)}.eyebrow{color:#6f89ac;letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:9px;font-weight:800}.equipment-summary{justify-content:flex-end;gap:10px;min-width:395px}.equipment-icon{color:#9bc0ff;background:#10284a;border-radius:8px;place-items:center;width:36px;height:36px;font-size:20px;display:grid}.equipment-summary div{gap:2px;display:grid}.equipment-summary strong{font-size:12px}.equipment-summary span{color:var(--ols-muted);font-size:10px}.equipment-summary button{border-color:var(--ols-border);min-height:34px;color:var(--ols-blue-soft);background:0 0;margin-left:5px}.workspace-grid{grid-template-columns:minmax(286px,318px) minmax(520px,1fr) minmax(300px,342px);gap:10px;min-height:0;padding:10px;display:grid}.panel,.scene-panel{border:1px solid var(--ols-border-soft);border-radius:var(--ols-radius);background:var(--ols-panel);min-height:0;box-shadow:var(--ols-shadow);overflow:hidden}.cargo-panel,.insights-panel{flex-direction:column;display:flex}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 10px;display:flex}.panel-heading h2,.alternative-heading h2,.modal-heading h2{margin-top:3px;font-size:17px;font-weight:700}.count-badge{color:#9eb8da;background:#111e31;border-radius:6px;margin-top:2px;padding:5px 7px;font-size:10px;font-weight:700}.cargo-actions .button{min-height:38px}.cargo-actions .button span{margin-right:4px;font-size:16px}.document-drop-zone{color:#b9d6fb;cursor:copy;background:linear-gradient(135deg,#1f5ba824,#091423c7);border:1px dashed #315a8d;border-radius:11px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:10px;min-height:86px;margin:0 12px 12px;padding:12px;transition:border-color .16s,background .16s,transform .16s;display:grid}.document-drop-zone:hover,.document-drop-zone:focus-visible,.document-drop-zone.is-dragging{background:linear-gradient(135deg,#2475e147,#0a1c32e6);border-color:#62a9ff}.document-drop-zone.is-dragging{transform:translateY(-1px);box-shadow:0 10px 28px #1669e833}.document-drop-zone[aria-disabled=true]{opacity:.62;cursor:not-allowed}.document-drop-zone__icon{color:#d4e8ff;background:#102c4e;border:1px solid #397aca;border-radius:10px;place-items:center;width:38px;height:38px;font-size:19px;display:grid}.document-drop-zone>span:nth-child(2){gap:4px;min-width:0;display:grid}.document-drop-zone strong{font-size:9px;line-height:1.35}.document-drop-zone small{color:#7791af;font-size:7px;line-height:1.45}.document-drop-zone em{color:#6684a9;text-align:center;grid-column:1/-1;font-size:7px;font-style:normal}.cargo-list{scrollbar-width:thin;scrollbar-color:#31425d transparent;flex:1;min-height:110px;padding:0 9px 8px 12px;overflow:auto}.cargo-card{border-top:1px solid var(--ols-border-soft);grid-template-columns:39px minmax(0,1fr) auto;align-items:start;gap:10px;padding:11px 8px;display:grid;position:relative}.cargo-swatch{border:1px solid #ffffff2e;border-radius:9px;place-items:center;width:39px;height:39px;display:grid;box-shadow:inset 0 0 20px #00000029}.cargo-swatch span{background:#04091099;border-radius:4px;padding:2px 4px;font-size:9px;font-weight:800}.cargo-copy{gap:2px;min-width:0;display:grid}.cargo-copy strong{color:#eef5ff;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.cargo-copy>span{color:#63738a;letter-spacing:.055em;font-size:8px;font-weight:700}.cargo-copy p{color:#93a2b8;margin:3px 0 0;font-size:9px}.cargo-meta{gap:5px}.cargo-meta span{color:#8ca1bc;background:#111b2a;border-radius:4px;padding:2px 5px;font-size:8px;font-weight:700}.is-success{color:var(--ols-success)!important}.is-warning{color:var(--ols-warning)!important}.quantity-control{border:1px solid var(--ols-border);border-radius:7px;grid-template-columns:24px 26px 24px;align-items:center;margin-top:8px;display:grid;overflow:hidden}.quantity-control button,.quantity-control span{background:#0b121e;border:0;place-items:center;height:25px;font-size:10px;display:grid}.quantity-control button{color:#b9c8dc;cursor:pointer}.quantity-control button:hover{background:#17263d}.quantity-control span{border-inline:1px solid var(--ols-border);color:#fff;font-weight:750}.cargo-remove{color:#4f6077;cursor:pointer;opacity:0;background:0 0;border:0;border-radius:5px;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:2px;right:0}.cargo-card:hover .cargo-remove,.cargo-remove:focus-visible{opacity:1}.cargo-remove:hover{color:var(--ols-danger);background:#ff647714}.optimization-card{border-top:1px solid var(--ols-border);background:#09111d;flex:none;padding:12px 14px 14px}.section-label{justify-content:space-between;gap:10px;margin-bottom:8px}.section-label--spaced{margin-top:12px}.section-label span{color:#dce8f8;font-size:10px;font-weight:750}.section-label small{color:var(--ols-muted-2);font-size:8px}.segmented{border:1px solid var(--ols-border-soft);background:#070c14;border-radius:9px;grid-template-columns:repeat(3,1fr);gap:3px;padding:3px;display:grid}.segmented button{color:#6f819a;cursor:pointer;background:0 0;border:0;border-radius:6px;min-height:30px;padding:0 7px;font-size:9px;font-weight:700}.segmented button:hover{color:#dce9fb}.segmented button.is-active{color:#fff;background:#1b3152;box-shadow:inset 0 0 0 1px #305485}.segmented--stacked{grid-template-columns:1fr;gap:2px}.segmented--stacked button{text-align:left;min-height:27px;padding-left:10px}.optimize-button{background:var(--ols-blue-strong);color:#fff;letter-spacing:.01em;cursor:pointer;border:0;border-radius:9px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:44px;margin-top:12px;font-size:11px;font-weight:800;transition:all .15s;display:flex;box-shadow:0 10px 22px #1769e83d}.optimize-glyph{font-size:17px}.spinner{border:2px solid #ffffff3d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin;display:inline-block}.spinner--large{border-width:3px;width:34px;height:34px}@keyframes spin{to{transform:rotate(360deg)}}.scene-panel{background:radial-gradient(circle at 46% 45%,#2358b038,#0000 35%),linear-gradient(155deg,#0d1728 0%,#07101c 48%,#050a12 100%);grid-template-rows:47px minmax(0,1fr) 34px 64px;display:grid;position:relative}.three-scene{min-height:0;position:relative;overflow:hidden}.three-scene__canvas{position:absolute;inset:0}.three-scene--loading{color:var(--ols-muted);place-content:center;justify-items:center;gap:10px;font-size:9px;display:grid}.three-scene:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#4d8aec59,#0000);height:1px;position:absolute;inset:auto 12% 0}.three-scene canvas{width:100%;height:100%;display:block}.three-context-menu{z-index:12;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#070f1bf5;border:1px solid #31598d;border-radius:9px;min-width:176px;padding:5px;position:absolute;box-shadow:0 16px 38px #00000073}.three-context-menu button{color:#edf6ff;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;width:100%;min-height:34px;padding:0 11px;font-size:10px;font-weight:750}.three-context-menu button:hover,.three-context-menu button:focus-visible{background:linear-gradient(90deg,#2f7df447,#2ac9aa24);outline:none}.scene-toolbar{z-index:5;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#080e18e6;align-items:center;gap:12px;padding:0 12px;display:flex;position:relative}.scene-toolbar--top{border-bottom:1px solid var(--ols-border-soft)}.scene-toolbar--bottom{border-top:1px solid var(--ols-border);background:#0a121f;grid-template-columns:minmax(160px,1fr) auto auto;display:grid}.segmented--compact{flex:0 0 186px;grid-template-columns:repeat(2,1fr)}.scene-legend{color:#8d9eb5;flex:1;gap:12px;font-size:9px}.scene-legend span{align-items:center;gap:5px;display:flex}.legend-dot{border-radius:2px;width:7px;height:7px;display:inline-block}.legend-dot--blue{background:var(--ols-blue)}.legend-dot--white{background:#fff;border-radius:50%}.legend-dot--muted{background:#48566a}.scene-hint{color:#56677f;font-size:8px}.scene-caption{background:#060b13e0;border-top:1px solid #2839528c;justify-content:space-between;align-items:center;gap:16px;padding:0 13px;display:flex}.scene-caption>div{gap:9px}.scene-caption>div>span:last-child,.scene-caption p{color:#596a82;font-size:8px}.scene-caption p{text-overflow:ellipsis;white-space:nowrap;max-width:58%;margin:0;overflow:hidden}.status-chip{color:#afdacb;align-items:center;gap:5px;font-size:8px;font-weight:700;display:inline-flex}.status-chip .status-dot{width:6px;height:6px;box-shadow:none}.selected-summary{gap:8px;min-width:0}.selection-cube{border:1px solid #ffffff2e;border-radius:7px;flex:none;width:31px;height:31px;box-shadow:inset 0 0 10px #0003}.selected-summary>div{gap:2px;min-width:0;display:grid}.selected-summary strong,.selected-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selected-summary strong{color:#e9f2ff;font-size:10px}.selected-summary span{color:#667991;font-size:8px}.edit-buttons{border:1px solid var(--ols-border-soft);background:#070c14;border-radius:9px;gap:3px;padding:3px}.edit-buttons button{color:#8ea1bb;cursor:pointer;background:0 0;border:0;border-radius:6px;min-width:33px;min-height:30px;padding:0 8px;font-size:8px;font-weight:700}.edit-buttons button:hover,.edit-buttons button.is-active{color:#fff;background:#1a2c48}.optimization-overlay{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#03080fc7;place-content:center;justify-items:center;gap:9px;display:grid;position:absolute;inset:47px 0 98px}.optimization-overlay strong{margin-top:6px;font-size:13px}.optimization-overlay small{color:var(--ols-muted);font-size:9px}.tabs{border-bottom:1px solid var(--ols-border-soft);grid-template-columns:repeat(2,1fr);min-height:48px;display:grid}.tabs button{color:#6f8097;cursor:pointer;background:#09111d;border:0;font-size:10px;font-weight:750;position:relative}.tabs button.is-active{color:#fff;background:#0d1726}.tabs button.is-active:after{content:"";background:var(--ols-blue);height:2px;position:absolute;bottom:-1px;left:18%;right:18%}.tabs button span{color:#9eb2ce;background:#18263a;border-radius:5px;place-items:center;min-width:17px;height:17px;margin-left:4px;font-size:8px;display:inline-grid}.insights-content,.validation-content{scrollbar-width:thin;scrollbar-color:#31425d transparent;flex:1;min-height:0;overflow:auto}.insights-content{padding:14px}.alternative-heading{justify-content:space-between;margin-bottom:10px}.alternative-heading>span{border:1px solid var(--ols-border);color:#7f93ae;border-radius:6px;padding:4px 6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px}.alternative-list{gap:5px;margin-bottom:14px;display:grid}.alternative-card{border:1px solid var(--ols-border-soft);text-align:left;cursor:pointer;background:#09111c;border-radius:9px;grid-template-columns:27px minmax(0,1fr) 34px;align-items:center;gap:8px;width:100%;min-height:55px;padding:7px 9px;display:grid}.alternative-card:hover{background:#0d1827;border-color:#34527b}.alternative-card.is-active{box-shadow:inset 3px 0 0 var(--ols-blue);background:linear-gradient(90deg,#2369d433,#0c1726 62%);border-color:#347fe9}.alternative-index{color:#4f6e96;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}.alternative-copy{gap:3px;min-width:0;display:grid}.alternative-copy strong{color:#e7f1ff;font-size:10px}.alternative-copy small{color:#71839c;text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.alternative-score{color:#ddebff;background:#142847;border:1px solid #315b99;border-radius:50%;place-items:center;width:32px;height:32px;font-size:10px;font-weight:800;display:grid}.metrics-grid{gap:6px;display:grid}.metric-dial-card{border:1px solid var(--ols-border-soft);background:#09111c;border-radius:9px;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;padding:7px 9px;display:grid}.metric-dial{background:radial-gradient(circle at center, #0b1422 58%, transparent 60%), conic-gradient(var(--ols-blue) var(--dial-value), #20304a 0);border-radius:50%;justify-content:center;align-items:baseline;width:45px;height:45px;padding-top:13px;display:flex}.metric-dial span{color:#fff;font-size:12px;font-weight:800}.metric-dial small{color:#6f819a;font-size:7px}.metric-dial-card>div:last-child{gap:3px;display:grid}.metric-dial-card strong{color:#dce9f9;font-size:9px}.metric-dial-card>div:last-child span{color:#71839a;font-size:8px}.balance-card,.axle-card{border:1px solid var(--ols-border-soft);background:#09111c;border-radius:10px;margin-top:9px;padding:11px}.cog-axis{color:#60738d;grid-template-columns:27px 1fr 30px;align-items:center;gap:6px;font-size:7px;display:grid}.axis-track{background:linear-gradient(90deg,#1e3658,#365f9a 48%,#1e3658);border-radius:4px;height:5px;position:relative}.axis-track i{width:10px;height:10px;box-shadow:0 0 0 2px var(--ols-blue);background:#fff;border:2px solid #0b1422;border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%)}.cog-values{grid-template-columns:repeat(3,1fr);gap:5px;margin-top:10px;display:grid}.cog-values span{background:#101c2d;border-radius:7px;gap:2px;padding:6px;display:grid}.cog-values small{color:#63758e;font-size:7px}.cog-values strong{color:#dce8f7;font-size:9px}.axle-row{border-top:1px solid var(--ols-border-soft);grid-template-columns:1fr auto 39px;align-items:center;gap:7px;padding:7px 0;display:grid}.axle-row:nth-of-type(2){border-top:0}.axle-row span{color:#93a5bc;align-items:center;gap:6px;font-size:8px;display:flex}.axle-row strong{color:#dce7f6;font-size:9px}.axle-row em{color:var(--ols-success);text-align:right;font-size:8px;font-style:normal}.axle{background:var(--ols-blue);border-radius:3px;width:14px;height:5px;display:inline-block}.axle--rear{background:#6f79f7;width:20px}.validation-content{padding:14px}.validation-hero{background:#36d49b12;border:1px solid #36d49b40;border-radius:10px;grid-template-columns:35px 1fr;gap:10px;padding:12px;display:grid}.validation-hero--bad{background:#ff647712;border-color:#ff64774d}.validation-hero>span{color:#06261b;background:var(--ols-success);border-radius:50%;place-items:center;width:34px;height:34px;font-size:16px;font-weight:900;display:grid}.validation-hero--bad>span{color:#fff;background:var(--ols-danger)}.validation-hero strong{font-size:10px}.validation-hero p{color:#8da0b9;margin:4px 0 0;font-size:8px;line-height:1.45}.issue-list{gap:6px;margin-top:10px;display:grid}.issue-card{border:1px solid var(--ols-border-soft);background:#09111c;border-radius:9px;grid-template-columns:10px 1fr;gap:9px;padding:10px;display:grid}.issue-card .status-dot{margin-top:3px}.issue-card div{min-width:0}.issue-card strong{color:#e0ebfa;font-size:9px;display:block}.issue-card span{color:#5c7da8;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:7px}.issue-card p{color:#8192aa;margin:5px 0 0;font-size:8px;line-height:1.45}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#010408c2;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-card{border-radius:var(--ols-radius-lg);background:#0d1726;border:1px solid #2d4262;width:min(520px,100%);box-shadow:0 34px 90px #00000094}.modal-card--document-review{width:min(920px,100%);max-height:min(860px,100vh - 48px);overflow:hidden}.modal-card--document-review form{max-height:calc(100vh - 132px);overflow-y:auto}.modal-note--warning{border-left-color:var(--ols-warning);color:#c7b889;background:#f5be5814}.document-review-list{gap:10px;margin-top:13px;display:grid}.document-review-item{border:1px solid var(--ols-border-soft);background:#040a129e;border-radius:10px;padding:13px}.document-review-item__heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:11px;display:flex}.document-review-item__heading strong{color:#e3edfa;font-size:10px}.document-review-item__heading span{color:var(--ols-warning);text-align:right;font-size:8px}.document-review-item__contents{color:var(--ols-text-muted);background:#2f7df412;border:1px solid #2f7df447;border-radius:8px;margin:0 0 11px;padding:9px 10px;font-size:9px;line-height:1.55}.document-review-item__contents strong{color:var(--ols-text)}.field-grid--document-values{grid-template-columns:repeat(5,minmax(0,1fr))}.field--missing span{color:#ff9a91}.field--missing input{border-color:#c65c58;box-shadow:0 0 0 2px #c65c581f}.modal-heading{border-bottom:1px solid var(--ols-border-soft);justify-content:space-between;padding:17px 19px}.modal-heading>button{border:1px solid var(--ols-border);color:#8da0b8;cursor:pointer;background:#0a111d;border-radius:8px;width:36px;height:36px;font-size:19px}.modal-card form{padding:17px 19px 19px}.field-grid{grid-template-columns:repeat(3,1fr);gap:9px;display:grid}.field-grid--two{grid-template-columns:repeat(2,1fr)}.field{gap:6px;margin-bottom:11px;display:grid}.field span{color:#91a2b9;font-size:9px;font-weight:700}.field input{color:#fff;background:#080f1a;border:1px solid #2a3a53;border-radius:8px;width:100%;height:42px;padding:0 11px;font-size:11px}.field input::placeholder{color:#44546a}.modal-note{border-left:3px solid var(--ols-blue);color:#7f93ad;background:#2f7df414;border-radius:0 7px 7px 0;padding:10px 11px;font-size:8px;line-height:1.5}.modal-actions{justify-content:flex-end;gap:8px;margin-top:17px}@media (width<=1320px){.topbar{grid-template-columns:220px minmax(380px,1fr) auto;gap:12px}.transport-nav{grid-template-columns:repeat(4,minmax(72px,94px))}.transport-nav button small,.plan-state span,.scene-hint{display:none}.workspace-grid{grid-template-columns:288px minmax(480px,1fr) 304px}.scene-toolbar--bottom{grid-template-columns:130px 1fr}.scene-toolbar--bottom>.button,.selected-summary span{display:none}}@media (width<=1050px){body{overflow:auto}.app-shell{grid-template-rows:64px auto auto;height:auto;min-height:100vh}.topbar{grid-template-columns:200px 1fr auto}.top-actions .button,.plan-state{display:none}.workspace-heading{min-height:72px}.workspace-grid{grid-template-rows:660px auto;grid-template-columns:280px minmax(560px,1fr);overflow-x:auto}.insights-panel{grid-column:1/-1;min-height:550px}.insights-content{grid-template-columns:1fr 1fr;align-items:start;gap:14px;display:grid}.insights-content .alternative-heading,.insights-content .alternative-list{grid-column:1}.metrics-grid,.balance-card,.axle-card{grid-column:2}}@media (width<=760px){.topbar{grid-template-columns:1fr auto;padding:0 14px}.transport-nav{display:none}.workspace-heading{padding:12px 14px;display:grid}.equipment-summary{justify-content:flex-start;min-width:0}.workspace-grid{grid-template-rows:auto 600px auto;grid-template-columns:minmax(0,1fr);padding:7px;display:grid}.cargo-panel{min-height:650px}.scene-panel{min-width:0}.insights-panel{grid-column:auto}.scene-legend,.scene-caption p,.selected-summary{display:none}.scene-toolbar--bottom{grid-template-columns:1fr}.edit-buttons{justify-content:center}.insights-content{display:block}.field-grid,.field-grid--two{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.portal-loading{background:radial-gradient(circle at 50% 44%, #246feb2e, transparent 34%), var(--ols-black);place-content:center;justify-items:center;gap:13px;min-height:100vh;display:grid}.portal-loading strong{letter-spacing:-.025em;margin-top:4px;font-size:20px}.portal-loading small{color:var(--ols-muted)}.login-shell{background:#05070b;grid-template-columns:minmax(480px,1.08fr) minmax(430px,.92fr);min-height:100vh;display:grid;overflow:auto}.login-brand-panel{background:linear-gradient(145deg,#0409112e,#030b17e6),radial-gradient(circle at 18% 78%,#21cfa421,#0000 28%),radial-gradient(circle at 74% 28%,#2f7df44d,#0000 36%),linear-gradient(135deg,#07101d,#05080e 62%);border-right:1px solid #1c2a40;flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(32px,5vw,74px);display:flex;position:relative;overflow:hidden}.login-brand-panel:before,.login-brand-panel:after{content:"";pointer-events:none;position:absolute}.login-brand-panel:before{border:1px solid #498df72b;border-radius:50%;width:520px;height:520px;bottom:-230px;right:-180px;box-shadow:0 0 0 70px #397ce609,0 0 0 140px #397ce606}.login-brand-panel:after{opacity:.16;background-image:linear-gradient(#6897dd2e 1px,#0000 1px),linear-gradient(90deg,#6897dd2e 1px,#0000 1px);background-size:52px 52px;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 30% 72%,#0000);mask-image:linear-gradient(#0000,#000 30% 72%,#0000)}.login-brand,.login-brand>div{z-index:2;align-items:center;display:flex;position:relative}.login-brand{gap:14px}.login-brand>div{gap:8px}.login-brand strong{letter-spacing:.05em;font-size:22px}.login-brand span:not(.brand-mark){color:var(--ols-blue-soft);font-size:18px;font-weight:680}.brand-mark--large{border-radius:14px;width:48px;height:48px;padding:9px}.login-brand--small{gap:10px}.login-brand--small>div{gap:5px}.login-brand--small strong,.login-brand--small span:not(.brand-mark){font-size:15px}.login-hero-copy{z-index:2;max-width:700px;margin-block:auto;padding:70px 0;position:relative}.login-hero-copy h1{letter-spacing:-.058em;max-width:760px;margin:18px 0 20px;font-size:clamp(42px,5.1vw,74px);line-height:.98}.login-hero-copy>p:last-child{color:#9fb0c8;max-width:540px;margin:0;font-size:clamp(15px,1.35vw,20px);line-height:1.65}.login-metric-strip{z-index:2;border-top:1px solid #24334a;grid-template-columns:repeat(3,1fr);max-width:620px;display:grid;position:relative}.login-metric-strip>span{gap:5px;padding:22px 24px 0 0;display:grid}.login-metric-strip strong{font-size:23px}.login-metric-strip small{color:#7789a1;font-size:11px}.login-form-panel{background:radial-gradient(circle at 50% 48%,#214a8f21,#0000 38%),#070a10;place-items:center;min-height:100vh;padding:42px;display:grid}.login-card{background:linear-gradient(160deg,#111c2ef0,#080e18fa);border:1px solid #22314a;border-radius:22px;width:min(430px,100%);padding:clamp(28px,4vw,48px);box-shadow:0 36px 110px #00000075}.login-card h2{letter-spacing:-.045em;margin:10px 0 12px;font-size:clamp(27px,3vw,38px)}.login-card>p:not(.eyebrow){color:#8fa0b8;margin:0 0 28px;font-size:13px;line-height:1.65}.oauth-button{color:#edf4ff;background:#0d1624;border:1px solid #2b3d58;border-radius:11px;justify-content:center;align-items:center;gap:12px;min-height:54px;margin-top:11px;font-size:13px;font-weight:720;text-decoration:none;transition:all .16s;display:flex}.oauth-button:hover{background:#132238;border-color:#4874b4;transform:translateY(-1px)}.oauth-button--microsoft{background:#10233d;border-color:#2e67b9}.microsoft-mark{grid-template-columns:repeat(2,1fr);gap:2px;width:18px;height:18px;display:grid}.microsoft-mark i:first-child{background:#f35325}.microsoft-mark i:nth-child(2){background:#81bc06}.microsoft-mark i:nth-child(3){background:#05a6f0}.microsoft-mark i:nth-child(4){background:#ffba08}.google-mark{color:#4285f4;background:#fff;border-radius:50%;place-items:center;width:20px;height:20px;font-family:Arial,sans-serif;font-size:13px;font-weight:900;display:grid}.login-security-note{color:#64758c;justify-content:center;align-items:center;gap:8px;margin-top:22px;font-size:9px;display:flex}.login-security-note span{color:var(--ols-success);font-size:7px}.portal-alert{border:1px solid;border-radius:9px;margin:12px 0;padding:11px 13px;font-size:11px;line-height:1.5}.portal-alert--warning{color:#f4cf89;background:#f5be5814;border-color:#f5be5857}.portal-alert--danger{color:#ff9eab;background:#ff647714;border-color:#ff647757}.agreement-shell{overscroll-behavior:contain;background:radial-gradient(circle at 50% 0,#2f7df426,#0000 32%),#05080e;height:100dvh;min-height:0;overflow-y:auto}.agreement-header{z-index:5;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#05080ec7;border-bottom:1px solid #1a2639;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(24px,5vw,72px);display:flex;position:sticky;top:0}.agreement-header>span{color:#71839a;font-size:11px}.agreement-card{background:linear-gradient(155deg,#101b2c,#090f19);border:1px solid #263752;border-radius:20px;grid-template-rows:auto minmax(120px,1fr) auto;gap:14px;width:min(900px,100% - 36px);height:min(820px,100dvh - 116px);min-height:620px;margin:22px auto;padding:clamp(22px,3vw,38px);display:grid;overflow:hidden;box-shadow:0 30px 100px #00000061}.agreement-card h1{letter-spacing:-.045em;margin:8px 0 6px;font-size:clamp(25px,3vw,36px)}.agreement-version{color:var(--ols-blue-soft);font-size:10px;font-weight:750}.agreement-body{overscroll-behavior:contain;color:#a5b4c8;border-top:1px solid #273750;border-bottom:1px solid #273750;min-height:0;margin:0;padding:8px 22px 8px 0;font-size:12px;line-height:1.75;overflow-y:auto}.agreement-check{color:#d8e4f4;cursor:pointer;background:#0a121f;border:1px solid #263752;border-radius:10px;align-items:flex-start;gap:11px;padding:11px 13px;font-size:11px;display:flex}.agreement-check input{accent-color:var(--ols-blue);margin:1px 0 0}.agreement-accept{width:100%;margin-top:2px}.agreement-card-heading{min-height:0}.agreement-actions{gap:8px;min-height:0;padding-top:2px;display:grid}.agreement-actions .portal-alert{margin:0}@media (height<=720px){.agreement-card{height:auto;min-height:620px}.agreement-body{min-height:180px;max-height:38vh}}@media (width<=700px){.agreement-header{height:62px;padding-inline:16px}.agreement-header>span{text-overflow:ellipsis;white-space:nowrap;max-width:42vw;overflow:hidden}.agreement-card{width:calc(100% - 20px);height:auto;min-height:calc(100dvh - 82px);margin:10px auto;padding:20px 16px;overflow:visible}.agreement-body{min-height:240px;max-height:44vh}}.portal-shell{background:radial-gradient(circle at 58% 8%,#2f7df41a,#0000 30%),#06090f;grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid;overflow:hidden}.portal-sidebar{background:linear-gradient(#0b1320,#070b12);border-right:1px solid #1d2a3f;flex-direction:column;min-height:100vh;padding:26px 18px 18px;display:flex}.portal-sidebar nav{gap:5px;margin-top:44px;display:grid}.portal-sidebar nav button{color:#788ba5;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:44px;padding:0 12px;font-size:11px;display:grid}.portal-sidebar nav button span{color:#71a7ff;font-size:16px}.portal-sidebar nav button small{color:#a9bdd8;background:#192b45;border-radius:6px;place-items:center;min-width:21px;height:21px;font-size:8px;display:grid}.portal-sidebar-footer{border-top:1px solid #1c2a3e;grid-template-columns:38px minmax(0,1fr) 26px;align-items:center;gap:9px;margin-top:auto;padding:15px 5px 2px;display:grid}.portal-sidebar-footer .avatar-button{place-items:center;width:36px;height:36px;min-height:36px;font-size:10px;display:grid}.portal-sidebar-footer>div{gap:3px;min-width:0;display:grid}.portal-sidebar-footer strong,.portal-sidebar-footer small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.portal-sidebar-footer strong{font-size:10px}.portal-sidebar-footer small{color:#607188;font-size:8px}.portal-sidebar-footer>button{color:#71849c;cursor:pointer;background:0 0;border:0}.portal-main{height:100vh;padding:0 clamp(28px,4vw,64px) 60px;overflow:auto}.portal-main-header{border-bottom:1px solid #172337;justify-content:space-between;align-items:center;gap:20px;min-height:78px;display:flex}.portal-main-header>div{align-items:center;gap:14px;display:flex}.portal-main-header p{margin:0}.portal-main-header span{color:#596b82;font-size:10px}.welcome-section p{color:#72859f;margin:0;font-size:12px}.welcome-section h1 span{color:var(--ols-blue);-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#2f7df4,#32d39f,#2f7df4) 0 0/220%;-webkit-background-clip:text;background-clip:text;animation:5s ease-in-out infinite welcome-shift}@keyframes welcome-shift{0%,to{background-position:0%}50%{background-position:100%}}.project-launch-widget{color:#fff;text-align:left;cursor:pointer;background:radial-gradient(circle at 91% 20%,#2ed3a41f,#0000 20%),linear-gradient(120deg,#102c54,#0d192a 55%,#0a141f);border:1px solid #2b5289;border-radius:17px;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:22px;width:100%;min-height:132px;padding:24px 28px;transition:all .17s;display:grid;box-shadow:0 22px 55px #00000040}.project-launch-widget:hover{border-color:#4c8eea;transform:translateY(-2px);box-shadow:0 25px 70px #195bbe33}.project-launch-icon{color:#b9d5ff;background:#163a6b;border:1px solid #4a83d2;border-radius:16px;place-items:center;width:62px;height:62px;font-size:29px;display:grid}.project-launch-widget>span:nth-child(2){gap:5px;display:grid}.project-launch-widget small{color:#72a8f7;letter-spacing:.12em;text-transform:uppercase;font-size:9px;font-weight:800}.project-launch-widget em{color:#8094b0;font-size:10px;font-style:normal}.project-launch-widget b{color:#82b2fb;font-size:11px}.recent-projects-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin:48px 0 16px;display:flex}.recent-projects-heading p,.recent-projects-heading h2{margin:0}.recent-projects-heading h2{margin-top:5px;font-size:22px}.recent-projects-heading button{color:#769bd0;cursor:pointer;background:0 0;border:0;font-size:10px}.project-grid{grid-template-columns:repeat(3,minmax(220px,1fr));gap:11px;display:grid}.project-tile{color:#e9f2ff;text-align:left;cursor:pointer;background:#0b121e;border:1px solid #202e43;border-radius:12px;grid-template-columns:39px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:88px;padding:13px;display:grid}.project-tile:hover{background:#101c2d;border-color:#375c8e}.project-tile>span:nth-child(2){gap:5px;min-width:0;display:grid}.project-tile strong,.project-tile small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-tile strong{font-size:11px}.project-tile small,.project-tile em{color:#64758d;font-size:8px;font-style:normal}.project-mode{color:#b8d4ff;background:#112d55;border:1px solid #315c98;border-radius:10px;place-items:center;width:38px;height:38px;font-size:13px;font-weight:800;display:grid}.project-mode--sea{color:#9eeaff;background:#0d3443;border-color:#26718c}.project-mode--air{color:#ded2ff;background:#282145;border-color:#6c5fa6}.project-mode--rail{color:#ced8e6;background:#25303c;border-color:#5c6b7c}.project-mode--pallet{color:#a9f3dc;background:#113d32;border-color:#268468}.project-tile--empty{border-style:dashed;grid-template-columns:36px minmax(0,1fr)}.project-tile--empty>span{color:#69a1f4;grid-row:1/span 2;font-size:24px}.project-modal{width:min(590px,100%)}.project-picker{width:min(720px,100%)}.project-modal .field select,.field select{color:#fff;background:#080f1a;border:1px solid #2a3a53;border-radius:8px;width:100%;height:42px;padding:0 11px;font-size:11px}.project-picker-list{gap:7px;max-height:52vh;padding:15px 18px;display:grid;overflow:auto}.project-picker-list>button{color:#fff;text-align:left;cursor:pointer;background:#09111d;border:1px solid #22324a;border-radius:10px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:66px;padding:10px 12px;display:grid}.project-picker-list>button:hover{background:#102039;border-color:#3a6fb7}.project-picker-list>button>span:nth-child(2){gap:4px;display:grid}.project-picker-list strong{font-size:11px}.project-picker-list small{color:#6d7f98;font-size:9px}.project-picker-list b{color:#79abf6;font-size:9px}.project-picker>.modal-actions{padding:0 18px 18px}.workspace-back{color:#9db6d9;cursor:pointer;background:#0b1422;border:1px solid #243853;border-radius:9px;flex:none;width:34px;height:34px}.workspace-back:hover{color:#fff;background:#14253c;border-color:#4c7bbb}.transport-nav{grid-template-columns:repeat(5,minmax(78px,108px))}.equipment-summary select{border:1px solid var(--ols-border);color:#bcd4f7;background:#0a121f;border-radius:8px;max-width:190px;height:34px;padding:0 29px 0 10px;font-size:10px}.cargo-actions{flex-wrap:wrap}.cargo-actions .button:first-child{flex:104px}.cargo-actions .button--ai{color:#a6f1dc;background:#1c8d7117;border-color:#287a76;flex:130px}.live-optimization-status{color:#a8e7d5;background:#198c6c17;border:1px solid #245b52;border-radius:9px;justify-content:center;align-items:center;gap:9px;min-height:42px;margin-top:12px;font-size:9px;font-weight:750;display:flex}.live-pulse{background:var(--ols-success);border-radius:50%;width:8px;height:8px;animation:1.7s ease-out infinite live-pulse;box-shadow:0 0 #36d49b80}@keyframes live-pulse{0%{box-shadow:0 0 #36d49b80}75%,to{box-shadow:0 0 0 8px #36d49b00}}.scene-toolbar--bottom{grid-template-columns:minmax(140px,.9fr) auto minmax(165px,1fr)}.coordinate-fields{grid-template-columns:repeat(3,70px);gap:5px;display:grid}.coordinate-fields label{color:#7790b2;grid-template-columns:15px 1fr;align-items:center;gap:3px;font-size:8px;font-weight:800;display:grid}.coordinate-fields input{color:#fff;background:#07101c;border:1px solid #263b59;border-radius:6px;min-width:0;height:31px;padding:0 6px;font:9px ui-monospace,SFMono-Regular,Menlo,monospace}.drag-help{color:#637790;text-align:right;margin:0;font-size:8px;line-height:1.45}@media (width<=1320px){.transport-nav{grid-template-columns:repeat(5,minmax(62px,78px))}.project-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.scene-toolbar--bottom{grid-template-columns:110px auto minmax(130px,1fr)}.coordinate-fields{grid-template-columns:repeat(3,61px)}}@media (width<=980px){.login-shell{grid-template-columns:1fr}.login-brand-panel{min-height:48vh;padding:34px}.login-hero-copy{padding:60px 0}.login-form-panel{min-height:52vh;padding:34px 20px}.portal-shell{grid-template-columns:82px minmax(0,1fr)}.portal-sidebar{align-items:center;padding-inline:12px}.portal-sidebar .brand-logo{border-radius:4px;width:54px;height:22px}.portal-sidebar .login-brand>div,.portal-sidebar nav button:not(.is-active) small,.portal-sidebar nav button{font-size:0}.portal-sidebar nav button{grid-template-columns:1fr;justify-items:center;width:48px;padding:0}.portal-sidebar nav button span{font-size:17px}.portal-sidebar-footer{grid-template-columns:1fr}.portal-sidebar-footer>div,.portal-sidebar-footer>button{display:none}.project-grid{grid-template-columns:1fr}}@media (width<=700px){.login-brand-panel{min-height:420px}.login-hero-copy h1{font-size:42px}.login-metric-strip>span{padding-right:10px}.portal-main{padding-inline:18px}.portal-main-header>div{gap:4px;display:grid}.welcome-section{padding-top:44px}.project-launch-widget{grid-template-columns:52px 1fr;padding:18px}.project-launch-icon{width:50px;height:50px}.project-launch-widget b{grid-column:2}.project-tile{grid-template-columns:39px minmax(0,1fr)}.project-tile em{display:none}.scene-toolbar--bottom{grid-template-columns:1fr;min-height:112px;padding-block:8px}.coordinate-fields{grid-template-columns:repeat(3,1fr)}.drag-help{display:none}}.agreement-original-note{border:1px solid #2f7df466;border-left:4px solid var(--ols-blue);color:#9eb8d8;background:#2f7df414;border-radius:9px;gap:5px;margin:14px 0;padding:12px 14px;font-size:10px;line-height:1.5;display:grid}.agreement-original-note strong{color:#e8f2ff}.agreement-original-note code{color:#6f8eb4;overflow-wrap:anywhere;font-size:7px}.settings-modal{width:min(560px,100%)}.settings-modal form{padding:18px 20px 20px}.settings-modal select,.field select{color:#fff;background:#080f1a;border:1px solid #2a3a53;border-radius:8px;width:100%;min-height:42px;padding:0 11px;font-size:11px}.theme-picker{border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:5px;display:grid}.theme-picker legend{color:#91a2b9;margin-bottom:7px;font-size:9px;font-weight:700}.theme-picker>button{color:#92a4ba;text-align:left;cursor:pointer;background:#09111d;border:1px solid #293a52;border-radius:10px;grid-template-columns:64px 1fr;align-items:center;gap:10px;min-height:64px;padding:8px;display:grid}.theme-picker>button.is-active{border-color:var(--ols-blue);color:#fff;box-shadow:0 0 0 2px #2f7df41f}.theme-preview{border:1px solid #34445c;border-radius:6px;grid-template-columns:18px 1fr;gap:4px;height:42px;padding:4px;display:grid}.theme-preview i{border-radius:3px}.theme-preview--dark{background:#07101c}.theme-preview--dark i:first-child{background:#13243a}.theme-preview--dark i:last-child{background:#2f7df4}.theme-preview--light{background:#f7faff;border-color:#c9d5e5}.theme-preview--light i:first-child{background:#dbe5f2}.theme-preview--light i:last-child{background:#2f7df4}html[data-theme=light] body,html[data-theme=light] .portal-shell,html[data-theme=light] .portal-main,html[data-theme=light] .agreement-shell,html[data-theme=light] .workspace-shell,html[data-theme=light] .login-form-panel{color:#14243a;background:#edf3f9}html[data-theme=light] .brand-wordmark strong{color:#14243a}html[data-theme=light] .brand-wordmark>span{color:#236bc9}html[data-theme=light] .document-drop-zone{color:#1f4d84;background:linear-gradient(135deg,#edf5ff,#f9fbfe);border-color:#8ab4e5}html[data-theme=light] .document-drop-zone__icon{color:#165aa7;background:#e3f0ff}html[data-theme=light] .portal-sidebar,html[data-theme=light] .topbar,html[data-theme=light] .panel,html[data-theme=light] .scene-panel,html[data-theme=light] .login-card,html[data-theme=light] .agreement-card,html[data-theme=light] .modal-card,html[data-theme=light] .project-launch-widget,html[data-theme=light] .project-tile{color:#17283e;background:#fff;border-color:#c8d5e4;box-shadow:0 18px 45px #203d601a}html[data-theme=light] .portal-sidebar nav button,html[data-theme=light] .portal-sidebar-footer strong,html[data-theme=light] .portal-main h1,html[data-theme=light] .portal-main h2,html[data-theme=light] .panel h2,html[data-theme=light] .modal-card h2,html[data-theme=light] .equipment-summary strong,html[data-theme=light] .cargo-copy strong{color:#17283e}html[data-theme=light] .portal-sidebar nav button:hover,html[data-theme=light] .portal-sidebar nav button.is-active,html[data-theme=light] .segmented,html[data-theme=light] .optimization-card,html[data-theme=light] .document-review-item{background:#eaf1fa}html[data-theme=light] .field input,html[data-theme=light] .field select,html[data-theme=light] .settings-modal select,html[data-theme=light] .theme-picker>button,html[data-theme=light] .modal-heading>button{color:#17283e;background:#f7faff;border-color:#bdcbdd}html[data-theme=light] .cargo-card,html[data-theme=light] .metric-dial-card,html[data-theme=light] .issue-card,html[data-theme=light] .scene-toolbar,html[data-theme=light] .scene-caption{background:#f7faff;border-color:#d2dce9}html[data-theme=light] .three-scene{background:linear-gradient(#eaf2fb,#dfe9f5)}html[data-theme=light] .eyebrow,html[data-theme=light] .field span,html[data-theme=light] .panel p,html[data-theme=light] .portal-main p,html[data-theme=light] small{color:#61748d}.equipment-summary{min-width:min(690px,58vw)}.equipment-confidence{letter-spacing:.08em;width:fit-content;margin-top:2px;font-weight:850;color:#f5be58!important;font-size:7px!important}.equipment-confidence.is-verified{color:#63d9b0!important}.equipment-catalog-button{white-space:nowrap;font-size:9px}.modal-card--catalog{width:min(1120px,100%);max-height:min(900px,100vh - 36px);overflow:hidden}.catalog-heading{min-height:70px}.catalog-toolbar{border-bottom:1px solid var(--ols-border-soft);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 18px;display:grid}.catalog-toolbar input{color:#fff;background:#080f1a;border:1px solid #2a3a53;border-radius:9px;height:40px;padding:0 12px}.catalog-toolbar span{color:#7990ad;font-size:9px;font-weight:750}.catalog-notice{background:#f5be580f;border:1px solid #f5be584d;border-radius:9px;margin:12px 18px 0;padding:11px 13px}.catalog-notice strong{color:#f2c56b;font-size:10px}.catalog-notice p{color:#9cabbe;margin:4px 0 0;font-size:9px;line-height:1.55}.catalog-list{gap:14px;max-height:calc(100vh - 245px);padding:14px 18px 22px;display:grid;overflow-y:auto}.catalog-section{gap:8px;display:grid}.catalog-section>header{z-index:2;background:#111d2e;border:1px solid #243752;border-radius:8px;grid-template-columns:42px 1fr auto;align-items:center;gap:8px;min-height:38px;padding:7px 9px;display:grid;position:sticky;top:-14px}.catalog-section>header span{color:#7fb0ff;font:800 9px ui-monospace,monospace}.catalog-section>header h3{color:#e6f0fd;margin:0;font-size:11px}.catalog-section>header small{color:#7187a4;font-size:8px}.catalog-entry-list{gap:7px;display:grid}.catalog-entry{background:#050c1694;border:1px solid #1f3047;border-radius:9px;grid-template-columns:minmax(200px,1.2fr) minmax(330px,1.5fr) 150px;align-items:center;gap:13px;min-height:82px;padding:10px 12px;display:grid}.catalog-entry-main{gap:4px;display:grid}.catalog-entry-main strong{color:#e5eefb;font-size:10px}.catalog-entry-main span{color:#91b8f1;font-size:9px}.catalog-entry-main small{color:#6f829c;font-size:8px;line-height:1.4}.catalog-entry dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin:0;display:grid}.catalog-entry dl div{gap:2px;display:grid}.catalog-entry dt{color:#667b98;text-transform:uppercase;font-size:7px;font-weight:800}.catalog-entry dd{color:#aebed2;margin:0;font-size:8px;line-height:1.35}.catalog-entry .button{min-height:36px;padding-inline:10px;font-size:8px}.catalog-reference-badge{color:#71859f;border:1px solid #31425a;border-radius:999px;justify-self:end;padding:6px 8px;font-size:7px;font-weight:800}.catalog-section--rules ol{color:#9fb0c6;background:#0f1c2da6;border:1px solid #243752;border-radius:9px;gap:7px;margin:0;padding:12px 14px 12px 30px;font-size:9px;line-height:1.45;display:grid}.catalog-empty{color:#8093ab;text-align:center;margin:20px}.modal-backdrop--actual{z-index:110;background:#010408d6}.modal-card--actual{width:min(720px,100%);max-height:min(900px,100vh - 36px);overflow-y:auto}.actual-reference{background:#2f7df412;border:1px solid #2f7df459;border-radius:9px;gap:5px;margin-bottom:14px;padding:11px 13px;display:grid}.actual-reference strong{color:#dceaff;font-size:11px}.actual-reference span{color:#9ab9e8;font-size:9px}.actual-reference small{color:#758ba8;font-size:8px}.field-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}html[data-theme=light] .catalog-toolbar input,html[data-theme=light] .catalog-section>header,html[data-theme=light] .catalog-entry,html[data-theme=light] .catalog-section--rules ol{color:#21344d;background:#f7faff;border-color:#cbd7e5}html[data-theme=light] .catalog-section>header h3,html[data-theme=light] .catalog-entry-main strong,html[data-theme=light] .actual-reference strong{color:#17283e}html[data-theme=light] .catalog-entry dd,html[data-theme=light] .catalog-notice p{color:#50647e}@media (width<=1100px){.equipment-summary{min-width:0}.equipment-summary select{display:none}.catalog-entry{grid-template-columns:minmax(180px,1fr) minmax(260px,1.2fr)}.catalog-entry>.button,.catalog-reference-badge{justify-self:start}}@media (width<=700px){.equipment-summary{flex-wrap:wrap;justify-content:flex-start}.catalog-entry{grid-template-columns:1fr}.catalog-entry dl{grid-template-columns:1fr 1fr}.field-grid--three{grid-template-columns:1fr}}.cargo-card-actions{justify-items:end;gap:5px;padding-top:22px;display:grid}.cargo-edit-button{color:#bcd8ff;cursor:pointer;background:#2f7df41a;border:1px solid #2a4f7f;border-radius:7px;min-width:74px;height:27px;font-size:9px;font-weight:750}.cargo-edit-button:hover,.cargo-edit-button:focus-visible{background:#2f7df433;border-color:#4f91f7;outline:none}.cargo-card-actions .quantity-control{margin-top:0}.cargo-copy>.cargo-rule-summary{color:#77a8ea;white-space:normal;margin-top:4px;line-height:1.45}.modal-card--cargo-edit{width:min(780px,100%);max-height:min(900px,100vh - 48px);overflow:hidden}.modal-card--cargo-edit form{max-height:calc(100vh - 134px);overflow-y:auto}.cargo-edit-heading-fields{grid-template-columns:minmax(0,1fr) 180px;gap:10px;display:grid}.field textarea{resize:vertical;color:#fff;width:100%;min-height:96px;font:inherit;background:#080f1a;border:1px solid #2a3a53;border-radius:8px;padding:10px 11px;font-size:11px;line-height:1.5}.field span small{color:#60738e;margin-left:5px;font-weight:500}.color-input-row{grid-template-columns:52px 1fr;align-items:center;gap:8px;display:grid}.color-input-row input[type=color]{cursor:pointer;height:42px;padding:4px}.color-input-row code{color:#c7d8ee;font-size:10px}.cargo-rule-fieldset{border:0;margin:3px 0 10px;padding:0}.cargo-rule-fieldset--bulk{margin-top:16px}.cargo-rule-fieldset legend{color:#b9cce4;margin-bottom:8px;font-size:10px;font-weight:800}.cargo-rule-options,.cargo-orientation-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cargo-rule-options label,.cargo-orientation-options label{cursor:pointer;background:#050c15a8;border:1px solid #243751;border-radius:9px;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:8px;min-height:62px;padding:10px;display:grid}.cargo-rule-options label.is-selected,.cargo-orientation-options label.is-selected{background:linear-gradient(135deg,#2f7df42b,#2ac9aa12);border-color:#3b84ee}.cargo-rule-options input,.cargo-orientation-options input{accent-color:#2f7df4;margin:3px 0 0}.cargo-rule-options span,.cargo-orientation-options span{gap:4px;display:grid}.cargo-rule-options strong,.cargo-orientation-options strong{color:#e1ebf8;font-size:10px}.cargo-rule-options small,.cargo-orientation-options small{color:#71849d;font-size:8px;line-height:1.4}.cargo-orientation-options{margin-bottom:4px}.scene-panel{grid-template-rows:47px minmax(0,1fr) 34px 92px}.scene-toolbar--bottom{grid-template-columns:minmax(130px,.8fr) auto auto minmax(130px,.8fr);gap:10px}.scene-control-fields{grid-template-columns:repeat(2,minmax(112px,1fr));gap:6px;display:grid}.scene-control-fields label{gap:4px;display:grid}.scene-control-fields label>span{color:#7790b2;font-size:8px;font-weight:800}.scene-control-fields select{color:#e8f2ff;background:#07101c;border:1px solid #263b59;border-radius:6px;height:31px;padding:0 7px;font-size:9px}html[data-theme=light] .cargo-edit-button{color:#1d559b;background:#edf5ff;border-color:#a7c5ee}html[data-theme=light] .field textarea,html[data-theme=light] .scene-control-fields select{color:#21344d;background:#f7faff;border-color:#cbd7e5}html[data-theme=light] .cargo-rule-options label,html[data-theme=light] .cargo-orientation-options label{background:#f8fbff;border-color:#cfdae8}html[data-theme=light] .cargo-rule-options strong,html[data-theme=light] .cargo-orientation-options strong{color:#1d3048}@media (width<=1320px){.scene-toolbar--bottom{grid-template-columns:110px auto minmax(220px,1fr)}.scene-toolbar--bottom .drag-help{display:none}}@media (width<=760px){.cargo-edit-heading-fields,.cargo-rule-options,.cargo-orientation-options,.scene-control-fields{grid-template-columns:1fr}}.admin-shell{overscroll-behavior:contain;scrollbar-gutter:stable;color:#f5f8ff;background:radial-gradient(circle at 78% 2%,#1d78ee1f,#0000 30%),#050a12;grid-template-columns:250px minmax(0,1fr);align-items:start;height:100dvh;display:grid;overflow:hidden auto}.admin-sidebar{background:#050b14f0;border-right:1px solid #1a2b42;flex-direction:column;gap:22px;height:100dvh;padding:24px 18px;display:flex;position:sticky;top:0}.admin-back{color:#91b9f6;cursor:pointer;background:#0c1727;border:1px solid #243b59;border-radius:10px;min-height:38px}.admin-sidebar nav{gap:7px;display:grid}.admin-sidebar nav button{color:#8192aa;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:26px 1fr;align-items:center;min-height:43px;padding:0 12px;display:grid}.admin-sidebar nav button:hover,.admin-sidebar nav button.is-active{color:#eaf3ff;background:linear-gradient(90deg,#2474e133,#11335b1f);border-color:#285a94}.admin-sidebar nav button span{color:#62a0fa;text-align:center}.admin-identity{border-top:1px solid #18283d;grid-template-columns:36px minmax(0,1fr) 30px;align-items:center;gap:9px;margin-top:auto;padding-top:18px;display:grid}.admin-identity>span{color:#cfe5ff;background:#10294a;border:1px solid #347bd0;border-radius:11px;place-items:center;width:36px;height:36px;font-size:11px;font-weight:800;display:grid}.admin-identity div{gap:3px;min-width:0;display:grid}.admin-identity strong,.admin-identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-identity strong{font-size:10px}.admin-identity small{color:#6e819d;font-size:8px}.admin-identity button{color:#7990ad;cursor:pointer;background:0 0;border:0}.admin-main{min-width:0;min-height:100%;padding:30px clamp(22px,4vw,58px) 70px}.admin-header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:28px;display:flex}.admin-header h1{margin:4px 0 0;font-size:clamp(25px,3vw,38px)}.admin-security-badge{color:#86e4d5;letter-spacing:.05em;text-transform:uppercase;background:#11675b2e;border:1px solid #246f69;border-radius:999px;padding:9px 13px;font-size:9px;font-weight:800}.admin-section{gap:18px;display:grid}.admin-section-heading{justify-content:space-between;align-items:end;gap:20px;display:flex}.admin-section-heading h2{margin:4px 0 0;font-size:22px}.admin-section-heading>span{color:#7589a5;font-size:9px}.admin-stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.admin-stat-grid button{color:#f5f8ff;text-align:left;cursor:pointer;background:linear-gradient(145deg,#0e1c30,#091321);border:1px solid #1d3553;border-radius:15px;align-content:space-between;gap:8px;min-height:130px;padding:18px;display:grid}.admin-stat-grid button:hover{border-color:#3275c6;transform:translateY(-1px)}.admin-stat-grid span,.admin-stat-grid small{color:#7890ae;font-size:9px}.admin-stat-grid strong{font-size:30px}.admin-stat-grid small{color:#71a9f9}.admin-primary-note{background:#1341672e;border:1px solid #245d83;border-radius:14px;gap:6px;padding:18px;display:grid}.admin-primary-note strong{color:#90c7ff}.admin-primary-note span{font-size:13px;font-weight:800}.admin-primary-note p{color:#7f93ad;margin:0;font-size:10px;line-height:1.6}.admin-inline-form,.admin-search,.admin-archive{background:#091422;border:1px solid #1b304b;border-radius:13px;align-items:end;gap:10px;padding:14px;display:flex}.admin-inline-form input,.admin-search input,.admin-archive input{color:#f4f8ff;background:#07101d;border:1px solid #294463;border-radius:9px;flex:1;min-width:0;min-height:40px;padding:0 12px}.admin-search button{color:#fff;cursor:pointer;background:#1767c8;border:1px solid #347ace;border-radius:9px;min-height:40px;padding:0 20px}.admin-archive label{flex:1;gap:6px;display:grid}.admin-archive label span{color:#8194ae;font-size:8px}.admin-archive .is-disabled{pointer-events:none;opacity:.45}.admin-list{gap:8px;display:grid}.admin-list article,.admin-project-list>button,.admin-user-list>button{color:#eef5ff;background:#0a1625;border:1px solid #1b304b;border-radius:12px;align-items:center;gap:12px;min-width:0;padding:13px 15px;display:flex}.admin-list article>div,.admin-project-list>button>div,.admin-user-list>button>div{flex:1;gap:4px;min-width:0;display:grid}.admin-list strong,.admin-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-list strong{font-size:10px}.admin-list small{color:#7388a5;font-size:8px}.admin-list article>a{color:#76adfc;font-size:9px;text-decoration:none}.admin-list article>em{color:#657991;font-size:8px;font-style:normal}.admin-danger-link{color:#ff8f9c;cursor:pointer;background:0 0;border:0;font-size:9px}.admin-more{color:#a7ccff;cursor:pointer;background:#0d2038;border:1px solid #315b8d;border-radius:10px;justify-self:center;min-width:150px;min-height:38px}.admin-empty{color:#6e829d;text-align:center;margin:0;padding:24px;font-size:10px}.admin-document-list article{grid-template-columns:auto minmax(0,1fr) auto;display:grid}.admin-file-status{color:#99c6ff;text-align:center;text-transform:uppercase;background:#17304f;border-radius:999px;min-width:66px;padding:6px 8px;font-size:7px;font-weight:800}.admin-file-status--completed{color:#83e4c8;background:#103a31}.admin-file-status--failed{color:#ff9dac;background:#48202b}.admin-document-list article.has-error{background:linear-gradient(145deg,#4819266b,#091423eb);border-color:#663241}.admin-file-message{overflow-wrap:anywhere;border-radius:8px;margin-top:4px;padding:8px 10px;line-height:1.45;white-space:normal!important}.admin-file-message--processing{background:#2259972e;border:1px solid #315a8c;color:#9cc9ff!important}.admin-file-message--failed{background:#5b1e2d4d;border:1px solid #6f3442;color:#ffb3bd!important}.admin-file-message--failed strong{color:#ffd3d9}.admin-split{grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:16px;display:grid}.admin-user-list>button,.admin-project-list>button{text-align:left;cursor:pointer;width:100%}.admin-user-list>button:hover,.admin-user-list>button.is-selected,.admin-project-list>button:hover{background:#0e2036;border-color:#3579c9}.admin-user-list>button>span{color:#b9d8ff;background:#16365c;border-radius:10px;place-items:center;width:36px;height:36px;font-size:9px;font-weight:800;display:grid}.admin-user-list em,.admin-project-list em{color:#79b5ff;font-size:8px;font-style:normal}.admin-user-list em.is-banned{color:#ff8795}.admin-user-detail{background:#091423db;border:1px solid #1c3452;border-radius:15px;min-width:0;padding:18px}.admin-user-profile{align-items:center;gap:12px;display:flex}.admin-user-profile>span{color:#d4e8ff;background:#12345c;border:1px solid #3684df;border-radius:14px;place-items:center;width:50px;height:50px;font-weight:800;display:grid}.admin-user-profile h3,.admin-user-profile p{margin:0}.admin-user-profile p,.admin-user-profile small{color:#7790ad;font-size:9px}.admin-user-metrics{grid-template-columns:repeat(2,1fr);gap:9px;margin:16px 0;display:grid}.admin-user-metrics span{background:#0d1b2d;border-radius:9px;gap:3px;padding:10px;display:grid}.admin-user-metrics strong{font-size:17px}.admin-user-metrics small{color:#7187a3;font-size:8px}.admin-user-detail h4{margin:20px 0 10px;font-size:11px}.admin-user-detail .admin-section{gap:9px}.admin-user-detail .admin-document-list article{padding:10px}.admin-permissions{gap:8px;display:grid}.admin-permissions label{color:#aabbd0;border:1px solid #1d3451;border-radius:9px;align-items:center;gap:9px;padding:9px;font-size:9px;display:flex}.admin-user-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.admin-ban-button{color:#ffadb7;background:#3a1720;border:1px solid #87424d}.admin-protected{color:#87dfd2;border:1px solid #246b65;border-radius:9px;margin-top:14px;padding:11px;font-size:9px}.admin-project-list>button{grid-template-columns:40px minmax(0,1fr) auto;display:grid}.app-shell.is-read-only .workspace-grid button,.app-shell.is-read-only .workspace-grid input,.app-shell.is-read-only .workspace-grid select,.app-shell.is-read-only .workspace-heading select,.app-shell.is-read-only .workspace-heading button,.app-shell.is-read-only .transport-nav button{pointer-events:none;opacity:.58}html[data-theme=light] .admin-shell{color:#0b1727;background:#eef4fb}html[data-theme=light] .admin-sidebar{background:#f8fbff;border-color:#d6e1ef}html[data-theme=light] .admin-list article,html[data-theme=light] .admin-project-list>button,html[data-theme=light] .admin-user-list>button,html[data-theme=light] .admin-user-detail,html[data-theme=light] .admin-inline-form,html[data-theme=light] .admin-search,html[data-theme=light] .admin-archive{color:#0b1727;background:#fff;border-color:#cfdeef}html[data-theme=light] .admin-inline-form input,html[data-theme=light] .admin-search input,html[data-theme=light] .admin-archive input{color:#0b1727;background:#f5f8fc}@media (width<=980px){.admin-shell{grid-template-columns:1fr}.admin-sidebar{height:auto;min-height:auto;position:static}.admin-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-identity{margin-top:0}.admin-stat-grid{grid-template-columns:repeat(2,minmax(130px,1fr))}.admin-split{grid-template-columns:1fr}}@media (width<=620px){.admin-main{padding:22px 14px 50px}.admin-header,.admin-section-heading{flex-direction:column;align-items:flex-start}.admin-sidebar nav,.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-inline-form,.admin-archive{flex-direction:column;align-items:stretch}.admin-document-list article,.admin-project-list>button{grid-template-columns:1fr}}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;height:100%;overflow-x:hidden}body{min-width:0;min-height:100dvh}.brand-logo{max-width:100%}.brand-logo--compact,.brand-logo--standard,.brand-logo--hero{width:auto;height:auto}.portal-shell{grid-template-columns:clamp(208px,13vw,248px) minmax(0,1fr);width:100%;height:100dvh;min-height:0}.portal-sidebar{width:100%;height:100dvh;min-height:0;overflow:hidden auto}.portal-sidebar .login-brand{width:100%;min-width:0}.portal-main{overscroll-behavior:contain;width:100%;min-width:0;height:100dvh}.portal-main-header,.welcome-section,.project-launch-widget,.project-grid,.project-tile{min-width:0}.welcome-section h1,.project-launch-widget strong,.project-tile strong{overflow-wrap:anywhere}.app-shell{grid-template-rows:clamp(56px,6.8dvh,66px) clamp(60px,7.2dvh,70px) minmax(0,1fr);width:100%;min-width:0;height:100dvh;min-height:0;overflow:hidden}.topbar{grid-template-columns:minmax(160px,280px) minmax(0,1fr) max-content;gap:clamp(8px,1.25vw,24px);min-width:0;padding-inline:clamp(12px,1.4vw,22px)}.brand-block,.transport-nav,.top-actions,.workspace-heading>div:first-child,.equipment-summary,.workspace-grid,.panel,.scene-panel{min-width:0}.workspace-heading{padding-inline:clamp(12px,1.4vw,22px)}.workspace-heading h1{overflow-wrap:anywhere}.equipment-summary{width:auto;max-width:min(690px,58vw)}.workspace-grid{grid-template-columns:minmax(230px,18vw) minmax(0,1fr) minmax(250px,20vw);gap:clamp(6px,.65vw,10px);padding:clamp(6px,.65vw,10px);overflow:hidden}.scene-control-fields{grid-template-columns:repeat(3,minmax(92px,1fr))}.scene-control-fields select{text-overflow:ellipsis;width:100%;min-width:0}@media (width<=1320px){.workspace-grid{grid-template-columns:minmax(220px,23vw) minmax(0,1fr) minmax(230px,24vw)}.scene-toolbar--bottom{grid-template-columns:auto minmax(0,1fr);height:auto;min-height:92px}.scene-toolbar--bottom .selected-summary,.scene-toolbar--bottom .drag-help{display:none}}@media (width<=1180px) and (width>=761px){body{overflow:auto}.app-shell{grid-template-rows:auto auto auto;height:auto;min-height:100dvh;overflow:visible}.topbar{z-index:30;grid-template-columns:max-content minmax(0,1fr) max-content;min-height:60px;position:sticky;top:0}.transport-nav button small,.top-actions .plan-state,.top-actions .button{display:none}.workspace-heading{min-height:68px}.equipment-summary{max-width:56vw}.equipment-summary select{display:none}.workspace-grid{grid-template-rows:clamp(580px,78dvh,760px) auto;grid-template-columns:minmax(230px,32vw) minmax(0,1fr);overflow:visible}.insights-panel{grid-column:1/-1;min-height:500px}.insights-content{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px;display:grid}.scene-panel{grid-template-rows:47px minmax(0,1fr) 34px auto}}@media (width<=980px) and (width>=701px){.portal-shell{grid-template-columns:clamp(72px,9vw,82px) minmax(0,1fr)}.portal-sidebar .brand-logo{width:auto;height:auto}.portal-sidebar .brand-wordmark{display:none}}@media (width<=760px){body{overflow:auto}.app-shell{grid-template-rows:auto auto auto;height:auto;min-height:100dvh;overflow:visible}.topbar{z-index:30;grid-template-columns:minmax(0,1fr) max-content;gap:8px;min-height:58px;position:sticky;top:0}.brand-block{gap:6px}.brand-block .brand-logo{width:auto;height:auto}.workspace-back{width:32px;height:32px}.workspace-heading{gap:10px;min-height:0}.workspace-heading h1{font-size:clamp(16px,5vw,21px)}.equipment-summary{width:100%;max-width:100%}.equipment-summary>div{flex:1;min-width:0}.equipment-summary strong,.equipment-summary span{overflow-wrap:anywhere}.equipment-summary select{display:none}.workspace-grid{grid-template-rows:none;grid-template-columns:minmax(0,1fr);gap:8px;padding:8px;overflow:visible}.cargo-panel{min-height:clamp(520px,70dvh,720px)}.scene-panel{grid-template-rows:auto minmax(320px,1fr) auto auto;min-width:0;min-height:clamp(560px,82dvh,760px)}.insights-panel{min-height:520px}.scene-toolbar--top{min-height:44px}.segmented--compact{flex-basis:auto;width:min(220px,100%)}.scene-toolbar--bottom{grid-template-columns:1fr;gap:8px;height:auto;min-height:0;padding-block:8px}.coordinate-fields,.scene-control-fields{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.coordinate-fields input,.scene-control-fields select{width:100%;min-width:0}.optimization-overlay{inset:44px 0 0}.modal-backdrop{align-items:start;padding:10px;overflow-y:auto}.modal-card,.modal-card--catalog,.modal-card--actual,.modal-card--cargo-edit,.modal-card--document-review{max-height:none}}@media (width<=700px){.portal-shell{height:auto;min-height:100dvh;display:block;overflow:visible}.portal-sidebar{z-index:30;border-bottom:1px solid #1d2a3f;border-right:0;flex-direction:row;align-items:center;gap:6px;width:100%;height:64px;min-height:64px;padding:8px 10px;position:sticky;top:0;overflow:auto hidden}.portal-sidebar .login-brand{flex:none;width:auto}.portal-sidebar .brand-logo{width:auto;height:auto}.portal-sidebar .brand-wordmark{display:none}.portal-sidebar nav{flex:1;justify-content:center;gap:2px;min-width:max-content;margin:0;display:flex}.portal-sidebar nav button,.portal-sidebar nav button:not(.is-active){grid-template-columns:1fr;justify-items:center;width:40px;min-height:40px;padding:0;font-size:0}.portal-sidebar nav button span{font-size:16px}.portal-sidebar nav button small{display:none}.portal-sidebar-footer{border:0;flex:0 0 36px;width:36px;margin:0;padding:0;display:block}.portal-main{height:auto;min-height:calc(100dvh - 64px);padding:0 14px 44px;overflow:visible}.portal-main-header{min-height:62px}.welcome-section{padding:clamp(32px,7vh,52px) 0 26px}.welcome-section h1{font-size:clamp(32px,11vw,52px)}}@media (width<=420px){.portal-sidebar{gap:3px;padding-inline:6px}.portal-sidebar .brand-logo{width:auto}.portal-sidebar nav button,.portal-sidebar nav button:not(.is-active){width:35px}.portal-sidebar-footer{flex-basis:34px;width:34px}.portal-sidebar-footer .avatar-button{width:34px;height:34px;min-height:34px}.portal-main-header .button{min-height:36px;padding-inline:10px;font-size:9px}.project-launch-widget{gap:12px;padding:15px 13px}.coordinate-fields,.scene-control-fields{gap:4px}.scene-control-fields label>span{min-height:20px}}@media (height<=720px) and (width>=1181px){.app-shell{grid-template-rows:54px 58px minmax(0,1fr)}.topbar .brand-logo{width:auto}.workspace-heading{padding-block:5px}.workspace-grid{gap:6px;padding:6px}.panel-heading{padding:10px 12px 7px}.cargo-actions{padding:0 12px 8px}.document-drop-zone{min-height:66px;margin-bottom:8px;padding:8px 10px}.document-drop-zone em{display:none}.scene-panel{grid-template-rows:42px minmax(0,1fr) 28px auto}}.login-shell--animated{background:#060d1f;grid-template-columns:minmax(0,55fr) minmax(390px,45fr);width:100%;height:100dvh;min-height:620px;display:grid;overflow:hidden}.login-visual-panel,.login-access-panel{min-width:0;min-height:0;position:relative;overflow:hidden}.login-visual-panel{background:linear-gradient(135deg,#071228 0%,#0a1c3e 50%,#060f24 100%);border-right:1px solid #638cdc21}.login-animation-layer,.login-wireframe,.login-grid-overlay,.login-particles,.login-access-glow{pointer-events:none;position:absolute;inset:0}.login-wireframe{width:100%;height:100%;display:block}.login-grid-overlay{opacity:.9;background-image:linear-gradient(#2563eb0a 1px,#0000 1px),linear-gradient(90deg,#2563eb0a 1px,#0000 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(#0000 2%,#000 24% 84%,#0000);mask-image:linear-gradient(#0000 2%,#000 24% 84%,#0000)}.login-visual-panel:before{content:"";z-index:2;pointer-events:none;background:linear-gradient(#0000,#2563eb85 30%,#639beb4d 70%,#0000);width:1px;position:absolute;inset:0 auto 0 0}.login-particles i{left:var(--particle-x);top:var(--particle-y);width:var(--particle-size);height:var(--particle-size);animation:login-particle var(--particle-duration) ease-in-out var(--particle-delay) infinite;background:#93c5fd9e;border-radius:50%;position:absolute;box-shadow:0 0 7px #93c5fd7a}@keyframes login-particle{0%,to{opacity:.28;transform:translate(0)}34%{opacity:.82;transform:translate3d(var(--particle-dx), var(--particle-dy), 0)}68%{opacity:.42;transform:translate3d(var(--particle-back-x), var(--particle-back-y), 0)}}.login-visual-content{z-index:3;flex-direction:column;height:100%;padding:clamp(30px,4.4vw,66px);display:flex;position:relative}.login-platform-brand{align-items:center;display:flex}.login-visual-copy{width:min(650px,100%);margin-block:auto}.login-visual-copy h1{color:#f0f6ff;letter-spacing:-.045em;max-width:720px;margin:0 0 20px;font-size:clamp(31px,3.2vw,51px);font-weight:720;line-height:1.12}.login-visual-copy h1 span{color:#7db4ff;-webkit-text-fill-color:transparent;background:linear-gradient(90deg,#60a5fa,#93c5fd 62%,#bfdbfe);-webkit-background-clip:text;background-clip:text}.login-visual-copy>div>p{color:#94b3ebbf;max-width:430px;margin:0;font-size:clamp(13px,1.05vw,16px);line-height:1.65}.login-data-tags{gap:10px;margin-top:30px;display:grid}.login-data-tags>span{align-items:center;gap:8px;font:500 10px ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.login-data-tags i{background:#60a5fa;border-radius:50%;width:6px;height:6px;box-shadow:0 0 7px #60a5fad1}.login-data-tags small{color:#93c5fd8c;letter-spacing:.09em;text-transform:uppercase;font-size:9px}.login-data-tags strong{color:#bfdbfecc;font-size:10px;font-weight:500}.login-feature-pills{flex-wrap:wrap;gap:7px;margin-top:30px;display:flex}.login-feature-pills span{color:#93c5fd9e;letter-spacing:.07em;text-transform:uppercase;background:#2563eb12;border:1px solid #639beb33;border-radius:4px;padding:5px 10px;font:500 9px ui-monospace,SFMono-Regular,Menlo,monospace}.login-visual-footer{color:#638cdc73;letter-spacing:.1em;border-top:1px solid #638cdc1f;margin-top:34px;padding-top:22px;font:500 9px ui-monospace,SFMono-Regular,Menlo,monospace}.login-access-panel{background:linear-gradient(160deg,#07101f 0%,#060d1f 60%,#050c1a 100%);place-items:center;padding:clamp(24px,4vw,58px);display:grid}.login-access-panel:before,.login-access-panel:after{content:"";pointer-events:none;position:absolute}.login-access-panel:before{background:linear-gradient(#0000,#2563eb38 40%,#0000);width:1px;height:100%;inset:0 0 auto auto}.login-access-panel:after{background:linear-gradient(90deg,#0000,#2563eb2b 50%,#0000);height:1px;inset:auto 0 0}.login-access-glow{background:radial-gradient(78% 58% at 50% 40%,#2563eb12,#0000 72%)}.login-card--animated{z-index:2;width:min(390px,100%);box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;position:relative}.login-card--animated:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(#2563eb17,#0000 70%);border-radius:50%;position:absolute;inset:-48px}.login-card--animated h2{color:#f0f6ff;letter-spacing:-.035em;margin:10px 0;font-size:clamp(25px,2.3vw,32px);font-weight:720}.login-card--animated>p:not(.eyebrow){color:#94b3eb9e;margin-bottom:26px;font-size:13px;line-height:1.65}.login-card-divider{transform-origin:0;background:linear-gradient(90deg,#0000,#638cdc42 40% 60%,#0000);height:1px;margin:8px 0 24px;animation:.7s .5s both login-divider}@keyframes login-divider{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}.login-shell--animated .oauth-button{color:#f0f6ff;background:#2563eb0d;border-color:#638cdc36;border-radius:11px;justify-content:flex-start;gap:14px;min-height:52px;margin-top:11px;padding:0 18px;font-size:13px;font-weight:560;position:relative;overflow:hidden}.login-shell--animated .oauth-button:before{content:"";background:linear-gradient(90deg,#0000,#93c5fd12,#0000);transition:transform .55s;position:absolute;inset:0;transform:translate(-105%)}.login-shell--animated .oauth-button:hover{background:#2563eb21;border-color:#639beb7a;box-shadow:0 0 24px #2563eb21,inset 0 1px #93c5fd14}.login-shell--animated .oauth-button:hover:before{transform:translate(105%)}.login-shell--animated .oauth-button>*{z-index:1;position:relative}.login-shell--animated .microsoft-mark,.login-shell--animated .google-mark{flex:0 0 18px;width:18px;height:18px}.login-shell--animated .google-mark{background:0 0;border-radius:0;padding:0;display:block}.oauth-arrow{color:#93c5fd6b;margin-left:auto;font-size:16px;transition:transform .16s,color .16s}.oauth-button:hover .oauth-arrow{color:#9bc4ff;transform:translate(3px)}.login-shell--animated .login-security-note{color:#638cdc80;text-align:center;margin-top:22px;line-height:1.55}.login-security-note i,.login-system-status i{background:#22c55e;border-radius:50%;flex:0 0 6px;width:6px;height:6px;box-shadow:0 0 7px #22c55eb8}.login-system-status{color:#638cdc75;letter-spacing:.11em;justify-content:center;align-items:center;gap:8px;margin-top:22px;font:500 9px ui-monospace,SFMono-Regular,Menlo,monospace;display:flex}.login-system-status i{animation:2.2s ease-in-out infinite login-status-pulse}@keyframes login-status-pulse{0%,to{opacity:.58;transform:scale(1)}50%{opacity:1;transform:scale(1.55)}}.login-mobile-brand{display:none}.login-reveal{animation:.76s cubic-bezier(.22,1,.36,1) both login-reveal}.login-reveal--1{animation-delay:80ms}.login-reveal--2{animation-delay:.18s}.login-reveal--3{animation-delay:.36s}.login-reveal--4{animation-delay:.51s}.login-reveal--5{animation-delay:.68s}@keyframes login-reveal{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}html[data-theme=light] .login-shell--animated .brand-wordmark strong,html[data-theme=light] .login-shell--animated .brand-wordmark>span{color:revert}html[data-theme=light] .login-shell--animated .brand-wordmark strong{color:#f7faff}html[data-theme=light] .login-shell--animated .brand-wordmark>span{color:var(--ols-blue-soft)}@media (width<=900px){.login-shell--animated{grid-template-columns:minmax(0,1fr);height:auto;min-height:100dvh;overflow-y:auto}.login-visual-panel{display:none}.login-access-panel{align-content:center;gap:34px;min-height:100dvh;padding:30px 20px}.login-mobile-brand{z-index:2;justify-content:center;display:flex}.login-card--animated{width:min(410px,100%)}}@media (width<=480px){.login-shell--animated{min-height:620px}.login-access-panel{gap:26px;padding:24px 18px}.login-mobile-brand .brand-mark{width:42px;height:42px}.login-card--animated h2{font-size:25px}.login-shell--animated .oauth-button{min-height:50px;padding-inline:15px}}@media (height<=760px) and (width>=901px){.login-shell--animated{min-height:560px}.login-visual-content{padding-block:26px}.login-visual-copy h1{margin-bottom:12px;font-size:clamp(28px,3vw,42px)}.login-data-tags{gap:7px;margin-top:18px}.login-feature-pills{margin-top:18px}.login-visual-footer{margin-top:20px;padding-top:16px}.login-card--animated>p:not(.eyebrow),.login-card-divider{margin-bottom:18px}.login-shell--animated .login-security-note,.login-system-status{margin-top:16px}}.app-shell{--editor-text-xs:clamp(9px, .58vw, 11px);--editor-text-sm:clamp(10px, .66vw, 12px);--editor-text-md:clamp(11px, .74vw, 13px)}.app-shell .eyebrow,.app-shell .scene-hint,.app-shell .scene-caption p,.app-shell .scene-caption>div>span:last-child,.app-shell .status-chip,.app-shell .selected-summary span,.app-shell .coordinate-fields label,.app-shell .scene-control-fields label>span,.app-shell .metric-dial small,.app-shell .cog-axis,.app-shell .cog-values small,.app-shell .issue-card span{font-size:var(--editor-text-xs)}.app-shell .document-drop-zone strong,.app-shell .document-drop-zone small,.app-shell .document-drop-zone em,.app-shell .cargo-copy>span,.app-shell .cargo-meta span,.app-shell .section-label small,.app-shell .segmented button,.app-shell .scene-legend,.app-shell .tabs button,.app-shell .tabs button span,.app-shell .selected-summary strong,.app-shell .edit-buttons button,.app-shell .coordinate-fields input,.app-shell .scene-control-fields select,.app-shell .metric-dial-card strong,.app-shell .metric-dial-card>div:last-child span,.app-shell .cog-values strong,.app-shell .axle-row span,.app-shell .axle-row em,.app-shell .validation-hero p,.app-shell .issue-card p{font-size:var(--editor-text-sm)}.app-shell .equipment-summary strong,.app-shell .equipment-summary span,.app-shell .cargo-copy strong,.app-shell .cargo-copy p,.app-shell .section-label span,.app-shell .validation-hero strong,.app-shell .issue-card strong,.app-shell .axle-row strong{font-size:var(--editor-text-md)}.app-shell .panel-heading h2{font-size:clamp(17px,1.15vw,20px)}.app-shell .count-badge{font-size:clamp(10px,.65vw,12px)}.app-shell .insights-content{padding:clamp(12px,.9vw,16px)}.app-shell .metrics-grid{gap:clamp(7px,.55vw,10px)}.app-shell .metric-dial-card,.app-shell .balance-card,.app-shell .axle-card,.app-shell .validation-hero,.app-shell .issue-card{padding:clamp(10px,.8vw,14px)}@media (width<=1440px){.app-shell .topbar{grid-template-columns:max-content minmax(0,1fr) max-content}.app-shell .brand-block .brand-wordmark{display:none}.app-shell .transport-nav{grid-template-columns:repeat(5,minmax(58px,1fr));width:min(100%,520px)}.app-shell .transport-nav button{min-width:0;padding-inline:clamp(6px,.65vw,10px)}.app-shell .plan-state span{display:none}.app-shell .workspace-grid{grid-template-columns:minmax(224px,20vw) minmax(400px,1fr) minmax(238px,21vw)}}@media (width<=1320px){.app-shell .top-actions .plan-state{display:none}.app-shell .workspace-grid{grid-template-columns:minmax(218px,22vw) minmax(390px,1fr) minmax(228px,23vw)}}@media (height<=820px) and (width>=1181px){.app-shell{grid-template-rows:56px 60px minmax(0,1fr)}.app-shell .topbar,.app-shell .workspace-heading{padding-inline:12px}.app-shell .workspace-heading{padding-block:5px}.app-shell .workspace-grid{gap:6px;padding:6px}.app-shell .panel-heading{padding:10px 12px 7px}.app-shell .cargo-actions{padding:0 12px 8px}.app-shell .document-drop-zone{min-height:68px;margin-bottom:8px;padding:8px 10px}.app-shell .document-drop-zone em{display:none}.app-shell .scene-panel{grid-template-rows:44px minmax(0,1fr) 30px auto}}@media (width<=1180px) and (width>=761px){.app-shell .workspace-grid{grid-template-rows:clamp(560px,76dvh,720px) auto;grid-template-columns:minmax(230px,31vw) minmax(0,1fr);width:100%}.app-shell .insights-panel{width:100%;min-height:430px}.app-shell .insights-content{grid-template-columns:repeat(3,minmax(0,1fr))}.app-shell .metrics-grid,.app-shell .balance-card,.app-shell .axle-card{grid-column:auto}}@media (width<=760px){.app-shell{--editor-text-xs:10px;--editor-text-sm:11px;--editor-text-md:12px}.app-shell .insights-content{display:block}.app-shell .metric-dial-card{min-height:62px}}.brand-mark,.brand-logo--compact .brand-mark,.brand-logo--standard .brand-mark,.brand-mark--large{width:16px;height:26px;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:none;align-items:flex-end;gap:3px;padding:0;display:flex}.brand-logo--compact .brand-mark{width:14px;height:22px}.brand-logo--hero .brand-mark,.brand-mark--large{width:22px;height:34px}.brand-mark i,.brand-mark i:nth-child(2),.brand-mark i:nth-child(3){border-radius:999px;width:4px}.brand-mark i{background:#2563eb;height:100%}.brand-mark i:nth-child(2){background:#3b82f6;height:70%}.brand-mark i:nth-child(3){background:#60a5fa;height:45%}.brand-logo--compact .brand-wordmark{gap:4px}.brand-logo--compact .brand-wordmark strong{font-size:14px}.brand-logo--compact .brand-wordmark>span{font-size:12px}.brand-logo--standard .brand-wordmark strong{font-size:15px}.brand-logo--standard .brand-wordmark>span{font-size:13px}.portal-shell{background:radial-gradient(circle at 72% 5%,#2563eb1c,#0000 30%),#060d1f;grid-template-columns:240px minmax(0,1fr)}.portal-sidebar{background:#0a1221;border-color:#638cdc1a;padding:20px 12px 16px}.portal-sidebar .login-brand{padding-inline:8px}.portal-sidebar-brand-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.portal-mobile-menu-toggle,.portal-sidebar-close,.portal-mobile-backdrop{display:none}.portal-sidebar nav{gap:4px;margin-top:22px}.portal-sidebar nav button{color:#94b3eb9e;border-radius:12px;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;min-height:42px;padding-inline:11px;font-size:clamp(11px,.76vw,13px)}.portal-sidebar nav button:hover,.portal-sidebar nav button.is-active{color:#93c5fd;background:#2563eb29;border-color:#2563eb57}.portal-sidebar nav button.is-active{box-shadow:none}.portal-sidebar-footer{border-color:#638cdc1a;margin-inline:0;padding:12px 8px 0}.portal-main{background:#060d1f;padding:0 clamp(18px,3vw,42px) 42px}.portal-main-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#060d1fc7;border-color:#638cdc1a;min-height:66px}.welcome-section{padding:clamp(30px,5dvh,52px) 0 24px}.welcome-section h1{letter-spacing:-.035em;margin:0 0 8px;font-size:clamp(25px,2.6vw,38px);line-height:1.18}.welcome-section p{color:#94b3eb94;font-size:clamp(12px,.9vw,14px)}.project-launch-widget{background:linear-gradient(135deg,#0a1c3e 0%,#071228 100%);border-color:#2563eb40;border-radius:16px;grid-template-columns:58px minmax(0,1fr) auto;gap:18px;min-height:104px;padding:20px;box-shadow:0 0 40px #2563eb0f}.project-launch-widget:hover{border-color:#2563eb80;box-shadow:0 0 42px #2563eb24}.project-launch-icon{background:#2563eb1a;border-color:#2563eb73;border-radius:13px;width:56px;height:56px;font-size:23px}.project-launch-widget strong{font-size:clamp(15px,1.25vw,19px)}.project-launch-widget em,.project-launch-widget b{font-size:clamp(10px,.76vw,12px)}.recent-projects-heading{margin:30px 0 14px}.recent-projects-heading h2{font-size:clamp(17px,1.35vw,21px)}.project-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));grid-auto-rows:minmax(92px,auto);grid-auto-flow:row;align-items:stretch;gap:12px;width:100%;min-width:0;display:grid}.project-tile{contain:layout paint;background:#0c1630;border-color:#638cdc21;border-radius:13px;grid-template-columns:42px minmax(0,1fr) max-content;gap:12px;width:100%;min-width:0;height:100%;min-height:92px;padding:14px;transition:border-color .15s,background .15s,transform .15s;position:relative;overflow:hidden}.project-tile:hover{background:#0e1a38;border-color:#2563eb61;transform:translateY(-1px)}.project-tile>span:nth-child(2){width:100%;min-width:0}.project-tile strong{color:#f0f6ff;font-size:clamp(11px,.82vw,13px)}.project-tile small,.project-tile em{color:#94b3eb80;font-size:clamp(9px,.62vw,11px)}.project-mode,.project-tile-empty-icon{color:#93c5fd;background:#2563eb26;border-color:#2563eb66;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.project-tile--empty{grid-template-columns:42px minmax(0,1fr)}.project-tile--empty>span:nth-child(2){gap:5px;display:grid}.app-shell{background:radial-gradient(circle at 52% 34%,#2563eb1a,#0000 34%),#060d1f;grid-template-rows:clamp(54px,6.4dvh,62px) clamp(58px,7dvh,68px) minmax(0,1fr)}.topbar{background:#0a1221;border-color:#638cdc1f;grid-template-columns:max-content minmax(170px,260px) minmax(0,1fr);gap:clamp(10px,1.2vw,20px)}.transport-mode-select,.optimization-select{gap:5px;min-width:0;display:grid}.transport-mode-select{grid-template-columns:max-content minmax(0,1fr);justify-self:center;align-items:center;gap:9px;width:min(100%,260px)}.transport-mode-select>span,.optimization-select>span{color:#639beba6;font-size:var(--editor-text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:800}.transport-mode-select select,.optimization-select select{color:#dceaff;width:100%;min-width:0;height:36px;font-size:var(--editor-text-md);background:#0e1a38;border:1px solid #638cdc2e;border-radius:9px;padding:0 30px 0 10px;font-weight:650}.workspace-heading{background:#060d1fb8;border-color:#638cdc1a}.equipment-icon{color:#93c5fd;background:#2563eb1f;border:1px solid #2563eb47}.equipment-summary select{color:#dceaff;background:#0e1a38;border:1px solid #638cdc2e;border-radius:9px;max-width:min(260px,24vw);height:36px;padding-inline:10px}.workspace-grid{grid-template-columns:minmax(260px,18.5vw) minmax(0,1fr) minmax(270px,19.5vw);gap:8px;padding:8px}.panel,.scene-panel{background:#0c1630;border-color:#638cdc1f;border-radius:13px;box-shadow:0 18px 46px #0003}.panel-heading{padding:14px 14px 9px}.cargo-actions{gap:6px;padding:0 14px 10px}.cargo-actions .button{min-height:36px;padding-inline:10px}.document-drop-zone{background:#060d1f73;border-color:#638cdc40;min-height:78px;margin:0 12px 10px}.cargo-card{background:#060d1f85;border:1px solid #638cdc1a;border-radius:11px;margin-bottom:7px;padding:11px 8px}.cargo-card:first-child{border-top:1px solid #638cdc1a}.cargo-card:hover{border-color:#2563eb47}.optimization-card{background:#0a142a;border-color:#638cdc1a;padding:11px 13px 13px}.optimization-select-grid{gap:9px;display:grid}.optimization-select>span{justify-content:space-between;align-items:center;gap:8px;display:flex}.optimization-select>span small{color:#638cdc7a;font-size:var(--editor-text-xs);letter-spacing:0;text-transform:none;font-weight:550}.live-optimization-status{background:#22c55e14;border-color:#22c55e4d;min-height:38px;margin-top:10px}.scene-panel{background:radial-gradient(circle at 50% 45%,#2563eb2e,#0000 36%),linear-gradient(155deg,#0a1c3e 0%,#071228 58%,#060d1f 100%)}.scene-toolbar{background:#060d1fd1}.scene-toolbar--bottom,.scene-caption{background:#060d1fe6;border-color:#638cdc1a}.tabs{border-color:#638cdc1a}.tabs button,.tabs button.is-active{background:#0a142a}.tabs button{color:#94b3eb80}.tabs button.is-active{color:#93c5fd}.metric-dial-card,.balance-card,.axle-card,.validation-hero,.issue-card{background:#060d1f85;border-color:#638cdc1c}.admin-shell{background:radial-gradient(circle at 78% 2%,#2563eb1f,#0000 30%),#060d1f}.admin-sidebar{background:#0a1221;border-color:#638cdc1a;width:100%}@media (width>=1181px){.app-shell .brand-block .brand-wordmark{display:flex}}@media (width<=1440px){.workspace-grid{grid-template-columns:minmax(238px,20vw) minmax(390px,1fr) minmax(245px,21vw)}.equipment-summary select{max-width:190px}}@media (width<=1220px) and (width>=761px){.app-shell .brand-block .brand-wordmark{display:none}}@media (width<=1180px) and (width>=761px){.app-shell .workspace-grid{grid-template-rows:clamp(560px,76dvh,720px) auto;grid-template-columns:minmax(240px,32vw) minmax(0,1fr)}.app-shell .insights-panel{grid-column:1/-1}}@media (width<=760px){.portal-shell{display:block}.portal-sidebar{z-index:70;background:#0a1221;border-bottom:0;border-right:1px solid #638cdc29;flex-direction:column;align-items:stretch;gap:0;width:min(280px,86vw);height:100dvh;min-height:0;padding:20px 12px 16px;transition:transform .22s;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden auto;transform:translate(-105%);box-shadow:24px 0 70px #00000080}.portal-sidebar.is-open{transform:translate(0)}.portal-sidebar .login-brand{width:auto}.portal-sidebar .brand-wordmark{display:flex}.portal-sidebar nav{flex:1;justify-content:stretch;gap:4px;min-width:0;margin-top:22px;display:grid}.portal-sidebar nav button,.portal-sidebar nav button:not(.is-active){grid-template-columns:24px minmax(0,1fr) auto;justify-items:stretch;width:100%;min-height:44px;padding:0 11px;font-size:12px;display:grid}.portal-sidebar nav button span{font-size:16px}.portal-sidebar nav button small{display:grid}.portal-sidebar-footer{grid-template-columns:38px minmax(0,1fr) 26px;width:100%;margin-top:auto;padding:12px 8px 0;display:grid}.portal-sidebar-footer>div,.portal-sidebar-footer>button{display:grid}.portal-sidebar-close{color:#94b3ebb8;cursor:pointer;background:#638cdc14;border:1px solid #638cdc29;border-radius:9px;place-items:center;width:34px;height:34px;font-size:20px;display:grid}.portal-mobile-backdrop{z-index:65;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#060d1fbd;border:0;display:block;position:fixed;inset:0}.portal-main{min-height:100dvh;padding-inline:14px}.portal-main-header{justify-content:flex-start;gap:12px;min-height:60px}.portal-mobile-menu-toggle{color:#93c5fd;cursor:pointer;background:#638cdc14;border:1px solid #638cdc29;border-radius:10px;place-items:center;width:38px;height:38px;font-size:18px;display:grid}.welcome-section{padding-top:28px}.project-launch-widget{grid-template-columns:48px minmax(0,1fr);gap:13px;min-height:0;padding:16px}.project-launch-icon{width:48px;height:48px}.project-launch-widget b{grid-column:2}.project-grid{grid-template-columns:minmax(0,1fr)}.project-tile{grid-template-columns:42px minmax(0,1fr)}.project-tile em{display:none}.app-shell .topbar{grid-template-columns:max-content minmax(112px,1fr) max-content}.transport-mode-select{grid-template-columns:minmax(0,1fr);width:100%}.transport-mode-select>span{display:none}.transport-mode-select select{height:34px}.app-shell .workspace-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=420px){.project-tile{padding:12px}.app-shell .topbar{gap:6px;padding-inline:8px}.transport-mode-select select{padding-left:7px;font-size:11px}}.document-feedback-button{color:#dceaff;text-align:left;cursor:pointer;background:#2563eb14;border:1px dashed #638cdc57;border-radius:11px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;width:100%;margin:6px 0 2px;padding:11px;display:grid}.document-feedback-button:hover{background:#2563eb26;border-color:#60a5fab8}.document-feedback-button>span:first-child{color:#93c5fd;background:#2563eb2e;border-radius:9px;place-items:center;width:34px;height:34px;font-size:17px;display:grid}.document-feedback-button>span:last-child{gap:3px;min-width:0;display:grid}.document-feedback-button strong{font-size:var(--editor-text-sm,11px)}.document-feedback-button small{color:#7f98bd;font-size:var(--editor-text-xs,9px);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.modal-card--feedback{width:min(610px,100%);max-height:min(760px,100dvh - 32px);overflow:auto}.document-feedback-context{background:#060d1f8c;border:1px solid #638cdc42;border-radius:10px;gap:5px;margin-bottom:15px;padding:12px;display:grid}.document-feedback-context strong{font-size:12px}.document-feedback-context small{color:#ff9aa8;font-size:9px;line-height:1.5}.modal-card--feedback .field>small{color:#6f89ac;justify-self:end}.admin-file-message--feedback{line-height:1.55;color:#8bc8ff!important;white-space:normal!important}.admin-feedback-list article{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;display:grid}.admin-feedback-list p{color:#d7e5f8;white-space:pre-wrap;margin:5px 0 0;font-size:10px;line-height:1.65}@media (width<=680px){.admin-feedback-list article,.admin-document-list article{grid-template-columns:minmax(0,1fr)}.admin-feedback-list article>a,.admin-document-list article>a{justify-self:start}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
