:root{--font-scale:var(--user-font-scale,1);font-size:calc(clamp(14px, calc(13px + .35vw), 16px) * var(--font-scale,1));color:#202223;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;--ink:#202223;--muted:#69777c;--line:#cbd6da;--line-strong:#aebdc2;--surface:#fff;--surface-raised:#fff;--surface-muted:#f4f7f8;--surface-subtle:#eaf0f2;--text-primary:#20282b;--text-secondary:#53636a;--text-muted:#69777c;--brand-blue:#075bce;--brand-blue-dark:#0649a8;--brand-blue-soft:#e4efff;--superman-blue:#075bce;--superman-red:#c62828;--superman-yellow:#f5c400;--blue:#075bce;--blue-light:#7db3ff;--focus-ring:#075bce;--red:#c62828;--yellow:#f5c400;--yellow-ink:#292000;--charcoal:#202223;--paper:#eee;--cream:#eee;--white:#fff;--shadow:0 10px 30px #20222313;--type-page-title:clamp(1.75rem, calc(1.5rem + 1vw), 2rem);--type-section-title:clamp(1.25rem, calc(1.1rem + .5vw), 1.375rem);--type-subsection-title:clamp(1rem, calc(.95rem + .25vw), 1.0625rem);--type-body:clamp(.875rem, calc(.83rem + .2vw), .9375rem);--type-secondary:clamp(.8125rem, calc(.78rem + .16vw), .875rem);--type-meta:clamp(.75rem, calc(.72rem + .12vw), .8125rem);--type-tag:clamp(.6875rem, calc(.66rem + .1vw), .75rem);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#eee;font-family:Inter,Arial,sans-serif;font-weight:400}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#eff5f7;--ink:#eff5f7;--muted:#b4c1c6;--line:#34454d;--line-strong:#50656e;--surface:#182126;--surface-raised:#202b31;--surface-muted:#202a30;--surface-subtle:#27343b;--text-primary:#eff5f7;--text-secondary:#c2cdd2;--text-muted:#aab8be;--brand-blue:#62a5ff;--brand-blue-dark:#1767d1;--brand-blue-soft:#172f50;--superman-blue:#62a5ff;--superman-red:#ff6969;--superman-yellow:#ffd740;--blue:#62a5ff;--blue-light:#8cbdff;--focus-ring:#8cbdff;--red:#ff6969;--yellow:#ffd740;--yellow-ink:#211900;--charcoal:#eff5f7;--paper:#10171b;--cream:#10171b;--white:#182126;--shadow:0 16px 38px #00000052;background:#10171b}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{min-width:320px;min-height:100vh;color:var(--text-primary);background:#eee;margin:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit}::selection{color:#202223;background:#d6ebf0}img,video,canvas,svg{max-width:100%}input,select,textarea,button{min-width:0}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}#root{min-height:100vh}.brand{color:var(--ink);align-items:center;gap:11px;display:inline-flex}.brand-mark{width:36px;height:36px;color:var(--brand-blue);font:700 calc(20px * var(--font-scale,1)) "Sora", sans-serif;border:1px solid #cbd4d7;border-radius:11px;place-items:center;display:grid}.brand-name{font:800 calc(13px * var(--font-scale,1))/1 "Sora", sans-serif;letter-spacing:.11em;flex-direction:column;gap:1px;display:flex}.brand-name span{color:#899092;font:600 calc(12px * var(--font-scale,1))/1.5 "Inter", sans-serif;letter-spacing:.22em}.brand-light{color:#fff}.brand-light .brand-mark{color:#d5e5ea;border-color:#597983}.brand-light .brand-name span{color:#a8b9be}.eyebrow{color:#6b868e;font-size:calc(12px * var(--font-scale,1));letter-spacing:.18em;margin:0 0 10px;font-weight:700}.muted{color:var(--muted)}.login-screen{--login-paper:#eee;--login-sky:#86b6c5;--login-blue:#1e7e9c;--login-red:#b53a3a;--login-charcoal:#202223;min-height:100vh;color:var(--login-charcoal);background:var(--login-paper);grid-template-columns:minmax(420px,1.02fr) minmax(420px,.98fr);font-family:Inter,Arial,sans-serif;display:grid}.password-setup-screen{background:radial-gradient(at 18% 76%,#5e87941f,#0000 38%),#f2f5f6;place-items:center;min-height:100vh;padding:24px;display:grid}.password-setup-card{border:1px solid var(--line);width:min(100%,500px);box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:clamp(26px,5vw,44px)}.password-setup-card .brand{margin-bottom:34px}.password-setup-card h1{color:var(--ink);font:700 calc(28px * var(--font-scale,1))/1.2 "Sora", sans-serif;letter-spacing:-.035em;margin:0 0 10px}.password-setup-card>.muted{font-size:calc(14px * var(--font-scale,1));margin:0 0 26px;line-height:1.65}.password-setup-card .form-stack{margin-top:22px}.password-setup-card .primary-button{min-height:47px;font-size:calc(13px * var(--font-scale,1));margin-top:2px}.forgot-password-button{color:var(--blue);font-size:calc(12px * var(--font-scale,1));text-underline-offset:3px;background:0 0;border:0;margin:14px 0 0 auto;padding:7px 0;font-weight:700;text-decoration:underline;display:block}.forgot-password-button:hover:not(:disabled){color:#183f4b}.forgot-password-button:disabled{cursor:wait;opacity:.6}.login-aside{min-height:100vh;color:var(--login-paper);background:radial-gradient(at 88% 92%,#1e7e9c6b,#0000 43%),linear-gradient(145deg,#202223,#202223 68%,#17343d);flex-direction:column;justify-content:space-between;padding:40px clamp(36px,7vw,100px) 32px;display:flex;position:relative;overflow:hidden}.login-aside:after{background:var(--login-red);content:"";border-radius:3px;width:42px;height:3px;position:absolute;bottom:31px;right:clamp(36px,7vw,100px)}.login-screen .brand-name{color:#fff;font:800 calc(15px * var(--font-scale,1))/1 "Sora", "Inter", Arial, sans-serif;letter-spacing:.08em}.login-screen .brand-name span{color:#bcecf4;font:700 calc(12px * var(--font-scale,1))/1.6 "Sora", "Inter", Arial, sans-serif;letter-spacing:.2em}.login-message{max-width:760px;padding:80px 0}.login-message .eyebrow{color:#bcecf4;font:700 calc(16px * var(--font-scale,1))/1.4 "Sora", "Inter", Arial, sans-serif;letter-spacing:.04em;margin-bottom:16px}.login-message h1{color:#fff;max-width:760px;font:700 clamp(calc(43px * var(--font-scale,1)), calc(4.8vw * var(--font-scale,1)), calc(68px * var(--font-scale,1)))/1.08 "Sora", "Inter", Arial, sans-serif;letter-spacing:-.012em;font-kerning:normal;font-variant-ligatures:none;margin:0 0 22px}.login-message p{color:#e0e7e8;max-width:410px;font-size:calc(15px * var(--font-scale,1));margin:0;font-weight:500;line-height:1.8}.aside-footer,.login-legal{color:#aab2b3;font-size:calc(12px * var(--font-scale,1));letter-spacing:.16em;font-weight:700}.login-panel{background:var(--login-paper);flex-direction:column;justify-content:center;padding:48px clamp(32px,7vw,110px);display:flex}.login-form-wrap{width:100%;max-width:390px;margin:auto}.login-form-wrap>.eyebrow{color:#176982;font:700 calc(12px * var(--font-scale,1))/1.4 "Sora", "Inter", Arial, sans-serif;letter-spacing:.12em}.login-form-wrap h2{color:var(--login-charcoal);font:700 calc(32px * var(--font-scale,1))/1.18 "Sora", "Inter", Arial, sans-serif;letter-spacing:-.025em;margin:0 0 8px}.login-form-wrap>.muted{font-size:calc(14px * var(--font-scale,1));margin:0 0 34px}.form-stack{flex-direction:column;display:flex}.login-screen .form-stack label{color:var(--login-charcoal);font-size:calc(13px * var(--font-scale,1));margin:0 0 8px;font-weight:600}.form-stack input,.inline-form input{width:100%;color:var(--ink);background:#fff;border:1px solid #dfe4e5;border-radius:8px;outline:none;transition:border-color .16s,box-shadow .16s}.login-screen .form-stack input{color:var(--login-charcoal);background:#fafbfb;border-color:#b7cbd0;border-radius:6px}.form-stack input{height:48px;font-size:calc(14px * var(--font-scale,1));margin:0 0 20px;padding:0 14px}.password-input-wrap{width:100%;min-width:0;display:block;position:relative}.form-stack .password-input-wrap{margin:0 0 20px}.form-stack .password-input-wrap input{margin:0;padding-right:76px}.password-form .password-input-wrap input{margin:0;padding-right:68px}.password-visibility-button{color:var(--blue);font-size:calc(12px * var(--font-scale,1));background:0 0;border:0;border-radius:5px;padding:6px 7px;font-weight:700;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.login-screen .password-visibility-button{color:var(--login-blue)}.password-visibility-button:hover{color:#173f4b;background:#eaf3f6}.password-visibility-button:focus-visible{outline-offset:1px;outline:2px solid #588492}.form-stack input:focus,.inline-form input:focus{border-color:#588492;box-shadow:0 0 0 3px #285e6f1c}.login-screen .form-stack input:focus{border-color:var(--login-blue);box-shadow:0 0 0 3px #1e7e9c24}.form-stack input::placeholder,.inline-form input::placeholder{color:#a2a8aa}.primary-button{border:1px solid var(--brand-blue);color:#fff;background:var(--brand-blue);min-height:43px;font-size:calc(12px * var(--font-scale,1));border-radius:7px;justify-content:center;align-items:center;padding:0 18px;font-weight:700;transition:background .15s,transform .15s,box-shadow .15s;display:inline-flex}.login-screen .primary-button{border-color:var(--login-blue);background:var(--login-blue);border-radius:6px;font-family:Sora,Inter,Arial,sans-serif;font-weight:700}.login-screen .primary-button:hover:not(:disabled){background:#17687f;box-shadow:0 7px 18px #1e7e9c33}.primary-button:hover:not(:disabled){background:var(--brand-blue-dark);transform:translateY(-1px);box-shadow:0 6px 15px #1e536329}.primary-button:disabled{cursor:wait;opacity:.65}.login-help{color:var(--muted);font-size:calc(12px * var(--font-scale,1));margin:22px 0 0;line-height:1.7}.login-legal{color:#7a8587;text-align:center;font-size:calc(12px * var(--font-scale,1));letter-spacing:.1em;margin-top:40px}.login-screen .forgot-password-button{color:var(--login-blue)}.login-screen .login-help{color:#687376}.setup-screen,.loading-screen{background:#f2f5f6;place-items:center;min-height:100vh;padding:24px;display:grid}.setup-card{border:1px solid var(--line);width:min(100%,560px);box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:42px}.setup-card .brand{margin-bottom:42px}.setup-card h1{font:700 calc(27px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 12px}.setup-card .muted{font-size:calc(14px * var(--font-scale,1));margin:0 0 20px;line-height:1.7}.setup-card pre{color:#d9e7eb;font:calc(12px * var(--font-scale,1))/1.8 ui-monospace, monospace;background:#1b2d33;border-radius:8px;padding:16px;overflow-x:auto}.fine-print{color:#858c8e;font-size:calc(12px * var(--font-scale,1))}.spinner{border:2px solid #d8e1e4;border-top-color:var(--brand-blue);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{min-height:100vh;color:var(--ink);background:#f6f8f8;display:flex}.sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;flex:0 0 250px;width:250px;height:100vh;padding:25px 17px 20px;display:flex;position:sticky;top:0}.sidebar>.brand{padding:0 10px 31px}.workspace-label{color:#a1a8aa;font-size:calc(12px * var(--font-scale,1));letter-spacing:.14em;padding:0 10px;font-weight:700}.sidebar nav{flex-direction:column;gap:4px;margin-top:15px;display:flex}.nav-link{color:#687073;min-height:41px;font-size:calc(12px * var(--font-scale,1));border-radius:7px;align-items:center;gap:12px;padding:0 11px;font-weight:500;text-decoration:none;display:flex}.sidebar nav .nav-link{text-align:left;background:0 0;border:0;width:100%}.nav-link.selected{color:var(--blue-dark,#176982);background:#eaf3f6;font-weight:700}.nav-link.disabled{color:#a8adaf;cursor:default}.nav-submenu{border-left:1px solid #e2e7e9;gap:3px;margin:-1px 0 5px 28px;padding-left:10px;display:grid}.nav-link-sub{min-height:34px;font-size:calc(12px * var(--font-scale,1));padding-left:9px}.nav-icon{color:#788a90;width:17px;font-size:calc(16px * var(--font-scale,1));text-align:center}.sidebar-bottom{color:#8a9295;font-size:calc(12px * var(--font-scale,1));border-top:1px solid #eef0f0;align-items:center;gap:8px;margin-top:auto;padding:13px 10px 0;display:flex}.security-dot{background:#5d8d9b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #e6eff2}.main-content{width:min(100% - 250px,1440px);margin:0 auto;padding:0 52px 30px}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:68px;display:flex}.breadcrumb{color:#7c8487;font-size:calc(12px * var(--font-scale,1))}.breadcrumb span{color:#b2b8ba;margin:0 8px}.user-menu{align-items:center;gap:10px;display:flex}.font-size-control{background:#f8fafb;border:1px solid #dce5e8;border-radius:8px;flex:none;align-items:center;gap:2px;padding:3px;display:inline-flex}.font-size-control button{color:#65757a;min-width:29px;height:28px;font-size:calc(12px * var(--font-scale,1));background:0 0;border:0;border-radius:5px;padding:0 5px;font-weight:700}.font-size-control button.selected{color:#fff;background:var(--brand-blue)}.user-avatar{color:#355a65;width:32px;height:32px;font-size:calc(12px * var(--font-scale,1));background:#e3ecef;border-radius:50%;place-items:center;font-weight:700;display:grid}.user-copy{flex-direction:column;gap:2px;display:flex}.user-copy strong{color:#475053;max-width:200px;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;font-weight:600;overflow:hidden}.user-copy span{color:#9aa1a3;font-size:calc(12px * var(--font-scale,1))}.text-button{color:#788184;font-size:calc(12px * var(--font-scale,1));background:0 0;border:0;margin-left:9px;padding:6px 8px}.text-button:hover{color:var(--brand-blue)}.password-action-button{min-height:34px;color:var(--blue-dark,#176982);font-size:calc(12px * var(--font-scale,1));background:#eaf3f6;border:1px solid #86b6c5;border-radius:7px;margin-left:6px;padding:0 12px;font-weight:700}.password-action-button:hover{color:#173f4b;background:#e1ecf0;border-color:#7599a4}.password-panel{background:#f1f6f7;border:1px solid #dce5e8;border-radius:10px;grid-template-columns:minmax(180px,.7fr) minmax(0,1.8fr);align-items:end;gap:22px;margin-top:18px;padding:18px 20px;display:grid}.password-panel h2{color:#344044;font:700 calc(14px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 5px}.password-panel p{color:#788184;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.55}.password-form{align-items:end;gap:10px;display:flex}.password-form label{color:#535e61;font-size:calc(12px * var(--font-scale,1));flex:1;gap:6px;font-weight:600;display:grid}.password-form input{width:100%;min-width:0;height:39px;color:var(--ink);font-size:calc(12px * var(--font-scale,1));background:#fff;border:1px solid #d6dee0;border-radius:7px;outline:none;padding:0 10px}.password-form input:focus{border-color:#588492;box-shadow:0 0 0 3px #285e6f1c}.password-form .primary-button{white-space:nowrap;min-height:39px}.page-heading{justify-content:space-between;align-items:end;padding:38px 0 26px;display:flex}.page-heading h1{color:var(--ink);font:700 calc(30px * var(--font-scale,1)) "Sora", sans-serif;letter-spacing:-.04em;margin:0 0 8px}.page-heading .muted{font-size:calc(12px * var(--font-scale,1));margin:0}.client-count{color:#98a0a2;font-size:calc(12px * var(--font-scale,1));align-items:baseline;gap:9px;padding-bottom:3px;display:flex}.client-count strong{color:#31545f;font:600 calc(22px * var(--font-scale,1)) "Sora", sans-serif}.create-panel{background:linear-gradient(120deg,#f2f6f7,#fafcfc);border:1px solid #e0e7e9;border-radius:10px;justify-content:space-between;align-items:center;gap:24px;padding:19px 21px;display:flex}.panel-intro{align-items:center;gap:13px;display:flex}.panel-icon{color:#326473;width:36px;height:36px;font-size:calc(21px * var(--font-scale,1));background:#fff;border:1px solid #d9e4e8;border-radius:9px;place-items:center;display:grid}.panel-intro h2{color:#344044;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 4px}.panel-intro p{color:#899295;font-size:calc(12px * var(--font-scale,1));margin:0}.client-toolbar{grid-template-columns:minmax(220px,1fr) minmax(250px,1.2fr) minmax(175px,.72fr) auto;align-items:end;gap:14px;display:grid}.client-toolbar-readonly{grid-template-columns:minmax(250px,1.5fr) minmax(190px,.8fr)}.client-search-field,.client-status-field{color:#687376;min-width:0;font-size:calc(12px * var(--font-scale,1));gap:6px;font-weight:700;display:grid}.client-toolbar input,.client-toolbar select{color:#404c50;width:100%;min-width:0;height:40px;font:500 calc(12px * var(--font-scale,1)) "Inter", sans-serif;background:#fff;border:1px solid #dce3e5;border-radius:7px;padding:0 11px}.client-toolbar input::placeholder{color:#9aa2a4}.client-toolbar .primary-button{white-space:nowrap;min-height:40px}.client-search-empty{justify-items:center;display:grid}.client-search-empty .small-primary{margin-top:8px}.inline-form{gap:8px;width:min(53%,470px);display:flex}.inline-form input{min-width:100px;height:42px;font-size:calc(12px * var(--font-scale,1));padding:0 12px}.inline-form .primary-button{flex:none}.back-link{color:#677c82;font-size:calc(12px * var(--font-scale,1));background:0 0;border:0;margin:0 0 9px;padding:0;font-weight:700}.back-link:hover{color:var(--brand-blue)}.client-section{margin-top:35px}.section-title-row{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-title-row h2{color:#353f42;font:700 calc(14px * var(--font-scale,1)) "Sora", sans-serif;margin:0}.section-title-row span{color:#a0a7a9;font-size:calc(12px * var(--font-scale,1))}.client-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:13px;display:grid}.client-table-wrap{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #e4e8e9;border-radius:10px;width:100%;overflow-x:auto}.client-table-wrap:focus-visible{outline-offset:3px;outline:2px solid #789ba6}.client-table{border-collapse:collapse;text-align:left;width:100%;min-width:850px}.client-table th{color:#757d80;font-size:calc(12px * var(--font-scale,1));white-space:nowrap;background:#f8fafa;border-bottom:1px solid #e9eced;padding:13px 15px;font-weight:700}.client-table td{color:#656e71;font-size:calc(12px * var(--font-scale,1));vertical-align:middle;border-bottom:1px solid #edeff0;padding:12px 15px}.client-table tbody tr:last-child td{border-bottom:0}.client-table tbody tr:hover{background:#fbfcfc}.client-table-name{color:#2f4147;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:inline-flex}.client-table-name:hover{color:#215a6b}.client-table .client-monogram{width:32px;height:32px;font-size:calc(12px * var(--font-scale,1));flex:0 0 32px}.client-table-contact{color:#4c5a5e;font-weight:650;display:block}.client-table td small{color:#8b9396;font-size:calc(12px * var(--font-scale,1));margin-top:3px;display:block}.client-table-actions{flex-wrap:wrap;align-items:center;gap:6px 9px;min-width:205px;display:flex}.client-table-actions .open-client{white-space:nowrap;padding-left:0}.client-table-actions .client-lifecycle-toggle,.client-table-actions .client-delete-button{white-space:nowrap}.client-retry-button{margin:4px 0 16px}.client-card{background:#fff;border:1px solid #e5e8e9;border-radius:9px;padding:17px 17px 13px;transition:transform .15s,box-shadow .15s,border-color .15s}.client-card:hover{box-shadow:var(--shadow);border-color:#d7dfe2;transform:translateY(-2px)}.client-card-top{justify-content:space-between;align-items:center;display:flex}.client-monogram{color:#325a66;width:35px;height:35px;font:700 calc(14px * var(--font-scale,1)) "Sora", sans-serif;background:#e8eff1;border-radius:9px;place-items:center;display:grid}.status{color:#5f7b84;font-size:calc(12px * var(--font-scale,1));background:#edf3f5;border-radius:20px;padding:4px 8px;font-weight:600}.status-suspended{color:#9a6e35;background:#faf2e4}.status-paused{color:#8a672d;background:#fbf2df}.status-blocked{color:#a3423e;background:#fbe9e7}.status-closed,.status-cancelled,.status-archived{color:#858d91;background:#eff1f2}.client-card h3{color:#263235;font:700 calc(13px * var(--font-scale,1)) "Sora", sans-serif;text-overflow:ellipsis;white-space:nowrap;margin:17px 0 4px;overflow:hidden}.client-card>p{color:#989fa1;min-height:15px;font-size:calc(12px * var(--font-scale,1));margin:0}.client-card-footer{color:#9aa1a3;font-size:calc(12px * var(--font-scale,1));border-top:1px solid #eff1f2;justify-content:space-between;align-items:center;margin-top:17px;padding-top:11px;display:flex}.open-client{color:#547681;font-size:calc(12px * var(--font-scale,1));background:0 0;border:0;align-items:center;gap:5px;padding:2px 0 2px 7px;font-weight:700;display:inline-flex}.open-client:hover{color:var(--brand-blue-dark)}.client-lifecycle{border-top:1px solid #eff1f2;justify-content:space-between;align-items:flex-start;gap:9px;margin-top:12px;padding-top:10px;display:flex}.client-lifecycle-toggle,.client-delete-button{color:var(--blue);font-size:calc(12px * var(--font-scale,1));background:#f4f9fa;border:1px solid #dce4e6;border-radius:6px;padding:5px 7px;font-weight:650}.client-lifecycle-toggle:hover{background:#eaf3f6;border-color:#aabfc6}.client-delete-button{color:#a44741;background:#fff9f8;border-color:#f0d8d5}.client-delete-button:hover:not(:disabled){background:#fff0ee;border-color:#d9a29d}.client-delete-button:disabled{cursor:wait;opacity:.6}.client-lifecycle-editor{flex:1;gap:7px;display:grid}.client-lifecycle-editor label{color:#657073;font-size:calc(12px * var(--font-scale,1));font-weight:650}.client-lifecycle-editor select{color:#3c484b;width:100%;min-width:0;height:34px;font-size:calc(12px * var(--font-scale,1));background:#fff;border:1px solid #dce3e5;border-radius:6px;padding:0 8px}.client-lifecycle-editor>div{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.client-registry-view{margin-top:4px}.registry-intro{background:linear-gradient(115deg,#f1f6f7,#fafcfc);border:1px solid #dfe7e9;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;padding:20px 22px;display:flex}.registry-intro h2{color:#263235;font:700 calc(20px * var(--font-scale,1))/1.25 "Sora", sans-serif;margin:0 0 6px}.registry-intro p:not(.eyebrow){color:#757f82;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.55}.registry-step{color:#346574;width:55px;height:55px;font:700 calc(19px * var(--font-scale,1)) "Sora", sans-serif;text-align:center;background:#e3ecef;border-radius:50%;flex:0 0 55px;place-content:center;display:grid}.registry-step small{font:700 calc(12px * var(--font-scale,1)) "Inter", sans-serif;letter-spacing:.12em}.registry-contract-form,.registry-contract-list,.registry-service-form{background:#fff;border:1px solid #e2e7e8;border-radius:9px;margin:0 0 16px;padding:19px}.registry-section-heading{justify-content:space-between;align-items:start;gap:12px;margin-bottom:15px;display:flex}.registry-section-heading h3{color:#354044;font:700 calc(15px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 4px}.registry-section-heading p{color:#818b8e;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.5}.registry-contract-card{background:#fbfcfc;border:1px solid #e7ebec;border-radius:8px;margin-top:11px;padding:14px}.registry-contract-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.registry-contract-card-head>div{gap:4px;min-width:0;display:grid}.registry-contract-card-head strong{color:#344044;font-size:calc(13px * var(--font-scale,1))}.registry-contract-card-head span,.registry-service-list span{color:#7d8689;font-size:calc(12px * var(--font-scale,1))}.registry-service-list{border-top:1px solid #e9edee;gap:8px;margin-top:13px;padding-top:12px;display:grid}.registry-service-list>div{border-left:2px solid #b7cdd4;gap:3px;padding-left:11px;display:grid}.registry-service-list strong{color:#465256;font-size:calc(12px * var(--font-scale,1))}.registry-contract-card>.muted{font-size:calc(12px * var(--font-scale,1));margin:12px 0 0}.registry-integration-note{color:#657074;font-size:calc(12px * var(--font-scale,1));background:#f3f5f6;border-radius:7px;margin:0;padding:12px 14px;line-height:1.6}.registry-empty{justify-items:start}.client-registry-profile{gap:14px;margin:0 0 18px;display:grid}.client-registry-profile>.registry-section-heading{align-items:end;margin:0}.client-registry-profile .registry-section-heading h3{font-size:calc(17px * var(--font-scale,1))}.client-registry-profile .registry-section-heading p{font-size:calc(13px * var(--font-scale,1))}.registry-client-picker,.registry-contract-picker{color:#525d61;min-width:min(340px,100%);font-size:calc(12px * var(--font-scale,1));gap:6px;font-weight:700;display:grid}.registry-client-picker select,.registry-contract-picker select{color:#344044;min-height:42px;font:inherit;background:#fff;border:1px solid #dce3e5;border-radius:7px;padding:0 12px}.registry-profile-form{background:#fff;border:1px solid #e2e7e8;border-radius:9px;margin:0;padding:20px}.registry-profile-form .registry-section-heading h4{color:#354044;font:700 calc(16px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 4px}.registry-profile-form .contract-form-grid input:disabled,.registry-profile-form textarea:disabled{color:#364144;opacity:1;background:#f8fafa}.registry-profile-form .contract-form-footer{margin-top:16px}.registry-profile-form .contract-form-footer>div{align-items:center;gap:8px;display:flex}.registry-add-client{justify-self:start}.registry-documents-section,.registry-history-section{background:#fff;border:1px solid #e2e7e8;border-radius:9px;padding:19px}.registry-document-form{grid-template-columns:minmax(160px,.65fr) minmax(240px,1.5fr) auto;align-items:end;gap:12px;margin:14px 0;display:grid}.registry-document-form label,.registry-history-form label{color:#525d61;min-width:0;font-size:calc(12px * var(--font-scale,1));gap:6px;font-weight:700;display:grid}.registry-document-form input,.registry-document-form select,.registry-history-form input,.registry-history-form select,.registry-history-form textarea{color:#344044;width:100%;min-height:41px;font:400 calc(13px * var(--font-scale,1)) "Inter", sans-serif;background:#fff;border:1px solid #dce3e5;border-radius:7px;padding:9px 11px}.registry-document-form input[type=file]{padding:7px}.registry-file-list{border-top:1px solid #e8eced;gap:1px;margin:12px 0 0;padding:0;list-style:none;display:grid}.registry-file-list li{border-bottom:1px solid #e8eced;justify-content:space-between;align-items:center;gap:12px;padding:11px 2px;display:flex}.registry-file-list li>span{gap:3px;min-width:0;display:grid}.registry-file-list strong{overflow-wrap:anywhere;color:#354044;font-size:calc(13px * var(--font-scale,1))}.registry-file-list small{color:#7d8689;font-size:calc(12px * var(--font-scale,1))}.registry-history-form{grid-template-columns:minmax(140px,.7fr) minmax(140px,.6fr) minmax(190px,1fr) minmax(220px,1.5fr) auto;align-items:end;gap:10px;margin:14px 0 18px;display:grid}.registry-history-form textarea{resize:vertical;min-height:41px}.registry-timeline{gap:0;margin:0;padding:0;list-style:none;display:grid}.registry-timeline li{border-top:1px solid #e8eced;grid-template-columns:105px 1fr;gap:13px;padding:13px 4px;display:grid}.registry-timeline time{color:#6f7a7d;font-size:calc(12px * var(--font-scale,1))}.registry-timeline li>div{gap:4px;display:grid}.registry-timeline strong{color:#354044;font-size:calc(13px * var(--font-scale,1))}.registry-timeline span{color:#346574;font-size:calc(12px * var(--font-scale,1));font-weight:700}.registry-timeline p{color:#657074;font-size:calc(13px * var(--font-scale,1));white-space:pre-wrap;margin:2px 0 0;line-height:1.5}@media (width<=900px){.registry-document-form{grid-template-columns:1fr 1fr}.registry-document-form>button{grid-column:1/-1;justify-self:start}.registry-history-form{grid-template-columns:1fr 1fr}.registry-history-form>.history-title-field,.registry-history-form>.history-details-field{grid-column:1/-1}.registry-history-form>button{justify-self:start}}@media (width<=620px){.client-registry-profile>.registry-section-heading{flex-direction:column;align-items:stretch}.registry-client-picker{min-width:0}.registry-document-form,.registry-history-form{grid-template-columns:1fr}.registry-document-form>button,.registry-history-form>.history-title-field,.registry-history-form>.history-details-field,.registry-history-form>button{grid-column:auto}.registry-file-list li{flex-direction:column;align-items:flex-start}.registry-timeline li{grid-template-columns:1fr;gap:5px}}.asset-create-panel{margin-bottom:22px;display:block}.asset-form{flex-direction:column;margin-top:17px;display:flex}.asset-form>label,.asset-form-row label{color:#586366;font-size:calc(12px * var(--font-scale,1));margin:0 0 6px;font-weight:600}.asset-form input,.asset-form select{color:#384346;width:100%;height:39px;font-size:calc(12px * var(--font-scale,1));background:#fff;border:1px solid #dfe4e5;border-radius:6px;outline:none;margin:0 0 13px;padding:0 10px}.asset-form input:focus,.asset-form select:focus{border-color:#588492;box-shadow:0 0 0 3px #285e6f1c}.asset-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.asset-form-row>div{flex-direction:column;display:flex}.asset-form-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:3px;display:flex}.asset-form-footer>span{color:#8b9396;font-size:calc(12px * var(--font-scale,1));line-height:1.5}.asset-list{background:#fff;border:1px solid #e5e8e9;border-radius:9px;overflow:hidden}.asset-row{border-bottom:1px solid #eff1f2;align-items:center;gap:12px;padding:13px 16px;display:flex}.asset-row:last-child{border-bottom:0}.asset-mark{color:#547681;width:35px;height:35px;font-size:calc(16px * var(--font-scale,1));background:#edf2f4;border-radius:8px;flex:0 0 35px;place-items:center;display:grid}.asset-description{flex:1;min-width:0}.asset-description h3{color:#374246;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;overflow:hidden}.asset-description p{color:#969d9f;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.asset-description p span{color:#bdc2c4;padding:0 4px}.asset-description a{color:#557883;text-decoration:none}.asset-description a:hover{text-decoration:underline}.classification{color:#697478;font-size:calc(12px * var(--font-scale,1));background:#eff1f2;border-radius:5px;padding:4px 7px;font-weight:700}.classification-n0{color:#446d7a;background:#e9f1f4}.classification-n1{color:#667579;background:#edf1f3}.classification-n2{color:#8a693a;background:#fbf1df}.arrow{color:#728a91;font-size:calc(13px * var(--font-scale,1))}.empty-card{text-align:center;background:#ffffffad;border:1px dashed #dce2e4;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;min-height:205px;padding:28px;display:flex}.empty-card>.spinner{margin-bottom:12px}.empty-mark{color:#658690;width:42px;height:42px;font-size:calc(20px * var(--font-scale,1));background:#eaf1f3;border-radius:50%;place-items:center;margin-bottom:11px;display:grid}.empty-card h3{color:#434e51;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 6px}.empty-card p{color:#929a9c;max-width:360px;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.6}.message{font-size:calc(12px * var(--font-scale,1));border-radius:7px;margin:12px 0;padding:11px 13px;line-height:1.5}.message.error{color:#9a463c;background:#fff3f0;border:1px solid #f1d1cb}.message.success{color:#3a6674;background:#eff6f8;border:1px solid #d4e2e6}.page-footer{color:#a9aeb0;font-size:calc(12px * var(--font-scale,1));letter-spacing:.12em;text-align:right;margin-top:46px;font-weight:700}.page-footer span{color:#cacfd0;padding:0 4px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.demand-board{padding-bottom:32px}.demand-heading-row{justify-content:space-between;align-items:center;gap:20px;padding:5px 0 20px;display:flex}.demand-heading-row h2{color:#263337;font:700 calc(20px * var(--font-scale,1)) "Sora", sans-serif;letter-spacing:-.035em;margin:0 0 5px}.demand-heading-row .muted{font-size:calc(12px * var(--font-scale,1));margin:0}.demand-toolbar{color:#778083;font-size:calc(12px * var(--font-scale,1));flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 15px;display:flex}.demand-toolbar select,.demand-field input,.demand-field select,.demand-field textarea,.status-control select,.time-entry-form input{color:#384346;background:#fff;border:1px solid #dfe4e5;border-radius:6px;outline:none}.demand-toolbar select{min-width:190px;height:34px;font-size:calc(12px * var(--font-scale,1));padding:0 10px}.demand-toolbar input[type=search]{color:#384346;min-width:210px;max-width:310px;height:34px;font-size:calc(12px * var(--font-scale,1));background:#fff;border:1px solid #dfe4e5;border-radius:6px;outline:none;flex:210px;padding:0 10px}.demand-toolbar input[type=search]:focus{border-color:#588492;box-shadow:0 0 0 3px #285e6f1a}.demand-metrics{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.demand-metrics .metric-card{width:100%;min-width:0;min-height:75px;color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e9ea;border-radius:8px;justify-content:space-between;align-items:center;gap:9px;padding:14px 16px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex}.demand-metrics .metric-card:hover,.demand-metrics .metric-card.selected{background:#f5f9fa;border-color:#83a0a9;box-shadow:inset 0 0 0 1px #83a0a9}.demand-metrics .metric-card:focus-visible{outline-offset:2px;outline:3px solid #285e6f38}.demand-metrics span{color:#7e8689;font-size:calc(12px * var(--font-scale,1))}.demand-metrics strong{color:#31545f;font:700 calc(23px * var(--font-scale,1)) "Sora", sans-serif}.demand-metrics .metric-alert{background:#fff8f6;border-color:#f0d1cb}.demand-metrics .metric-alert strong{color:#a84d42}.demand-metrics .metric-warning{background:#fffdf7;border-color:#f0e2c7}.demand-metrics .metric-warning strong{color:#9a7337}.demand-create-form{box-shadow:var(--shadow);background:#fff;border:1px solid #dce4e7;border-radius:9px;margin:0 0 20px;padding:19px}.demand-form-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.demand-form-heading h3,.section-title-row h3{color:#354044;font:700 calc(13px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 4px}.demand-form-heading p,.section-title-row p{color:#8b9396;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.5}.demand-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.demand-field{flex-direction:column;min-width:0;display:flex}.demand-field-wide{grid-column:1/-1}.demand-field label,.time-entry-form label{color:#596467;font-size:calc(12px * var(--font-scale,1));margin:0 0 6px;font-weight:600}.demand-field input,.demand-field select{width:100%;height:37px;font-size:calc(12px * var(--font-scale,1));padding:0 10px}.demand-field textarea{resize:vertical;width:100%;font-size:calc(12px * var(--font-scale,1));padding:10px;line-height:1.5}.demand-field input:focus,.demand-field select:focus,.demand-field textarea:focus,.demand-toolbar select:focus,.status-control select:focus,.time-entry-form input:focus{border-color:#588492;box-shadow:0 0 0 3px #285e6f1a}.demand-field small{color:#9aa1a3;font-size:calc(12px * var(--font-scale,1));margin-top:5px;line-height:1.4}.demand-form-actions{justify-content:space-between;align-items:center;gap:14px;margin-top:15px;display:flex}.demand-form-actions span{color:#8e9699;font-size:calc(12px * var(--font-scale,1))}.source-inbox,.kanban-section{margin-top:23px}.source-inbox>.section-title-row,.kanban-section>.section-title-row{align-items:center;margin-bottom:11px}.source-inbox>.section-title-row>span,.kanban-section>.section-title-row>span{color:#667a80;font-size:calc(12px * var(--font-scale,1));background:#edf2f4;border-radius:20px;flex:none;padding:4px 8px}.source-message-list{background:#fff;border:1px solid #e4e8e9;border-radius:8px;overflow:hidden}.source-message{border-bottom:1px solid #edf0f1;padding:13px 15px}.source-message:last-child{border-bottom:0}.source-message-meta{color:#8b9396;font-size:calc(12px * var(--font-scale,1));align-items:center;gap:10px;display:flex}.source-message-meta strong{color:#404d51;font-size:calc(12px * var(--font-scale,1))}.source-message-meta time{margin-left:auto}.source-message>p{color:#525d60;font-size:calc(12px * var(--font-scale,1));white-space:pre-wrap;margin:9px 0;line-height:1.6}.source-message-actions{flex-wrap:wrap;gap:12px;display:flex}.source-ignore-action{color:#878e90}.source-ignore-form{background:#f9fbfb;border:1px solid #e4e8e9;border-radius:6px;gap:8px;max-width:560px;margin-top:10px;padding:10px;display:grid}.source-ignore-form label{color:#596467;font-size:calc(12px * var(--font-scale,1));gap:5px;font-weight:600;display:grid}.source-ignore-form input{color:#384346;height:30px;font-size:calc(12px * var(--font-scale,1));border:1px solid #dfe4e5;border-radius:5px;padding:0 8px}.source-ignore-form>div{gap:10px;display:flex}.text-action{color:#4d7480;font-size:calc(12px * var(--font-scale,1));text-align:left;background:0 0;border:0;padding:3px 0;font-weight:700}.text-action:hover{color:var(--blue);text-decoration:underline}.demand-empty{color:#8d9699;min-height:106px;font-size:calc(12px * var(--font-scale,1));background:#ffffffb8;border:1px dashed #dce2e4;border-radius:8px;align-items:center;gap:13px;padding:19px;display:flex}.demand-empty-action{white-space:nowrap;flex:none;margin-left:auto}.demand-empty>span{color:#617d86;width:34px;height:34px;font-size:calc(16px * var(--font-scale,1));background:#eaf1f3;border-radius:50%;flex:0 0 34px;place-items:center;display:grid}.demand-empty strong{color:#4a565a;font-size:calc(12px * var(--font-scale,1));margin-bottom:4px;display:block}.demand-empty p{color:#929a9c;max-width:620px;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.55}.kanban-board{grid-auto-columns:minmax(226px,1fr);grid-auto-flow:column;align-items:start;gap:10px;padding:2px 0 12px;display:grid;overflow-x:auto}.kanban-column{background:#eff2f3;border:1px solid #e4e8e9;border-radius:8px;min-height:260px;padding:9px}.kanban-column>header{justify-content:space-between;align-items:center;margin-bottom:9px;padding:1px 2px;display:flex}.kanban-column>header h4{color:#556063;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0}.kanban-column>header span{color:#6e7a7d;min-width:20px;height:20px;font-size:calc(12px * var(--font-scale,1));background:#e0e6e8;border-radius:50%;place-items:center;font-weight:700;display:grid}.kanban-cards{flex-direction:column;gap:8px;display:flex}.demand-card{background:#fff;border:1px solid #e7eaeb;border-radius:7px;padding:11px;box-shadow:0 2px 7px #1e313706}.demand-card-overdue{border-color:#e8bbb4}.demand-card-top{justify-content:space-between;align-items:center;gap:7px;margin-bottom:8px;display:flex}.priority-chip,.overdue-chip{color:#717c80;font-size:calc(12px * var(--font-scale,1));background:#eff1f2;border-radius:4px;padding:3px 6px;font-weight:700}.priority-high{color:#936d2e;background:#faf2e4}.priority-critical,.overdue-chip{color:#a04d42;background:#fff0ed}.delivery-chip{font-size:calc(12px * var(--font-scale,1));border-radius:4px;padding:3px 6px;font-weight:700}.delivery-on-time{color:#4c6e79;background:#edf4f6}.delivery-late{color:#a04d42;background:#fff0ed}.priority-low{color:#597881;background:#edf3f5}.demand-card h5{color:#374246;font:700 calc(12px * var(--font-scale,1))/1.45 "Sora", sans-serif;margin:0 0 4px}.demand-title-button{color:#374246;width:100%;font:700 calc(12px * var(--font-scale,1))/1.45 "Sora", sans-serif;text-align:left;cursor:pointer;background:0 0;border:0;margin:0 0 4px;padding:0;display:block}.demand-title-button:hover{color:var(--blue);text-decoration:underline}.demand-detail-backdrop{z-index:50;background:#142024a3;place-items:center;padding:3vh 3vw;display:grid;position:fixed;inset:0}.demand-detail-dialog{background:#fff;border:1px solid #d9e2e5;border-radius:12px;width:min(1240px,100%);max-height:94vh;padding:26px;overflow-y:auto;box-shadow:0 24px 80px #12272d47}.demand-detail-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:17px;display:flex}.demand-detail-heading .eyebrow{margin-bottom:5px}.demand-detail-heading h3{color:#2d3c40;font:700 calc(17px * var(--font-scale,1))/1.4 "Sora", sans-serif;margin:0}.demand-detail-close{color:#687275;width:32px;height:32px;font-size:calc(20px * var(--font-scale,1));background:#fff;border:1px solid #e5e9ea;border-radius:50%;flex:0 0 32px;line-height:1}.demand-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;display:grid}.demand-detail-grid>div{background:#f9fbfb;border:1px solid #edeff0;border-radius:6px;gap:5px;min-width:0;padding:10px;display:grid}.demand-detail-grid span,.demand-detail-sources article>span{color:#8b9396;font-size:calc(12px * var(--font-scale,1))}.demand-detail-grid strong{overflow-wrap:anywhere;color:#455256;font-size:calc(12px * var(--font-scale,1))}.demand-detail-brief,.demand-detail-sources{margin-top:17px}.demand-detail-brief h4,.demand-detail-sources h4{color:#434e52;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 6px}.demand-detail-brief p,.demand-detail-sources p{color:#717c80;font-size:calc(12px * var(--font-scale,1));white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.6}.demand-detail-status{color:#667174;font-size:calc(12px * var(--font-scale,1));grid-template-columns:55px minmax(0,1fr);align-items:center;gap:8px;margin-top:16px;display:grid}.demand-detail-status>span{gap:3px;display:grid}.demand-detail-status small{color:#899396;font-size:calc(11px * var(--font-scale,1));line-height:1.4}.demand-detail-status select{color:#384346;height:34px;font-size:calc(12px * var(--font-scale,1));background:#fff;border:1px solid #dfe4e5;border-radius:6px;padding:0 9px}.demand-detail-sources article{background:#f8fafa;border:1px solid #e8edee;border-radius:6px;margin-top:8px;padding:10px}.demand-detail-sources article p{margin-top:6px}.demand-attachment-picker{background:#f8fafb;border:1px solid #e2e9eb;border-radius:7px;padding:13px}.demand-attachment-picker input,.demand-detail-attachment-form input{color:#556367;background:#fff;border:1px dashed #bfced2;border-radius:6px;width:100%;margin-top:7px;padding:9px}.demand-attachment-picker small{color:#788487;margin-top:6px;line-height:1.45;display:block}.attachment-migration-note{color:#966b27!important}.demand-selected-files{gap:5px;margin:9px 0 0;padding:0;list-style:none;display:grid}.demand-selected-files li{color:#465357;overflow-wrap:anywhere;background:#fff;border:1px solid #e8edee;border-radius:5px;justify-content:space-between;gap:10px;padding:6px 8px;display:flex}.demand-selected-files li span{color:#879093;flex:none}.demand-card-attachment-count{color:#627980}.demand-detail-attachments{background:#f9fbfb;border:1px solid #e1e8ea;border-radius:7px;margin-top:17px;padding:13px}.demand-detail-attachments-heading{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.demand-detail-attachments-heading h4{color:#434e52;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 4px}.demand-detail-attachments-heading p{color:#7f898c;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.45}.demand-detail-attachments-heading>span{color:#727e81;flex:none}.demand-attachment-list{gap:7px;margin:11px 0 0;padding:0;list-style:none;display:grid}.demand-attachment-list li{background:#fff;border:1px solid #e4e9eb;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:8px;display:flex}.demand-attachment-file{align-items:center;gap:9px;min-width:0;display:flex}.demand-attachment-icon{color:#396876;background:#edf3f5;border-radius:6px;flex:0 0 31px;place-items:center;width:31px;height:31px;display:grid}.demand-attachment-file>span:last-child{gap:3px;min-width:0;display:grid}.demand-attachment-file strong{color:#434e52;overflow-wrap:anywhere}.demand-attachment-file small{color:#879093}.demand-attachment-actions{flex:none;align-items:center;gap:6px;display:flex}.demand-attachment-open{white-space:nowrap;text-decoration:none}.demand-attachment-preview{background:#f2f6f7;border:1px solid #dce6e9;border-radius:8px;gap:10px;margin:12px 0 0;padding:12px;display:grid}.demand-attachment-preview figcaption{color:#536268;font-size:calc(13px * var(--font-scale,1));justify-content:space-between;align-items:center;gap:12px;font-weight:600;display:flex}.demand-attachment-preview img{object-fit:contain;background:#e7edef;border-radius:5px;width:100%;max-height:min(62vh,720px);display:block}.demand-attachments-empty{margin:10px 0 0}.demand-detail-attachment-form{border-top:1px solid #e9edee;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;margin-top:12px;padding-top:11px;display:grid}.demand-detail-attachment-form label{color:#626e71;display:block}.demand-detail-attachment-form p{color:#7f898c;overflow-wrap:anywhere;grid-column:1/-1;margin:0}.demand-detail-attachment-form button{white-space:nowrap}.demand-detail-actions{justify-content:flex-end;margin-top:18px;display:flex}.contract-overview{background:linear-gradient(145deg,#f4f9fa,#fff 42%);border:1px solid #dce4e7;border-radius:10px;margin:7px 0 19px;padding:18px}.contract-overview-heading{align-items:flex-start;margin:0 0 14px}.contract-overview-heading h3{color:#2e3f44;font:700 calc(15px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 5px}.contract-overview-heading p{color:#848d90;font-size:calc(12px * var(--font-scale,1));margin:0}.contract-overview-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.contract-overview-actions label{color:#778083;font-size:calc(12px * var(--font-scale,1))}.contract-overview-actions input,.contract-form-grid input,.contract-form-grid select,.contract-form-grid textarea{color:#384346;min-width:0;font-size:calc(12px * var(--font-scale,1));background:#fff;border:1px solid #dfe4e5;border-radius:6px;outline:none}.contract-overview-actions input{height:34px;padding:0 8px}.contract-expiry-alerts{background:#fffaf0;border:1px solid #ead9ac;border-radius:8px;margin:0 0 14px;padding:12px 14px}.contract-expiry-heading{color:#6e5729;font-size:calc(12px * var(--font-scale,1));justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.contract-expiry-heading>span{color:#927644;font-size:calc(12px * var(--font-scale,1))}.contract-expiry-list{gap:6px;display:grid}.contract-expiry-item{background:#ffffffb3;border-radius:6px;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;display:grid}.contract-expiry-dot{background:#d39a32;border-radius:50%;width:7px;height:7px}.contract-expiry-item>div{gap:3px;min-width:0;display:grid}.contract-expiry-item strong{color:#4e493d;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contract-expiry-item span:not(.contract-expiry-dot){color:#8a806c;font-size:calc(12px * var(--font-scale,1))}.contract-expiry-item b{color:#8b692b;font-size:calc(12px * var(--font-scale,1));white-space:nowrap}.contract-expiry-item.expired{background:#fff3f1}.contract-expiry-item.expired .contract-expiry-dot{background:#c85d4e}.contract-expiry-item.expired b{color:#a34537}.contract-create-form{background:#fff;border:1px solid #e1e7e9;border-radius:8px;margin:0 0 13px;padding:15px}.contract-create-form h4{color:#3b484c;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 12px}.contract-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.contract-form-grid label{color:#5d686b;min-width:0;font-size:calc(12px * var(--font-scale,1));gap:5px;font-weight:600;display:grid}.contract-form-grid input,.contract-form-grid select{width:100%;height:34px;padding:0 8px}.contract-form-grid textarea{resize:vertical;width:100%;padding:8px}.contract-description-field{grid-column:1/-1}.contract-form-footer{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.contract-form-footer span{color:#8b9396;font-size:calc(12px * var(--font-scale,1));line-height:1.5}.contract-form-footer>div{align-items:center;gap:8px;display:flex}.contract-list{gap:7px;margin:12px 0;display:grid}.contract-summary-card{background:#fff;border:1px solid #e7ebec;border-radius:7px;padding:10px 12px}.contract-summary-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.contract-summary-header>div{gap:4px;min-width:0;display:grid}.contract-summary-header strong{color:#465357;font-size:calc(12px * var(--font-scale,1))}.contract-summary-header span{color:#929a9c;font-size:calc(12px * var(--font-scale,1))}.contract-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:13px 0 18px;display:grid}.contract-metric-card{color:#5d686b;text-align:left;cursor:pointer;background:#fff;border:1px solid #e3e8e9;border-radius:8px;align-content:start;gap:7px;min-width:0;min-height:105px;padding:12px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.contract-metric-card:hover{border-color:#9bb2b9;transform:translateY(-1px);box-shadow:0 4px 14px #243f4712}.contract-metric-card:focus-visible,.contract-service-toggle:focus-visible{outline-offset:2px;outline:2px solid #4c7e8d}.contract-metric-card.selected{background:#f5f9fa;border-color:#4e7d8b;box-shadow:inset 0 0 0 1px #4e7d8b}.contract-metric-card>span{color:#7d8689;font-size:calc(12px * var(--font-scale,1));font-weight:700}.contract-metric-card>strong{color:#2e4349;font:700 clamp(calc(13px * var(--font-scale,1)), calc(1.3vw * var(--font-scale,1)), calc(17px * var(--font-scale,1))) "Sora", sans-serif;overflow-wrap:anywhere;line-height:1.35}.contract-metric-card>small{color:#92999b;font-size:calc(12px * var(--font-scale,1))}.contract-metric-card.metric-requested>strong{color:#876b32}.contract-metric-card.metric-approved>strong{color:#47707c}.contract-metric-card.metric-remaining>strong{color:#476986}.contract-service-heading{justify-content:space-between;align-items:center;gap:10px;margin:3px 0 10px;display:flex}.contract-service-heading>div{align-items:baseline;gap:8px;display:flex}.contract-service-heading h4{color:#404e52;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0}.contract-service-heading span{color:#8e9699;font-size:calc(12px * var(--font-scale,1))}.contract-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.contract-service-card{background:#fff;border:1px solid #e4e9ea;border-radius:8px;min-width:0;padding:11px}.contract-service-card.service-card-overdue{background:#fffdfc;border-color:#eed0ca}.contract-service-toggle{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto 20px;align-items:start;gap:8px;width:100%;padding:0;display:grid}.contract-service-toggle>span:first-child{gap:4px;min-width:0;display:grid}.contract-service-toggle strong{color:#404e52;font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere;line-height:1.4}.contract-service-toggle small{color:#8e9699;font-size:calc(12px * var(--font-scale,1));line-height:1.4}.contract-service-chevron{color:#6a8087;font-size:calc(18px * var(--font-scale,1));text-align:center;line-height:1}.contract-service-status{font-size:calc(12px * var(--font-scale,1));white-space:nowrap;border-radius:12px;padding:4px 6px;font-weight:700}.contract-service-status.status-late{color:#ad5146;background:#fae9e6}.contract-service-status.status-complete{color:#47707c;background:#eaf2f4}.contract-service-status.status-open{color:#8a6d31;background:#fbf3de}.contract-service-metrics{border-top:1px solid #edeff0;border-bottom:1px solid #edeff0;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:11px;padding:9px 0;display:grid}.contract-service-metrics>div{align-content:start;gap:4px;min-width:0;display:grid}.contract-service-metrics span,.contract-service-deadline>span{color:#8b9396;font-size:calc(12px * var(--font-scale,1))}.contract-service-metrics strong,.contract-service-deadline strong{color:#535e62;font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere}.contract-service-metrics small{color:#ad5146;font-size:calc(12px * var(--font-scale,1));line-height:1.3}.contract-service-deadline{flex-wrap:wrap;align-items:baseline;gap:5px 8px;padding-top:8px;display:flex}.contract-service-deadline p{color:#878f92;width:100%;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.45}.contract-service-allocations{border-top:1px solid #edeff0;margin-top:9px;padding-top:9px}.contract-service-allocations h5{color:#657074;font-size:calc(12px * var(--font-scale,1));margin:0 0 7px}.contract-service-allocations>p{font-size:calc(12px * var(--font-scale,1));margin:4px 0}.contract-service-allocations .contract-allocation-row{border-bottom:1px solid #f0f2f3;align-items:center;padding:5px 0}.contract-service-allocations .contract-allocation-row:last-child{border-bottom:0}.contract-overage{color:#ad5146}.contract-allocation-row{justify-content:space-between;align-items:flex-start;gap:6px;margin-bottom:5px;display:flex}.contract-allocation-row:last-child{margin-bottom:0}.contract-allocation-row>span{color:#626e71;max-width:180px;font-size:calc(12px * var(--font-scale,1));line-height:1.4}.contract-unassigned-note{background:#fffdf7;border:1px solid #f0e2c7;border-radius:6px;flex-wrap:wrap;gap:4px 16px;margin-top:11px;padding:10px 12px;display:flex}.contract-unassigned-note strong{color:#88662e;font-size:calc(12px * var(--font-scale,1))}.contract-unassigned-note span{color:#95876d;width:100%;font-size:calc(12px * var(--font-scale,1))}.contract-unassigned-note>div{flex-wrap:wrap;gap:8px 14px;width:100%;display:flex}.client-contract-overview{margin-top:15px}.client-contract-list{gap:8px;display:grid}.client-contract-row{background:#fff;border:1px solid #e4e9ea;border-radius:8px;grid-template-columns:minmax(130px,1.25fr) repeat(4,minmax(78px,.8fr)) minmax(210px,1.8fr);align-items:center;gap:9px;padding:10px;transition:border-color .15s,background .15s;display:grid}.client-contract-row.selected{background:#f8fafb;border-color:#81a0a9}.client-contract-name{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;gap:4px;padding:4px 3px;display:grid}.client-contract-name strong{color:#404e52;font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere}.client-contract-name span{color:#8e9699;font-size:calc(12px * var(--font-scale,1))}.client-contract-value{gap:5px;min-width:0;display:grid}.client-contract-value>span{color:#8b9396;font-size:calc(12px * var(--font-scale,1));font-weight:700}.client-contract-value>strong{color:#525e62;font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere;line-height:1.4}.client-contract-statuses{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.client-status-chip{color:#757e81;font-size:calc(12px * var(--font-scale,1));cursor:pointer;background:#fbfcfc;border:1px solid #e4e9ea;border-radius:14px;align-items:center;gap:5px;padding:5px 7px;display:inline-flex}.client-status-chip strong{color:#525e62;font-size:calc(12px * var(--font-scale,1))}.client-status-chip:hover:not(:disabled),.client-status-chip.selected{color:#355863;background:#f0f5f7;border-color:#8ea7af}.client-status-chip.status-chip-late{color:#ad5146;background:#fff9f8;border-color:#f0d5cf}.client-status-chip.status-chip-late strong{color:#ad5146}.client-status-chip:disabled{opacity:.45;cursor:default}.client-contract-name:focus-visible,.client-status-chip:focus-visible,.client-service-open:focus-visible,.contract-task-card:focus-visible{outline-offset:2px;outline:2px solid #4c7e8d}.selected-client-contract{background:#fbfdfd;border:1px solid #dce4e7;border-radius:9px;margin-top:12px;padding:14px}.selected-client-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.selected-client-heading .eyebrow{font-size:calc(12px * var(--font-scale,1));margin-bottom:4px}.selected-client-heading h4{color:#35464b;font:700 calc(13px * var(--font-scale,1)) "Sora", sans-serif;margin:0}.selected-client-heading span{color:#899194;font-size:calc(12px * var(--font-scale,1));margin-top:4px;display:block}.selected-contract-versions{gap:5px;margin-bottom:9px;display:grid}.selected-contract-versions article{background:#fff;border:1px solid #e4e9ea;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:8px 9px;display:flex}.selected-contract-versions article>div{gap:4px;min-width:0;display:grid}.selected-contract-versions strong{color:#535e62;font-size:calc(12px * var(--font-scale,1))}.selected-contract-versions span{color:#92999b;font-size:calc(12px * var(--font-scale,1))}.client-service-list{gap:6px;display:grid}.client-service-row{background:#fff;border:1px solid #e5eaeb;border-radius:7px;min-width:0;padding:9px}.client-service-row.service-card-overdue{border-color:#efd5cf}.client-service-open{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(140px,1.5fr) repeat(4,minmax(75px,.8fr)) auto 18px;align-items:center;gap:9px;width:100%;padding:0;display:grid}.client-service-open>span:first-child{gap:4px;min-width:0;display:grid}.client-service-open>span:first-child strong{color:#465357;font-size:calc(12px * var(--font-scale,1))}.client-service-open>span:first-child small,.client-service-volume small{color:#92999b;font-size:calc(12px * var(--font-scale,1))}.client-service-volume{gap:4px;min-width:0;display:grid}.client-service-volume strong{color:#5a6569;font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere}.selected-client-demands{margin-top:13px}.selected-client-demands-heading{justify-content:space-between;align-items:center;gap:9px;margin-bottom:8px;display:flex}.selected-client-demands-heading>div{align-items:baseline;gap:8px;display:flex}.selected-client-demands-heading h5{color:#465357;font-size:calc(12px * var(--font-scale,1));margin:0}.selected-client-demands-heading span{color:#899194;font-size:calc(12px * var(--font-scale,1))}.contract-task-list{gap:6px;display:grid}.contract-task-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e6eaeb;border-radius:6px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;width:100%;padding:9px 10px;display:grid}.contract-task-card:hover{border-color:#a9bec5}.contract-task-card>span:first-child{gap:4px;min-width:0;display:grid}.contract-task-card strong{color:#49565a;font-size:calc(12px * var(--font-scale,1));overflow-wrap:anywhere}.contract-task-card small{color:#92999b;font-size:calc(12px * var(--font-scale,1))}.task-status-label,.task-scope-label{color:#737d80;font-size:calc(12px * var(--font-scale,1));white-space:nowrap}.task-status-label.task-status-late{color:#ad5146;font-weight:700}.task-scope-label{background:#f0f2f3;border-radius:10px;padding:4px 6px}.allocation-form-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.allocation-form-heading label{margin:0}.allocation-draft-list{gap:7px;display:grid}.allocation-draft-row{grid-template-columns:minmax(180px,1fr) 100px auto;gap:7px;display:grid}.allocation-draft-row select,.allocation-draft-row input,.detail-allocation-form select,.detail-allocation-form input{color:#384346;min-width:0;height:32px;font-size:calc(12px * var(--font-scale,1));background:#fff;border:1px solid #dfe4e5;border-radius:5px;padding:0 8px}.allocation-empty{color:#899194;font-size:calc(12px * var(--font-scale,1));border:1px dashed #dfe4e5;border-radius:6px;padding:9px 10px}.demand-detail-contract{margin-top:17px}.demand-detail-contract>h4{color:#434e52;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 8px}.demand-detail-help{color:#7d898d;font-size:calc(12px * var(--font-scale,1));margin:0 0 9px;line-height:1.5}.demand-detail-allocation{background:#f8fafa;border:1px solid #e8edee;border-radius:6px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;padding:9px;display:flex}.demand-detail-allocation>div{gap:4px;display:grid}.demand-detail-allocation>div strong{color:#4b575b;font-size:calc(12px * var(--font-scale,1))}.demand-detail-allocation>div span{color:#878f92;font-size:calc(12px * var(--font-scale,1))}.demand-detail-allocation form{align-items:end;gap:6px;display:flex}.demand-detail-allocation form label{color:#828d90;font-size:calc(12px * var(--font-scale,1));gap:3px;display:grid}.demand-detail-allocation form input{width:76px;height:28px;font-size:calc(12px * var(--font-scale,1));border:1px solid #dfe4e5;border-radius:5px;padding:0 5px}.detail-allocation-form{grid-template-columns:minmax(0,1fr) 100px auto;align-items:end;gap:7px;margin:10px 0;display:grid}.detail-allocation-form label{color:#788285;font-size:calc(12px * var(--font-scale,1));gap:4px;display:grid}.demand-client-name{color:#6e838a;font-size:calc(12px * var(--font-scale,1));margin:0 0 8px;font-weight:700}.demand-brief{color:#878f91;font-size:calc(12px * var(--font-scale,1));-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 9px;line-height:1.45;display:-webkit-box;overflow:hidden}.demand-card-stats{color:#8a9295;font-size:calc(12px * var(--font-scale,1));border-top:1px solid #eff1f2;border-bottom:1px solid #eff1f2;gap:5px;margin:9px 0;padding:8px 0;display:grid}.demand-card-stats strong{color:#5b6669;font-weight:700}.status-control{color:#8a9295;font-size:calc(12px * var(--font-scale,1));grid-template-columns:46px minmax(0,1fr);align-items:center;gap:5px;display:grid}.status-control select{width:100%;height:28px;font-size:calc(12px * var(--font-scale,1));padding:0 6px}.time-entry-toggle{margin-top:7px}.time-entry-form{border-top:1px solid #eceff0;gap:7px;margin-top:9px;padding-top:9px;display:grid}.time-entry-form label{font-size:calc(12px * var(--font-scale,1));grid-template-columns:55px minmax(0,1fr);align-items:center;gap:5px;display:grid}.time-entry-form input{width:100%;height:28px;font-size:calc(12px * var(--font-scale,1));padding:0 6px}.time-entry-form>div{gap:9px;display:flex}.small-primary,.small-quiet{color:#2c5b69;font-size:calc(12px * var(--font-scale,1));background:#edf3f5;border:1px solid #dce4e7;border-radius:5px;padding:5px 8px;font-weight:700}.small-quiet{color:#878f92;background:0 0;border-color:#0000}@media (width<=900px){.login-screen{grid-template-columns:1fr}.login-aside{min-height:270px;padding:25px 28px}.login-message{padding:35px 0 20px}.login-message h1{font-size:calc(37px * var(--font-scale,1))}.aside-footer{display:none}.login-panel{min-height:500px;padding:42px 28px}.login-form-wrap{margin:0 auto}.login-legal{margin-top:34px}.sidebar{flex-basis:205px;width:205px}.main-content{width:calc(100% - 205px);padding:0 28px 26px}.create-panel{flex-direction:column;align-items:stretch;gap:16px}.client-toolbar,.client-toolbar-readonly{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.client-toolbar .panel-intro{grid-column:1/-1}.client-toolbar .primary-button{justify-self:start}.inline-form{width:100%}.demand-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.kanban-board{grid-auto-columns:minmax(236px,42vw)}.contract-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-overview-heading{flex-direction:column}.contract-overview-actions{width:100%}.client-contract-row{grid-template-columns:repeat(4,minmax(0,1fr))}.client-contract-name,.client-contract-statuses{grid-column:1/-1}.client-service-open{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.client-service-open>span:first-child{grid-column:1/-1}.contract-task-card{grid-template-columns:minmax(0,1fr) auto}.task-scope-label{grid-column:2}}@media (width<=620px){.client-toolbar,.client-toolbar-readonly{grid-template-columns:minmax(0,1fr)}.client-toolbar .panel-intro{grid-column:auto}.client-toolbar .primary-button{width:100%}.sidebar{flex-basis:62px;align-items:center;width:62px;height:auto;min-height:100vh;padding:16px 6px;position:static}.sidebar>.brand{padding:0 0 28px}.brand:not(.brand-light) .brand-name{display:none}.sidebar .workspace-label,.sidebar .nav-link:not(.selected),.sidebar .nav-link.selected{font-size:0}.sidebar .nav-link{justify-content:center;width:42px;padding:0}.sidebar nav{align-items:center}.sidebar-bottom{justify-content:center;width:100%;padding:13px 0 0;font-size:0;overflow:hidden}.main-content{width:calc(100% - 62px);padding:0 16px 20px}.topbar{min-height:60px}.user-copy{display:none}.text-button{margin-left:0}.password-action-button{min-height:32px;font-size:calc(12px * var(--font-scale,1));margin-left:0;padding:0 8px}.password-panel{grid-template-columns:1fr;gap:14px}.password-form{flex-direction:column;align-items:stretch}.password-form .primary-button{width:100%}.user-menu{flex-wrap:wrap;justify-content:flex-end}.page-heading{flex-direction:column;align-items:flex-start;gap:17px;padding:28px 0 21px}.page-heading h1{font-size:calc(27px * var(--font-scale,1))}.client-count{gap:7px}.create-panel{padding:15px}.inline-form{flex-direction:column}.inline-form .primary-button{min-height:41px}.asset-form-row{grid-template-columns:1fr;gap:0}.asset-form-footer{flex-direction:column;align-items:stretch}.asset-form-footer .primary-button{width:100%}.asset-row{padding:12px 10px}.client-grid{grid-template-columns:1fr}.demand-heading-row{flex-direction:column;align-items:flex-start}.demand-toolbar{flex-direction:column;align-items:stretch}.demand-toolbar select,.demand-toolbar input[type=search]{width:100%;min-width:0;max-width:none}.demand-form-grid{grid-template-columns:1fr}.demand-field-wide{grid-column:auto}.demand-form-actions{flex-direction:column;align-items:stretch}.demand-form-actions .primary-button{width:100%}.kanban-board{grid-auto-columns:minmax(250px,82vw)}.source-message-meta{flex-wrap:wrap;gap:5px 8px}.source-message-meta time{width:100%;margin-left:0}.demand-detail-backdrop{padding:10px}.demand-detail-dialog{width:100%;max-height:calc(100dvh - 20px);padding:16px}.demand-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demand-detail-attachment-form{grid-template-columns:1fr}.demand-detail-attachment-form button{width:100%;min-height:40px}.demand-attachment-list li{flex-direction:column;align-items:flex-start}.demand-attachment-actions{flex-wrap:wrap}.contract-overview{padding:13px}.contract-overview-actions{flex-direction:column;align-items:stretch}.contract-overview-actions input,.contract-overview-actions .primary-button{width:100%}.contract-expiry-item{grid-template-columns:8px minmax(0,1fr)}.contract-expiry-item b{grid-column:2}.client-contract-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:9px}.client-contract-name,.client-contract-statuses{grid-column:1/-1}.client-contract-statuses{gap:4px}.client-status-chip{padding:5px 6px}.selected-client-contract{padding:11px}.selected-client-heading{align-items:flex-start}.selected-client-heading .small-quiet{flex-shrink:0}.selected-contract-versions article{align-items:flex-start}.selected-contract-versions article .text-action{flex-shrink:0}.client-service-open{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.client-service-open>span:first-child{grid-column:1/-1}.contract-task-card{grid-template-columns:minmax(0,1fr) auto}.task-scope-label{grid-column:2}.selected-client-demands-heading{align-items:flex-start}.selected-client-demands-heading>div{flex-direction:column;align-items:flex-start;gap:3px}.contract-form-grid{grid-template-columns:1fr}.contract-description-field{grid-column:auto}.contract-form-footer,.contract-summary-header{flex-direction:column;align-items:stretch}.contract-form-footer .primary-button{width:100%}.contract-form-footer>div{flex-direction:column;align-items:stretch}.allocation-draft-row{grid-template-columns:minmax(0,1fr) 78px auto}.detail-allocation-form{grid-template-columns:1fr 85px}.detail-allocation-form button{grid-column:1/-1}.demand-detail-allocation{flex-direction:column;align-items:stretch}.demand-detail-allocation form{justify-content:space-between}.setup-card{padding:26px 21px}}.demand-board :is(p,span,small,label,button,input,select,textarea,strong,time){font-size:clamp(calc(12px * var(--font-scale,1)), calc(.82vw * var(--font-scale,1)), calc(13px * var(--font-scale,1)))!important}.demand-board .contract-register-button{min-height:42px;padding:0 15px;font-weight:700}.demand-board .metric-filter-result{scroll-margin-top:24px}@media (width<=620px){.demand-board :is(p,span,small,label,button,input,select,textarea,strong,time){font-size:clamp(calc(12px * var(--font-scale,1)), calc(3vw * var(--font-scale,1)), calc(13px * var(--font-scale,1)))!important}.demand-board .contract-register-button{white-space:normal;min-height:46px}.demand-metrics .metric-card{flex-direction:column;align-items:flex-start;min-height:82px;padding:12px}}.access-admin{gap:22px;display:grid}.access-admin-intro{background:linear-gradient(115deg,#f1f6f7,#fafcfc);border:1px solid #dfe7e9;border-radius:10px;padding:19px 22px}.access-admin-intro h2{color:#354044;font:700 calc(19px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 7px}.access-admin-intro p:last-child{color:#788285;max-width:720px;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.6}.access-invite-note,.access-membership-panel{background:#fff;border:1px solid #e3e8e9;border-radius:9px;padding:17px 19px}.access-invite-note{background:#f3f7f8;border-color:#dfe7e9}.access-invite-note strong{color:#404f54;font-size:calc(12px * var(--font-scale,1))}.access-invite-note p{color:#747d80;font-size:calc(12px * var(--font-scale,1));margin:6px 0 0;line-height:1.6}.access-invite-form{grid-template-columns:minmax(200px,1fr) minmax(240px,1.3fr) auto;align-items:end;gap:11px;display:grid}.access-invite-form label{color:#5b6669;min-width:0;font-size:calc(12px * var(--font-scale,1));gap:6px;font-weight:650;display:grid}.access-invite-form input{color:#404c50;width:100%;min-width:0;height:40px;font:500 calc(12px * var(--font-scale,1)) "Inter", sans-serif;background:#fff;border:1px solid #dce2e4;border-radius:7px;padding:0 10px}.access-invite-form .primary-button{white-space:nowrap}.access-email-origin-note{color:#788184;font-size:calc(12px * var(--font-scale,1));margin:12px 0 0;line-height:1.6}.access-create-form{grid-template-columns:minmax(220px,1.3fr) minmax(170px,1fr) auto;align-items:end;gap:11px;display:grid}.access-create-form label,.access-row>label,.access-members-list .section-title-row label{color:#5b6669;min-width:0;font-size:calc(12px * var(--font-scale,1));gap:6px;font-weight:650;display:grid}.access-create-form select,.access-row select,.access-members-list .section-title-row select{color:#404c50;width:100%;min-width:0;height:40px;font:500 calc(12px * var(--font-scale,1)) "Inter", sans-serif;background:#fff;border:1px solid #dce2e4;border-radius:7px;padding:0 10px}.access-create-form .primary-button{white-space:nowrap}.access-client-picker{border:1px solid #e4e8e9;border-radius:8px;grid-column:1/-1;gap:10px;min-width:0;margin:0;padding:12px 14px;display:grid}.access-client-picker legend{color:#5b6669;font-size:calc(12px * var(--font-scale,1));padding:0 5px;font-weight:700}.access-client-picker input{accent-color:#215a6b}.access-select-all,.access-client-options label{color:#535e61;font-size:calc(12px * var(--font-scale,1));align-items:center;gap:8px;display:flex}.access-select-all{font-weight:700}.access-client-options{flex-wrap:wrap;gap:9px 18px;display:flex}.access-client-empty{color:#788184;font-size:calc(12px * var(--font-scale,1));margin:0}.access-members-list{margin-top:3px}.access-members-list .section-title-row{align-items:end}.access-members-list .section-title-row label{min-width:min(100%,250px)}.access-list{gap:8px;display:grid}.access-row{background:#fff;border:1px solid #e4e8e9;border-radius:8px;grid-template-columns:minmax(200px,1.3fr) minmax(190px,.9fr) minmax(210px,auto);align-items:center;gap:14px;padding:12px 14px;display:grid}.access-row-inactive{background:#f7f8f8}.access-person{gap:4px;min-width:0;display:grid}.access-person strong{color:#39474b;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;overflow:hidden}.access-person span{color:#788184;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;overflow:hidden}.access-person small{color:#9aa1a3;font-size:calc(12px * var(--font-scale,1))}.access-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.access-profile-form{grid-template-columns:minmax(170px,.9fr) minmax(220px,1.4fr) auto;align-items:end;gap:12px;display:grid}.access-profile-form>label,.access-search{color:#5b6669;min-width:0;font-size:calc(12px * var(--font-scale,1));gap:6px;font-weight:650;display:grid}.access-profile-form input,.access-profile-form select,.access-search input{color:#404c50;width:100%;min-width:0;min-height:40px;font:500 calc(12px * var(--font-scale,1)) "Inter", sans-serif;background:#fff;border:1px solid #dce2e4;border-radius:7px;padding:8px 10px}.access-profile-form label small{color:#899193;font-size:calc(12px * var(--font-scale,1));font-weight:400;line-height:1.4}.access-profile-form-actions{align-items:center;gap:8px;display:flex}.access-client-dropdown{align-content:start}.access-client-select{position:relative}.access-client-select summary{color:#404c50;cursor:pointer;min-height:40px;font-size:calc(12px * var(--font-scale,1));background:#fff;border:1px solid #dce2e4;border-radius:7px;justify-content:space-between;align-items:center;padding:0 12px;list-style:none;display:flex}.access-client-select summary::-webkit-details-marker{display:none}.access-client-select summary:after{content:"⌄";color:#778184;font-size:calc(14px * var(--font-scale,1))}.access-client-dropdown-menu{z-index:5;background:#fff;border:1px solid #dce2e4;border-radius:8px;gap:9px;width:min(100%,430px);max-height:250px;padding:12px;display:grid;position:absolute;top:calc(100% + 5px);left:0;overflow-y:auto;box-shadow:0 12px 30px #25363b1c}.access-client-dropdown-menu label{color:#535e61;font-size:calc(12px * var(--font-scale,1));align-items:center;gap:8px;font-weight:500;display:flex}.access-client-dropdown-menu input{accent-color:#215a6b}.access-selected-clients{flex-wrap:wrap;gap:5px;display:flex}.access-selected-clients span{color:#385f6b;font-size:calc(12px * var(--font-scale,1));background:#edf3f5;border-radius:20px;padding:4px 8px}.access-client-dropdown>small{color:#788184;font-size:calc(12px * var(--font-scale,1));line-height:1.5}.access-permission-panel .registry-section-heading{align-items:end}.access-search{min-width:min(100%,230px)}.access-permission-table-wrap{border:1px solid #e4e8e9;border-radius:8px;max-width:100%;overflow:auto}.access-permission-table{border-collapse:collapse;text-align:left;width:100%;min-width:760px}.access-permission-table th,.access-permission-table td{color:#596366;font-size:calc(12px * var(--font-scale,1));border-bottom:1px solid #edeff0;padding:10px 12px}.access-permission-table thead th{z-index:2;white-space:nowrap;background:#f7f9f9;position:sticky;top:0}.access-permission-table thead th:first-child{z-index:3;min-width:235px;left:0}.access-permission-table tbody th{z-index:1;background:#fff;min-width:235px;font-weight:500;position:sticky;left:0}.access-permission-table tbody th strong,.access-permission-table tbody th span{display:block}.access-permission-table tbody th strong{color:#354448;font-size:calc(12px * var(--font-scale,1));margin-bottom:3px}.access-permission-module-start th,.access-permission-module-start td{border-top:2px solid #e5eaeb}.access-profile-column{color:#667073;max-width:160px;font:700 calc(12px * var(--font-scale,1)) "Inter", sans-serif;white-space:normal;text-align:left;background:0 0;border:0;border-radius:5px;padding:4px 6px}.access-profile-column.selected{color:#1f5566;background:#eaf1f3}.access-permission-toggle{color:#838d90;font-size:calc(12px * var(--font-scale,1));white-space:nowrap;justify-content:center;align-items:center;gap:6px;display:flex}.access-permission-toggle input{accent-color:#215a6b;width:17px;height:17px}.access-permission-toggle:has(input:checked){color:#285866;font-weight:700}.access-profile-actions{gap:6px;margin-top:13px;display:grid}.access-profile-actions>div{border:1px solid #edeff0;border-radius:7px;align-items:center;gap:8px;padding:8px 10px;display:flex}.access-profile-actions>div>span{color:#465256;font-size:calc(12px * var(--font-scale,1));flex-wrap:wrap;flex:1;align-items:center;gap:8px;display:flex}.access-profile-actions small{color:#899193;font-size:calc(12px * var(--font-scale,1))}@media (width<=900px){.access-create-form{grid-template-columns:1fr 1fr}.access-create-form>button{justify-self:start}.access-invite-form{grid-template-columns:1fr 1fr}.access-invite-form>button{justify-self:start}.access-row{grid-template-columns:1fr 1fr}.access-person{grid-column:1/-1}.access-row-actions{grid-column:1/-1;justify-content:flex-start}.access-profile-form{grid-template-columns:1fr 1fr}.access-profile-form-actions{grid-column:1/-1}}@media (width<=560px){.access-create-form,.access-invite-form,.access-row,.access-profile-form{grid-template-columns:1fr}.access-create-form>button,.access-invite-form>button,.access-person,.access-row-actions,.access-profile-form-actions{grid-column:auto}.access-members-list .section-title-row{flex-direction:column;align-items:stretch;gap:10px}.access-permission-panel .registry-section-heading{flex-direction:column;align-items:stretch}}.client-approval-inbox{background:linear-gradient(135deg,#f4f8f9 0%,#fff 74%);border:1px solid #d8e3e6;border-radius:10px;margin:0 0 20px;overflow:hidden;box-shadow:0 4px 16px #203a4209}.client-approval-heading{justify-content:space-between;align-items:center;gap:16px;padding:15px 17px 12px;display:flex}.client-approval-heading .eyebrow{color:#577983;font-size:calc(12px * var(--font-scale,1));margin:0 0 4px}.client-approval-heading h3{color:#314247;font:700 calc(13px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 4px}.client-approval-heading p:last-child{color:#879295;font-size:calc(12px * var(--font-scale,1));margin:0}.client-approval-heading>span{color:#285867;width:30px;height:30px;font-size:calc(12px * var(--font-scale,1));background:#e4edf0;border-radius:50%;flex:0 0 30px;place-items:center;font-weight:800;display:grid}.client-approval-list{gap:7px;padding:0 12px 12px;display:grid}.client-approval-item{color:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8ea;border-radius:7px;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:10px 12px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.client-approval-item:hover{border-color:#94adb5;transform:translateY(-1px);box-shadow:0 4px 12px #203a4212}.client-approval-mark{color:#396573;width:28px;height:28px;font-size:calc(14px * var(--font-scale,1));background:#e9f1f3;border-radius:6px;place-items:center;font-weight:800;display:grid}.client-approval-copy{gap:4px;min-width:0;display:grid}.client-approval-copy strong{color:#39464a;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-approval-copy small{color:#889194;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-approval-files,.client-approval-open{color:#727e81;font-size:calc(12px * var(--font-scale,1));white-space:nowrap}.client-approval-open{color:#275b6b;font-weight:750}.client-approval-empty{color:#858e91;font-size:calc(12px * var(--font-scale,1));padding:0 17px 15px}.kanban-column{background:#eef0f1;border-color:#e2e6e7;padding:10px}.kanban-column>header{margin-bottom:10px}.kanban-column>header h4{color:#465255;font-size:calc(12px * var(--font-scale,1))}.status-column-client_review{background:#edf2f4;border-color:#d4e1e5}.status-column-client_review>header h4{color:#2e5e6c}.status-column-client_review>header span{color:#2e5e6c;background:#d9e6ea}.demand-card{border-color:#e6e9ea;border-radius:8px;padding:11px;transition:border-color .15s,box-shadow .15s,transform .15s;box-shadow:0 2px 7px #1e31370d}.demand-card:hover{border-color:#cad5d9;transform:translateY(-1px);box-shadow:0 6px 15px #1e313714}.demand-card-review{border-left:3px solid #4a7987}.demand-card-labels{flex-wrap:wrap;gap:5px;min-width:0;display:flex}.demand-card-top{align-items:flex-start}.demand-card-top .priority-chip,.demand-card-top .task-scope-label{font-size:calc(12px * var(--font-scale,1));border-radius:4px;padding:4px 6px}.task-scope-contracted{color:#356573;background:#e9f1f3}.task-scope-extra{color:#895f32;background:#f8efdf}.task-scope-unclassified{color:#697477;background:#eef0f1}.demand-card .demand-title-button{color:#344044;font-size:calc(12px * var(--font-scale,1));margin:0 0 5px;line-height:1.5}.demand-card .demand-client-name{color:#6d8288;font-size:calc(12px * var(--font-scale,1));margin-bottom:6px}.demand-card .demand-brief{font-size:calc(12px * var(--font-scale,1));margin-bottom:5px}.demand-card-footer{border-top:1px solid #eff1f2;align-items:center;gap:9px;min-height:27px;margin-top:8px;padding-top:7px;display:flex}.demand-card-member{color:#385f6b;width:22px;height:22px;font-size:calc(12px * var(--font-scale,1));background:#e6eef0;border-radius:50%;flex:0 0 22px;place-items:center;font-weight:800;display:grid}.demand-card-due,.demand-card-counter{color:#788184;font-size:calc(12px * var(--font-scale,1));white-space:nowrap}.demand-card-due.is-overdue{color:#a64b40;font-weight:750}.demand-card-review-action{color:#2e606f;width:100%;font-size:calc(12px * var(--font-scale,1));text-align:left;cursor:pointer;background:#eef4f6;border:1px solid #d6e3e7;border-radius:5px;margin-top:8px;padding:7px 8px;font-weight:750}.demand-card-review-action:hover{background:#e4edf0;border-color:#9cb5bd}.demand-review-panel{background:#f5f9fa;border:1px solid #d6e2e6;border-radius:8px;gap:10px;margin-top:17px;padding:14px;display:grid}.demand-review-panel .eyebrow{color:#587983;font-size:calc(12px * var(--font-scale,1));margin:0 0 4px}.demand-review-panel h4{color:#354c53;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 4px}.demand-review-panel p:not(.eyebrow){color:#788487;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.55}.demand-review-panel label{color:#59666a;font-size:calc(12px * var(--font-scale,1));gap:5px;font-weight:650;display:grid}.demand-review-panel textarea{resize:vertical;color:#394549;width:100%;font:400 calc(12px * var(--font-scale,1)) "Inter", sans-serif;background:#fff;border:1px solid #dce4e6;border-radius:6px;outline:none;padding:8px}.demand-review-panel textarea:focus{border-color:#7598a3;box-shadow:0 0 0 3px #285e6f1a}.demand-review-buttons{justify-content:flex-end;gap:8px;display:flex}.demand-review-buttons .small-quiet{color:#9d5549;background:#fff7f5;border:1px solid #edd9d3}.demand-review-history{margin-top:17px}.demand-review-history h4{color:#434e52;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 8px}.demand-review-history ol{gap:7px;margin:0;padding:0;list-style:none;display:grid}.demand-review-history li{background:#fbfcfc;border:1px solid #e6ebec;border-left:3px solid #95a6ab;border-radius:6px;padding:9px 10px}.demand-review-history li.review-approved{border-left-color:#4e8190}.demand-review-history li.review-changes{border-left-color:#c37a58}.demand-review-history li>div{justify-content:space-between;gap:10px;display:flex}.demand-review-history li strong{color:#475458;font-size:calc(12px * var(--font-scale,1))}.demand-review-history li time,.demand-review-history li>span{color:#8c9497;font-size:calc(12px * var(--font-scale,1))}.demand-review-history li p{color:#657073;font-size:calc(12px * var(--font-scale,1));white-space:pre-wrap;margin:6px 0 0;line-height:1.5}@media (width<=600px){.client-approval-item{grid-template-columns:28px minmax(0,1fr) auto;gap:8px;padding:9px}.client-approval-files{display:none}.client-approval-copy strong{white-space:normal}.demand-review-buttons{justify-content:stretch}.demand-review-buttons>button{flex:1}}.sidebar{z-index:20;transition:width .2s,flex-basis .2s;overflow:visible}.sidebar-panel{width:100%;min-height:calc(100vh - 45px);position:relative}.sidebar-pin{z-index:2;border:1px solid var(--line);width:34px;height:34px;color:var(--text-secondary);background:var(--surface);border-radius:8px;place-items:center;display:grid;position:absolute;top:-8px;right:0;box-shadow:0 2px 8px #172f3814}.sidebar-pin svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:17px;height:17px}.sidebar-pin[aria-pressed=true]{color:#fff;border-color:var(--brand-blue);background:var(--brand-blue)}.app-shell.sidebar-auto .sidebar{background:0 0;border-right:0;flex:0 0 64px;width:64px;padding:25px 0 20px}.app-shell.sidebar-auto .sidebar-panel{border-right:1px solid var(--line);background:var(--surface);width:250px;min-height:100vh;padding:25px 17px 20px;transition:transform .2s,box-shadow .2s;position:absolute;top:0;left:0;transform:translate(-186px);box-shadow:0 8px 26px #172f3814}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel{transform:translate(0);box-shadow:0 12px 34px #172f3829}.app-shell.sidebar-auto .sidebar-panel>.brand{visibility:hidden}.app-shell.sidebar-auto .sidebar-panel .workspace-label,.app-shell.sidebar-auto .sidebar-panel nav .nav-link{font-size:0}.app-shell.sidebar-auto .sidebar-panel nav .nav-link{justify-content:center;gap:0;padding:0}.app-shell.sidebar-auto .sidebar-panel nav .nav-icon{font-size:20px}.app-shell.sidebar-auto .sidebar-panel .nav-submenu{display:none}.app-shell.sidebar-auto .sidebar-panel .sidebar-bottom{justify-content:center;padding-left:0;padding-right:0;font-size:0;overflow:hidden}.app-shell.sidebar-auto .sidebar-panel .sidebar-bottom .security-dot{flex:0 0 7px}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel>.brand,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel>.brand{visibility:visible}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel .workspace-label,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel .workspace-label,.app-shell.sidebar-auto .sidebar:hover .sidebar-panel nav .nav-link,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel nav .nav-link{font-size:calc(12px * var(--font-scale,1))}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel nav .nav-link,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel nav .nav-link{justify-content:flex-start;gap:12px;padding:0 11px}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel .sidebar-bottom,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel .sidebar-bottom{font-size:calc(12px * var(--font-scale,1));justify-content:flex-start;padding:13px 10px 0}.app-shell.sidebar-pinned .sidebar{flex:0 0 250px;width:250px}.app-shell.sidebar-pinned .sidebar-panel{width:100%;min-height:calc(100vh - 45px);position:relative}.app-shell.sidebar-auto .main-content{width:min(100% - 64px,1440px)}.app-shell.sidebar-pinned .main-content{width:min(100% - 250px,1440px)}.theme-toggle{border:1px solid var(--line);min-height:34px;color:var(--text-secondary);background:var(--surface);font-size:calc(12px * var(--font-scale,1));white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-weight:700;display:inline-flex}.theme-toggle>span:first-child{font-size:calc(16px * var(--font-scale,1));line-height:1}.theme-toggle:hover,.sidebar-pin:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.sidebar-pin[aria-pressed=true]:hover{color:#fff}@media (width<=900px){.app-shell.sidebar-pinned .sidebar{flex-basis:205px;width:205px}.app-shell.sidebar-pinned .main-content{width:calc(100% - 205px)}.app-shell.sidebar-auto .main-content{width:calc(100% - 64px)}.sidebar-panel{width:205px}.app-shell.sidebar-auto .sidebar-panel{width:205px;transform:translate(-141px)}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel{transform:translate(0)}}@media (width<=620px){.app-shell.sidebar-pinned .sidebar,.app-shell.sidebar-auto .sidebar{flex:0 0 56px;align-items:stretch;width:56px;height:100dvh;min-height:100dvh;padding:16px 0;position:sticky;top:0}.app-shell.sidebar-pinned .sidebar-panel{width:min(250px,100vw - 56px);min-height:calc(100dvh - 32px);padding:16px 10px}.app-shell.sidebar-auto .sidebar-panel{width:min(250px,100vw - 56px);min-height:calc(100dvh - 32px);padding:16px 10px;transform:translate(calc(56px - 100%))}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel{transform:translate(0)}.app-shell.sidebar-auto .sidebar-pin{top:12px;left:12px}.app-shell.sidebar-pinned .sidebar-pin{right:8px}.app-shell.sidebar-auto .sidebar-panel>.brand{visibility:hidden}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel>.brand,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel>.brand{visibility:visible}.app-shell.sidebar-pinned .sidebar>.brand,.app-shell.sidebar-pinned .workspace-label,.app-shell.sidebar-pinned .nav-link:not(.nav-link-sub){font-size:inherit}.app-shell.sidebar-auto .main-content,.app-shell.sidebar-pinned .main-content{width:calc(100% - 56px);padding-left:12px;padding-right:12px}.theme-toggle{width:34px;padding:0}.theme-toggle-label{display:none}.topbar{flex-direction:column;justify-content:center;align-items:flex-start;gap:8px;padding:10px 0}.user-menu{gap:6px;width:100%}.font-size-control{margin-left:auto}.page-heading h1{font-size:clamp(calc(24px * var(--font-scale,1)), 6vw, calc(30px * var(--font-scale,1)))}.page-heading,.demand-heading-row,.registry-intro,.contract-overview-heading{min-width:0}}:root[data-theme=dark] body{color:var(--text-primary);background:#10171b}:root[data-theme=dark] .login-screen{--login-paper:#10171b;--login-sky:#73c4dc;--login-blue:#2987a2;--login-red:#ee8275;--login-charcoal:#eff5f7;color:var(--text-primary);background:#10171b}:root[data-theme=dark] .login-panel,:root[data-theme=dark] .password-setup-screen,:root[data-theme=dark] .setup-screen,:root[data-theme=dark] .loading-screen,:root[data-theme=dark] .app-shell{color:var(--text-primary);background:#10171b}:root[data-theme=dark] .sidebar,:root[data-theme=dark] .sidebar-panel,:root[data-theme=dark] .topbar{border-color:var(--line);background-color:var(--surface)}:root[data-theme=dark] .sidebar-panel{box-shadow:0 10px 30px #00000047}:root[data-theme=dark] .main-content{color:var(--text-primary)}:root[data-theme=dark] .password-setup-card,:root[data-theme=dark] .setup-card,:root[data-theme=dark] .password-panel,:root[data-theme=dark] .create-panel,:root[data-theme=dark] .client-card,:root[data-theme=dark] .client-table-wrap,:root[data-theme=dark] .registry-contract-form,:root[data-theme=dark] .registry-contract-list,:root[data-theme=dark] .registry-service-form,:root[data-theme=dark] .registry-profile-form,:root[data-theme=dark] .registry-documents-section,:root[data-theme=dark] .registry-history-section,:root[data-theme=dark] .registry-contract-card,:root[data-theme=dark] .asset-list,:root[data-theme=dark] .demand-create-form,:root[data-theme=dark] .metric-card,:root[data-theme=dark] .contract-summary-card,:root[data-theme=dark] .contract-metric-card,:root[data-theme=dark] .contract-service-card,:root[data-theme=dark] .client-contract-row,:root[data-theme=dark] .selected-client-contract,:root[data-theme=dark] .selected-contract-versions article,:root[data-theme=dark] .client-service-row,:root[data-theme=dark] .contract-task-card,:root[data-theme=dark] .client-approval-item,:root[data-theme=dark] .demand-card,:root[data-theme=dark] .access-invite-note,:root[data-theme=dark] .access-membership-panel,:root[data-theme=dark] .access-row,:root[data-theme=dark] .access-client-dropdown-menu,:root[data-theme=dark] .access-permission-table tbody th,:root[data-theme=dark] .empty-card,:root[data-theme=dark] .registry-integration-note,:root[data-theme=dark] .demand-card-section,:root[data-theme=dark] .demand-activity,:root[data-theme=dark] .demand-review-history li,:root[data-theme=dark] .access-profile-actions>div{border-color:var(--line);background-color:var(--surface);color:var(--text-primary)}:root[data-theme=dark] .registry-intro,:root[data-theme=dark] .access-admin-intro,:root[data-theme=dark] .client-approval-inbox,:root[data-theme=dark] .access-invite-note,:root[data-theme=dark] .demand-review-panel{border-color:var(--line);color:var(--text-primary);background:linear-gradient(135deg,#1c282e,#172126 76%)}:root[data-theme=dark] .kanban-column,:root[data-theme=dark] .status-column-client_review,:root[data-theme=dark] .demand-metrics .metric-card:hover,:root[data-theme=dark] .demand-metrics .metric-card.selected,:root[data-theme=dark] .client-contract-row.selected,:root[data-theme=dark] .contract-metric-card.selected,:root[data-theme=dark] .registry-profile-form .contract-form-grid input:disabled,:root[data-theme=dark] .registry-profile-form textarea:disabled,:root[data-theme=dark] .demand-detail-allocation{border-color:var(--line-strong);background:var(--surface-raised);color:var(--text-primary)}:root[data-theme=dark] .client-table th,:root[data-theme=dark] .access-permission-table thead th,:root[data-theme=dark] .access-profile-column.selected,:root[data-theme=dark] .registry-service-list,:root[data-theme=dark] .demand-review-history li,:root[data-theme=dark] .demand-card-footer,:root[data-theme=dark] .demand-card-stats,:root[data-theme=dark] .registry-service-list>div{border-color:var(--line);background-color:var(--surface-muted);color:var(--text-secondary)}:root[data-theme=dark] .client-toolbar input,:root[data-theme=dark] .client-toolbar select,:root[data-theme=dark] .form-stack input,:root[data-theme=dark] .inline-form input,:root[data-theme=dark] .password-form input,:root[data-theme=dark] .asset-form input,:root[data-theme=dark] .asset-form select,:root[data-theme=dark] .registry-client-picker select,:root[data-theme=dark] .registry-contract-picker select,:root[data-theme=dark] .registry-document-form input,:root[data-theme=dark] .registry-document-form select,:root[data-theme=dark] .registry-history-form input,:root[data-theme=dark] .registry-history-form select,:root[data-theme=dark] .registry-history-form textarea,:root[data-theme=dark] .client-lifecycle-editor select,:root[data-theme=dark] .demand-toolbar select,:root[data-theme=dark] .demand-toolbar input[type=search],:root[data-theme=dark] .demand-field input,:root[data-theme=dark] .demand-field select,:root[data-theme=dark] .demand-field textarea,:root[data-theme=dark] .status-control select,:root[data-theme=dark] .time-entry-form input,:root[data-theme=dark] .contract-form-grid input,:root[data-theme=dark] .contract-form-grid select,:root[data-theme=dark] .contract-form-grid textarea,:root[data-theme=dark] .allocation-draft-row select,:root[data-theme=dark] .allocation-draft-row input,:root[data-theme=dark] .detail-allocation-form select,:root[data-theme=dark] .detail-allocation-form input,:root[data-theme=dark] .access-invite-form input,:root[data-theme=dark] .access-create-form select,:root[data-theme=dark] .access-row select,:root[data-theme=dark] .access-profile-form input,:root[data-theme=dark] .access-profile-form select,:root[data-theme=dark] .access-search input,:root[data-theme=dark] .access-client-select summary,:root[data-theme=dark] .demand-review-panel textarea,:root[data-theme=dark] .demand-label-controls select,:root[data-theme=dark] .demand-label-controls input:not([type=color]),:root[data-theme=dark] .demand-checklist-form input,:root[data-theme=dark] .demand-comment-form textarea{border-color:var(--line-strong);color:var(--text-primary);background:#111a1f}:root[data-theme=dark] .app-shell :is(h1,h2,h3,h4,h5,h6,strong,.brand-name,.client-table-name,.section-title-row h2,.section-title-row h3,.registry-section-heading h3,.registry-profile-form .registry-section-heading h4,.demand-heading-row h2,.demand-title-button,.contract-form-grid h4,.client-approval-heading h3,.kanban-column>header h4){color:var(--text-primary)}:root[data-theme=dark] .app-shell :is(p,label,legend,small,time,td,th,.muted,.breadcrumb,.workspace-label,.client-count,.user-copy span,.user-copy strong,.sidebar-bottom,.access-person span,.demand-card-due,.demand-card-counter,.registry-section-heading p){color:var(--text-secondary)}:root[data-theme=dark] .nav-link{color:#c5d0d4}:root[data-theme=dark] .nav-link.selected,:root[data-theme=dark] .back-link,:root[data-theme=dark] .open-client,:root[data-theme=dark] .text-button,:root[data-theme=dark] .asset-description a,:root[data-theme=dark] .client-approval-open,:root[data-theme=dark] .small-primary,:root[data-theme=dark] .demand-card-review-action{color:#8bdaf0}:root[data-theme=dark] .nav-link.selected,:root[data-theme=dark] .font-size-control,:root[data-theme=dark] .password-action-button,:root[data-theme=dark] .client-toolbar .small-primary,:root[data-theme=dark] .small-primary,:root[data-theme=dark] .small-quiet,:root[data-theme=dark] .demand-card-review-action,:root[data-theme=dark] .access-selected-clients span,:root[data-theme=dark] .task-scope-contracted,:root[data-theme=dark] .task-scope-unclassified,:root[data-theme=dark] .classification,:root[data-theme=dark] .client-status-chip,:root[data-theme=dark] .demand-detail-allocation,:root[data-theme=dark] .client-approval-mark,:root[data-theme=dark] .client-approval-heading>span,:root[data-theme=dark] .registry-step,:root[data-theme=dark] .panel-icon,:root[data-theme=dark] .client-monogram,:root[data-theme=dark] .user-avatar,:root[data-theme=dark] .demand-card-member,:root[data-theme=dark] .asset-mark,:root[data-theme=dark] .empty-mark{border-color:var(--line);background-color:var(--surface-subtle)}:root[data-theme=dark] .nav-link.selected,:root[data-theme=dark] .font-size-control button.selected{color:#fff;background-color:var(--brand-blue-dark)}:root[data-theme=dark] .primary-button,:root[data-theme=dark] .small-primary{border-color:var(--brand-blue-dark);color:#fff;background:var(--brand-blue-dark)}:root[data-theme=dark] .theme-toggle,:root[data-theme=dark] .sidebar-pin{border-color:var(--line-strong);color:var(--text-primary);background-color:var(--surface-raised)}:root[data-theme=dark] .status,:root[data-theme=dark] .classification-n0,:root[data-theme=dark] .classification-n1,:root[data-theme=dark] .task-scope-contracted,:root[data-theme=dark] .task-scope-unclassified,:root[data-theme=dark] .status-column-client_review>header span,:root[data-theme=dark] .contract-service-status.status-complete{color:#b9e8f3;background:#1e3c46;border-color:#3d6572}:root[data-theme=dark] .status-suspended,:root[data-theme=dark] .status-paused,:root[data-theme=dark] .classification-n2,:root[data-theme=dark] .task-scope-extra,:root[data-theme=dark] .contract-service-status.status-open,:root[data-theme=dark] .demand-metrics .metric-warning{color:#f1d092;background:#3a3020;border-color:#745d35}:root[data-theme=dark] .status-blocked,:root[data-theme=dark] .status-closed,:root[data-theme=dark] .status-cancelled,:root[data-theme=dark] .status-archived,:root[data-theme=dark] .message.error,:root[data-theme=dark] .client-delete-button,:root[data-theme=dark] .demand-review-buttons .small-quiet,:root[data-theme=dark] .demand-metrics .metric-alert{color:#ffaaa0;background:#3c2524;border-color:#74433f}:root[data-theme=dark] .message.success{color:#b9e8f3;background:#1e3c46;border-color:#3d6572}:root[data-theme=dark] .status.active,:root[data-theme=dark] .status-active{color:#a9e4c1;background:#1e392c;border-color:#356852}:root[data-theme=dark] .empty-card{border-color:var(--line-strong);background:#202b31b8}@media (width<=760px){.main-content{min-width:0}.user-menu{flex-wrap:wrap}.client-toolbar,.client-toolbar-readonly,.demand-form-grid,.contract-form-grid,.contract-metric-grid,.asset-form-row,.registry-document-form,.registry-history-form,.access-create-form,.access-invite-form,.access-profile-form{grid-template-columns:minmax(0,1fr)}.demand-field-wide,.contract-description-field,.client-toolbar .panel-intro{grid-column:auto}.client-table-wrap,.access-permission-table-wrap,.kanban-board{max-width:100%}.registry-section-heading,.section-title-row,.contract-form-footer,.asset-form-footer{flex-wrap:wrap}.access-create-form>button,.access-invite-form>button,.access-profile-form-actions{grid-column:auto}.modal,[role=dialog],.task-detail-modal,.demand-detail-modal{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto}}.demand-color-label{color:#fff;max-width:100%;font-size:calc(12px * var(--font-scale,1));text-overflow:ellipsis;white-space:nowrap;border-radius:5px;align-items:center;gap:6px;padding:4px 8px;font-weight:750;line-height:1.2;display:inline-flex;overflow:hidden}.demand-card-section,.demand-activity{background:#fbfcfc;border:1px solid #e4e9ea;border-radius:8px;gap:10px;margin-top:16px;padding:13px;display:grid}.demand-card-section-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.demand-card-section-heading h4{color:#434e52;font:700 calc(12px * var(--font-scale,1)) "Sora", sans-serif;margin:0 0 3px}.demand-card-section-heading p{color:#879093;font-size:calc(12px * var(--font-scale,1));margin:0;line-height:1.4}.demand-card-section-heading>span{color:#757f82;font-size:calc(12px * var(--font-scale,1));font-weight:700}.demand-detail-label-list{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.demand-detail-label-list>.muted{font-size:calc(12px * var(--font-scale,1))}.demand-detail-label-list .demand-color-label button{color:inherit;font-size:calc(13px * var(--font-scale,1));cursor:pointer;background:0 0;border:0;padding:0;line-height:1}.demand-label-controls{gap:7px;display:grid}.demand-label-controls form,.demand-checklist-form{gap:7px;display:flex}.demand-label-controls select,.demand-label-controls input:not([type=color]),.demand-checklist-form input,.demand-comment-form textarea{color:#3b4649;min-width:0;font:400 calc(12px * var(--font-scale,1)) "Inter", sans-serif;background:#fff;border:1px solid #dfe5e7;border-radius:6px;flex:1;padding:8px 10px}.demand-label-controls input[type=color]{background:#fff;border:1px solid #dfe5e7;border-radius:6px;width:38px;min-height:32px;padding:3px}.demand-label-controls .small-primary,.demand-checklist-form .small-primary{flex:none}.demand-checklist{gap:4px;margin:0;padding:0;list-style:none;display:grid}.demand-checklist li{border-top:1px solid #edeff0;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.demand-checklist li label{color:#4f5b5f;min-width:0;font-size:calc(12px * var(--font-scale,1));cursor:pointer;align-items:center;gap:8px;display:flex}.demand-checklist li label input{accent-color:#1e7e9c}.demand-checklist li label span{overflow-wrap:anywhere}.demand-checklist li label span.is-complete{color:#899194;text-decoration:line-through}.demand-checklist li>button{font-size:calc(12px * var(--font-scale,1));flex:none}.demand-comment-form{align-items:flex-end;gap:8px;display:flex}.demand-comment-form textarea{resize:vertical}.demand-comment-form button{flex:none}.demand-activity-list{border-left:1px solid #dce4e7;gap:8px;margin:0;padding:0 0 0 11px;list-style:none;display:grid}.demand-activity-list li{padding:0 0 7px 8px;position:relative}.demand-activity-list li:before{content:"";background:#5e8a98;border:2px solid #fff;border-radius:50%;width:7px;height:7px;position:absolute;top:3px;left:-15px;box-shadow:0 0 0 1px #b8ccd2}.demand-activity-list li>div{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:3px 7px;display:grid}.demand-activity-list li>div strong{color:#475256;font-size:calc(12px * var(--font-scale,1))}.demand-activity-list li>div span{color:#697477;font-size:calc(12px * var(--font-scale,1))}.demand-activity-list li>div time{color:#989fa1;font-size:calc(12px * var(--font-scale,1));grid-column:1/-1}.demand-activity-list li>p{color:#687376;font-size:calc(12px * var(--font-scale,1));white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0;line-height:1.5}.demand-activity-list li.demand-activity-empty{color:#8a9295;font-size:calc(12px * var(--font-scale,1))}@media (width<=560px){.demand-label-controls form,.demand-checklist-form,.demand-comment-form{flex-wrap:wrap;align-items:stretch}.demand-label-controls form>*,.demand-checklist-form>*,.demand-comment-form>*{flex:auto}}.brand-mark{color:var(--blue);border-color:var(--blue-light)}.brand-name{font-variant-ligatures:none;font-family:Sora,sans-serif}.brand-name span{font-family:Inter,sans-serif}.page-heading h1{font-size:var(--type-page-title);line-height:1.15}.page-heading .muted{font-size:var(--type-body);line-height:1.6}.demand-heading-row h2{font-size:var(--type-section-title);line-height:1.2}.demand-heading-row .muted{font-size:var(--type-body);line-height:1.6}.registry-intro h2,.access-admin-intro h2{font-size:var(--type-section-title);line-height:1.25}.registry-intro p:not(.eyebrow),.access-admin-intro p:last-child{font-size:var(--type-body);line-height:1.6}.section-title-row h2{font-size:1.25rem;line-height:1.25}.section-title-row h3{font-size:var(--type-subsection-title);line-height:1.3}.registry-section-heading h2{font-size:1.25rem;line-height:1.3}.registry-section-heading h3{font-size:var(--type-subsection-title);line-height:1.3}.registry-section-heading h4{font-size:.9375rem;line-height:1.35}.registry-section-heading p,.demand-form-heading p{font-size:var(--type-body);line-height:1.55}.panel-intro h2{font-size:1rem;line-height:1.35}.panel-intro p{font-size:var(--type-secondary);line-height:1.5}.client-approval-heading h3,.demand-form-heading h3,.demand-card-section-heading h4,.demand-review-panel h4,.demand-review-history h4,.empty-card h3{font-size:var(--type-subsection-title);line-height:1.35}.client-approval-heading p:last-child,.demand-card-section-heading p,.demand-review-panel p:not(.eyebrow),.empty-card p{font-size:var(--type-body);line-height:1.55}.client-card h3,.asset-description h3,.registry-contract-card-head strong,.registry-profile-form .registry-section-heading h4{font-size:1rem;line-height:1.35}.client-card>p,.asset-description p,.registry-contract-card>.muted,.registry-service-list span,.registry-contract-card-head span{font-size:var(--type-secondary);line-height:1.5}.registry-service-list strong,.registry-file-list strong,.registry-timeline strong{font-size:var(--type-body);line-height:1.4}.registry-integration-note,.registry-timeline p{font-size:var(--type-body);line-height:1.6}.client-table td,.access-permission-table td,.access-permission-table tbody th{font-size:var(--type-secondary);line-height:1.45}.client-table-name,.access-person strong{font-size:var(--type-body);line-height:1.35}.demand-card h5,.demand-title-button,.demand-card .demand-title-button{font-size:var(--type-secondary);line-height:1.45}.demand-card .demand-brief,.source-message>p,.demand-activity-list li>p,.demand-review-history li p,.demand-detail-brief p{font-size:var(--type-secondary);line-height:1.6}.demand-toolbar{font-size:var(--type-secondary)}.demand-empty strong{font-size:var(--type-subsection-title)}.demand-empty p,.asset-form-footer>span,.message{font-size:var(--type-secondary);line-height:1.55}.demand-detail-heading h3{font-size:var(--type-section-title);line-height:1.3}.demand-card-top .priority-chip,.demand-card-top .task-scope-label,.priority-chip,.overdue-chip,.delivery-chip,.status,.classification,.demand-color-label,.source-inbox>.section-title-row>span,.kanban-column>header span,.task-scope-label{font-size:var(--type-tag);line-height:1.25}.demand-color-label{padding:3px 7px}.primary-button,.small-primary,.small-quiet,.text-action,.client-lifecycle-toggle,.client-delete-button,.demand-card-review-action{font-size:var(--type-secondary)}.form-stack input,.inline-form input,.password-form input,.client-toolbar input,.client-toolbar select,.client-lifecycle-editor select,.asset-form input,.asset-form select,.demand-toolbar select,.demand-toolbar input[type=search],.demand-field input,.demand-field select,.demand-field textarea,.registry-document-form input,.registry-document-form select,.registry-history-form input,.registry-history-form select,.registry-history-form textarea,.access-invite-form input,.access-create-form select,.access-row select,.access-profile-form input,.access-profile-form select,.access-search input,.demand-label-controls select,.demand-label-controls input:not([type=color]),.demand-checklist-form input,.demand-comment-form textarea{font-size:var(--type-body)}.form-stack label,.password-form label,.client-search-field,.client-status-field,.asset-form>label,.asset-form-row label,.demand-field label,.time-entry-form label,.registry-client-picker,.registry-contract-picker,.registry-document-form label,.registry-history-form label,.access-invite-form label,.access-create-form label,.access-row>label,.access-profile-form>label,.access-search{font-size:var(--type-secondary)}.eyebrow,.workspace-label,.breadcrumb,.user-copy span,.registry-step small,.registry-file-list small,.registry-timeline time,.client-table td small,.source-message-meta,.source-message-meta strong,.demand-card-due,.demand-card-counter,.demand-metrics span,.client-count,.section-title-row span,.asset-form-footer>span,.page-footer,.access-person span,.access-person small,.demand-activity-list li>div time{font-size:var(--type-meta)}@media (width<=620px){:root{--type-page-title:1.75rem;--type-section-title:1.25rem}.page-heading{align-items:flex-start}.demand-empty{flex-wrap:wrap;align-items:flex-start}.demand-empty-action{margin-left:47px}}.app-shell{background:var(--paper)}.primary-button,.small-primary{border-color:var(--blue);background:var(--blue)}.primary-button:hover:not(:disabled),.small-primary:hover:not(:disabled){background:var(--brand-blue-dark)}.nav-link.selected{color:var(--blue);background:#e6f1f4}.nav-icon{color:#688894}.security-dot{background:var(--blue);box-shadow:0 0 0 3px #e1f0f4}.forgot-password-button,.password-visibility-button,.text-button:hover,.back-link:hover,.client-table-name:hover,.demand-title-button:hover{color:var(--blue)}.password-action-button{border-color:var(--blue-light);color:var(--blue-dark,#176982);background:#eaf3f6}.client-toolbar input:focus,.client-toolbar select:focus,.access-profile-form input:focus,.access-profile-form select:focus,.access-search input:focus,.demand-field input:focus,.demand-field select:focus,.demand-field textarea:focus,.demand-toolbar select:focus,.demand-toolbar input:focus,.asset-form input:focus,.asset-form select:focus,.demand-label-controls input:focus,.demand-label-controls select:focus,.demand-comment-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1e7e9c1f}.access-client-picker input,.access-client-dropdown-menu input,.access-permission-toggle input,.demand-checklist input{accent-color:var(--blue)}.client-approval-inbox{background:linear-gradient(135deg,#eaf3f6 0%,#fff 74%);border-color:#cbdfe5}.create-panel{background:linear-gradient(120deg,#eaf3f6,#fff);border-color:#d5e7ec}.panel-icon{color:var(--blue);border-color:#c6dfe6}.password-setup-screen,.setup-screen,.loading-screen{background:radial-gradient(ellipse at 18% 76%, #1e7e9c1a, transparent 38%), var(--paper)}.primary-button,.small-primary{color:#fff}.contract-form-grid label{font-size:calc(12px * var(--font-scale,1))}.contract-form-grid input,.contract-form-grid select,.contract-form-grid textarea{font-size:calc(13px * var(--font-scale,1))}.registry-profile-form .small-primary,.registry-contract-card .small-primary{min-height:36px;font-size:calc(12px * var(--font-scale,1));padding:0 11px}.asset-form>label,.asset-form-row label{font-size:calc(12px * var(--font-scale,1))}.asset-form input,.asset-form select{font-size:calc(13px * var(--font-scale,1))}.kanban-board{grid-auto-columns:minmax(280px,340px)}.kanban-board-single{grid-auto-columns:minmax(360px,min(520px,70vw))}.kanban-column,.kanban-cards,.demand-card{min-width:0}.demand-card{overflow:hidden}.demand-card-top,.demand-card-labels{min-width:0}.demand-card-labels{flex:auto}.demand-title-button{overflow-wrap:anywhere}.demand-card-footer{gap:7px;min-width:0;display:grid}.demand-card-context,.demand-card-indicators{flex-wrap:wrap;align-items:center;gap:6px 9px;min-width:0;display:flex}.demand-card-due,.demand-card-counter{white-space:normal;overflow-wrap:anywhere;min-width:0}.demand-card-due{margin-right:0}.status-control{grid-template-columns:minmax(58px,74px) minmax(0,1fr)}@media (width<=620px){.kanban-board{grid-auto-columns:minmax(270px,82vw)}.kanban-board-single{grid-auto-columns:minmax(min(82vw,360px),82vw)}}:root{--paper:#f1f5ff;--cream:#f1f5ff;--brand-blue-soft:#e4efff;--line:#cbd8ef;--focus-ring:#075bce}body,.app-shell{background:#f1f5ff}.sidebar,.sidebar-panel,.topbar{border-color:#cbd8ef}.topbar{background-image:linear-gradient(90deg,#075bce 0 72%,#c62828 72% 87%,#f5c400 87%);background-position:bottom;background-repeat:no-repeat;background-size:100% 3px;border-bottom:1px solid #cbd8ef}.sidebar-panel{box-shadow:4px 0 24px #07337814}.nav-link.selected{color:#fff;background:#075bce;position:relative}.nav-link.selected:before{content:"";background:#f5c400;border-radius:0 4px 4px 0;width:4px;position:absolute;top:7px;bottom:7px;left:0}.nav-link:hover:not(.selected){color:#0649a8;background:#e4efff}.page-heading .eyebrow{color:#17325c;background:#f5c400;border-radius:4px;padding:4px 8px;display:inline-block}.eyebrow{color:#075bce}.page-heading h1{color:#12376f}.primary-button,.small-primary,.client-toolbar .small-primary{color:#fff;background:#075bce;border-color:#0649a8}.primary-button:hover:not(:disabled),.small-primary:hover:not(:disabled){color:#fff;background:#0649a8;border-color:#043d91;box-shadow:0 5px 15px #075bce40}.theme-toggle:hover,.sidebar-pin:hover{color:#0649a8;border-color:#075bce}.sidebar-pin[aria-pressed=true]{color:#fff;background:#075bce;border-color:#0649a8;box-shadow:inset 0 -3px #f5c400}.create-panel,.client-card,.registry-contract-form,.demand-create-form,.access-invite-form{border-top-color:#7db3ff}.section-title-row h2,.registry-section-heading h3,.demand-heading-row h2{text-underline-offset:5px;text-decoration-color:#f5c400;text-decoration-thickness:3px}.client-count strong,.client-count>span,.demand-count,.metric-card.selected{color:#0649a8}.login-aside{background:radial-gradient(at 86% 87%,#f5c4006b,#0000 26%),radial-gradient(at 75% 100%,#c62828b8,#0000 43%),linear-gradient(145deg,#063f91,#075bce 65%,#09377d)}.login-aside:after{background:#f5c400;height:5px;box-shadow:-52px 0 #c62828}.login-message .eyebrow,.login-screen .brand-name span{color:#ffe26a}.login-screen .brand-light .brand-mark{color:#ffe26a;border-color:#ffe26a}.login-screen .primary-button{background:#075bce;border-color:#075bce}.login-screen .primary-button:hover:not(:disabled){background:#0649a8;border-color:#0649a8}.login-screen .forgot-password-button,.login-form-wrap>.eyebrow{color:#075bce}.auth-view-controls{z-index:2;align-items:center;gap:8px;display:flex;position:absolute;top:18px;right:18px}.login-panel,.password-setup-screen,.setup-screen,.password-setup-card,.setup-card{position:relative}.password-setup-card{border-top:4px solid #075bce}.password-setup-card:before{content:"";background:#c62828;width:44px;height:4px;position:absolute;top:-4px;right:18px}:root[data-theme=dark]{--line:#314e78;--line-strong:#4b6b99;--surface:#111c2d;--surface-raised:#172741;--surface-muted:#1a2a43;--surface-subtle:#203653;--text-primary:#f5f8ff;--text-secondary:#c3d0e4;--text-muted:#a9bad4;--brand-blue-soft:#162c4d}:root[data-theme=dark] body,:root[data-theme=dark] .app-shell{background:#0b1422}:root[data-theme=dark] .sidebar,:root[data-theme=dark] .sidebar-panel,:root[data-theme=dark] .topbar{background-color:#111c2d;border-color:#314e78}:root[data-theme=dark] .topbar{background-image:linear-gradient(90deg,#075bce 0 72%,#ff6969 72% 87%,#ffd740 87%)}:root[data-theme=dark] .page-heading h1{color:#e4efff}:root[data-theme=dark] .page-heading .eyebrow{color:#211900;background:#ffd740}:root[data-theme=dark] .sidebar{background:0 0}:root[data-theme=dark] .nav-link.selected{color:#fff;background:#075bce}:root[data-theme=dark] .nav-link:hover:not(.selected){color:#dbeaff;background:#1a2d49}:root[data-theme=dark] .primary-button,:root[data-theme=dark] .small-primary,:root[data-theme=dark] .client-toolbar .small-primary{color:#fff;background:#075bce;border-color:#1767d1}:root[data-theme=dark] .theme-toggle,:root[data-theme=dark] .sidebar-pin{color:#f5f8ff;background:#172741;border-color:#4b6b99}:root[data-theme=dark] .sidebar-pin[aria-pressed=true]{color:#fff;background:#075bce;border-color:#62a5ff;box-shadow:inset 0 -3px #ffd740}:root[data-theme=dark] .login-aside{background:radial-gradient(at 86% 87%,#ffd74047,#0000 26%),radial-gradient(at 75% 100%,#ff696980,#0000 43%),linear-gradient(145deg,#062b62,#075bce 65%,#071f43)}:root[data-theme=dark] .login-screen .login-panel{background:#111c2d}:root[data-theme=dark] .login-screen .login-form-wrap h2,:root[data-theme=dark] .login-screen .form-stack label{color:#f5f8ff}:root[data-theme=dark] .login-screen .login-form-wrap>.muted,:root[data-theme=dark] .login-screen .login-help{color:#c3d0e4}:root[data-theme=dark] .password-setup-card,:root[data-theme=dark] .setup-card{background:#111c2d;border-top-color:#62a5ff}:root[data-theme=dark] .password-setup-card:before{background:#ff6969}:root[data-theme=dark] .create-panel,:root[data-theme=dark] .client-card,:root[data-theme=dark] .registry-contract-form,:root[data-theme=dark] .demand-create-form{border-top-color:#62a5ff}:root[data-theme=dark] ::selection{color:#fff;background:#075bce}.auth-view-controls .theme-toggle{color:var(--text-primary)}@media (width<=760px){.auth-view-controls{top:12px;right:12px}.login-panel .login-form-wrap{padding-top:36px}}.app-shell :is(h1,h2,h3,h4,h5,h6){line-height:1.25!important}.app-shell h1{font-size:var(--type-page-title)!important}.app-shell h2{font-size:var(--type-section-title)!important}.app-shell h3{font-size:var(--type-subsection-title)!important}.app-shell :is(h4,h5,h6){font-size:var(--type-body)!important}.app-shell :is(p,li,td,th){line-height:1.55;font-size:var(--type-body)!important}.app-shell :is(label,legend,input,select,textarea,.breadcrumb,.user-copy,.theme-toggle,.password-action-button){font-size:var(--type-secondary)!important}.app-shell :is(small,time,.eyebrow,.classification,.status,.task-scope-label,.priority-chip,.demand-color-label,.client-count,.demand-count){font-size:var(--type-tag)!important}.app-shell :is(.muted,.helper-text,.fine-print){font-size:var(--type-secondary)!important}.app-shell p.eyebrow{font-size:var(--type-tag)!important}.font-size-control{background:#edf3ff;border-color:#96acd0}.font-size-control button{color:#17325c;min-width:32px;height:30px;font-size:.82rem}.font-size-control button.selected{color:#fff;background:#075bce;box-shadow:inset 0 -3px #f5c400}:root[data-theme=dark] .font-size-control{background:#172741;border-color:#4b6b99}:root[data-theme=dark] .font-size-control button{color:#dbeaff}:root[data-theme=dark] .font-size-control button.selected{color:#fff;background:#075bce}.app-shell.sidebar-auto .sidebar-panel{width:64px;transition:width .18s,box-shadow .18s;left:0;overflow:hidden;transform:none}.app-shell.sidebar-auto .sidebar-panel>.brand,.app-shell.sidebar-auto .sidebar-panel .workspace-label{display:none}.app-shell.sidebar-auto .sidebar-panel nav{margin-top:42px}.app-shell.sidebar-auto .sidebar-panel nav .nav-link{justify-content:center;gap:0;width:100%;height:44px;min-height:44px;padding:0;font-size:0;display:flex;overflow:hidden}.app-shell.sidebar-auto .sidebar-panel nav .nav-label{display:none}.app-shell.sidebar-auto .sidebar-panel nav .nav-icon{color:#075bce;flex:0 0 28px;place-items:center;width:28px;height:28px;font-size:20px;display:inline-grid}.app-shell.sidebar-auto .sidebar-pin{top:10px;left:15px;right:auto}.app-shell.sidebar-auto .sidebar-panel .nav-submenu,.app-shell.sidebar-auto .sidebar-panel .sidebar-bottom{display:none}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel{width:250px;overflow-y:auto;transform:none}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel>.brand,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel>.brand{visibility:visible;display:inline-flex}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel .workspace-label,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel .workspace-label{display:block}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel nav .nav-link,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel nav .nav-link{justify-content:flex-start;gap:12px;padding:0 11px;font-size:.84rem}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel nav .nav-label,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel nav .nav-label{display:inline}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel nav .nav-icon,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel nav .nav-icon{flex-basis:17px;width:17px;height:auto;font-size:16px}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel .nav-submenu,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel .nav-submenu{display:grid}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel .sidebar-bottom,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel .sidebar-bottom{display:flex}.app-shell.sidebar-auto .sidebar:hover .sidebar-pin,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-pin{left:auto;right:9px}.app-shell .sidebar-panel>.brand{margin-bottom:14px;padding:0 10px}.app-shell .sidebar-panel .workspace-label{padding-top:3px;line-height:1.4}.app-shell .sidebar-panel nav{margin-top:20px}.app-shell .sidebar nav .nav-link.selected{color:#fff!important;background-color:#075bce!important}.app-shell .sidebar nav .nav-link.selected .nav-icon{color:#fff!important}.app-shell .sidebar nav .nav-link.selected:before{z-index:1}:root[data-theme=dark] .app-shell .sidebar nav .nav-link.selected{color:#fff!important;background-color:#075bce!important}@media (width<=620px){.app-shell.sidebar-auto .sidebar-panel{width:56px;min-height:calc(100dvh - 32px);left:0;transform:none}.app-shell.sidebar-auto .sidebar:hover .sidebar-panel,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-panel{width:min(250px,100vw - 56px);transform:none}.app-shell.sidebar-auto .sidebar-pin{left:11px}.app-shell.sidebar-auto .sidebar:hover .sidebar-pin,.app-shell.sidebar-auto .sidebar:focus-within .sidebar-pin{left:auto;right:8px}.auth-view-controls{gap:5px}.auth-view-controls .font-size-control{margin-left:0}.font-size-control button{min-width:28px}}@media (width<=760px){.client-table-wrap{box-shadow:none;background:0 0;border:0;overflow:visible}.client-table,.client-table tbody{gap:12px;width:100%;display:grid}.client-table thead{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.client-table tbody tr{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;padding:14px;display:grid;box-shadow:0 3px 12px #0733780d}.client-table tbody td{overflow-wrap:anywhere;background:0 0;border:0;align-content:start;gap:4px;min-width:0;padding:0;display:grid}.client-table tbody td:before{color:var(--text-muted);content:attr(data-label);font-size:var(--type-meta);font-weight:700;line-height:1.3}.client-table tbody td:first-child,.client-table tbody td:last-child{grid-column:1/-1}.client-table tbody td:last-child{border-top:1px solid var(--line);padding-top:10px}.client-table-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.client-table-name{width:fit-content}}@media (width<=420px){.client-table tbody tr{grid-template-columns:minmax(0,1fr)}.client-table tbody td:first-child,.client-table tbody td:last-child{grid-column:auto}}
