@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--brand-600:#2563EB;--brand-700:#1D4ED8;--brand-800:#1E3A8A;--brand-50:#EFF6FF;--brand-100:#DBEAFE;--nav-bg:#0F1D3A;--nav-bg-2:#0B1730;--nav-border:#1E2E52;--nav-text:#A9B6D3;--nav-text-strong:#FFFFFF;--nav-active-bg:#1B2F5E;--nav-active-accent:#3B82F6;--success:#22C55E;--success-bg:#DCFCE7;--success-700:#15803D;--warning:#F59E0B;--warning-bg:#FEF3C7;--warning-700:#B45309;--danger:#EF4444;--danger-bg:#FEE2E2;--danger-700:#B91C1C;--info:#2563EB;--info-bg:#DBEAFE;--info-700:#1D4ED8;--bg:#F8FAFC;--surface:#FFFFFF;--surface-2:#F1F5F9;--border:#E5E7EB;--border-strong:#D1D5DB;--text:#111827;--text-2:#5F6878;--text-3:#697386;--chart-line:#0F1D3A;--chart-1:#2563EB;--chart-2:#0891B2;--chart-3:#0F766E;--chart-4:#D97706;--chart-5:#DC2626;--chart-6:#64748B;--font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--fs-xs:12px;--fs-sm:13px;--fs-md:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:26px;--fs-3xl:32px;--r-sm:6px;--r-md:10px;--r-lg:14px;--r-xl:20px;--r-full:999px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--sh-xs:0 1px 2px rgba(16,24,40,.05);--sh-sm:0 1px 3px rgba(16,24,40,.08), 0 1px 2px rgba(16,24,40,.04);--sh-md:0 4px 12px rgba(16,24,40,.06), 0 2px 4px rgba(16,24,40,.04);--sh-lg:0 12px 32px rgba(16,24,40,.1), 0 4px 8px rgba(16,24,40,.04);--sidebar-w:264px;--rail-w:72px;--topbar-h:64px;--frame:6px;--transition:.18s cubic-bezier(.4,0,.2,1)}:root[data-theme=dark]{color-scheme:dark;--brand-50:#17233B;--brand-100:#20375F;--brand-600:#6EA8FE;--brand-700:#9BC2FF;--brand-800:#C7DCFF;--success:#55C98A;--success-bg:#153426;--success-700:#8ADCAF;--warning:#E5B657;--warning-bg:#3A2C15;--warning-700:#F1CE85;--danger:#E77D87;--danger-bg:#3B2026;--danger-700:#F2A7AE;--info:#72A7EA;--info-bg:#172B49;--info-700:#A5C8F4;--nav-bg:#080F1D;--nav-bg-2:#0D1728;--nav-border:#1D2A40;--nav-text:#A6B4C8;--nav-active-bg:#172844;--bg:#0B1220;--surface:#131D2E;--surface-2:#1A2639;--border:#2A3A52;--border-strong:#3B4D68;--text:#EAF0F8;--text-2:#BAC6D6;--text-3:#91A0B5;--chart-line:#F4C86A;--chart-1:#6EA8FE;--chart-2:#39C0ED;--chart-3:#57D3B0;--chart-4:#F4C86A;--chart-5:#F28B95;--chart-6:#AAB8CC;--sh-xs:0 1px 2px rgba(0,0,0,.35);--sh-sm:0 1px 4px rgba(0,0,0,.4);--sh-md:0 6px 18px rgba(0,0,0,.35);--sh-lg:0 16px 38px rgba(0,0,0,.45)}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--font);font-size:var(--fs-md);color:var(--text);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--brand-600);outline-offset:2px}input[type=checkbox]:focus-visible,input[type=radio]:focus-visible{outline:2px solid var(--brand-600);outline-offset:3px}input,select,textarea{font-family:inherit}svg{display:block}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px;border:2px solid var(--bg)}.skip-link{position:fixed;z-index:1000;top:var(--s-2);left:var(--s-2);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-weight:700;box-shadow:var(--sh-lg);transform:translateY(-150%);transition:transform var(--transition)}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link:focus{transform:none}.route-content{min-height:0}.onboarding{display:flex;align-items:center;gap:var(--s-5);margin:var(--s-4) var(--s-8) 0;padding:var(--s-3) var(--s-4);border:1px solid var(--brand-100);border-radius:var(--r-lg);background:var(--brand-50);color:var(--text)}.onboarding>div{display:flex;min-width:0;flex:1;flex-direction:column}.onboarding>div span{color:var(--text-2);font-size:var(--fs-xs)}.onboarding nav{display:flex;gap:var(--s-2);flex-wrap:wrap}.onboarding nav a{padding:5px 9px;border-radius:var(--r-sm);color:var(--brand-700);font-size:var(--fs-xs);font-weight:700}.onboarding nav a:hover{background:var(--brand-100)}:root[data-theme=dark] .recharts-default-tooltip{background:var(--surface)!important;border-color:var(--border)!important;color:var(--text)!important}:root[data-theme=dark] .recharts-legend-item-text{color:var(--text-2)!important}:root[data-theme=dark] .recharts-default-tooltip *{color:var(--text)!important}:root[data-theme=dark] .recharts-tooltip-cursor{fill:color-mix(in srgb,var(--surface-2) 60%,transparent)!important;stroke:var(--border-strong)!important}:root[data-theme=dark] input::placeholder,:root[data-theme=dark] textarea::placeholder{color:var(--text-3);opacity:1}:root[data-theme=dark] select option{background:var(--surface);color:var(--text)}:root[data-theme=dark] .skeleton-block{background:linear-gradient(90deg,var(--surface-2) 20%,var(--border-strong) 45%,var(--surface-2) 70%);background-size:240% 100%}:root[data-theme=dark] .notice-success{border-color:var(--success)}:root[data-theme=dark] .notice-error{border-color:var(--danger)}:root[data-theme=dark] .notice-info{border-color:var(--info)}:root[data-theme=dark] .notice-icon{background:#0000002e}:root[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--border-strong)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(forced-colors:active){.badge,.btn,.input,.select,.card{border:1px solid CanvasText}.nav-item.active{outline:2px solid Highlight}}.h1{font-size:var(--fs-3xl);font-weight:700;letter-spacing:-.02em}.h2{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em}.h3{font-size:var(--fs-xl);font-weight:600}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.app{height:100vh;overflow:hidden;background:var(--nav-bg)}.sidebar{position:fixed;top:0;left:0;height:100vh;width:var(--rail-w);z-index:40;background:var(--nav-bg);display:flex;flex-direction:column;color:var(--nav-text);overflow:hidden;transition:width .22s cubic-bezier(.4,0,.2,1),box-shadow .22s ease}.sidebar.hover-open,.sidebar:has(:focus-visible){width:var(--sidebar-w)}.app:not(.pinned) .sidebar.hover-open~.main,.app:not(.pinned) .sidebar:has(:focus-visible)~.main{transform:translate(calc(var(--sidebar-w) - var(--rail-w)))}.sb-label{display:inline-block;max-width:0;opacity:0;transform:translate(-6px);overflow:hidden;white-space:nowrap;transition:max-width .22s cubic-bezier(.4,0,.2,1),opacity .14s ease,transform .22s cubic-bezier(.4,0,.2,1)}.sidebar.hover-open .sb-label,.sidebar:has(:focus-visible) .sb-label{max-width:176px;opacity:1;transform:none;transition:max-width .22s cubic-bezier(.4,0,.2,1),opacity .2s ease 50ms,transform .22s cubic-bezier(.4,0,.2,1)}.app.pin-snap .sidebar,.app.pin-snap .main,.app.pin-snap .sb-label,.app.pin-snap .brand-pin,.app.pin-snap .sb-pin svg{transition:none!important}.app.pinned .sidebar{width:var(--sidebar-w);box-shadow:none}.app.pinned .main{margin-left:var(--sidebar-w)}.app.pinned .sb-label{max-width:176px;opacity:1;transform:none}.app.pinned .nav-badge.sb-label{padding:1px 7px;max-width:60px}.sb-pin{display:flex;align-items:center;gap:var(--s-3);width:100%;padding:8px var(--s-3);border-radius:var(--r-md);color:var(--nav-text);font-weight:500;font-size:var(--fs-sm);transition:var(--transition);margin-bottom:var(--s-2)}.sb-pin:hover{background:var(--nav-bg-2);color:var(--nav-text-strong)}.sb-pin svg{width:18px;height:18px;stroke-width:1.8;flex:none;transition:transform .22s cubic-bezier(.4,0,.2,1)}.app.pinned .sb-pin svg{transform:rotate(180deg)}.brand-pin{margin-left:auto;flex:none;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--r-md);color:var(--nav-text);max-width:0;opacity:0;overflow:hidden;transition:max-width .22s cubic-bezier(.4,0,.2,1),opacity .14s ease,background var(--transition),color var(--transition)}.sidebar.hover-open .brand-pin,.sidebar:has(:focus-visible) .brand-pin,.app.pinned .brand-pin{max-width:30px;opacity:1}.brand-pin:hover{background:var(--nav-bg-2);color:var(--nav-text-strong)}.brand-pin.is-pinned{color:var(--nav-active-accent);background:var(--nav-active-bg)}.brand-pin svg{width:16px;height:16px;stroke-width:1.8;flex:none;transform:rotate(42deg);transition:transform .22s cubic-bezier(.4,0,.2,1)}.brand-pin.is-pinned svg{transform:rotate(0)}.brand{display:flex;align-items:center;gap:var(--s-3);padding:0 calc((var(--rail-w) - 42px)/2);height:calc(var(--topbar-h) + var(--frame));border-bottom:1px solid var(--nav-border);flex:none}.brand-logo{width:42px;height:42px;border:0;border-radius:var(--r-md);background:linear-gradient(135deg,#38BDF8,var(--brand-600));display:grid;place-items:center;color:#fff;flex:none;box-shadow:var(--sh-sm);font:inherit;pointer-events:none}.brand-logo svg{width:24px;height:24px;stroke-width:2}.brand-name{font-weight:700;font-size:15px;color:var(--nav-text-strong);line-height:1.1}.brand-sub{font-size:10px;color:var(--nav-text)}.nav{position:relative;padding:var(--s-3);display:flex;flex-direction:column;gap:2px;overflow-y:auto;overflow-x:hidden;flex:1;scrollbar-width:thin;scrollbar-color:var(--nav-border) transparent}.nav-indicator{position:absolute;left:var(--s-3);right:var(--s-3);top:0;border-radius:var(--r-md);background:#3b82f629;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(59,130,246,.55);box-shadow:0 0 0 1px #3b82f61a,0 2px 12px #3b82f638;pointer-events:none;z-index:0}.app:not(.pinned):not(.mobile-labels) .sidebar:not(.hover-open):not(:has(:focus-visible)) .nav-indicator{left:calc((var(--rail-w) - 46px)/2);right:auto;width:46px}.nav::-webkit-scrollbar{width:6px}.nav::-webkit-scrollbar-thumb{background:var(--nav-border);border:none;border-radius:99px}.nav::-webkit-scrollbar-track{background:transparent}.nav-section{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--nav-text);padding:var(--s-4) var(--s-3) var(--s-2)}.nav-item{position:relative;z-index:1;display:flex;align-items:center;gap:var(--s-3);padding:10px var(--s-3) 10px 13.5px;border-radius:var(--r-md);color:var(--nav-text);font-weight:500;font-size:var(--fs-md);transition:color var(--transition),background var(--transition);border:1px solid transparent;white-space:nowrap}.nav-item svg{width:19px;height:19px;stroke-width:1.8;flex:none}.nav-item:not(.active):hover{background:var(--nav-bg-2);color:var(--nav-text-strong)}.nav-item.active,.nav-item.active:hover{background:transparent;border-color:transparent;color:#fff;font-weight:600}.nav-item:focus-visible{outline:2px solid #93C5FD;outline-offset:-2px;color:var(--nav-text-strong)}.nav-badge{margin-left:auto;background:var(--danger);color:#fff;font-size:11px;font-weight:600;padding:1px 7px;border-radius:var(--r-full)}.nav-badge.sb-label{padding:1px 0}.sidebar.hover-open .nav-badge.sb-label,.sidebar:has(:focus-visible) .nav-badge.sb-label{padding:1px 7px;max-width:60px}.sidebar-foot{border-top:1px solid var(--nav-border);padding:var(--s-3) 10px;flex:none}.sb-logout{display:flex;align-items:center;gap:var(--s-3);justify-content:flex-start;padding:8px var(--s-3);color:var(--nav-text)}.sb-logout svg{width:18px;height:18px;flex:none}.sb-logout:hover{color:var(--nav-text-strong);background:var(--nav-bg-2)}.sb-logout.confirm,.sb-logout.confirm:hover{background:#ef444429;color:#fca5a5;border:1px solid rgba(239,68,68,.4)}.userchip{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-2);border-radius:var(--r-md);transition:var(--transition)}.userchip:hover{background:var(--nav-bg-2)}.user-avatar{width:36px;height:36px;border-radius:var(--r-full);background:linear-gradient(135deg,#60A5FA,var(--brand-800));color:#fff;font-weight:600;font-size:13px;display:grid;place-items:center;flex:none}.user-name{font-size:13px;font-weight:600;color:var(--nav-text-strong)}.user-status{font-size:11px;color:var(--nav-text);display:flex;align-items:center;gap:5px}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--success);flex:none}@media(prefers-reduced-motion:reduce){.sidebar,.sb-label{transition:none}}.main{display:flex;flex-direction:column;min-width:0;margin:var(--frame) var(--frame) var(--frame) var(--rail-w);height:calc(100vh - var(--frame)*2);overflow-y:auto;overflow-x:hidden;background:var(--bg);border-top-left-radius:var(--r-xl);transition:transform .22s cubic-bezier(.4,0,.2,1)}.topbar{height:var(--topbar-h);flex:none;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:var(--s-4);padding:0 var(--s-8);position:sticky;top:0;z-index:20;border-top-left-radius:12px}.wh-filter{display:flex;align-items:center;gap:var(--s-2);height:38px;padding:0 var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text-2);cursor:pointer;transition:var(--transition)}.wh-filter:hover{border-color:var(--brand-600);color:var(--brand-700)}.wh-filter:focus-within{border-color:var(--brand-600);box-shadow:0 0 0 3px var(--brand-100)}.wh-filter svg{width:17px;height:17px;stroke-width:1.8;flex:none}.wh-filter select{border:0;background:transparent;font:inherit;font-size:var(--fs-sm);font-weight:600;color:var(--text);max-width:210px;cursor:pointer;outline:none}@media(max-width:900px){.wh-filter{display:none}}.search{display:flex;align-items:center;gap:var(--s-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:9px var(--s-4);width:min(420px,40vw);color:var(--text-3);transition:var(--transition)}.search:hover{background:var(--surface);border-color:var(--border-strong)}.search:focus-within{background:var(--surface);border-color:var(--border-strong);box-shadow:0 0 0 3px #0f172a0d}.search input{border:none;outline:none;background:none;flex:1;color:var(--text)}.search input::placeholder{color:var(--text-3)}.search kbd{font-size:11px;color:var(--text-3);border:1px solid var(--border);border-radius:5px;padding:1px 6px;background:var(--surface)}.command-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;background:#0f172a7a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.command-palette{width:min(620px,calc(100vw - 32px));max-height:70vh;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-lg);overflow:hidden}.command-search{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-4);border-bottom:1px solid var(--border);color:var(--text-2)}.command-search input{flex:1;border:0;outline:0;background:transparent;color:var(--text);font-size:var(--fs-lg)}.command-search kbd{font-size:var(--fs-xs);padding:2px 7px;border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface-2)}.command-title{padding:var(--s-3) var(--s-4) var(--s-2);color:var(--text-2);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase}.command-results{overflow-y:auto;padding:0 var(--s-2) var(--s-2)}.command-item{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--s-3);border-radius:var(--r-md);color:var(--text);text-align:left}.command-item small{color:var(--text-2)}.command-item.active{background:var(--brand-50);color:var(--brand-700)}.command-empty{padding:var(--s-8);color:var(--text-2);text-align:center}.command-help{display:flex;gap:var(--s-4);padding:var(--s-3) var(--s-4);border-top:1px solid var(--border);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-xs)}.topbar-spacer{flex:1}.modal-overlay{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:var(--s-5);background:#0f172a7a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-card{width:min(560px,100%);max-height:calc(100vh - 48px);overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-lg);padding:var(--s-5);animation:modal-card-in .16s cubic-bezier(.4,0,.2,1)}@keyframes modal-card-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.icon-btn{width:38px;height:38px;border-radius:var(--r-md);display:grid;place-items:center;color:var(--text-2);transition:var(--transition);position:relative}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn:focus-visible{outline:2px solid var(--brand-600);outline-offset:2px;background:var(--surface-2);color:var(--text)}.icon-btn:disabled{cursor:not-allowed;opacity:.55;color:var(--text-3)}.icon-btn svg{width:20px;height:20px;stroke-width:1.8}.dot{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:var(--danger);border:2px solid var(--surface)}.notification-wrap{position:relative}.notification-popover{position:absolute;z-index:80;top:calc(100% + 12px);right:0;width:min(380px,calc(100vw - 24px));overflow:hidden;border:1px solid var(--border);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--sh-lg);animation:notification-in .14s cubic-bezier(.2,.8,.2,1)}.notification-popover>header{display:flex;align-items:center;justify-content:space-between;padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--border)}.notification-popover>header div{display:flex;flex-direction:column}.notification-popover>header span{color:var(--text-3);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.notification-popover>header strong{font-size:var(--fs-md)}.notification-popover>header button{width:30px;height:30px;border-radius:var(--r-md);color:var(--text-2);font-size:22px}.notification-popover>header button:hover{background:var(--surface-2)}.notification-items{padding:var(--s-2)}.notification-items>button{display:grid;width:100%;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:var(--s-3);padding:var(--s-3);border-radius:var(--r-md);text-align:left}.notification-items>button:hover{background:var(--surface-2)}.notification-items>button>div{display:flex;min-width:0;flex-direction:column}.notification-items small{color:var(--text-3)}.notification-items b{min-width:26px;padding:3px 7px;border-radius:var(--r-full);background:var(--surface-2);text-align:center}.notification-symbol{display:grid;width:34px;height:34px;place-items:center;border-radius:var(--r-md);font-weight:800}.notification-symbol.danger{background:var(--danger-bg);color:var(--danger-700)}.notification-symbol.warning{background:var(--warning-bg);color:var(--warning-700)}.notification-symbol.info{background:var(--brand-50);color:var(--brand-700)}.notification-all{width:100%;padding:var(--s-3) var(--s-5);border-top:1px solid var(--border);color:var(--brand-700);font-size:var(--fs-sm);font-weight:700;text-align:left}.notification-all:hover{background:var(--brand-50)}@keyframes notification-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}.avatar{width:38px;height:38px;border-radius:var(--r-full);background:linear-gradient(135deg,#60A5FA,var(--brand-800));color:#fff;font-weight:600;font-size:14px;display:grid;place-items:center}.page{padding:var(--s-8);max-width:1440px;width:100%;margin:0 auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-4);margin-bottom:var(--s-6);flex-wrap:wrap}.breadcrumb{display:flex;align-items:center;gap:var(--s-2);color:var(--text-3);font-size:var(--fs-sm);margin-bottom:var(--s-2)}.breadcrumb .sep{color:var(--border-strong)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);height:40px;padding:0 var(--s-4);border-radius:var(--r-md);font-weight:600;font-size:var(--fs-md);white-space:nowrap;transition:var(--transition);border:1px solid transparent}.btn svg{width:18px;height:18px;stroke-width:2}.btn-primary{background:var(--brand-600);color:#fff;box-shadow:var(--sh-sm)}.btn-primary:hover{background:var(--brand-700);box-shadow:var(--sh-md)}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong);box-shadow:var(--sh-xs)}.btn-secondary:hover{background:var(--surface-2)}.btn-ghost{color:var(--text-2)}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-sm{height:32px;padding:0 var(--s-3);font-size:var(--fs-sm)}.touch-target{min-width:40px;min-height:40px}.btn-icon{width:40px;height:40px;padding:0}.btn:focus-visible{outline:2px solid var(--brand-600);outline-offset:2px;box-shadow:0 0 0 4px var(--brand-100)}.btn:disabled{cursor:not-allowed;opacity:.58;box-shadow:none;filter:saturate(.72)}.btn:disabled:hover{box-shadow:none;transform:none}.btn-primary:disabled:hover{background:var(--brand-600)}.btn-secondary:disabled:hover{background:var(--surface)}.btn[aria-busy=true],.btn.is-busy{cursor:progress;pointer-events:none;position:relative}.btn[aria-busy=true] svg,.btn.is-busy svg{visibility:hidden}.btn[aria-busy=true]:before,.btn.is-busy:before{content:"";width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:query-spin .7s linear infinite}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-sm)}.card-pad{padding:var(--s-6)}.card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);padding:var(--s-5) var(--s-6);border-bottom:1px solid var(--border)}.card-title{font-size:var(--fs-lg);font-weight:600}.kpi{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-5) var(--s-5) var(--s-6);box-shadow:var(--sh-sm);transition:transform .18s cubic-bezier(.4,0,.2,1),box-shadow .18s ease}.kpi:hover{transform:translateY(-2px);box-shadow:var(--sh-md)}.kpi.has-spark{padding-bottom:calc(var(--s-5) + 40px)}.kpi-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-3);margin-bottom:var(--s-4)}.kpi-ico{width:42px;height:42px;border-radius:var(--r-md);display:grid;place-items:center}.kpi-ico svg{width:21px;height:21px;stroke-width:1.8}.kpi-ico.blue{background:var(--brand-50);color:var(--brand-600)}.kpi-ico.green{background:var(--success-bg);color:var(--success-700)}.kpi-ico.amber{background:var(--warning-bg);color:var(--warning-700)}.kpi-ico.red{background:var(--danger-bg);color:var(--danger-700)}.kpi-value{font-size:var(--fs-3xl);font-weight:700;letter-spacing:-.02em;line-height:1;font-variant-numeric:tabular-nums}.kpi-label{color:var(--text-2);font-size:var(--fs-sm);margin-top:var(--s-2)}.kpi-trend{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:600;padding:3px 9px;border-radius:var(--r-full);background:var(--surface-2);color:var(--text-2);white-space:nowrap;font-variant-numeric:tabular-nums}.kpi-trend.up{background:var(--success-bg);color:var(--success-700)}.kpi-trend.down{background:var(--danger-bg);color:var(--danger-700)}.kpi-watermark{position:absolute;left:-22px;bottom:-26px;width:150px;height:150px;color:var(--kpi-accent,var(--brand-600));opacity:.11;pointer-events:none;transition:transform .22s cubic-bezier(.4,0,.2,1)}.kpi-watermark svg{width:100%;height:100%;stroke-width:1.1}.kpi:hover .kpi-watermark{transform:scale(1.07) rotate(2deg)}.kpi .executive-trend{position:absolute;right:var(--s-5);bottom:var(--s-5);width:96px;height:44px;pointer-events:none}.kpi-featured .executive-trend{color:#38bdf8}.kpi-featured .kpi-watermark{color:#38bdf8;opacity:.15}.kpi-eyebrow-sm{font-size:var(--fs-xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-2)}.kpi-featured .kpi-eyebrow-sm{color:var(--nav-text)}.kpi-spark{position:absolute;left:0;right:0;bottom:0;height:40px;display:block;pointer-events:none}.kpi-spark .area{fill:var(--kpi-accent,var(--brand-600));opacity:.1}.kpi-spark .line{fill:none;stroke:var(--kpi-accent,var(--brand-600));stroke-width:1.6;vector-effect:non-scaling-stroke}.dashboard-subtitle{margin-top:var(--s-1)}.dashboard-kpis{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:var(--s-4)}.kpi-featured{background:linear-gradient(145deg,var(--nav-bg) 0%,var(--nav-bg-2) 55%,var(--nav-active-bg) 130%);border-color:var(--nav-border);color:#fff}.kpi-featured .kpi-ico{background:#ffffff1f;color:#fff;box-shadow:inset 0 0 0 1px #ffffff24}.kpi-featured .kpi-label,.kpi-featured .kpi-eyebrow{color:var(--nav-text)}.kpi-featured .kpi-trend{background:#ffffff24;color:#dbeafe}.kpi-featured .kpi-trend.up{background:#22c55e40;color:#bbf7d0}.kpi-featured .kpi-trend.down{background:#ef444440;color:#fecaca}.kpi-featured .kpi-spark .line{stroke:#38bdf8}.kpi-featured .kpi-spark .area{fill:#38bdf8;opacity:.16}.kpi-eyebrow{font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dashboard-command-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,.75fr);gap:var(--s-6);margin-top:var(--s-6);align-items:start}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-4)}.eyebrow{color:var(--brand-600);font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--s-1)}.supply-pipeline{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-4);margin:var(--s-6) 0;padding:var(--s-5);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md)}.pipeline-step{position:relative;display:flex;min-width:0;flex-direction:column;gap:var(--s-1);padding-left:var(--s-4);border-left:3px solid var(--brand-100)}.pipeline-step:not(:first-child):before{content:"";position:absolute;left:-13px;top:13px;width:0;height:0;border-left:7px solid var(--brand-600);border-top:5px solid transparent;border-bottom:5px solid transparent;opacity:.55}.pipeline-step strong{font-size:var(--fs-xl);color:var(--text);font-variant-numeric:tabular-nums}.pipeline-step>span:last-child{color:var(--text-2);font-size:var(--fs-xs)}.pipeline-index{color:var(--brand-600);font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em}.dashboard-actions{display:flex;gap:var(--s-3);flex-wrap:wrap}.attention-panel .card-title{margin-bottom:var(--s-4)}.attention-item{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-3);margin:0 calc(-1*var(--s-3));border-top:1px solid var(--border);border-radius:var(--r-md);color:var(--text);text-decoration:none;transition:background var(--transition)}.attention-item:hover{background:var(--surface-2)}.attention-ico{width:34px;height:34px;flex:none;border-radius:var(--r-md);display:grid;place-items:center}.attention-ico svg{width:17px;height:17px;stroke-width:1.9}.attention-item.sev-danger .attention-ico{background:var(--danger-bg);color:var(--danger-700)}.attention-item.sev-warn .attention-ico{background:var(--warning-bg);color:var(--warning-700)}.attention-item.sev-info .attention-ico{background:var(--brand-50);color:var(--brand-600)}.attention-copy{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.attention-item small{color:var(--text-2);font-size:var(--fs-xs)}.attention-count{flex:none;min-width:34px;height:26px;padding:0 10px;border-radius:var(--r-full);display:grid;place-items:center;font-weight:700;font-size:var(--fs-sm);font-variant-numeric:tabular-nums;background:var(--surface-2);color:var(--text-3)}.attention-item.is-active.sev-danger .attention-count{background:var(--danger);color:#fff}.attention-item.is-active.sev-warn .attention-count{background:var(--warning);color:#fff}.attention-item.is-active.sev-info .attention-count{background:var(--brand-600);color:#fff}.attention-item b{font-size:var(--fs-xl);color:var(--brand-700)}.attention-item:not(.attention-unavailable):hover strong{color:var(--brand-700)}.attention-unavailable b{color:var(--text-3)}.badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs);font-weight:600;padding:3px 10px;border-radius:var(--r-full)}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.badge.success{color:var(--success-700);background:var(--success-bg)}.badge.warning{color:var(--warning-700);background:var(--warning-bg)}.badge.danger{color:var(--danger-700);background:var(--danger-bg)}.badge.info{color:var(--info-700);background:var(--info-bg)}.badge.neutral{color:var(--text-2);background:var(--surface-2)}.table-wrap{overflow-x:auto;border-radius:var(--r-lg)}table.table{width:100%;border-collapse:collapse;font-size:var(--fs-md)}.table thead th{text-align:left;font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);background:var(--surface-2);white-space:nowrap}.table tbody td{padding:var(--s-4);border-bottom:1px solid var(--border);vertical-align:middle}.table tbody tr{transition:background var(--transition)}.table tbody tr:hover{background:var(--brand-50)}.table tbody tr:last-child td{border-bottom:none}.table tfoot th,.table tfoot td{padding:var(--s-4);border-top:1px solid var(--border-strong);background:var(--surface-2);font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}.table tfoot th{text-align:left}.cell-code{font-family:SF Mono,ui-monospace,Menlo,Consolas,monospace;font-size:var(--fs-sm);color:var(--text-2);background:var(--surface-2);padding:2px 8px;border-radius:var(--r-sm)}.thumb{width:40px;height:40px;border-radius:var(--r-sm);background:var(--surface-2);display:grid;place-items:center;color:var(--text-3);flex:none}.field{display:flex;flex-direction:column;gap:6px}.label{font-size:var(--fs-sm);font-weight:600}.input,.select{height:42px;padding:0 var(--s-4);border:1px solid var(--border-strong);border-radius:var(--r-md);background:var(--surface);font-size:var(--fs-md);color:var(--text);width:100%;transition:var(--transition)}.input:focus,.select:focus{outline:none;border-color:var(--brand-600);box-shadow:0 0 0 3px var(--brand-50)}.input:focus-visible,.select:focus-visible{outline:2px solid var(--brand-600);outline-offset:1px;border-color:var(--brand-600);box-shadow:0 0 0 3px var(--brand-50)}.input:disabled,.select:disabled{cursor:not-allowed;background:var(--surface-2);color:var(--text-2);border-color:var(--border);opacity:.72}.input-action{position:relative}.input-action .input{padding-right:84px}.input-action button{position:absolute;right:6px;top:50%;transform:translateY(-50%);height:30px;padding:0 9px;border-radius:var(--r-sm);color:var(--brand-700);font-size:var(--fs-xs);font-weight:700}.input-action button:hover{background:var(--brand-50)}.input-action button:focus-visible{outline:2px solid var(--brand-600);outline-offset:1px}.query-state{display:flex;align-items:center;justify-content:center;gap:var(--s-4);min-height:104px;padding:var(--s-5);color:var(--text-2);text-align:left}.query-state-icon{width:38px;height:38px;border-radius:var(--r-md);display:grid;place-items:center;background:var(--surface-2);color:var(--text-2);flex:none}.query-state-icon svg{width:20px;height:20px;stroke-width:1.8}.query-state-copy{display:flex;flex-direction:column;gap:3px;max-width:560px}.query-state-copy strong{color:var(--text);font-size:var(--fs-md)}.query-state-copy span{font-size:var(--fs-sm)}.query-state-error{background:linear-gradient(90deg,var(--danger-bg),transparent)}.query-state-error .query-state-icon{background:var(--danger-bg);color:var(--danger-700)}.query-state-empty .query-state-icon{color:var(--text-3)}.query-state-spinner{width:20px;height:20px;border:2px solid var(--border-strong);border-top-color:var(--brand-600);border-radius:50%;animation:query-spin .7s linear infinite}@keyframes query-spin{to{transform:rotate(360deg)}}.skeleton-block{display:block;height:12px;border-radius:var(--r-sm);background:linear-gradient(90deg,var(--surface-2) 20%,#E2E8F0 45%,var(--surface-2) 70%);background-size:240% 100%;animation:skeleton-shimmer 1.25s ease-in-out infinite}.skeleton-row:hover{background:transparent!important}.skeleton-row td{height:57px}.skeleton-panel{display:flex;flex-direction:column;gap:var(--s-5)}.skeleton-panel .skeleton-block:first-child{height:22px;margin-bottom:var(--s-2)}@keyframes skeleton-shimmer{to{background-position:-160% 0}}@media(prefers-reduced-motion:reduce){.skeleton-block{animation:none}}.query-state-skeleton{display:flex;flex:1;max-width:260px;flex-direction:column;gap:var(--s-2)}.query-state-skeleton .skeleton-block:nth-child(2){width:82%}.query-state-skeleton .skeleton-block:nth-child(3){width:64%}.segmented{position:relative;display:inline-flex;gap:4px;background:var(--surface-2);border-radius:var(--r-md);padding:4px}.segmented-vertical{display:flex;flex-direction:column;align-items:stretch}.segmented-ind{position:absolute;top:0;left:0;border-radius:var(--r-sm);background:#3b82f61f;border:1px solid rgba(59,130,246,.4);box-shadow:0 1px 6px #3b82f626;pointer-events:none;z-index:0}.segmented-item{position:relative;z-index:1;padding:8px var(--s-4);border-radius:var(--r-sm);font-weight:600;font-size:var(--fs-sm);color:var(--text-2);border:1px solid transparent;background:none;text-align:left;white-space:nowrap;transition:color var(--transition)}.segmented-item:hover:not(.active):not(:disabled){color:var(--text)}.segmented-item.active{color:var(--brand-700)}.segmented-item:disabled{opacity:.5;cursor:not-allowed}.notice{display:flex;align-items:flex-start;gap:var(--s-3);padding:var(--s-4);border:1px solid;border-radius:var(--r-md);font-size:var(--fs-sm)}.notice-icon{width:30px;height:30px;border-radius:var(--r-sm);display:grid;place-items:center;flex:none}.notice-icon svg{width:18px;height:18px;stroke-width:2}.notice-copy{display:flex;flex:1;flex-direction:column;gap:2px}.notice-copy strong{font-size:var(--fs-sm)}.notice-copy span{color:inherit;opacity:.9}.notice-action{margin-left:auto;align-self:center}.notice-success{color:var(--success-700);background:var(--success-bg);border-color:#86efac}.notice-success .notice-icon{background:#ffffff8c}.notice-error{color:var(--danger-700);background:var(--danger-bg);border-color:#fca5a5}.notice-error .notice-icon{background:#ffffff8c}.notice-info{color:var(--info-700);background:var(--info-bg);border-color:#93c5fd}.notice-info .notice-icon{background:#ffffff8c}.notice-page{margin:16px 0 24px}.notice-compact{margin-top:16px}.error-boundary{min-height:100vh;display:grid;place-items:center;padding:var(--s-8);background:linear-gradient(145deg,var(--nav-bg),var(--nav-bg-2));font-family:var(--font);color:var(--text)}.error-boundary-card{width:min(480px,100%);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--sh-lg);padding:var(--s-8);text-align:center}.error-boundary-brand{display:flex;align-items:center;justify-content:center;gap:var(--s-3);padding-bottom:var(--s-5);margin-bottom:var(--s-6);border-bottom:1px solid var(--border);text-align:left}.error-boundary-brand img{width:42px;height:42px;object-fit:contain}.error-boundary-brand strong,.error-boundary-brand span{display:block}.error-boundary-brand strong{letter-spacing:.06em}.error-boundary-brand span{font-size:var(--fs-xs);color:var(--text-2)}.error-boundary-icon{width:54px;height:54px;border-radius:var(--r-lg);margin:0 auto var(--s-4);display:grid;place-items:center;background:var(--danger-bg);color:var(--danger-700)}.error-boundary-icon svg{width:28px;height:28px;stroke-width:1.8}.error-boundary h1{font-size:var(--fs-2xl);margin-bottom:var(--s-2)}.error-boundary p{color:var(--text-2);margin:0 auto var(--s-5);max-width:360px}.error-boundary .btn{margin-bottom:var(--s-4)}.error-boundary small{display:block;color:var(--text-3);font-size:var(--fs-xs)}.grid{display:grid;gap:var(--s-6)}.g-4{grid-template-columns:repeat(4,1fr)}.flex{display:flex}.items-center{align-items:center}.gap-2{gap:var(--s-2)}.gap-3{gap:var(--s-3)}.text-xs{font-size:var(--fs-xs)}.text-sm{font-size:var(--fs-sm)}.section-stack{display:flex;flex-direction:column;gap:var(--s-6)}.content-split{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:var(--s-6);align-items:start}.operation-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:var(--s-6);margin-top:var(--s-6);align-items:start}.stack-md{display:flex;flex-direction:column;gap:var(--s-4)}.sticky-stack{position:sticky;top:88px;display:flex;flex-direction:column;gap:var(--s-4)}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4)}.form-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-4)}.actions-row{display:flex;align-items:center;justify-content:flex-end;gap:var(--s-3);margin-top:var(--s-4)}.card-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--s-4) var(--s-6)}.print-document{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-sm);padding:var(--s-8)}.print-letterhead{display:flex;align-items:center;gap:var(--s-4);padding-bottom:var(--s-5);border-bottom:2px solid var(--nav-bg)}.print-letterhead img{width:58px;height:58px;object-fit:contain}.print-letterhead div:nth-child(2){display:flex;flex:1;flex-direction:column}.print-letterhead strong{font-size:var(--fs-lg)}.print-letterhead span{color:var(--text-2);font-size:var(--fs-sm)}.print-title{display:flex;justify-content:space-between;gap:var(--s-8);align-items:flex-start;padding:var(--s-8) 0}.print-title h1{font-size:var(--fs-2xl);margin-bottom:var(--s-3)}.print-code{width:250px;text-align:center}.print-code strong{font-family:ui-monospace,monospace;font-size:var(--fs-sm)}.print-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-4);padding:var(--s-5);margin-bottom:var(--s-6);background:var(--surface-2);border-radius:var(--r-md)}.print-meta div{display:flex;flex-direction:column;gap:var(--s-1)}.print-meta span,.print-signature span{color:var(--text-2);font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.print-meta small{color:var(--text-2)}.print-signature{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-10);margin-top:var(--s-10)}.signature-line{height:72px;border-bottom:1px solid var(--text)}.signature-placeholder{min-height:72px;margin-top:var(--s-2);padding:var(--s-4);border:1px dashed var(--border-strong);color:var(--text-2);font-size:var(--fs-xs)}.print-footer{margin-top:var(--s-10);padding-top:var(--s-4);border-top:1px solid var(--border);color:var(--text-2);font-size:var(--fs-xs);text-align:center}.signature-image{display:block;width:min(100%,320px);height:96px;margin-top:var(--s-2);object-fit:contain;object-position:left center;border-bottom:1px solid var(--text)}@page{size:A4 portrait;margin:10mm}@media print{:root,:root[data-theme=dark]{color-scheme:light;--bg:#fff;--surface:#fff;--surface-2:#F8FAFC;--border:#CBD5E1;--border-strong:#94A3B8;--text:#111827;--text-2:#475569;--text-3:#64748B;--brand-600:#1D4ED8;--nav-bg:#0F1D3A}*{-webkit-print-color-adjust:exact;print-color-adjust:exact;animation:none!important;transition:none!important}body{background:#fff;color:#111827}.sidebar,.topbar,.no-print,.skip-link{display:none!important}.app,.main,.route-content{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important;background:#fff!important;margin:0!important}.page{max-width:none!important;padding:0!important}.page.document-page{max-width:none;padding:0}.print-document{border:0;box-shadow:none;padding:0}.table-wrap{overflow:visible!important;border:0}.table{width:100%;font-size:10px}.table thead{display:table-header-group}.table tfoot{display:table-footer-group}.table tr,.card,.print-letterhead,.print-signature,.print-footer{break-inside:avoid}.print-table{font-size:10px}.print-letterhead{padding-bottom:4mm}.print-title{padding:5mm 0}.print-meta{gap:3mm;padding:4mm;margin-bottom:4mm}.print-signature{margin-top:7mm;gap:10mm}.print-footer{margin-top:7mm}.btn,.actions-row{display:none!important}}@media(max-width:1100px){.g-4{grid-template-columns:repeat(2,1fr)}}.executive-dashboard{display:flex;flex-direction:column;gap:var(--s-4);max-width:1680px}.executive-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s-6)}.executive-head .h1{margin:2px 0}.executive-head-actions{display:flex;gap:var(--s-3)}.executive-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-4)}.executive-kpis article{position:relative;display:flex;min-height:126px;flex-direction:column;justify-content:center;padding:var(--s-5);overflow:hidden;border:1px solid var(--border);border-radius:var(--r-lg);background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface-2) 42%,var(--surface)));box-shadow:var(--sh-sm)}.executive-kpis article:before{position:absolute;inset:0 auto 0 0;width:4px;background:var(--brand-600);content:""}.executive-kpis article:nth-child(3):before{background:var(--warning)}.executive-kpis article:nth-child(4):before{background:var(--danger)}.executive-kpis span{color:var(--text-2);font-size:var(--fs-sm);font-weight:600}.executive-kpis strong{margin:5px 0;font-size:30px;line-height:1.1;letter-spacing:-.03em}.executive-kpis small{color:var(--text-3)}.executive-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-4);padding:var(--s-5) var(--s-5) var(--s-3)}.executive-card-head h2{font-size:var(--fs-lg)}.executive-card-head>a{color:var(--brand-700);font-size:var(--fs-sm);font-weight:700}.executive-flow{overflow:hidden}.demo-data-badge{padding:5px 10px;border:1px solid var(--brand-100);border-radius:var(--r-full);background:var(--brand-50);color:var(--brand-700);font-size:var(--fs-xs);font-weight:700}.flow-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s-4);margin:0 var(--s-5) var(--s-5)}.flow-stage{display:flex;flex-direction:column;min-width:0;border-radius:var(--r-md);transition:var(--transition)}.flow-stage-title{display:flex;align-items:center;gap:var(--s-3);height:56px;flex:none;padding:0 30px 0 22px;background:color-mix(in srgb,var(--brand-50) 85%,var(--surface));color:var(--text);clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%,16px 50%);transition:background .16s ease}.flow-stage:first-child .flow-stage-title{padding-left:16px;clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%)}.flow-stage:hover .flow-stage-title{background:var(--brand-100)}.flow-stage-title>span{display:grid;width:32px;height:32px;flex:none;place-items:center;border:1px solid var(--brand-100);border-radius:50%;background:var(--surface);color:var(--brand-600)}.flow-stage-title svg{width:17px}.flow-stage-body{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:72px;padding:var(--s-3) var(--s-2) 0}.flow-primary{font-size:28px;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.flow-stage-body small{color:var(--text-3)}.flow-flag{margin-top:var(--s-2);display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--r-full);background:var(--warning-bg);color:var(--warning-700);font-size:var(--fs-xs);font-weight:700}.flow-progress{height:5px;margin:var(--s-3) var(--s-2) 0;overflow:hidden;border-radius:99px;background:var(--surface-2)}.flow-progress span{display:block;height:100%;border-radius:inherit;background:var(--brand-600)}.flow-caption{display:flex;justify-content:flex-end;margin:var(--s-2) var(--s-2) 0;font-size:11px;color:var(--text-3)}.executive-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(360px,.85fr);gap:var(--s-4)}.balance-chart{height:230px;padding:0 var(--s-4)}.balance-totals{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--border)}.balance-totals div{display:flex;flex-direction:column;gap:4px;padding:var(--s-4);text-align:center;border-right:1px solid var(--border)}.balance-totals div:last-child{border:0}.balance-totals span{color:var(--text-3);font-size:var(--fs-xs)}.balance-totals strong{font-size:var(--fs-lg)}.positive{color:var(--success-700)}.negative{color:var(--danger-700)}.donut-layout{display:grid;grid-template-columns:minmax(170px,.8fr) 1.2fr;align-items:center;gap:var(--s-4);padding:0 var(--s-5) var(--s-5)}.donut-chart{position:relative;height:240px}.donut-chart>div:last-child{position:absolute;inset:50% auto auto 50%;display:flex;flex-direction:column;text-align:center;transform:translate(-50%,-50%);pointer-events:none}.donut-chart>div strong{font-size:var(--fs-xl)}.donut-chart>div span{color:var(--text-3);font-size:var(--fs-xs)}.donut-legend{display:flex;flex-direction:column;gap:var(--s-3)}.donut-legend>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:var(--s-2);font-size:var(--fs-xs)}.donut-legend i{width:9px;height:9px;border-radius:50%}.donut-legend span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.donut-legend small{min-width:44px;color:var(--text-3);text-align:right}.fefo-panel{overflow:hidden}.fefo-horizon{display:flex;flex-direction:column;gap:var(--s-3);padding:0 var(--s-5) var(--s-4)}.fefo-bar{display:flex;gap:2px;height:14px;border-radius:99px;overflow:hidden;background:var(--surface-2)}.fefo-bar span{flex-basis:0;min-width:6px}.fefo-bar .critical,.fefo-horizon-legend .critical i{background:#991b1b}.fefo-bar .danger,.fefo-horizon-legend .danger i{background:#ea580c}.fefo-bar .warning,.fefo-horizon-legend .warning i{background:#d99a19}.fefo-bar .watch,.fefo-horizon-legend .watch i{background:#4daaa2}.fefo-bar .safe,.fefo-horizon-legend .safe i{background:#15803d}.fefo-horizon-legend{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-4);font-size:var(--fs-xs)}.fefo-horizon-legend>div{display:inline-flex;align-items:center;gap:6px}.fefo-horizon-legend i{width:9px;height:9px;border-radius:2px;flex:none}.fefo-horizon-legend span{color:var(--text-2)}.fefo-horizon-legend b{font-variant-numeric:tabular-nums}.fefo-horizon-legend small{color:var(--text-3);font-variant-numeric:tabular-nums}.fefo-alert{padding:4px 10px;border-radius:var(--r-full);background:var(--danger-bg);color:var(--danger-700);font-size:var(--fs-xs);font-weight:700;white-space:nowrap}.fefo-table-wrap{overflow-x:auto;padding:0 var(--s-5) var(--s-5)}.fefo-table{min-width:780px;border:1px solid var(--border);border-radius:var(--r-md)}.days-chip{display:inline-grid;min-width:38px;height:26px;place-items:center;border-radius:var(--r-sm);color:#fff;font-weight:700}.days-chip.critical{background:#991b1b}.days-chip.danger{background:#ea580c}.days-chip.warning{background:#d97706}.executive-bottom-grid{display:grid;grid-template-columns:1fr 1.15fr .85fr;gap:var(--s-4);align-items:stretch}.quick-actions>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-2);padding:0 var(--s-5) var(--s-5)}.quick-actions>div:last-child>a{display:flex;min-height:72px;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-2);padding:var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);text-align:center;transition:var(--transition)}.quick-actions a:hover{border-color:var(--brand-600);background:var(--brand-50);color:var(--brand-700)}.quick-actions a span{color:var(--brand-600)}.quick-actions svg{width:22px}.quick-actions b{font-size:var(--fs-xs)}.activity-list{padding:0 var(--s-5) var(--s-5)}.activity-list article{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:var(--s-3);padding:var(--s-3) 0;border-bottom:1px solid var(--border)}.activity-list article:last-child{border:0}.activity-status{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;font-weight:800}.activity-status.incoming{background:var(--success-bg);color:var(--success-700)}.activity-status.outgoing{background:var(--info-bg);color:var(--info-700)}.activity-list article>div:nth-child(2){display:flex;min-width:0;flex-direction:column}.activity-list article strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--fs-sm)}.activity-list article small,.activity-list time{color:var(--text-3);font-size:var(--fs-xs)}.activity-list article>div:last-child{display:flex;align-items:flex-end;flex-direction:column;gap:4px}.dashboard-help{display:flex;align-items:flex-start;gap:var(--s-4);padding:var(--s-5);background:linear-gradient(145deg,var(--brand-50),var(--surface))}.help-icon{display:grid;width:40px;height:40px;flex:none;place-items:center;border-radius:50%;background:var(--brand-600);color:#fff;font-size:var(--fs-xl);font-weight:800}.dashboard-help h2{margin:2px 0 var(--s-2);font-size:var(--fs-lg)}.dashboard-help p{color:var(--text-2);font-size:var(--fs-sm)}.dashboard-help>div:last-child>div{display:flex;gap:var(--s-4);margin-top:var(--s-4)}.dashboard-help a{color:var(--brand-700);font-size:var(--fs-sm);font-weight:700}.executive-kpis article{display:grid;grid-template-columns:46px minmax(0,1fr) 82px;align-items:center;gap:var(--s-3);flex-direction:initial;justify-content:initial}.executive-kpis article>div{display:flex;min-width:0;flex-direction:column}.executive-kpi-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:var(--brand-50);color:var(--brand-600)}.executive-kpi-icon.warning{background:var(--warning-bg);color:var(--warning-700)}.executive-kpi-icon.danger{background:var(--danger-bg);color:var(--danger-700)}.executive-kpi-icon svg{width:22px}.executive-trend{width:82px;height:42px;color:var(--brand-600)}.executive-trend.warning{color:var(--warning-700)}.executive-trend.danger{color:var(--danger-700)}.executive-trend path{fill:currentColor;opacity:.12}.executive-trend polyline{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.executive-grid{grid-template-columns:minmax(0,1.25fr) minmax(480px,1fr)}.chart-tip{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--sh-md);padding:var(--s-3) var(--s-4);font-size:var(--fs-xs);max-width:250px}.chart-tip strong{display:block;font-size:var(--fs-sm)}.chart-tip>span{color:var(--text-2)}.chart-tip ul{list-style:none;margin:var(--s-2) 0 0;padding:var(--s-2) 0 0;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:3px}.chart-tip li{display:flex;justify-content:space-between;gap:var(--s-3)}.chart-tip li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chart-tip li b{font-variant-numeric:tabular-nums}.chart-tip li.more{color:var(--text-3)}.executive-balance .recharts-line-curve{stroke:var(--chart-line)!important}.executive-balance .recharts-legend-item:last-child .recharts-legend-icon{stroke:var(--chart-line)!important}.recharts-legend-item-text{color:var(--text-2)!important}.recharts-default-tooltip{background:var(--surface)!important;border-color:var(--border)!important;color:var(--text)!important;box-shadow:var(--sh-md)}.stock-foot{display:flex;justify-content:space-between;align-items:center;padding:var(--s-3) var(--s-5);border-top:1px solid var(--border);color:var(--text-2);font-size:var(--fs-sm)}.stock-foot b{color:var(--text);font-variant-numeric:tabular-nums}.fefo-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.6fr);gap:var(--s-4);align-items:stretch}.donut-layout{grid-template-columns:1fr;align-items:start;gap:var(--s-3)}.donut-chart{width:min(280px,100%);margin:0 auto;height:200px}.donut-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-2) var(--s-5)}.donut-legend>div{grid-template-columns:10px minmax(0,1fr) 36px 52px}.donut-legend span{overflow:visible;text-overflow:clip;line-height:1.25;white-space:normal}.executive-bottom-grid{grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr)}.market-price-layout{display:grid;grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:var(--s-5);padding:0 var(--s-5)}.market-price-chart{height:150px}.market-price-index{display:flex;flex-direction:column;padding-left:var(--s-4);border-left:1px solid var(--border)}.market-price-index span,.market-price-index small{color:var(--text-3);font-size:var(--fs-xs)}.market-price-index strong{margin:4px 0;color:var(--brand-700);font-size:30px}.market-price-index b{color:var(--success-700)}.market-price-index b.up{color:var(--warning-700)}.market-price-index b.down{color:var(--success-700)}.market-insight{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s-3);margin:0 var(--s-5) var(--s-5);padding:var(--s-3) var(--s-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);font-size:var(--fs-xs)}.market-insight span{color:var(--text-2)}.brand-logo{cursor:default}.brand-logo:focus-visible{outline:2px solid var(--nav-active-accent);outline-offset:2px}.executive-kpis article:before{display:none}.executive-kpi-icon{width:42px;height:42px;border-radius:var(--r-md)}.executive-kpi-icon svg{width:21px;height:21px;stroke-width:1.8}@media(max-width:1200px){.executive-grid{grid-template-columns:1fr}.executive-bottom-grid{grid-template-columns:1fr 1fr}.fefo-grid{grid-template-columns:1fr}.dashboard-help{grid-column:1/-1}.executive-kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.flow-track{grid-template-columns:repeat(2,1fr);gap:var(--s-3)}.executive-head{align-items:flex-start}}@media(max-width:640px){.executive-head{flex-direction:column}.executive-head-actions{width:100%}.executive-head-actions .btn{flex:1}.executive-kpis,.flow-track,.executive-bottom-grid{grid-template-columns:1fr}.balance-totals{grid-template-columns:repeat(2,1fr)}.balance-totals div:nth-child(2){border-right:0}.donut-layout{grid-template-columns:1fr}.quick-actions>div:last-child{grid-template-columns:repeat(2,1fr)}.dashboard-help{grid-column:auto}.activity-list article{grid-template-columns:32px minmax(0,1fr)}.activity-list article>div:last-child{grid-column:2;align-items:flex-start}.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3)}.dashboard-kpis .kpi-featured{grid-column:1/-1}.dashboard-kpis .kpi{padding:var(--s-4)}.dashboard-kpis .kpi-top{margin-bottom:var(--s-3)}.dashboard-kpis .kpi:not(.kpi-featured) .executive-trend{display:none}.dashboard-kpis .kpi:not(.kpi-featured) .kpi-value{font-size:var(--fs-2xl)}.dashboard-kpis .kpi:not(.kpi-featured) .kpi-label{font-size:var(--fs-xs)}.dashboard-kpis .kpi-watermark{width:100px;height:100px;left:-14px;bottom:-18px;opacity:.09}}.mobile-menu,.nav-scrim{display:none}@media(max-width:900px){:root{--topbar-h:60px}.app{background:var(--bg)}.sidebar,.app.pinned .sidebar{display:flex;width:min(84vw,300px);transform:translate(-105%);box-shadow:var(--sh-lg);transition:transform .22s cubic-bezier(.4,0,.2,1)}.app.nav-open .sidebar{transform:none}.sidebar .sb-label,.app.pinned .sidebar .sb-label{max-width:190px;opacity:1;transform:none}.sidebar .brand-pin{max-width:30px;opacity:1;overflow:visible}.app .main,.app.pinned .main,.app:not(.pinned) .sidebar.hover-open~.main,.app:not(.pinned) .sidebar:has(:focus-visible)~.main{height:100vh;margin:0;border-radius:0;transform:none}.nav-scrim{position:fixed;z-index:35;inset:0;display:block;background:#02061780;opacity:0;pointer-events:none;transition:opacity var(--transition)}.app.nav-open .nav-scrim{opacity:1;pointer-events:auto}.mobile-menu{display:grid;place-items:center;flex:none;width:42px;height:42px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text);font-size:22px}.topbar{padding:0 var(--s-4);gap:var(--s-3)}.search{width:min(440px,55vw)}.theme-picker>span{display:none}.page{padding:var(--s-6)}.page-head{align-items:flex-start;gap:var(--s-4)}.page-head>div:last-child{flex-wrap:wrap;justify-content:flex-end}.g-4,.form-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.page [style*="grid-template-columns: 1fr 1fr 1fr"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}.table{min-width:720px}.print-table{min-width:640px}.btn,.input,.select,.touch-target{min-height:44px}.btn-sm{min-height:40px}.onboarding{margin:var(--s-3) var(--s-6) 0;align-items:flex-start;flex-wrap:wrap}.onboarding nav{order:3;width:100%}.print-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.print-document{padding:var(--s-6)}.command-palette{width:min(92vw,680px)}}@media(max-width:640px){.topbar{padding:0 var(--s-3)}.search{flex:1;width:auto}.search kbd,.theme-picker{display:none}.page{padding:var(--s-4)}.h1{font-size:var(--fs-2xl)}.page-head{flex-direction:column}.page-head>div:last-child{width:100%;justify-content:flex-start}.g-2,.g-3,.g-4,.form-grid-2,.form-grid-3,.page [style*="grid-template-columns: 1fr 1fr"],.page [style*="grid-template-columns: 1fr 1fr 1fr"],.page [style*="grid-template-columns: 220px 1fr"]{grid-template-columns:1fr!important}.segmented:not(.segmented-vertical){display:flex;max-width:100%;overflow-x:auto}.segmented-vertical{flex-direction:row;max-width:100%;overflow-x:auto}.segmented-item{min-height:44px}.actions-row,.card-footer{align-items:stretch;flex-direction:column}.actions-row .btn,.card-footer .btn{width:100%}.onboarding{margin:var(--s-2) var(--s-4) 0}.onboarding nav a{min-height:40px;display:inline-flex;align-items:center}.onboarding>button{margin-left:auto}.query-state{align-items:flex-start;flex-wrap:wrap;justify-content:flex-start}.query-state-skeleton{min-width:100%}.print-document{padding:var(--s-4)}.print-letterhead{align-items:flex-start;flex-wrap:wrap}.print-title{flex-direction:column}.print-code{width:100%}.print-meta,.print-signature{grid-template-columns:1fr}.print-signature{gap:var(--s-5)}.command-overlay{align-items:flex-start;padding:var(--s-3)}.command-palette{margin-top:6vh;width:100%;max-height:86vh}.command-search kbd{display:none}.sidebar,.app.pinned .sidebar{display:flex;width:var(--rail-w);transform:none;box-shadow:none;transition:width .22s cubic-bezier(.4,0,.2,1),box-shadow .22s ease}.sidebar .sb-label,.app.pinned .sidebar .sb-label{max-width:0;opacity:0;transform:translate(-6px)}.sidebar .brand-pin,.app.pinned .sidebar .brand-pin{display:none}.brand-logo{pointer-events:auto;cursor:pointer}.mobile-menu{display:none}.app.mobile-labels .sidebar{width:min(80vw,280px);box-shadow:var(--sh-lg)}.app.mobile-labels .sidebar .sb-label{max-width:190px;opacity:1;transform:none}.app.mobile-labels .sidebar .nav-badge.sb-label{max-width:60px;padding:1px 7px}.app.mobile-labels .nav-scrim{opacity:1;pointer-events:auto}.app .main,.app.pinned .main{margin:0 0 0 var(--rail-w);height:100vh;border-radius:0;transform:none}}
