@import "https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@500;600&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";.toast-viewport{z-index:120;pointer-events:none;gap:.75rem;width:min(25rem,100vw - 2rem);display:grid;position:fixed;top:1rem;right:1rem}.app-toast{--toast-tone:var(--accent);color:var(--text-1);background:color-mix(in srgb, var(--bg-panel-strong) 94%, transparent);border:1px solid color-mix(in srgb, var(--toast-tone) 42%, var(--line-soft));border-left:.28rem solid var(--toast-tone);border-radius:var(--radius-md);box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);pointer-events:auto;animation:toast-enter .22s var(--easing-standard) both;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:.75rem;padding:.9rem;display:grid;overflow:hidden}.app-toast--success{--toast-tone:#4db37e}.app-toast--warning{--toast-tone:#e0a43c}.app-toast--error{--toast-tone:#e67676}.app-toast__icon{width:1.75rem;height:1.75rem;color:color-mix(in srgb, var(--toast-tone) 86%, var(--text-1));background:color-mix(in srgb, var(--toast-tone) 18%, transparent);border-radius:50%;place-items:center;font-weight:800;line-height:1;display:grid}.app-toast__content{min-width:0}.app-toast__content strong{font-size:.9rem;line-height:1.35;display:block}.app-toast__content p{color:var(--text-2);margin:.22rem 0 0;font-size:.78rem;line-height:1.45}.app-toast__close{width:1.75rem;height:1.75rem;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:50%;padding:0;font-size:1.1rem;line-height:1}.app-toast__close:hover,.app-toast__close:focus-visible{color:var(--text-1);background:var(--bg-panel-muted);outline:none}@keyframes toast-enter{0%{opacity:0;transform:translate(1rem,-.25rem)}to{opacity:1;transform:translate(0,0)}}@media (width<=640px){.toast-viewport{width:auto;inset:auto .75rem 5.5rem}}@media (prefers-reduced-motion:reduce){.app-toast{animation:none}}:root{--font-display:"Plus Jakarta Sans", "SF Pro Display", "Aptos Display", "Segoe UI Variable Display", sans-serif;--font-body:"Plus Jakarta Sans", "SF Pro Text", "Aptos", "Segoe UI Variable", sans-serif;--font-mono:"JetBrains Mono", "Cascadia Code", "Consolas", monospace;--type-weight-regular:400;--type-weight-medium:500;--type-weight-semibold:600;--type-weight-bold:700;--type-weight-extrabold:800;--type-weight-body:400;--type-line-tight:1.12;--type-line-title:1.2;--type-line-subtitle:1.42;--type-line-body:1.5;--type-track-hero:-.036em;--type-track-title-xl:-.03em;--type-track-title-lg:-.024em;--type-track-title-md:-.016em;--type-track-title-sm:-.008em;--type-track-overline:.12em;--type-size-overline:.69rem;--type-size-caption:.75rem;--type-size-body-sm:.875rem;--type-size-body-md:1rem;--type-size-body-lg:1.125rem;--type-size-title-sm:1rem;--type-size-title-md:1.125rem;--type-size-title-lg:clamp(1.25rem, 1.7vw, 1.55rem);--type-size-title-xl:clamp(1.65rem, 2.4vw, 2.05rem);--type-size-hero:clamp(2.15rem, 3.5vw, 3rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.5rem;--space-9:3rem;--radius-sm:.75rem;--radius-md:1rem;--radius-lg:1.5rem;--radius-xl:2rem;--radius-pill:999px;--shadow-soft:0 18px 45px #050a1424;--shadow-panel:0 30px 80px #050a1438;--shadow-focus:0 0 0 4px #44c4ff29;--shadow-warm:0 18px 36px #f5822d38;--duration-fast:.14s;--duration-base:.22s;--easing-standard:cubic-bezier(.2, .8, .2, 1);--scrollbar-size:.58rem;--scrollbar-track:#0c14226b;--scrollbar-thumb:#8091b2c2;--scrollbar-thumb-hover:#9bacceeb;--scrollbar-corner:#0a101c47;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-canvas:#0d1117;--bg-elevated:#181c24c7;--bg-panel:#11161fbd;--bg-panel-strong:#0d1118e6;--bg-panel-muted:#191e2899;--bg-input:#0a0e15db;--bg-accent-soft:#8192b529;--bg-warm-soft:#e5eaf324;--bg-app:radial-gradient(circle at 18% 0%, #5e68803d, transparent 34%), radial-gradient(circle at 100% 10%, #404b6242, transparent 38%), linear-gradient(160deg, #0a0d13 0%, #0d1117 42%, #161b23 100%);--line-soft:#8e99b22b;--line-strong:#a6b0c554;--text-1:#f5f7fb;--text-2:#c7ceda;--text-3:#8f9bb0;--text-2-strong:color-mix(in srgb, var(--text-2) 95%, var(--text-1) 5%);--text-2-panel:color-mix(in srgb, var(--text-2) 86%, transparent);--text-2-muted:color-mix(in srgb, var(--text-2) 72%, transparent);--text-3-muted:color-mix(in srgb, var(--text-3) 78%, transparent);--text-inverse:#0f141d;--accent:#8ba2d0;--accent-strong:#c0cce6;--accent-warm:#dce2ef;--accent-warm-strong:#f3f7ff;--success-bg:#4db37e33;--success-text:#a0e9bd;--danger-bg:#e6767633;--danger-text:#fcc;--scrollbar-track:#0c14226b;--scrollbar-thumb:#8091b2c2;--scrollbar-thumb-hover:#9bacceeb;--scrollbar-corner:#0a101c47}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-canvas:#f3f4f6;--bg-elevated:#fcfdffeb;--bg-panel:#f8f9fcd9;--bg-panel-strong:#fffffff2;--bg-panel-muted:#f1f3f7d6;--bg-input:#ffffffe0;--bg-accent-soft:#7385aa21;--bg-warm-soft:#dee6f39e;--bg-app:radial-gradient(circle at 0% 0%, #adb9d13d, transparent 34%), radial-gradient(circle at 100% 0%, #909cb033, transparent 34%), linear-gradient(180deg, #f7f8fb 0%, #f3f4f6 50%, #eceef2 100%);--line-soft:#707b8d29;--line-strong:#707b8d47;--text-1:#111827;--text-2:#374151;--text-3:#667085;--text-2-strong:color-mix(in srgb, var(--text-2) 92%, var(--text-1) 8%);--text-2-panel:color-mix(in srgb, var(--text-2) 84%, transparent);--text-2-muted:color-mix(in srgb, var(--text-2) 70%, transparent);--text-3-muted:color-mix(in srgb, var(--text-3) 76%, transparent);--text-inverse:#f8fafc;--accent:#5f739a;--accent-strong:#415678;--accent-warm:#1f2937;--accent-warm-strong:#111827;--success-bg:#38a16924;--success-text:#216b46;--danger-bg:#dc49491f;--danger-text:brown;--shadow-soft:0 16px 35px #383f4d1c;--shadow-panel:0 26px 62px #383f4d29;--shadow-warm:0 16px 30px #1118272e;--scrollbar-track:#b7c0d03d;--scrollbar-thumb:#637391ad;--scrollbar-thumb-hover:#4f5e78d6;--scrollbar-corner:#b7c0d02e}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:var(--radius-pill)}::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}::-webkit-scrollbar-corner{background:var(--scrollbar-corner)}html{scroll-behavior:smooth;min-height:100%;margin:0;padding:0}body,#root{min-height:100vh;margin:0}body{background:var(--bg-app);color:var(--text-1);font-family:var(--font-body);font-size:var(--type-size-body-md);font-weight:var(--type-weight-body);line-height:var(--type-line-body)}h1,h2,h3,h4{color:var(--text-1);font-family:var(--font-display);font-weight:var(--type-weight-semibold);margin:0}h1{font-size:var(--type-size-title-xl);letter-spacing:var(--type-track-title-xl);line-height:var(--type-line-tight)}h2{font-size:var(--type-size-title-lg);letter-spacing:var(--type-track-title-lg);line-height:var(--type-line-title)}h3{font-size:var(--type-size-title-md);letter-spacing:var(--type-track-title-md);line-height:var(--type-line-title)}h4{font-size:var(--type-size-title-sm);letter-spacing:var(--type-track-title-sm);line-height:var(--type-line-title)}p{color:var(--text-2);font-size:var(--type-size-body-sm);line-height:var(--type-line-body);margin:0}.text-hero{font-family:var(--font-display);font-size:var(--type-size-hero);font-weight:var(--type-weight-bold);line-height:var(--type-line-tight);letter-spacing:var(--type-track-hero)}.text-title-xl{font-family:var(--font-display);font-size:var(--type-size-title-xl);font-weight:var(--type-weight-bold);line-height:var(--type-line-tight);letter-spacing:var(--type-track-title-xl)}.text-title-lg{font-family:var(--font-display);font-size:var(--type-size-title-lg);font-weight:var(--type-weight-semibold);line-height:var(--type-line-title);letter-spacing:var(--type-track-title-lg)}.text-title-md{font-family:var(--font-display);font-size:var(--type-size-title-md);font-weight:var(--type-weight-semibold);line-height:var(--type-line-title);letter-spacing:var(--type-track-title-md)}.text-title-sm{font-family:var(--font-display);font-size:var(--type-size-title-sm);font-weight:var(--type-weight-semibold);line-height:var(--type-line-title);letter-spacing:var(--type-track-title-sm)}.text-subtitle{font-size:var(--type-size-body-md);font-weight:var(--type-weight-regular);line-height:var(--type-line-subtitle);color:var(--text-2)}.text-body{font-size:var(--type-size-body-sm);font-weight:var(--type-weight-regular);line-height:var(--type-line-body);color:var(--text-2)}.text-caption{font-size:var(--type-size-caption);font-weight:var(--type-weight-medium);color:var(--text-3);line-height:1.35}.text-overline{font-size:var(--type-size-overline);font-weight:var(--type-weight-extrabold);letter-spacing:var(--type-track-overline);text-transform:uppercase;color:var(--text-3);line-height:1.3}body:before{content:"";pointer-events:none;background:linear-gradient(#ffffff05,#ffffff05),radial-gradient(circle at 50% 0,#ffffff0f,#0000 42%);position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000000e6,#0000 85%);mask-image:linear-gradient(#000000e6,#0000 85%)}button,input{font:inherit}button{cursor:pointer}a{color:var(--accent-strong);text-decoration:none}a:hover{color:var(--accent)}::selection{color:var(--text-1);background:#8fa0c24d}#root{isolation:isolate}[id]{scroll-margin-top:7rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.brand-logo{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}:root[data-theme=dark] .brand-logo--light,:root[data-theme=light] .brand-logo--dark{display:none}.shell{grid-template-columns:var(--sidebar-width,minmax(16rem, 18.5rem)) minmax(0, 1fr);min-height:100vh;display:grid}.shell:has(.shell-sidebar.is-collapsed){--sidebar-width:5.25rem}.shell-sidebar{gap:var(--space-4);height:100vh;min-height:0;padding:var(--space-4);border-right:1px solid var(--line-soft);background:color-mix(in srgb, var(--bg-panel-strong) 90%, transparent);-webkit-backdrop-filter:blur(28px);backdrop-filter:blur(28px);flex-direction:column;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-toggle{border:1px solid var(--line-soft);border-radius:var(--radius-md);width:2.35rem;height:2.35rem;color:var(--text-2);background:color-mix(in srgb, var(--bg-panel) 88%, transparent);cursor:pointer;transition:background-color var(--duration-fast) var(--easing-standard), border-color var(--duration-fast) var(--easing-standard), color var(--duration-fast) var(--easing-standard);flex:none;justify-content:center;align-self:flex-end;align-items:center;padding:0;display:inline-flex}.sidebar-toggle:hover{background:var(--bg-accent-soft);border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--text-1)}.shell-sidebar.is-collapsed{padding-inline:var(--space-3);align-items:center;overflow-x:hidden}.shell-sidebar.is-collapsed .sidebar-toggle{align-self:center}.shell-sidebar.is-collapsed .sidebar-brand,.shell-sidebar.is-collapsed .sidebar-extra{display:none}.shell-sidebar.is-collapsed .nav-panel,.shell-sidebar.is-collapsed .user-panel{width:100%;padding-inline:var(--space-2)}.shell-sidebar .panel{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md)}.shell-main{flex-direction:column;min-width:0;display:flex}.shell-topbar{z-index:30;justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-6);border-bottom:1px solid var(--line-soft);background:color-mix(in srgb, var(--bg-canvas) 70%, transparent);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);display:flex;position:sticky;top:0}.topbar-actions{align-items:center;gap:var(--space-3);display:flex}.topbar-breadcrumb{align-items:center;gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.crumb-wrap{align-items:center;gap:var(--space-1);display:inline-flex}.topbar-crumb{font-size:var(--type-size-caption);font-weight:var(--type-weight-medium);letter-spacing:.08em;text-transform:uppercase}.topbar-crumb-link{color:var(--text-3-muted);transition:color var(--duration-fast) var(--easing-standard)}.topbar-crumb-link:hover{color:var(--accent-strong)}.topbar-crumb-current{color:var(--text-2-strong)}.topbar-crumb-sep{color:var(--text-3-muted);font-size:.7rem}.shell-content{padding:var(--space-6);padding-bottom:calc(var(--space-8) + env(safe-area-inset-bottom));gap:var(--space-6);flex-direction:column;display:flex}.panel{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-panel) 96%, white 4%), color-mix(in srgb, var(--bg-panel-muted) 98%, transparent)), var(--bg-panel);box-shadow:var(--shadow-panel);animation:panel-enter .42s var(--easing-standard);flex-direction:column;display:flex;position:relative;overflow:hidden}.ui-card[data-density=compact]{gap:var(--space-3);padding:var(--space-4)}.ui-card[data-density=spacious]{gap:var(--space-5);padding:var(--space-6)}.ui-card[data-surface=subtle]{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-panel-muted) 90%, transparent), color-mix(in srgb, var(--bg-panel) 94%, transparent)), var(--bg-panel);box-shadow:var(--shadow-soft)}.ui-card[data-surface=elevated]{border-color:color-mix(in srgb, var(--line-strong) 70%, transparent);box-shadow:0 34px 90px #060a1057}.ui-card[data-surface=solid]{background:color-mix(in srgb, var(--bg-panel-strong) 96%, black 4%);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.panel:before{content:"";pointer-events:none;opacity:.4;background:linear-gradient(135deg,#ffffff14,#0000 45%);position:absolute;inset:0}.panel>*{z-index:1;position:relative}.loading-screen{min-height:100dvh;padding:var(--space-6);background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--accent) 22%, transparent), transparent 38%), var(--bg-app);place-items:center;display:grid;position:relative;overflow:hidden}.loading-screen--compact{border-radius:var(--radius-lg);background:0 0;min-height:58vh}.loading-screen__glow{aspect-ratio:1;pointer-events:none;filter:blur(90px);opacity:.42;border-radius:50%;width:min(34rem,80vw);position:absolute}.loading-screen__glow--top{background:color-mix(in srgb, var(--accent) 42%, transparent);top:-14rem;right:-12rem}.loading-screen__glow--bottom{background:color-mix(in srgb, var(--accent-strong) 28%, transparent);bottom:-16rem;left:-12rem}.loading-screen__card{z-index:1;align-items:center;gap:var(--space-5);width:min(100%,24rem);padding:var(--space-7);border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:linear-gradient(180deg, color-mix(in srgb, var(--bg-panel-strong) 92%, white 4%), color-mix(in srgb, var(--bg-panel) 92%, transparent)), var(--bg-panel);box-shadow:var(--shadow-panel);text-align:center;flex-direction:column;display:flex;position:relative}.loading-screen--compact .loading-screen__card{width:min(100%,20rem);padding:var(--space-6)}.loading-screen__brand{width:4.25rem;height:4.25rem;animation:loading-brand-pulse 1.8s var(--easing-standard) infinite;justify-content:center;align-items:center;display:inline-flex}.loading-screen__copy{gap:var(--space-2);flex-direction:column;align-items:center;display:flex}.loading-screen__copy h1{font-size:var(--type-size-title-lg);line-height:var(--type-line-title)}.loading-screen__copy p:not(.eyebrow){max-width:18rem;color:var(--text-2-muted)}.loading-screen__meter{border-radius:var(--radius-pill);background:color-mix(in srgb, var(--text-1) 9%, transparent);width:min(100%,12rem);height:.28rem;position:relative;overflow:hidden}.loading-screen__meter span{inset-block:0;border-radius:inherit;background:linear-gradient(90deg, transparent, var(--accent-strong), transparent);width:45%;animation:loading-meter 1.18s var(--easing-standard) infinite;position:absolute;left:-45%}@keyframes loading-brand-pulse{0%,to{opacity:.82;transform:scale(1)}50%{opacity:1;transform:scale(1.045)}}@keyframes loading-meter{0%{transform:translate(0)}to{transform:translate(320%)}}.brand-panel{gap:var(--space-3)}.brand-mark{flex-shrink:0;justify-content:center;align-items:center;width:2.85rem;height:2.85rem;display:inline-flex}.eyebrow{font-size:var(--type-size-overline);font-weight:var(--type-weight-extrabold);letter-spacing:var(--type-track-overline);text-transform:uppercase;color:var(--text-3-muted);line-height:1.3}.brand-panel h1,.shell-topbar h2,.topbar-title,.hero-copy h3,.panel h3,.panel h2,.mini-card h3,.foundation-card h3,.hero-card h3{font-family:var(--font-display);letter-spacing:var(--type-track-title-lg)}.brand-panel h1{font-size:var(--type-size-title-xl);font-weight:var(--type-weight-bold);line-height:var(--type-line-tight)}.shell-sidebar .brand-panel h1{font-size:clamp(1.06rem,1.5vw,1.22rem);line-height:1.15}.shell-sidebar .support-copy{margin-top:var(--space-1);color:var(--text-2-muted);font-size:.82rem;line-height:1.4}.shell-topbar h2{font-size:clamp(1.18rem,1.55vw,1.42rem);font-weight:var(--type-weight-semibold);letter-spacing:-.02em;line-height:var(--type-line-title)}.topbar-title{font-size:clamp(1.18rem,1.55vw,1.42rem);font-weight:var(--type-weight-semibold);letter-spacing:-.02em;line-height:1.18}.section-title{font-size:clamp(1.03rem,1.15vw,1.16rem);font-weight:var(--type-weight-semibold);letter-spacing:-.012em;line-height:1.2}.support-copy{margin-top:var(--space-2);color:var(--text-2-panel);font-size:var(--type-size-body-sm);font-weight:var(--type-weight-regular);line-height:var(--type-line-subtitle);max-width:42rem}.shell-topbar .support-copy{color:var(--text-2-strong)}.nav-panel{gap:var(--space-1)}.nav-link,.mobile-nav-link{justify-content:flex-start;align-items:center;gap:var(--space-2);min-height:2.35rem;padding:0 var(--space-3);border-radius:var(--radius-md);font-size:.88rem;font-weight:var(--type-weight-medium);color:var(--text-2);transition:transform var(--duration-fast) var(--easing-standard), border-color var(--duration-fast) var(--easing-standard), background-color var(--duration-fast) var(--easing-standard), color var(--duration-fast) var(--easing-standard);background:0 0;border:1px solid #0000;display:flex}.shell-sidebar.is-collapsed .nav-link{justify-content:center;padding-inline:0}.shell-sidebar.is-collapsed .nav-link span:not(.nav-icon){display:none}.nav-link:hover,.mobile-nav-link:hover{background:var(--bg-accent-soft);border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--text-1);transform:translateY(-1px)}.nav-link.active,.mobile-nav-link.active{background:linear-gradient(135deg, color-mix(in srgb, var(--bg-accent-soft) 92%, transparent), #ffffff05);border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--text-1)}.nav-icon,.button-icon{flex:none;width:1rem;height:1rem}.shell-sidebar .nav-icon{width:.9rem;height:.9rem}.control-panel,.notes-panel{gap:var(--space-4)}.shell-sidebar .control-panel,.shell-sidebar .notes-panel{gap:var(--space-3)}@keyframes panel-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.user-panel{gap:var(--space-2);margin-top:auto}.user-panel-link{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-1);transition:background-color var(--duration-fast) var(--easing-standard), border-color var(--duration-fast) var(--easing-standard);border:1px solid #0000;text-decoration:none;display:flex}.shell-sidebar.is-collapsed .user-panel-link{justify-content:center;padding-inline:0}.shell-sidebar.is-collapsed .user-meta{display:none}.user-panel-link:hover,.user-panel-link.active{background:var(--bg-accent-soft);border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.user-avatar{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 70%, transparent), color-mix(in srgb, var(--accent) 35%, transparent));width:2rem;height:2rem;color:var(--text-1);font-size:.78rem;font-weight:var(--type-weight-bold);letter-spacing:.02em;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}.user-meta{flex-direction:column;min-width:0;line-height:1.2;display:flex}.user-name{font-size:.85rem;font-weight:var(--type-weight-semibold);color:var(--text-1);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-email{color:var(--text-3-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.user-logout{cursor:pointer;font:inherit;text-align:left;width:100%}.panel-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.panel-heading h2,.panel-heading h3{font-size:var(--type-size-title-md);font-weight:var(--type-weight-semibold);line-height:var(--type-line-title)}.shell-sidebar .panel-heading h2,.shell-sidebar .panel-heading h3{font-size:var(--type-size-title-sm)}.segmented-control{gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background:color-mix(in srgb, var(--bg-panel-strong) 84%, transparent);border:1px solid var(--line-soft);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.shell-sidebar .segmented-control{padding:var(--space-1)}.shell-sidebar .segment-button{min-height:2.35rem;font-size:.82rem}.ui-button,.segment-button,.ghost-button,.primary-button{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);min-height:2.78rem;font-weight:var(--type-weight-semibold);transition:transform var(--duration-fast) var(--easing-standard), box-shadow var(--duration-fast) var(--easing-standard), border-color var(--duration-fast) var(--easing-standard), background-color var(--duration-fast) var(--easing-standard);border:1px solid #0000;padding-block:.52rem;text-decoration:none;display:inline-flex}.ui-button[data-size=sm]{min-height:2.22rem;padding-block:.36rem;padding-inline:var(--space-3);font-size:.82rem}.ui-button[data-size=lg]{min-height:3rem;padding-block:.66rem;padding-inline:var(--space-6)}.segment-button,.ui-button[data-appearance=segment]{color:var(--text-2);background:0 0}.segment-button[data-active=true],.ui-button[data-appearance=segment][data-active=true]{color:var(--text-1);background:linear-gradient(135deg, var(--bg-accent-soft), #ffffff08);border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.ghost-button,.ui-button[data-appearance=ghost]{padding:0 var(--space-4);color:var(--text-1);background:color-mix(in srgb, var(--bg-panel-strong) 78%, transparent);border-color:var(--line-soft)}.primary-button,.ui-button[data-appearance=solid]{padding:0 var(--space-5);color:var(--text-inverse);background:linear-gradient(145deg, var(--accent-warm) 0%, var(--accent-warm-strong) 100%);box-shadow:var(--shadow-warm)}.ui-button[data-tone=accent][data-appearance=ghost]{color:var(--accent-strong);border-color:color-mix(in srgb, var(--accent) 38%, transparent);background:color-mix(in srgb, var(--bg-accent-soft) 70%, transparent)}.ui-button[data-tone=danger]{color:var(--danger-text);border-color:color-mix(in srgb, var(--danger-text) 40%, transparent);background:color-mix(in srgb, var(--danger-bg) 72%, var(--bg-panel-strong));box-shadow:none}.segment-button:hover,.ghost-button:hover,.primary-button:hover:not(:disabled),.ui-button:hover:not(:disabled){transform:translateY(-1px)}.primary-button:disabled{opacity:.56;cursor:wait;box-shadow:none}.segment-button:focus-visible,.ghost-button:focus-visible,.primary-button:focus-visible,.ui-button:focus-visible,.field input:focus-visible,.nav-link:focus-visible,.mobile-nav-link:focus-visible,.viewer-toolbar a:focus-visible{box-shadow:var(--shadow-focus);outline:none}.mini-card-list,.foundation-grid,.hero-grid,.metrics-grid{gap:var(--space-3);display:grid}.mini-card-list{grid-template-columns:1fr}.mini-card,.hero-card,.metric-card,.foundation-card,.table-shell,.status-card,.empty-state{border-radius:var(--radius-md);border:1px solid var(--line-soft);background:color-mix(in srgb, var(--bg-panel-strong) 84%, transparent)}.mini-card,.hero-card,.foundation-card{padding:var(--space-4)}.shell-sidebar .mini-card{padding:var(--space-3)}.mini-card h3,.hero-card h3,.foundation-card h3{font-size:var(--type-size-title-sm);line-height:var(--type-line-title)}.shell-sidebar .mini-card h3{font-size:var(--type-size-body-sm)}.shell-sidebar .mini-card p{font-size:var(--type-size-caption);line-height:var(--type-line-subtitle)}.mini-card p,.hero-card p,.foundation-card p,.hero-copy p,.module-card p,.empty-state,.status-card{color:var(--text-2-panel);margin:0}.hero-card-kicker,.inline-note{border-radius:var(--radius-pill);width:fit-content;font-size:var(--type-size-caption);font-weight:var(--type-weight-semibold);letter-spacing:.07em;text-transform:uppercase;align-items:center;padding:.34rem .72rem;display:inline-flex}.hero-card-kicker{margin-bottom:var(--space-2);color:var(--accent-strong);background:var(--bg-accent-soft)}.inline-note{color:var(--text-2-muted);background:color-mix(in srgb, var(--bg-panel-strong) 90%, transparent);border:1px solid var(--line-soft)}.field{gap:var(--space-2);flex-direction:column;display:flex}.ui-field[data-layout=inline]{align-items:center;gap:var(--space-3);flex-direction:row}.ui-field[data-layout=inline] label{min-width:7.5rem}.ui-field[data-density=compact] input{min-height:2.5rem}.field-span-2{grid-column:span 2}.action-field{justify-content:flex-end}.field label{font-size:var(--type-size-overline);font-weight:var(--type-weight-extrabold);letter-spacing:var(--type-track-overline);text-transform:uppercase;color:var(--text-3-muted)}.field input,.field select{width:100%;min-height:2.84rem;padding:.64rem var(--space-4);color:var(--text-1);font-size:var(--type-size-body-sm);border:1px solid var(--line-soft);border-radius:var(--radius-md);background:var(--bg-input);transition:border-color var(--duration-fast) var(--easing-standard), box-shadow var(--duration-fast) var(--easing-standard), background-color var(--duration-fast) var(--easing-standard);line-height:1.34}.field input::placeholder{color:var(--text-3-muted)}.field input:focus,.field select:focus{border-color:color-mix(in srgb, var(--accent) 56%, transparent);box-shadow:var(--shadow-focus)}.ui-field[data-tone=danger] input,.ui-field[data-tone=danger] select{border-color:color-mix(in srgb, var(--danger-text) 50%, transparent);background:color-mix(in srgb, var(--danger-bg) 22%, var(--bg-input))}.ui-field[data-tone=success] input{border-color:color-mix(in srgb, var(--success-text) 34%, transparent);background:color-mix(in srgb, var(--success-bg) 28%, var(--bg-input))}.status-badge{min-height:2rem;padding:0 var(--space-3);border-radius:var(--radius-pill);letter-spacing:.08em;text-transform:uppercase;justify-content:center;align-items:center;font-size:.72rem;font-weight:800;display:inline-flex}.status-badge[data-tone=success]{background:var(--success-bg);color:var(--success-text)}.status-badge[data-tone=error]{background:var(--danger-bg);color:var(--danger-text)}.ui-badge[data-tone=warning]{background:color-mix(in srgb, var(--accent-warm) 20%, var(--bg-panel-strong));color:color-mix(in srgb, var(--accent-warm-strong) 84%, var(--text-1))}.ui-badge[data-tone=info]{background:var(--bg-accent-soft);color:var(--accent-strong)}.ui-badge[data-tone=neutral]{background:color-mix(in srgb, var(--bg-panel-strong) 90%, transparent);color:var(--text-2)}.ui-badge[data-size=sm]{min-height:1.8rem;padding-inline:var(--space-2);font-size:.67rem}.ui-badge[data-emphasis=solid][data-tone=success]{background:color-mix(in srgb, var(--success-text) 82%, black);color:#00120a}.ui-badge[data-emphasis=solid][data-tone=error]{background:color-mix(in srgb, var(--danger-text) 82%, black);color:#220303}.status-badge[data-compact=true]{min-height:2.25rem}.mono-text{font-family:var(--font-mono)}.module-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.module-card{gap:var(--space-3)}.module-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.module-head h3{margin:0}.module-link{width:fit-content;min-height:2.4rem;padding:0 var(--space-4);border-radius:var(--radius-pill);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);background:var(--bg-accent-soft);color:var(--accent-strong);font-size:var(--type-size-body-sm);font-weight:var(--type-weight-semibold);justify-content:center;align-items:center;display:inline-flex}.module-link:hover{border-color:color-mix(in srgb, var(--accent) 42%, transparent);background:color-mix(in srgb, var(--bg-accent-soft) 72%, transparent)}.takeoff-layout{gap:var(--space-4);flex-direction:column;display:flex}.takeoff-tabs-card{padding:var(--space-3)}.takeoff-tabs{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.takeoff-tab{min-height:2.5rem;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--text-2);background:color-mix(in srgb, var(--bg-panel-strong) 70%, transparent);font-size:var(--type-size-body-sm);font-weight:var(--type-weight-semibold);letter-spacing:.03em;transition:background-color var(--duration-fast) var(--easing-standard), border-color var(--duration-fast) var(--easing-standard), color var(--duration-fast) var(--easing-standard), transform var(--duration-fast) var(--easing-standard);border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.takeoff-tab:hover{color:var(--text-1);border-color:color-mix(in srgb, var(--accent) 30%, transparent);background:var(--bg-accent-soft);transform:translateY(-1px)}.takeoff-tab.active{color:var(--text-1);border-color:color-mix(in srgb, var(--accent) 36%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--bg-accent-soft) 90%, transparent), #ffffff08)}.takeoff-tab:focus-visible{box-shadow:var(--shadow-focus);outline:none}.hero-panel{gap:var(--space-5)}.hero-copy{max-width:46rem}.hero-card{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-accent-soft) 68%, transparent), color-mix(in srgb, var(--bg-panel-strong) 94%, transparent))}.content-grid{gap:var(--space-6);grid-template-columns:minmax(0,1.2fr) minmax(21rem,.8fr);align-items:start;display:grid}.content-stack{gap:var(--space-6);flex-direction:column;min-width:0;display:flex}.form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.status-stack{gap:var(--space-3);flex-direction:column;display:flex}.status-card,.empty-state{padding:var(--space-4)}.status-card{background:color-mix(in srgb, var(--bg-accent-soft) 72%, var(--bg-panel-strong))}.status-card-error{background:color-mix(in srgb, var(--danger-bg) 82%, var(--bg-panel-strong));border-color:color-mix(in srgb, var(--danger-text) 28%, transparent);color:var(--danger-text)}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{padding:var(--space-4);background:linear-gradient(165deg, color-mix(in srgb, var(--bg-accent-soft) 76%, transparent), color-mix(in srgb, var(--bg-warm-soft) 42%, transparent))}.metric-label{font-size:var(--type-size-overline);font-weight:var(--type-weight-extrabold);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);display:block}.metric-value{margin-top:var(--space-2);font-family:var(--font-display);font-size:clamp(1.85rem,2.55vw,2.35rem);font-weight:var(--type-weight-bold);letter-spacing:-.028em;line-height:1.06;display:block}.table-shell{overflow:hidden}.table-shell-scroll{max-height:24rem;overflow:auto}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--line-soft);padding:.9rem 1rem}.data-table th{z-index:1;text-align:left;font-size:var(--type-size-overline);font-weight:var(--type-weight-extrabold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);background:color-mix(in srgb, var(--bg-panel-strong) 94%, transparent);position:sticky;top:0}.data-table td{color:var(--text-2-panel)}.data-table tbody tr:last-child td{border-bottom:0}.align-right{text-align:right}.foundation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-panel{min-height:calc(100vh - 8rem);position:sticky;top:6.5rem}.viewer-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.viewer-toolbar span{margin-right:var(--space-2);font-size:var(--type-size-overline);font-weight:var(--type-weight-extrabold);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3-muted)}.viewer-toolbar a{min-height:2.35rem;padding:0 var(--space-4);border-radius:var(--radius-pill);border:1px solid color-mix(in srgb, var(--accent) 24%, transparent);background:var(--bg-accent-soft);color:var(--accent-strong);font-size:var(--type-size-body-sm);font-weight:var(--type-weight-semibold);align-items:center;display:inline-flex}.viewer-frame{border:1px solid var(--line-soft);border-radius:calc(var(--radius-lg) - .25rem);background:#fff;width:100%;min-height:calc(100vh - 15rem)}.empty-viewer,.empty-state{text-align:center;justify-content:center;align-items:center;min-height:15rem;display:flex}.mobile-nav{display:none}.user-admin-page{gap:var(--space-4);flex-direction:column;display:flex}.user-admin-header{gap:var(--space-2);flex-direction:column;display:flex}.user-admin-table-card{padding:var(--space-3)}.user-admin-name-cell{gap:var(--space-1);flex-direction:column;display:flex}.user-admin-name-cell span{color:var(--text-3);font-size:var(--type-size-caption)}.user-admin-role-cell{align-items:center;gap:var(--space-2);display:flex}.user-admin-role-field{min-width:11rem}.user-admin-role-field label{display:none}@media (width<=1180px){.content-grid{grid-template-columns:1fr}.viewer-panel{min-height:auto;position:static}.viewer-frame{min-height:42rem}}@media (width<=980px){.shell{grid-template-columns:1fr}.shell-sidebar{display:none}.shell-topbar{padding:var(--space-4)}.topbar-title,.shell-topbar h2{letter-spacing:-.016em;font-size:clamp(1.08rem,3.7vw,1.22rem)}.section-title{letter-spacing:-.008em;font-size:clamp(.98rem,2.9vw,1.08rem)}.metric-value{letter-spacing:-.022em;font-size:clamp(1.65rem,7.4vw,2.05rem)}.shell-content{padding:var(--space-4);padding-bottom:calc(6.5rem + env(safe-area-inset-bottom))}.mobile-nav{left:50%;bottom:calc(var(--space-3) + env(safe-area-inset-bottom));z-index:40;grid-template-columns:repeat(var(--mobile-nav-count,5), minmax(0, 1fr));gap:var(--space-2);width:min(100% - 2rem,38rem);padding:var(--space-2);border:1px solid var(--line-soft);border-radius:calc(var(--radius-lg) + .2rem);background:color-mix(in srgb, var(--bg-panel-strong) 90%, transparent);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--shadow-panel);display:grid;position:fixed;transform:translate(-50%)}.mobile-nav-link{min-height:3.2rem;padding:0 var(--space-2);letter-spacing:.04em;text-transform:uppercase;flex-direction:column;justify-content:center;font-size:.74rem;font-weight:800}}@media (width<=720px){.panel-heading{flex-direction:column;align-items:stretch}.shell-topbar{align-items:center;gap:var(--space-3);flex-direction:row}.shell-topbar>div{flex:auto;min-width:0}.topbar-breadcrumb{margin-bottom:var(--space-1)}.topbar-breadcrumb-compact .crumb-wrap:not(:nth-last-child(-n+2)){display:none}.topbar-actions{flex:none;justify-content:flex-end;width:auto;margin-left:auto}.theme-switch-label{display:none}.theme-switch-button{width:2.62rem;min-width:2.62rem;padding-inline:0}.theme-switch-button .button-icon{width:1.02rem;height:1.02rem;margin:0}.ui-button,.segment-button,.ghost-button,.primary-button{min-height:2.62rem;padding-block:.44rem}.field input{min-height:2.68rem;padding-block:.56rem}.topbar-title,.shell-topbar h2{white-space:nowrap;text-overflow:ellipsis;font-size:clamp(1.02rem,4.7vw,1.16rem);line-height:1.17;overflow:hidden}.section-title{font-size:clamp(.95rem,4.05vw,1.04rem);line-height:1.2}.metric-value{font-size:clamp(1.5rem,10.2vw,1.88rem);line-height:1.05}.form-grid,.foundation-grid,.metrics-grid,.hero-grid,.module-grid,.takeoff-tabs{grid-template-columns:1fr}.field-span-2{grid-column:auto}.action-field{justify-content:stretch}.viewer-frame{min-height:32rem}}.language-switch{min-width:6rem}.language-switch .ui-button{min-width:2.4rem}.auth-scene{isolation:isolate;min-height:100dvh;padding:clamp(5.75rem, 8vw, 7rem) var(--space-6) var(--space-6);box-sizing:border-box;background:linear-gradient(115deg,#080a0df5 0%,#0b0d11fa 48%,#111419f5 100%),#08090b;place-items:center;display:grid;position:relative;overflow:hidden}.auth-scene:before{content:"";z-index:-2;opacity:.52;background-color:#0000;background-image:linear-gradient(#ffffff08 1px,#0000 1px),linear-gradient(90deg,#ffffff08 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:76px 76px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000 0%,#000 18% 72%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 18% 72%,#0000 100%)}.auth-scene:after{content:"";z-index:-1;opacity:.95;background:linear-gradient(145deg,#0000 0 48%,#2563eb17 48% 49%,#0000 49%),linear-gradient(28deg,#0000 0 61%,#1665341f 61% 62%,#0000 62%);position:absolute;inset:0}.auth-blob{display:none}.auth-blob-1{background:radial-gradient(circle,#aab2c338,#8c96af14 45%,#0000 70%);width:620px;height:620px;top:-160px;right:-180px}.auth-blob-2{background:radial-gradient(circle,#96a0b92e,#78829b0d 45%,#0000 70%);width:560px;height:560px;bottom:-180px;left:-200px}.auth-topbar{z-index:3;justify-content:space-between;align-items:center;gap:var(--space-4);display:flex;position:absolute;top:clamp(1.25rem,3vw,2.25rem);left:clamp(1.25rem,4vw,3rem);right:clamp(1.25rem,4vw,3rem)}.auth-wordmark{color:#f8fafc;letter-spacing:0;align-items:center;gap:.65rem;font-size:.9rem;font-weight:700;display:inline-flex}.auth-wordmark-logo{width:1.8rem;height:1.8rem}.auth-scene .brand-logo--light{display:none}.auth-scene .brand-logo--dark{display:block}.auth-back-link{justify-self:start;align-items:center;gap:var(--space-2);font-size:var(--type-size-body-sm);color:var(--text-2);border-radius:var(--radius-pill,999px);z-index:2;background:#ffffff0a;border:1px solid #ffffff14;padding:.5rem .95rem;text-decoration:none;transition:background .14s,color .14s;display:inline-flex}.auth-back-link:hover{color:var(--text-1);background:#ffffff12}.auth-panel{z-index:1;box-sizing:border-box;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(#181b22db,#0a0b0ed6);border:1px solid #ffffff1f;border-radius:8px;flex-direction:column;place-self:center;align-items:center;width:100%;max-width:390px;padding:clamp(1.75rem,3vw,2.4rem);display:flex;position:relative;box-shadow:0 28px 80px #00000061,inset 0 1px #ffffff14}.auth-panel:before{content:"";background:linear-gradient(90deg,#0000,#94a3b8bf,#0000);height:1px;position:absolute;top:0;left:18px;right:18px}.auth-lang-switch{gap:.4rem;display:inline-flex}.auth-panel--login .auth-lang-switch{z-index:2;position:absolute;top:1rem;right:1rem}.auth-lang-btn{color:#a7b0bf;min-width:2.15rem;height:2rem;font-size:.72rem;font-weight:var(--type-weight-semibold);letter-spacing:0;cursor:pointer;background:#0f172aa3;border:1px solid #94a3b838;border-radius:999px;padding:0 .62rem;transition:background .14s,border-color .14s,color .14s}.auth-lang-btn:hover{color:var(--text-1);background:#ffffff0f;border-color:#ffffff3d}.auth-lang-btn.active{color:#08100c;background:#f8fafc;border-color:#dcfce7}.auth-brand-icon{width:68px;height:68px;margin-bottom:var(--space-4);justify-content:center;align-items:center;display:flex}.auth-brand-copy{margin-bottom:var(--space-6);text-align:center;flex-direction:column;align-items:center;gap:.35rem;display:flex}.auth-brand-copy span{color:#f8fafc;letter-spacing:.18em;text-transform:uppercase;font-size:.76rem;font-weight:800}.auth-brand-copy p{color:#8ea0b6;margin:0;font-size:.78rem;line-height:1.4}.auth-heading-group{text-align:center;gap:var(--space-2);margin-bottom:var(--space-6);flex-direction:column;display:flex}.auth-headline{color:#f8fafc;letter-spacing:0;margin:0;font-size:clamp(1.62rem,3vw,1.95rem);font-weight:760;line-height:1.2}.auth-subline{font-size:var(--type-size-body-sm);color:#9aa7b8;margin:0}.auth-inline-link{color:var(--text-1);font-weight:var(--type-weight-semibold);text-decoration:none}.auth-inline-link:hover{text-underline-offset:3px;text-decoration:underline}.auth-error-msg{background:color-mix(in srgb, var(--danger-bg) 72%, var(--bg-panel-strong));width:100%;color:var(--danger-text);font-size:var(--type-size-body-sm);border:1px solid color-mix(in srgb, var(--danger-text) 34%, transparent);margin:0 0 var(--space-4) 0;text-align:center;border-radius:8px;padding:.65rem .9rem}.auth-form{flex-direction:column;gap:.85rem;width:100%;display:flex}.auth-field{box-sizing:border-box;width:100%;display:block;position:relative}.auth-field-icon,.auth-password-icon{z-index:1;color:#778397;pointer-events:none;justify-content:center;align-items:center;width:1.1rem;height:1.1rem;display:inline-flex;position:absolute;top:50%;left:.92rem;transform:translateY(-50%)}.auth-input{box-sizing:border-box;color:#f8fafc;background:#05080c94;border:1px solid #94a3b82e;border-radius:8px;outline:none;width:100%;height:3.1rem;padding:0 1rem 0 2.75rem;font-family:inherit;font-size:.92rem;transition:border-color .16s,background .16s,box-shadow .16s}.auth-input::placeholder{color:#7c8799}.auth-input:focus{background:#070c11d1;border-color:#86efac85;box-shadow:0 0 0 3px #22c55e1c}.auth-input:disabled{opacity:.5;cursor:not-allowed}.auth-password-wrap{width:100%;position:relative}.auth-password-wrap .auth-input{padding-left:2.75rem;padding-right:2.75rem}.auth-password-toggle{color:#8a96a8;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:2rem;height:2rem;transition:color .14s,background .14s;display:inline-flex;position:absolute;top:50%;right:.56rem;transform:translateY(-50%)}.auth-password-toggle:hover{color:#f8fafc;background:#ffffff0f}.auth-password-toggle:focus-visible{outline-offset:1px;outline:1px solid #ffffff40}.auth-otp{justify-content:space-between;gap:var(--space-2);width:100%;display:flex}.auth-otp-cell{text-align:center;min-width:0;height:3.25rem;font-size:1.25rem;font-weight:var(--type-weight-semibold);color:var(--text-1);background:#ffffff06;border:1px solid #ffffff14;border-radius:8px;outline:none;flex:1 1 0;font-family:inherit;transition:border-color .16s,background .16s}.auth-otp-cell:focus{background:#ffffff0a;border-color:#ffffff40}.auth-otp-cell:disabled{opacity:.5;cursor:not-allowed}.auth-info-msg{width:100%;margin:0 0 var(--space-2);padding:var(--space-3) var(--space-4);background:color-mix(in srgb, var(--success-bg) 72%, var(--bg-panel-strong));border:1px solid color-mix(in srgb, var(--success-text) 34%, transparent);color:var(--success-text);font-size:var(--type-size-body-sm);text-align:center;border-radius:8px}.auth-link-button{cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}.auth-link-button:disabled{opacity:.5;cursor:not-allowed}.auth-form-link{color:#a6b0c0;font-size:var(--type-size-body-sm);align-self:flex-end;margin-top:-.15rem;text-decoration:none;transition:color .14s}.auth-form-link:hover:not(:disabled){color:#f8fafc;text-underline-offset:3px;text-decoration:underline}.auth-btn-primary{color:#07100c;cursor:pointer;width:100%;height:3.1rem;margin-top:var(--space-3);background:#f8fafc;border:none;border-radius:8px;font-family:inherit;font-size:.92rem;font-weight:760;transition:background .14s,box-shadow .14s,transform .1s;box-shadow:0 12px 34px #0f172a47}.auth-btn-primary:hover:not(:disabled){background:#fff;box-shadow:0 16px 42px #15803d2e}.auth-btn-primary:active:not(:disabled){transform:scale(.99)}.auth-btn-primary:disabled{opacity:.5;cursor:not-allowed}.auth-magic-link{font-size:var(--type-size-body-sm);color:#8a8f9a;text-align:center;margin-top:var(--space-6);text-decoration:none;transition:color .14s;display:block}.auth-magic-link:hover{color:var(--text-1)}.auth-sep{align-items:center;gap:var(--space-4);color:#6b6f78;width:100%;font-size:var(--type-size-caption);margin:var(--space-7) 0;display:flex}.auth-sep:before,.auth-sep:after{content:"";background:#ffffff12;flex:1;height:1px}.auth-btn-sso{width:100%;height:2.85rem;color:var(--text-1);font-size:.9rem;font-weight:var(--type-weight-semibold);cursor:pointer;background:#ffffff06;border:1px solid #ffffff14;border-radius:8px;font-family:inherit;transition:background .14s,border-color .14s}.auth-btn-sso--google{justify-content:center;align-items:center;gap:.65rem;display:inline-flex}.auth-btn-sso--google svg{flex:none;display:block}.auth-btn-sso:hover:not(:disabled){background:#ffffff0d;border-color:#ffffff26}.auth-btn-sso:disabled{opacity:.5;cursor:not-allowed}.auth-legal{color:#6b6f78;text-align:center;margin:var(--space-8) 0 0 0;max-width:320px;font-size:.78rem;line-height:1.6}.auth-legal-link{color:#8a8f9a;text-underline-offset:2px;text-decoration:underline}.auth-legal-link:hover{color:var(--text-1)}.legal-scene{padding-top:var(--space-8);padding-bottom:var(--space-8);align-items:center}.legal-panel{width:min(100%,780px);max-width:780px;padding:var(--space-7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0e0e108c;border:1px solid #ffffff14;border-radius:8px;align-self:auto}.legal-brand-icon{margin-bottom:var(--space-5)}.legal-heading-group{margin-bottom:var(--space-6)}.legal-content{color:#b8bec8;gap:var(--space-5);flex-direction:column;width:100%;line-height:1.6;display:flex}.legal-content section{width:100%}.legal-content h2{margin:0 0 var(--space-2) 0;color:#f2f4f8;font-size:1rem;font-weight:var(--type-weight-semibold)}.legal-content p{margin:0;font-size:.95rem}.legal-footer-links{margin-top:var(--space-7)}@media (width<=480px){.auth-scene{padding:5.75rem var(--space-4) var(--space-5);align-items:center}.auth-topbar{left:var(--space-4);right:var(--space-4)}.auth-wordmark span{display:none}.auth-panel{padding:1.5rem}.auth-back-link{top:var(--space-4);left:var(--space-4)}.legal-panel{padding:var(--space-5);border-radius:8px}.auth-lang-switch{gap:.3rem}.auth-panel--login .auth-lang-switch{top:.85rem;right:.85rem}.legal-content h2{font-size:.95rem}.legal-content p{font-size:.9rem}}:root{--page-bg:#f9fafb;--text-main:#111827;--text-muted:#666;--card-bg:#fff;--card-border:#eee;--table-th-bg:#f9fafb;--table-td-border:#f1f1f1;--table-text:#111827;--table-link:#1d4ed8;--table-link-hover:#2563eb;--input-bg:#fff;--input-border:#ddd;--input-text:#111827;--tab-bg:#f3f4f6;--tab-text:#111827;--tab-active-bg:#111827;--tab-active-text:#fff}[data-theme=dark],.dark,body.dark-mode{--page-bg:#0f172a;--text-main:#f8fafc;--text-muted:#94a3b8;--card-bg:#1e293b;--card-border:#334155;--table-th-bg:#1e293b;--table-td-border:#334155;--table-text:#cbd5e1;--table-link:#38bdf8;--table-link-hover:#7dd3fc;--input-bg:#1e293b;--input-border:#475569;--input-text:#f8fafc;--tab-bg:#334155;--tab-text:#cbd5e1;--tab-active-bg:#f8fafc;--tab-active-text:#0f172a}.order-page{width:100%;color:var(--text-main);padding:24px}.order-header{margin-bottom:24px}.order-header h1{color:var(--text-main);margin:0;font-size:28px}.order-header p{color:var(--text-muted)}.po-read-only-notice{background:color-mix(in srgb, var(--table-link) 10%, var(--card-bg));border:1px solid color-mix(in srgb, var(--table-link) 32%, var(--card-border));color:var(--text-main);border-radius:12px;flex-direction:column;align-items:flex-start;gap:3px;margin:-8px 0 20px;padding:12px 14px;display:flex}.po-read-only-notice strong{color:var(--table-link);text-transform:uppercase;font-size:13px}.po-read-only-notice span{color:var(--text-muted);font-size:14px}.tabs-container{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.tab-button{background:var(--tab-bg);color:var(--tab-text);cursor:pointer;border:none;border-radius:10px;padding:10px 18px;font-weight:600;transition:all .2s}.tab-button.active{background:var(--tab-active-bg);color:var(--tab-active-text)}.tab-count{opacity:.7;margin-left:8px}.search-container{margin-bottom:20px}.search-input{border:1px solid var(--input-border);background-color:var(--input-bg);width:320px;color:var(--input-text);border-radius:10px;padding:12px}.table-wrapper{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;overflow:hidden}.table-scroll{max-height:76dvh;overflow:auto}.orders-table{border-collapse:separate;border-spacing:0;width:100%;min-width:1120px}.orders-table th{z-index:2;background:var(--table-th-bg);color:var(--text-muted);text-align:left;border-bottom:1px solid var(--card-border);box-shadow:0 1px 0 var(--card-border);padding:16px;font-size:14px;position:sticky;top:0}.orders-table td{border-top:1px solid var(--table-td-border);color:var(--table-text);padding:16px}.orders-table th:nth-child(7),.orders-table th:nth-child(8),.orders-table th:nth-child(9),.orders-table th:nth-child(10),.orders-table td:nth-child(7),.orders-table td:nth-child(8),.orders-table td:nth-child(9),.orders-table td:nth-child(10){white-space:nowrap;min-width:128px}.orders-table th:last-child,.orders-table td:last-child{text-align:center;white-space:nowrap;width:72px}.orders-table button{color:var(--table-link)!important}.orders-table button:hover{color:var(--table-link-hover)!important}.table-sort-button{appearance:none;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:700;line-height:1.2;transition:color .2s;display:inline-flex;color:var(--text-muted)!important}.table-sort-button:hover,.table-sort-button:focus{outline:none;color:var(--text-main)!important}.table-sort-button.active{color:var(--text-main)!important}.table-sort-indicator{color:inherit;opacity:.65;justify-content:center;align-items:center;min-width:12px;font-size:11px;font-weight:800;display:inline-flex;transform:translateY(-1px)}.table-sort-button.active .table-sort-indicator{opacity:1}.po-link-btn{color:#1d4ed8;cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline;transition:color .2s}.po-link-btn:hover{color:#2563eb}.po-link-btn:focus{color:#2563eb;outline:none}.po-link-btn:active{color:#1e40af}.order-delete-btn{appearance:none;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background-color .2s,border-color .2s,opacity .2s;display:inline-flex;color:#b91c1c!important}.order-delete-btn:hover,.order-delete-btn:focus{background:#fee2e2;border-color:#fecaca;outline:none;color:#991b1b!important}.order-delete-btn:disabled{cursor:not-allowed;opacity:.45}.order-delete-icon{width:16px;height:16px}.section-header-actions{justify-content:flex-start;align-items:center;gap:12px;margin-top:1.5rem;margin-bottom:1rem;display:flex}.section-title{color:var(--text-main);margin:0;font-size:1.5rem;font-weight:600}.btn-primary{color:#fff;cursor:pointer;background-color:#166534;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.875rem;font-weight:500;transition:background-color .2s;display:flex}.btn-primary:hover:not(:disabled){background-color:#155e30}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-secondary{color:var(--text-main);border:1px solid var(--card-border);cursor:pointer;background-color:#0000;border-radius:6px;align-items:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.875rem;font-weight:500;transition:border-color .2s,color .2s;display:inline-flex}.btn-secondary:hover{border-color:var(--table-link);color:var(--table-link)}.order-refresh-btn{min-height:36px}.order-state{background:var(--card-bg);border:1px solid var(--card-border);color:var(--text-muted);border-radius:8px;padding:18px}.order-state--error{color:#b91c1c;border-color:#fca5a5;margin-bottom:12px}.order-alert-group{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.order-alert-badge{--alert-color:#475569;min-height:26px;color:var(--alert-color);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:4px 9px 4px 5px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.order-alert-badge__icon{background:var(--alert-color);color:#fff;border-radius:50%;place-items:center;width:17px;height:17px;font-size:11px;display:inline-grid}.order-alert-badge--ok{--alert-color:#166534;background:#ecfdf5;border-color:#bbf7d0}.order-alert-badge--review{--alert-color:#9a4d0a;background:#fff7ed;border-color:#fed7aa}.order-alert-badge--pending{--alert-color:#475569;background:#f1f5f9;border-color:#cbd5e1}.order-alert-badge--error{--alert-color:#b91c1c;background:#fef2f2;border-color:#fecaca}.order-ai-suggestion-badge{color:#5b21b6;white-space:nowrap;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:999px;align-items:center;min-height:24px;padding:4px 8px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.order-issues-summary{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.order-issue-chip{white-space:nowrap;border:1px solid #0000;border-radius:6px;align-items:center;min-height:23px;padding:4px 7px;font-size:10px;font-weight:800;line-height:1;display:inline-flex}.order-issue-chip--discrepancy{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.order-issue-chip--warning{color:#9a4d0a;background:#fff7ed;border-color:#fed7aa}.order-issue-chip--legacy{color:#334155;background:#f1f5f9;border-color:#cbd5e1}.order-issues-clear{color:#64748b;font-size:12px;font-weight:600}.status-badge{white-space:nowrap;border-radius:9999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.status-all{color:#334155;background:#e2e8f0}.status-draft{color:#4b5563;background:#e5e7eb}.status-pending,.status-pending-approval{color:#92400e;background:#fef3c7}.status-approved{color:#166534;background:#dcfce7}.status-rejected{color:#b91c1c;background:#fee2e2}.status-po-created{color:#1d4ed8;background:#dbeafe}.status-awaiting-confirmation{color:#0369a1;background:#e0f2fe}.status-needs-review{color:#b91c1c;background:#fee2e2}.status-issues{color:#9f1239;background:#ffe4e6}.status-backordered{color:#c2410c;background:#ffedd5}.status-closed{color:#115e59;background:#ccfbf1}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background-color:#0f172a4d;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.2s ease-out fadeIn;display:flex;position:fixed;top:0;left:0}.modal-content{background-color:#fff;border-radius:16px;width:100%;max-width:640px;padding:2rem;animation:.3s cubic-bezier(.16,1,.3,1) slideUp;position:relative;box-shadow:0 20px 25px -5px #0000000d,0 10px 10px -5px #00000005}.modal-close-btn{color:#b91c1c;cursor:pointer;background:0 0;border:none;border-radius:50%;padding:.25rem;font-size:1.5rem;line-height:1;transition:background-color .2s,color .2s;position:absolute;top:1.25rem;right:1.25rem}.modal-close-btn:hover{color:#991b1b;background-color:#dc26261f}.modal-close-btn:disabled{cursor:not-allowed;opacity:.45}.modal-step h3{color:#0f172a;margin-top:0;margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.modal-step p{color:#64748b;margin-bottom:1.5rem;font-size:.875rem;line-height:1.4}.text-center{text-align:center;padding:1.5rem 0}.file-dropzone{text-align:center;cursor:pointer;background-color:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;margin-bottom:2rem;padding:2.5rem 1.5rem;transition:border-color .2s,background-color .2s}.file-dropzone:hover{background-color:#f1f5f9;border-color:#64748b}.file-dropzone.is-dragging{background-color:#eff6ff;border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb2e}.upload-error-message{color:#b91c1c;background-color:#fef2f2;border:1px solid #fecaca;border-radius:10px;margin-bottom:1rem;padding:.75rem .9rem;font-size:.84rem;line-height:1.4}.file-dropzone input[type=file]{display:none}.file-dropzone label{color:#475569;cursor:pointer;font-size:.9rem;font-weight:400;display:block}.selected-file-list{border:1px solid #e2e8f0;border-radius:10px;max-height:150px;margin:-.75rem 0 1.5rem;overflow-y:auto}.selected-file-item{color:#334155;text-align:left;word-break:break-word;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .85rem;font-size:.85rem;display:flex}.selected-file-info{min-width:0}.selected-file-info span{overflow-wrap:anywhere;display:block}.selected-file-info small,.batch-result-size{color:#64748b;margin-top:.15rem;font-size:.72rem;display:block}.selected-file-remove{color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:7px;flex:none;padding:.3rem .5rem;font-size:.74rem;font-weight:600}.selected-file-remove:hover,.selected-file-remove:focus-visible{background:#fef2f2;outline:none}.selected-file-item+.selected-file-item{border-top:1px solid #e2e8f0}.batch-results{text-align:left;border:1px solid #e2e8f0;border-radius:10px;max-height:250px;margin-top:1.25rem;overflow-y:auto}.batch-results--complete{margin-bottom:1.5rem}.batch-result-row{justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .9rem;display:flex}.batch-result-row+.batch-result-row{border-top:1px solid #e2e8f0}.batch-result-file{color:#0f172a;overflow-wrap:anywhere;font-size:.86rem;font-weight:600;display:block}.batch-result-message{color:#64748b;overflow-wrap:anywhere;margin-top:.2rem;font-size:.78rem;line-height:1.35;display:block}.batch-result-warning{color:#b45309;overflow-wrap:anywhere;margin-top:.25rem;font-size:.78rem;line-height:1.35;display:block}.batch-result-status{text-transform:uppercase;border-radius:999px;flex:none;padding:.25rem .55rem;font-size:.72rem;font-weight:700}.batch-result-row--queued .batch-result-status{color:#475569;background-color:#f1f5f9}.batch-result-row--processing .batch-result-status{color:#2563eb;background-color:#eff6ff}.batch-result-row--waiting .batch-result-status{color:#f97316;background-color:#fff7ed}.batch-result-row--success .batch-result-status{color:#059669;background-color:#ecfdf5}.batch-result-row--skipped .batch-result-status{color:#475569;background-color:#f8fafc}.batch-result-row--warning{background-color:#fffbeb}.batch-result-row--warning .batch-result-status{color:#b45309;background-color:#fef3c7}.batch-result-row--error .batch-result-status{color:#dc2626;background-color:#fef2f2}.batch-result-row--canceled .batch-result-status{color:#64748b;background-color:#f1f5f9}.modal-actions{justify-content:flex-end;gap:.75rem;display:flex}.modal-actions.centered{justify-content:center;margin-top:1rem}.btn-secondary{color:#475569;cursor:pointer;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.6rem 1.2rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.btn-secondary:hover{background-color:#f8fafc}.spinner{border:4px solid #f1f5f9;border-top-color:#0f172a;border-radius:50%;width:48px;height:48px;margin:0 auto 1.5rem;animation:1s linear infinite spin}.success-icon{color:#10b981;background-color:#ecfdf5;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 1.5rem;font-size:1.75rem;font-weight:700;display:flex}.btn-secondary:disabled{cursor:not-allowed;opacity:.55}.btn-cancel-upload{color:#b91c1c;border-color:#fecaca}.warning-icon{color:#f97316;background-color:#fff7ed;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 1.5rem;font-size:1.75rem;font-weight:700;display:flex}.duplicate-decision-icon{margin-bottom:1rem}.duplicate-decision-card{border:1px solid #e2e8f0;border-radius:10px;gap:0;margin:0 0 1.5rem;display:grid;overflow:hidden}.duplicate-decision-card div{justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .9rem;display:flex}.duplicate-decision-card div+div{border-top:1px solid #e2e8f0}.duplicate-decision-card span{color:#64748b;text-transform:uppercase;font-size:.78rem;font-weight:600}.duplicate-decision-card strong{color:#0f172a;text-align:right;overflow-wrap:anywhere;font-size:.9rem}.duplicate-decision-actions{flex-wrap:wrap;justify-content:flex-end}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.po-detail-header{margin-bottom:24px}.pdh-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.pdh-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:4px;font-size:12px;font-weight:600;display:block}.pdh-po-number{color:var(--text-main);margin:0;font-size:24px;font-weight:700}.pdh-status-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pdh-status-select-wrap{border:1px solid color-mix(in srgb, currentColor 14%, transparent);align-items:center;gap:7px;padding:7px 12px;transition:border-color .18s,box-shadow .18s,transform .18s;position:relative;box-shadow:0 1px 2px #0f172a0f}.pdh-status-readonly{border:1px solid color-mix(in srgb, currentColor 14%, transparent);align-items:center;gap:7px;padding:7px 12px;display:inline-flex}.pdh-status-readonly strong{text-transform:uppercase;font-weight:700}.pdh-status-select-wrap:hover,.pdh-status-select-wrap:focus-within{border-color:color-mix(in srgb, currentColor 28%, transparent);transform:translateY(-1px);box-shadow:0 6px 16px #0f172a1a}.pdh-status-select{appearance:none;color:inherit;cursor:pointer;font:inherit;text-transform:uppercase;background:0 0;border:0;outline:none;max-width:140px;padding:0 18px 0 0;font-weight:700;line-height:1}.pdh-status-select-wrap:after{content:"";pointer-events:none;border-bottom:2px solid;border-right:2px solid;width:7px;height:7px;margin-left:-13px;transition:transform .18s;transform:translateY(-2px)rotate(45deg)}.pdh-status-select-wrap:hover:after,.pdh-status-select-wrap:focus-within:after{transform:translateY(1px)rotate(225deg)}.pdh-status-select:disabled{cursor:wait;opacity:.7}.po-notes-panel--readonly .pon-textarea{cursor:default}.pdh-status-select option{color:#111827}.pdh-confirmation{border-radius:6px;padding:4px 10px;font-size:13px;font-weight:500}.pdh-confirmation--received{background:var(--status-approved-bg,#dcfce7);color:var(--status-approved-text,#166534)}.pdh-confirmation--pending{background:var(--status-pending-bg,#fef3c7);color:var(--status-pending-text,#92400e)}.pdh-pdf-button{background:var(--table-link,#1d4ed8);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700;line-height:1}.pdh-pdf-button:hover{background:var(--table-link-hover,#2563eb)}.pdf-modal-overlay{z-index:1000;background:#0f172ab8;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.pdf-modal{background:var(--card-bg);border:1px solid var(--card-border);border-radius:12px;flex-direction:column;width:min(1120px,96vw);max-width:1120px;max-height:92vh;display:flex;overflow:hidden;box-shadow:0 24px 80px #0f172a59}.pdf-modal-header{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.pdf-modal-eyebrow{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.pdf-modal-header h3{color:var(--text-main);margin:2px 0 0;font-size:16px}.pdf-modal-actions{align-items:center;gap:8px;display:flex}.pdf-modal-open-link,.pdf-modal-close{border-radius:6px;padding:8px 12px;font-size:13px;font-weight:700}.pdf-modal-open-link{color:var(--table-link);text-decoration:none}.pdf-modal-open-link:hover{color:var(--table-link-hover)}.pdf-modal-close{border:1px solid var(--card-border);color:var(--text-main);cursor:pointer;background:0 0}.pdf-modal-body{background:var(--page-bg);min-height:70vh;position:relative}.pdf-modal-frame{border:0;width:100%;height:78vh;display:block}.pdf-modal-state{color:var(--text-muted);justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex;position:absolute;inset:0}.pdf-modal-state--error{color:#b91c1c}.pdh-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.pdh-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.pdh-card--highlight{border-color:var(--table-link,#1d4ed8)}.pdh-card--ai{background:color-mix(in srgb, #ede9fe 70%, var(--card-bg));border-color:#7c3aed}.pdh-card-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:11px;font-weight:600}.pdh-card-value{color:var(--text-main);font-size:15px;font-weight:600}.pdh-total{color:var(--table-link,#1d4ed8);font-size:18px}.pdh-ai-note{background:var(--card-bg);border:1px solid var(--card-border);color:var(--text-muted);border-radius:8px;margin-top:12px;padding:14px 16px;font-size:13px;line-height:1.5}.pdh-ai-note-header{color:var(--text-main);text-transform:uppercase;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.pdh-ai-note p{margin:0}.pdh-ai-note p+p,.pdh-ai-details{margin-top:8px}.pdh-ai-details summary{color:var(--table-link);cursor:pointer;font-weight:600}.pdh-ai-details p{margin-top:8px}.pdh-warning-note{background:color-mix(in srgb, #fffbeb 72%, var(--card-bg));color:var(--text-muted);border:1px solid #f59e0b;border-radius:8px;margin-top:12px;padding:14px 16px;font-size:13px;line-height:1.5}.pdh-warning-note-header{color:var(--text-main);text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;font-size:12px;font-weight:700;display:flex}.pdh-warning-list{gap:10px;display:grid}.pdh-warning-item{border-top:1px solid #f59e0b59;padding-top:10px}.pdh-warning-item:first-child{border-top:0;padding-top:0}.pdh-warning-item strong{color:var(--text-main);margin-bottom:2px;font-size:13px;display:block}.pdh-warning-item p{margin:0}[data-theme=dark] .pdh-warning-note,.dark .pdh-warning-note,body.dark-mode .pdh-warning-note{background:color-mix(in srgb, #f59e0b 10%, var(--card-bg));color:var(--table-text);border-color:#f59e0b}[data-theme=dark] .pdh-warning-note-header,.dark .pdh-warning-note-header,body.dark-mode .pdh-warning-note-header,[data-theme=dark] .pdh-warning-item strong,.dark .pdh-warning-item strong,body.dark-mode .pdh-warning-item strong{color:var(--text-main)}[data-theme=dark] .pdh-warning-item,.dark .pdh-warning-item,body.dark-mode .pdh-warning-item{border-top-color:#f59e0b73}.po-notes-panel{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;gap:12px;margin-bottom:18px;padding:16px;transition:border-color .18s,box-shadow .18s;display:grid;box-shadow:0 1px 2px #0f172a0a}.po-notes-panel--dirty{border-color:color-mix(in srgb, var(--table-link,#1d4ed8) 38%, var(--card-border));box-shadow:0 8px 22px #0f172a12}.pon-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.pon-eyebrow{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:11px;font-weight:800;display:block}.pon-header h3{color:var(--text-main);margin:0;font-size:16px}.pon-state{border:1px solid var(--card-border);color:var(--text-muted);text-transform:uppercase;border-radius:999px;flex:none;align-items:center;gap:7px;padding:7px 10px;font-size:12px;font-weight:800;line-height:1;display:inline-flex}.pon-state-dot{background:currentColor;border-radius:999px;width:7px;height:7px}.pon-state--saved{color:#166534;background:#dcfce7;border-color:#bbf7d0}.pon-state--dirty,.pon-state--saving{color:#1e3a8a;background:#eff6ff;border-color:#bfdbfe}.pon-state--saving .pon-state-dot{animation:.9s ease-in-out infinite pon-pulse}.pon-state--error{color:#991b1b;background:#fee2e2;border-color:#fecaca}.pon-textarea{background:var(--table-th-bg);border:1px solid var(--input-border);color:var(--text-main);font:inherit;resize:vertical;border-radius:8px;width:100%;min-height:118px;padding:12px;line-height:1.5}.pon-textarea::placeholder{color:var(--text-muted)}.pon-textarea:focus{background:var(--card-bg);border-color:var(--table-link);box-shadow:0 0 0 3px color-mix(in srgb, var(--table-link,#1d4ed8) 14%, transparent);outline:none}.pon-textarea:disabled{cursor:wait;opacity:.75}.pon-footer{justify-content:space-between;align-items:center;gap:14px;display:flex}.pon-meta{color:var(--text-muted);flex-wrap:wrap;align-items:flex-start;gap:8px 12px;font-size:12px;font-weight:600;display:flex}.pon-meta-history{gap:4px;display:grid}.pon-email-sent{color:#15803d}[data-theme=dark] .pon-email-sent,.dark .pon-email-sent,body.dark-mode .pon-email-sent{color:#86efac}.pon-count{color:var(--text-muted)}.pon-count--warning{color:#92400e}.pon-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.pon-btn{cursor:pointer;white-space:nowrap;border-radius:8px;padding:9px 12px;font-size:13px;font-weight:800}.pon-btn--primary{background:var(--table-link,#1d4ed8);color:#fff;border:1px solid #0000}.pon-btn--primary:hover:not(:disabled){background:var(--table-link-hover,#2563eb)}.pon-btn--secondary{border:1px solid var(--card-border);color:var(--text-main);background:0 0}.pon-btn--secondary:hover:not(:disabled){background:var(--tab-bg)}.pon-btn:disabled{cursor:not-allowed;opacity:.55}.pon-error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;font-size:13px;line-height:1.4}@keyframes pon-pulse{0%,to{opacity:.35;transform:scale(.82)}50%{opacity:1;transform:scale(1)}}.pdt-wrapper{background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;overflow:hidden}.pdt-bulk-toolbar{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.pdt-bulk-summary{flex-wrap:wrap;align-items:baseline;gap:8px;min-width:170px;display:flex}.pdt-bulk-summary strong{color:var(--text-main);font-size:13px}.pdt-bulk-summary span{color:var(--text-muted);font-size:12px;font-weight:600}.pdt-bulk-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.pdt-bulk-btn{cursor:pointer;white-space:nowrap;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:700}.pdt-bulk-btn--primary{background:var(--table-link,#1d4ed8);color:#fff;border:1px solid #0000}.pdt-bulk-btn--secondary{border:1px solid var(--card-border);color:var(--text-main);background:0 0}.pdt-bulk-btn:disabled{cursor:not-allowed;opacity:.55}.pdt-bulk-progress,.pdt-bulk-error{border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:700;line-height:1.35;display:flex}.pdt-bulk-progress{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe}.pdt-bulk-progress--success{color:#166534;background:#dcfce7;border-color:#bbf7d0}.pdt-bulk-error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.pdt-bulk-progress-icon{border:2px solid;border-right-color:#0000;border-radius:999px;flex:none;width:14px;height:14px;animation:.8s linear infinite pdt-spin}.pdt-bulk-progress--success .pdt-bulk-progress-icon{background:currentColor;border-color:currentColor;animation:none}.pdt-scroll{max-height:calc(100vh - 280px);overflow:auto}.pdt-column-groups{border-bottom:1px solid var(--card-border);display:flex}.pdt-col-group{text-transform:uppercase;letter-spacing:.08em;padding:8px 16px;font-size:11px;font-weight:700}.pdt-col-group--po{color:var(--table-link,#1d4ed8);border-bottom:2px solid var(--table-link,#1d4ed8);flex:none;margin-left:196px}.pdt-col-group--vendor{color:var(--text-muted);border-bottom:2px solid var(--card-border);flex:none}.pdt-table{border-collapse:separate;border-spacing:0;width:100%;min-width:1960px}.pdt-table th{background:var(--table-th-bg);color:var(--text-muted);text-align:left;white-space:nowrap;border-bottom:1px solid var(--card-border);z-index:3;padding:12px 14px;font-size:12px;font-weight:600;position:sticky;top:0}.pdt-table td{border-top:1px solid var(--table-td-border);color:var(--table-text);vertical-align:middle;padding:14px;font-size:13px}.pdt-section-row td{background:var(--table-th-bg);border-top:1px solid var(--card-border);padding:12px 14px}.pdt-section-title{color:var(--text-main);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.pdt-section-description{color:var(--text-muted);margin-top:4px;font-size:12px}.pdt-row--matched td:first-child{border-left:3px solid #16a34a}.pdt-row--suggested td:first-child{border-left:3px solid #7c3aed}.pdt-row--suggested td{background:color-mix(in srgb, #f5f3ff 60%, var(--card-bg))}[data-theme=dark] .pdt-row--suggested td,.dark .pdt-row--suggested td,body.dark-mode .pdt-row--suggested td{background:var(--card-bg)}.pdt-row--issue-selected td{box-shadow:inset 0 0 0 9999px #0891b212}.pdt-row--price-issue td:first-child{border-left:3px solid #dc2626}.pdt-row--qty-issue td:first-child{border-left:3px solid #f59e0b}.pdt-row--qty-price-issue td:first-child{border-left:3px solid #ea580c}.pdt-row--description-issue td:first-child{border-left:3px solid #0891b2}.pdt-row--review td:first-child{border-left:3px solid #64748b}.pdt-row--missing-qb td:first-child{border-left:3px solid #dc2626}.pdt-row--missing-pdf td:first-child{border-left:3px solid #7c3aed}.pdt-select-header,.pdt-select-cell{text-align:center;width:58px}.pdt-select-checkbox{accent-color:var(--table-link,#1d4ed8);cursor:pointer;width:16px;height:16px}.pdt-select-checkbox:disabled{cursor:not-allowed}.pdt-description{white-space:normal;overflow-wrap:anywhere;word-break:break-word;min-width:180px;max-width:260px;line-height:1.4}.pdt-description--vendor{color:var(--text-muted)}.pdt-grouped-description{gap:10px;display:grid}.pdt-grouped-item{border-left:2px solid var(--card-border);padding-left:10px}.pdt-grouped-item+.pdt-grouped-item{border-top:1px solid var(--table-td-border);padding-top:10px}.pdt-grouped-item-header{color:var(--text-main);text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:5px;font-size:11px;font-weight:700;line-height:1.3;display:flex}.pdt-grouped-item-header span{background:var(--table-th-bg);border:1px solid var(--card-border);border-radius:999px;padding:2px 7px}.pdt-description-meta{color:var(--text-main);text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:700}.pdt-ai-reason{border-top:1px solid var(--table-td-border);color:var(--text-main);margin-top:8px;padding-top:8px;font-size:12px}.pdt-no-match{color:var(--text-muted);font-size:12px;font-style:italic}.pdt-empty{text-align:center;color:var(--text-muted);padding:28px 16px}.pdt-muted{color:var(--text-muted)}.pdt-ai-match{color:var(--text-main);font-weight:600}.pdt-issue-type{color:var(--text-muted);font-size:12px}.pdt-variance{font-size:13px;font-weight:600}.pdt-variance--zero{color:#16a34a}.pdt-variance--positive{color:#2563eb}.pdt-variance--negative{color:#dc2626}.pdt-action-btn{cursor:pointer;white-space:nowrap;border:1.5px solid #0000;border-radius:8px;align-items:center;gap:4px;padding:6px 12px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.pdt-action-btn--approve{color:#16a34a;background:0 0;border-color:#16a34a}.pdt-action-btn--approve:hover{background:#dcfce7}.pdt-action-btn--review{border-color:var(--input-border);color:var(--text-main);background:0 0}.pdt-action-btn--review:hover{background:var(--tab-bg)}.pdt-action-btn--manual{background:var(--table-link,#1d4ed8);color:#fff;border-color:#0000}.pdt-action-btn--manual:hover{opacity:.9}.pdt-action-btn:disabled{cursor:not-allowed;opacity:.55}.pdt-chevron{opacity:.7;font-size:10px}.pdt-footer{border-top:1px solid var(--card-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.pdt-results-count{color:var(--text-muted);font-size:13px}.pdt-pagination{align-items:center;gap:4px;display:flex}.pdt-page-btn{border:1px solid var(--card-border);background:var(--card-bg);width:auto;min-width:32px;height:32px;color:var(--text-main);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 10px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.pdt-page-btn:hover:not(:disabled){background:var(--tab-bg)}.pdt-page-btn:disabled{opacity:.4;cursor:not-allowed}.pdt-page-btn--active{background:var(--tab-active-bg);color:var(--tab-active-text);border-color:#0000}.pdt-page-ellipsis{color:var(--text-muted);padding:0 4px}.pdt-edit-overlay{z-index:1000;background:#0f172aad;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.pdt-edit-modal{background:var(--card-bg);border:1px solid var(--card-border);color:var(--text-main);border-radius:12px;width:min(780px,94vw);overflow:hidden;box-shadow:0 24px 80px #0f172a52}.pdt-email-modal{background:var(--card-bg);border:1px solid var(--card-border);color:var(--text-main);border-radius:12px;width:min(980px,96vw);max-height:92vh;overflow:hidden;box-shadow:0 24px 80px #0f172a52}.pdt-edit-header{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.pdt-edit-eyebrow{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.pdt-edit-header h3{margin:4px 0 0;font-size:18px}.pdt-edit-close{border:1px solid var(--card-border);color:var(--text-main);cursor:pointer;background:0 0;border-radius:6px;padding:8px 12px;font-size:13px;font-weight:700}.pdt-edit-body{gap:16px;padding:16px;display:grid}.pdt-email-body{gap:16px;max-height:calc(92vh - 132px);padding:16px;display:grid;overflow:auto}.pdt-email-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pdt-email-grid label{gap:6px;display:grid}.pdt-email-grid span{color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:700}.pdt-email-field--wide{grid-column:1/-1}.pdt-email-grid input,.pdt-email-grid textarea{background:var(--card-bg);border:1px solid var(--input-border);color:var(--text-main);font:inherit;border-radius:8px;padding:10px 12px}.pdt-email-grid textarea{resize:vertical;min-height:120px;line-height:1.45}.pdt-email-grid input:focus,.pdt-email-grid textarea:focus{border-color:var(--table-link);outline:none}.pdt-email-preview{border:1px solid var(--card-border);border-radius:8px;overflow:hidden}.pdt-email-preview-header{background:var(--table-th-bg);border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;display:flex}.pdt-email-preview-header p{color:var(--text-muted);margin:4px 0 0;font-size:13px}.pdt-email-preview-header>span{color:var(--text-main);text-transform:uppercase;font-size:12px;font-weight:800}.pdt-email-issue-list{gap:0;display:grid}.pdt-email-issue{border-top:1px solid var(--table-td-border);gap:12px;padding:12px;display:grid}.pdt-email-issue:first-child{border-top:0}.pdt-email-issue-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.pdt-email-issue-top strong{color:var(--text-main);font-size:13px}.pdt-email-issue-top span{color:var(--text-muted);font-size:12px;font-weight:700}.pdt-email-issue-descriptions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.pdt-email-issue-descriptions div{background:var(--table-th-bg);border:1px solid var(--card-border);border-radius:8px;padding:10px}.pdt-email-issue-descriptions span{color:var(--text-muted);text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:800;display:block}.pdt-email-issue-descriptions p{color:var(--text-main);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.4}.pdt-email-issue-facts{grid-template-columns:repeat(7,minmax(92px,1fr));gap:8px;margin:0;display:grid}.pdt-email-issue-facts div{border:1px solid var(--card-border);border-radius:8px;padding:8px}.pdt-email-issue-facts dt{color:var(--text-muted);text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:800}.pdt-email-issue-facts dd{color:var(--text-main);margin:0;font-size:13px;font-weight:700}.pdt-email-issue-note{border-top:1px solid var(--table-td-border);color:var(--text-muted);padding-top:10px;font-size:12px;line-height:1.45}.pdt-edit-description{background:var(--table-th-bg);border:1px solid var(--card-border);color:var(--text-muted);border-radius:8px;padding:12px;font-size:13px;line-height:1.45}.pdt-edit-description-field{gap:6px;display:grid}.pdt-edit-description-field span{color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:700}.pdt-edit-description-field textarea{background:var(--card-bg);border:1px solid var(--input-border);color:var(--text-main);font:inherit;resize:vertical;border-radius:8px;min-height:92px;padding:10px 12px;line-height:1.45}.pdt-edit-description-field textarea:focus{border-color:var(--table-link);outline:none}.pdt-edit-suggestion{background:color-mix(in srgb, #ede9fe 72%, var(--card-bg));color:#4c1d95;border:1px solid #c4b5fd;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.pdt-edit-suggestion-label{letter-spacing:.06em;text-transform:uppercase;margin-bottom:3px;font-size:11px;font-weight:800;display:block}.pdt-edit-suggestion strong{font-size:20px}.pdt-edit-suggestion-btn{color:#fff;cursor:pointer;background:#7c3aed;border:1px solid #0000;border-radius:8px;flex:none;padding:9px 12px;font-size:13px;font-weight:700}.pdt-edit-suggestion-btn:disabled{cursor:not-allowed;opacity:.6}.pdt-edit-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pdt-edit-comparison section{gap:8px;min-width:0;display:grid}.pdt-edit-section-title{color:var(--text-main);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:800}.pdt-edit-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.pdt-edit-facts div{background:var(--card-bg);border:1px solid var(--card-border);border-radius:8px;padding:9px 10px}.pdt-edit-facts dt{color:var(--text-muted);text-transform:uppercase;margin-bottom:3px;font-size:11px;font-weight:800}.pdt-edit-facts dd{color:var(--text-main);margin:0;font-size:14px;font-weight:700}.pdt-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pdt-edit-grid label{gap:6px;display:grid}.pdt-edit-grid span{color:var(--text-muted);text-transform:uppercase;font-size:12px;font-weight:700}.pdt-edit-grid input{background:var(--card-bg);border:1px solid var(--input-border);color:var(--text-main);font:inherit;border-radius:8px;padding:10px 12px}.pdt-edit-grid input:focus{border-color:var(--table-link);outline:none}.pdt-edit-error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;font-size:13px}.pdt-edit-progress{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.pdt-edit-progress--success{color:#166534;background:#dcfce7;border-color:#bbf7d0}.pdt-edit-progress-icon{border:2px solid;border-right-color:#0000;border-radius:999px;flex:none;width:16px;height:16px;margin-top:2px;animation:.8s linear infinite pdt-spin}.pdt-edit-progress--success .pdt-edit-progress-icon{background:currentColor;border-color:currentColor;animation:none;position:relative}.pdt-edit-progress--success .pdt-edit-progress-icon:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:8px;position:absolute;top:2px;left:5px;transform:rotate(45deg)}.pdt-edit-progress-title{font-size:13px;font-weight:800}.pdt-edit-progress-message{margin-top:2px;font-size:13px;line-height:1.4}@keyframes pdt-spin{to{transform:rotate(360deg)}}.pdt-edit-actions{border-top:1px solid var(--card-border);justify-content:flex-end;align-items:center;gap:10px;padding:14px 16px;display:flex}.pdt-edit-primary,.pdt-edit-secondary{cursor:pointer;border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700}.pdt-edit-primary{background:var(--table-link);color:#fff;border:1px solid #0000}.pdt-edit-secondary{border:1px solid var(--card-border);color:var(--text-main);background:0 0}.pdt-edit-primary:disabled,.pdt-edit-secondary:disabled,.pdt-edit-close:disabled{cursor:not-allowed;opacity:.6}@media (width<=560px){.pon-header,.pon-footer{flex-direction:column;align-items:stretch}.pon-state{align-self:flex-start}.pon-actions{justify-content:flex-start}.pon-btn{flex:110px}.pdt-bulk-toolbar{flex-direction:column;align-items:stretch}.pdt-bulk-actions{justify-content:flex-start}.pdt-edit-comparison,.pdt-email-grid,.pdt-email-issue-descriptions,.pdt-email-issue-facts,.pdt-edit-grid{grid-template-columns:1fr}.pdt-edit-suggestion{flex-direction:column;align-items:stretch}}.match-status-badge{white-space:nowrap;border-radius:9999px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.msb-icon{border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:700;display:inline-flex}.msb--matched{color:#166534;background:#dcfce7}.msb--matched .msb-icon{color:#fff;background:#16a34a}.msb--suggested{color:#5b21b6;background:#ede9fe}.msb--suggested .msb-icon{color:#fff;background:#7c3aed}.msb--price-issue{color:#b91c1c;background:#fee2e2}.msb--price-issue .msb-icon{color:#fff;background:#dc2626}.msb--qty-issue{color:#92400e;background:#fef3c7}.msb--qty-issue .msb-icon{color:#fff;background:#f59e0b}.msb--qty-price-issue{color:#9a3412;background:#ffedd5}.msb--qty-price-issue .msb-icon{color:#fff;background:#ea580c}.msb--description-issue{color:#155e75;background:#cffafe}.msb--description-issue .msb-icon{color:#fff;background:#0891b2}.msb--missing-qb{color:#b91c1c;background:#fee2e2}.msb--missing-qb .msb-icon{color:#fff;background:#dc2626}.msb--missing-pdf{color:#5b21b6;background:#ede9fe}.msb--missing-pdf .msb-icon{color:#fff;background:#7c3aed}.msb--review{color:#334155;background:#e2e8f0}.msb--review .msb-icon{color:#fff;background:#64748b}
