:root{--bg: #f7f9fb;--bg-subtle: #edf2f6;--surface: #ffffff;--surface-2: #f8fafc;--surface-strong: #111827;--border: #dce4ea;--border-strong: #b8c5cf;--text: #111827;--text-muted: #4b5b68;--text-subtle: #7b8a97;--accent: #3158d4;--accent-soft: #e8eeff;--accent-text: #2447b7;--button-bg: #ffffff;--button-bg-hover: #f1f5f9;--button-text: #2447b7;--success: #13805a;--success-soft: #e8f7f0;--warning: #a15c00;--warning-soft: #fff3d6;--danger: #b42318;--danger-soft: #fff0ed;--ring: rgb(49 88 212 / 35%);--hero-surface: linear-gradient(135deg, rgb(255 255 255 / 94%), rgb(232 238 255 / 74%)), radial-gradient(circle at 88% 12%, rgb(49 88 212 / 17%), transparent 18rem);--hero-accent-border: rgb(49 88 212 / 22%);--hero-warning-border: rgb(161 92 0 / 28%);--hero-success-border: rgb(19 128 90 / 24%);--shadow-sm: 0 1px 2px rgb(17 24 39 / 6%);--shadow-md: 0 12px 28px rgb(17 24 39 / 10%);--shadow-lg: 0 22px 55px rgb(17 24 39 / 14%);--radius-sm: 6px;--radius: 8px;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;color:var(--text);background:var(--bg);color-scheme:light;font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizeLegibility}[data-theme=dark]{--bg: #0b1120;--bg-subtle: #111a2e;--surface: #141f33;--surface-2: #17243a;--surface-strong: #f8fafc;--border: #26364f;--border-strong: #3a4b67;--text: #eef3f8;--text-muted: #b2c0cf;--text-subtle: #8291a3;--accent: #7c8cff;--accent-soft: #202b55;--accent-text: #bac5ff;--button-bg: #17243a;--button-bg-hover: #1f2d46;--button-text: #dbe3ff;--success: #6ee7b7;--success-soft: #123629;--warning: #fbbf24;--warning-soft: #3b2b0d;--danger: #fb7185;--danger-soft: #3b1721;--ring: rgb(124 140 255 / 45%);--hero-surface: linear-gradient(135deg, rgb(20 31 51 / 96%), rgb(24 36 58 / 86%)), radial-gradient(circle at 88% 12%, rgb(124 140 255 / 18%), transparent 18rem);--hero-accent-border: rgb(124 140 255 / 28%);--hero-warning-border: rgb(251 191 36 / 30%);--hero-success-border: rgb(110 231 183 / 26%);--shadow-sm: 0 1px 2px rgb(0 0 0 / 35%);--shadow-md: 0 12px 28px rgb(0 0 0 / 38%);--shadow-lg: 0 22px 55px rgb(0 0 0 / 45%);color-scheme:dark}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(circle at top left,rgb(49 88 212 / 11%),transparent 28rem),linear-gradient(180deg,var(--bg),var(--bg-subtle));font-family:var(--font-sans);line-height:1.5;-webkit-font-smoothing:antialiased}button,a{font:inherit}body,.site-header,.sidebar,.sidebar-link,.login-card,.login-input,.login-method,.login-submit,.okta-deferred,.placeholder-page,.destination-card,.placeholder-card,.status-badge,.primary-action,.secondary-action,.theme-toggle,.metric-card{transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}@media(prefers-reduced-motion:reduce){*{transition:none!important}}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--text);line-height:1.15}.app-shell{display:flex;min-height:100vh}.app-frame{display:flex;flex:1;flex-direction:column;min-width:0}.skip-link{position:fixed;top:var(--sp-2);left:var(--sp-2);z-index:10;padding:var(--sp-2) var(--sp-3);color:var(--text);text-decoration:none;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);transform:translateY(-160%)}.skip-link:focus-visible{transform:translateY(0)}.app-main{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:var(--sp-8) 0 var(--sp-10)}.app-main-workspace{display:flex;flex:1;width:100%;min-height:calc(100vh - 76px);margin:0;padding:var(--sp-4)}.app-main:focus{outline:none}.login-page{display:grid;min-width:320px;min-height:100vh;background:radial-gradient(circle at top,rgb(49 88 212 / 18%),transparent 25rem),linear-gradient(180deg,#07101d,#0b1120 52%,#111827)}.login-header{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-4);width:min(480px,calc(100% - 32px));min-height:76px;margin:0 auto}.login-main{display:grid;place-items:center;width:min(480px,calc(100% - 32px));margin:0 auto;padding:0 0 var(--sp-10)}.login-card{width:100%;padding:var(--sp-8);color:#f8fafc;background:#0f172af0;border:1px solid rgb(148 163 184 / 22%);border-radius:18px;box-shadow:0 30px 80px #0000006b}.login-logo{display:flex;justify-content:center;margin-bottom:var(--sp-5)}.login-logo .brand-logo{width:260px;max-width:78%}.login-card h1{margin:0 0 var(--sp-2);color:#f8fafc;font-size:1.75rem;text-align:center;letter-spacing:0}.login-supporting-text{max-width:340px;margin:0 auto var(--sp-6);color:#b7c4d6;text-align:center}.login-method-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:var(--sp-2);margin-bottom:var(--sp-5);padding:var(--sp-1);background:#02061799;border:1px solid rgb(148 163 184 / 18%);border-radius:var(--radius)}.login-method{min-height:40px;padding:0 var(--sp-3);color:#b7c4d6;font-size:.86rem;font-weight:800;white-space:nowrap;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer}.login-method:hover,.login-method-active{color:#fff;background:#3158d452;border-color:#7c8cff4d}.login-form,.okta-deferred{display:grid;gap:var(--sp-4)}.form-field{display:grid;gap:var(--sp-2);color:#dce6f3;font-size:.88rem;font-weight:800}.login-input{width:100%;height:46px;padding:0 var(--sp-3);color:#f8fafc;background:#02061794;border:1px solid rgb(148 163 184 / 28%);border-radius:var(--radius);outline:none}.login-input:focus{border-color:#7c8cff;box-shadow:0 0 0 3px #7c8cff3d}.login-helper{margin:0;color:#b7c4d6;font-size:.88rem}.login-error{margin:0;color:#fecdd3;font-size:.88rem;font-weight:700}.login-submit{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:46px;color:#fff;font-weight:900;background:#3158d4;border:1px solid #5372df;border-radius:var(--radius);box-shadow:0 14px 30px #3158d447;cursor:pointer}.login-submit:hover:not(:disabled){background:#2447b7}.login-submit:disabled{color:#aab8c9;cursor:not-allowed;background:#47556975;border-color:#94a3b838;box-shadow:none}.okta-deferred{padding:var(--sp-5);text-align:center;background:#0206176b;border:1px solid rgb(148 163 184 / 18%);border-radius:var(--radius)}.okta-deferred .panel-icon{margin:0 auto}.okta-deferred h2{margin:0;color:#f8fafc;font-size:1.1rem}.okta-deferred p{margin:0;color:#b7c4d6}.site-header{position:sticky;top:0;z-index:5;background:#f7f9fbe0;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}[data-theme=dark] .site-header{background:#0b1120e0}.sidebar{position:sticky;top:0;display:flex;flex:0 0 276px;flex-direction:column;width:276px;height:100vh;padding:var(--sp-4);background:var(--surface);border-right:1px solid var(--border);box-shadow:var(--shadow-sm)}.sidebar-collapsed{flex-basis:88px;width:88px}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);min-height:48px;margin-bottom:var(--sp-5)}.sidebar-brand{display:inline-flex;min-width:0}.sidebar-toggle{display:inline-grid;place-items:center;flex:0 0 auto;width:38px;height:38px;color:var(--text);background:var(--button-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer}.sidebar-toggle:hover{color:var(--button-text);background:var(--button-bg-hover);border-color:var(--border-strong)}.sidebar-nav{display:grid;gap:var(--sp-1)}.sidebar-link{position:relative;display:flex;align-items:center;gap:var(--sp-3);min-height:42px;padding:0 var(--sp-3);color:var(--text-muted);font-size:.93rem;font-weight:800;text-decoration:none;white-space:nowrap;border:1px solid transparent;border-radius:var(--radius)}.sidebar-link:hover{color:var(--text);background:var(--bg-subtle)}.sidebar-link-active{color:var(--accent-text);background:var(--accent-soft)}.sidebar-collapsed .sidebar-header,.sidebar-collapsed .sidebar-link{justify-content:center}.sidebar-collapsed .sidebar-link{padding:0}.sidebar-access{display:grid;gap:var(--sp-2);margin-top:auto;padding-top:var(--sp-5);border-top:1px solid var(--border)}.auth-mode-heading{display:flex;align-items:center;gap:var(--sp-2);color:var(--text);font-size:.88rem;font-weight:900}.auth-mode-control{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-1);padding:var(--sp-1);background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius)}.auth-mode-option{min-height:34px;color:var(--text-muted);font-size:.78rem;font-weight:900;text-transform:uppercase;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer}.auth-mode-option:not(:disabled):hover,.auth-mode-option-active{color:var(--accent-text);background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm)}.auth-mode-option:disabled{cursor:not-allowed;opacity:.78}.sidebar-access p,.sidebar-access small{margin:0;color:var(--text-muted)}.sidebar-access p{font-weight:800}.header-inner{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-5);width:min(1180px,calc(100% - 48px));min-height:76px;margin:0 auto}.brand-link{display:inline-flex;align-items:center;min-width:0}.brand-logo{display:inline-flex;align-items:center;width:212px;max-width:48vw;min-height:44px;line-height:0}.brand-logo-compact{width:156px}.brand-logo-image{display:block;width:100%;height:auto;object-fit:contain}.brand-logo-image-dark,[data-theme=dark] .brand-logo-image-light{display:none}[data-theme=dark] .brand-logo-image-dark{display:block}.header-context{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2);min-width:0}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:34px;padding:0 var(--sp-3);color:var(--text);font-weight:800;white-space:nowrap;background:var(--button-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer}.theme-toggle:hover{color:var(--button-text);background:var(--button-bg-hover);border-color:var(--border-strong)}.user-summary{display:flex;flex-direction:column;align-items:flex-end;min-width:0;max-width:260px;padding:7px var(--sp-3);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.user-summary span,.user-summary small{overflow:hidden;max-width:100%;text-overflow:ellipsis;white-space:nowrap}.user-summary span{font-size:.9rem;font-weight:700}.user-summary small{color:var(--text-muted);font-size:.76rem}.logout-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 var(--sp-3);color:var(--text);font-weight:800;white-space:nowrap;background:var(--button-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer}.logout-button:hover{color:var(--button-text);background:var(--button-bg-hover);border-color:var(--border-strong)}.status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:3px 10px;color:var(--text-muted);font-size:.75rem;font-weight:800;text-transform:uppercase;white-space:nowrap;background:var(--bg-subtle);border:1px solid var(--border);border-radius:999px}.status-badge-accent{color:var(--accent-text);background:var(--accent-soft);border-color:transparent}.status-badge-success{color:var(--success);background:var(--success-soft);border-color:transparent}.status-badge-warning{color:var(--warning);background:var(--warning-soft);border-color:transparent}.status-badge-danger{color:var(--danger);background:var(--danger-soft);border-color:transparent}.foundation-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:var(--sp-6);align-items:stretch}.hero-copy,.hero-panel,.destination-card,.placeholder-card,.placeholder-page,.placeholder-page-panel{border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.hero-copy{min-height:328px;padding:var(--sp-8);background:var(--hero-surface)}.hero-copy h1{max-width:720px;margin:var(--sp-3) 0 var(--sp-4);font-size:3.25rem;letter-spacing:0}.hero-copy .hero-tagline{max-width:720px;margin:var(--sp-4) 0 0;color:var(--text);font-size:1.1rem;font-weight:800}.hero-copy p{max-width:720px;margin-bottom:0;color:var(--text-muted);font-size:1.04rem}.hero-badges,.hero-proof{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-6)}.hero-panel{display:flex;flex-direction:column;padding:var(--sp-5);background:var(--surface)}.hero-panel-header{display:flex;gap:var(--sp-3);align-items:flex-start;margin-bottom:var(--sp-5)}.hero-panel-header h2{margin-bottom:2px;font-size:1.08rem}.hero-panel-header p{margin-bottom:0;color:var(--text-muted);font-size:.9rem}.panel-icon,.destination-icon{display:grid;place-items:center;flex:0 0 auto;width:42px;height:42px;color:var(--accent-text);background:var(--accent-soft);border-radius:var(--radius)}.destination-visual{display:grid;place-items:center;flex:0 0 auto;width:64px;height:64px;overflow:hidden;background:#0d141c;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.destination-visual img{display:block;width:100%;height:100%;object-fit:cover}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-3);margin:0}.metric-card{min-width:0;padding:var(--sp-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius)}.metric-card dt{color:var(--text-muted);font-size:.76rem;font-weight:800;text-transform:uppercase}.metric-card dd{margin:var(--sp-2) 0 0;color:var(--text);font-size:1.45rem;font-weight:800;overflow-wrap:anywhere}.metric-card-accent{border-color:var(--hero-accent-border)}.metric-card-warning{border-color:var(--hero-warning-border)}.metric-card-success{border-color:var(--hero-success-border)}.hero-proof{margin-top:auto;padding-top:var(--sp-5)}.hero-proof span{display:inline-flex;align-items:center;gap:var(--sp-2);color:var(--text-muted);font-weight:700}.destination-section{margin-top:var(--sp-6)}.section-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-4)}.section-eyebrow,.card-eyebrow{margin:0 0 var(--sp-1);color:var(--accent-text);font-size:.76rem;font-weight:800;text-transform:uppercase}.section-header h2{margin:0;font-size:1.4rem}.section-header p{max-width:340px;margin-bottom:0;color:var(--text-muted)}.destination-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--sp-4)}.destination-card{display:flex;flex-direction:column;min-height:278px;padding:var(--sp-5);background:var(--surface)}.placeholder-card{display:grid;grid-template-columns:auto 1fr;gap:var(--sp-4);min-height:278px;padding:var(--sp-5);background:var(--surface-2);border-style:dashed}.placeholder-card h3,.destination-card h3{margin:var(--sp-2) 0 var(--sp-2);font-size:1.45rem}.placeholder-card p,.destination-card p{margin-bottom:0;color:var(--text-muted)}.card-heading,.card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.card-body{flex:1;padding:var(--sp-6) 0}.card-footer{padding-top:var(--sp-4);color:var(--text-muted);border-top:1px solid var(--border)}.secondary-action{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-width:112px;min-height:38px;padding:0 var(--sp-4);color:var(--button-text);font-weight:800;text-decoration:none;white-space:nowrap;background:var(--button-bg);border:1px solid transparent;border-radius:var(--radius)}.primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 var(--sp-4);color:var(--button-text);font-weight:800;background:var(--button-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.primary-action:disabled{color:var(--text-muted);cursor:not-allowed;background:var(--bg-subtle)}.secondary-action:not(:disabled):hover{background:var(--button-bg-hover);border-color:var(--border-strong)}.secondary-action:disabled{color:var(--text-muted);cursor:not-allowed;background:var(--bg-subtle);border-color:var(--border)}.placeholder-page{display:grid;gap:var(--sp-5);padding:var(--sp-8);background:var(--surface)}.placeholder-page-copy h1{margin-bottom:var(--sp-3);font-size:2.4rem}.placeholder-page-copy p,.placeholder-page-panel p{max-width:720px;margin-bottom:0;color:var(--text-muted)}.placeholder-page-panel{padding:var(--sp-5);background:var(--surface-2)}.placeholder-page-panel h2{margin-bottom:var(--sp-2);font-size:1.16rem}.embedded-tool-page{display:grid;gap:var(--sp-5)}.embedded-tool-page-fullscreen{display:flex;flex:1;flex-direction:column;gap:var(--sp-3);min-width:0;min-height:0}.embedded-tool-header{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-5);padding:var(--sp-6);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.embedded-tool-page-fullscreen .embedded-tool-header{flex:0 0 auto;padding:var(--sp-4)}.embedded-tool-header h1{margin:var(--sp-2) 0 var(--sp-2);font-size:2.1rem}.embedded-tool-page-fullscreen .embedded-tool-header h1{font-size:1.35rem}.embedded-tool-header p{max-width:720px;margin-bottom:0;color:var(--text-muted)}.embedded-tool-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);justify-content:flex-end}.mode-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:38px;padding:0 var(--sp-3);color:var(--button-text);font-weight:800;text-decoration:none;white-space:nowrap;background:var(--button-bg);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer}.mode-button:hover,.mode-button-active{background:var(--button-bg-hover);border-color:var(--border-strong)}.embedded-tool-frame-shell{min-height:740px;padding:var(--sp-4);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.embedded-tool-page-fullscreen .embedded-tool-frame-shell{display:flex;flex:1;flex-direction:column;min-height:0}.embedded-tool-fallback{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center;justify-content:space-between;margin-bottom:var(--sp-3);padding:var(--sp-3);color:var(--text-muted);font-size:.9rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}.embedded-tool-fallback a{color:var(--button-text);font-weight:900}.embedded-tool-frame-shell iframe{display:block;width:100%;height:700px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm)}.embedded-tool-page-fullscreen .embedded-tool-frame-shell iframe{flex:1;height:auto;min-height:0}@media(max-width:980px){.foundation-hero{grid-template-columns:1fr}.hero-copy{min-height:auto}}@media(max-width:760px){.app-main,.header-inner,.login-header,.login-main{width:min(100% - 32px,1180px)}.app-main-workspace{width:100%}.app-shell{display:block}.sidebar,.sidebar-collapsed{position:static;width:100%;height:auto;padding:var(--sp-3) var(--sp-4);border-right:0;border-bottom:1px solid var(--border)}.sidebar-header{margin-bottom:var(--sp-3)}.sidebar-nav{display:flex;gap:var(--sp-2);overflow-x:auto;padding-bottom:var(--sp-1)}.sidebar-link{flex:0 0 auto}.sidebar-collapsed .sidebar-link{width:42px}.sidebar-access{display:none}.header-inner{align-items:flex-start;flex-direction:column;padding:var(--sp-4) 0}.header-context{align-items:flex-start;justify-content:flex-start;flex-wrap:wrap;width:100%}.user-summary{align-items:flex-start;width:100%;max-width:none}.brand-logo{max-width:240px}.hero-copy{padding:var(--sp-6)}.hero-copy h1{font-size:2.25rem}.metric-grid{grid-template-columns:1fr}.section-header,.embedded-tool-header{align-items:flex-start;flex-direction:column}.embedded-tool-actions{justify-content:flex-start}.placeholder-card{grid-template-columns:1fr}}@media(max-width:440px){.app-main{padding-top:var(--sp-5)}.app-main-workspace{padding:var(--sp-2)}.hero-copy,.hero-panel,.destination-card,.placeholder-card,.login-card,.placeholder-page,.embedded-tool-header{padding:var(--sp-4)}.hero-copy h1{font-size:1.85rem}.login-card h1{font-size:1.55rem}.login-logo .brand-logo{width:220px}.login-method-selector{grid-template-columns:1fr}.card-footer{align-items:flex-start;flex-direction:column}.secondary-action{width:100%}.mode-button{flex:1 1 auto}.embedded-tool-frame-shell{min-height:560px;padding:var(--sp-2)}.embedded-tool-frame-shell iframe{height:540px}}
