@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@500;600&family=Space+Grotesk:wght@500;600;700&display=swap";:root{color-scheme:light;--paper:#faf8f3;--surface:#fffdf8;--surface-muted:#f1eee5;--ink:#1b1a16;--ink-muted:#55524b;--ink-subtle:#85817a;--border:#e4dfd3;--border-strong:#d0cabb;--petrol:#5e8894;--petrol-bright:#789da7;--petrol-soft:#edf2f2;--orange:#c65327;--orange-bright:#f07a45;--orange-soft:#fff0e8;--olive:#356b54;--olive-soft:#f2f8f3;--error:#a63e2a;--action-primary:var(--orange);--action-primary-hover:var(--orange-bright);--focus:var(--petrol);--active:var(--petrol);--success:var(--olive);--ldk-mark-teal:#5e8894;--ldk-mark-accent:var(--action-primary);--field:#fff;--error-soft:#fff0ee;--petrol-pressed:#066a75;--olive-ink:#356b54;--border-pressed:#d6d1c6;--surface-sunken:#f2eee5;--surface-shade:#efe8d8;--surface-edge:#e8e4da;--shadow-raised:0 1px 2px #1b1a1614;--shadow-overlay:0 18px 48px #1b1a1629;--font-body:"Inter", ui-sans-serif, system-ui, sans-serif;--font-heading:"Space Grotesk", "Inter", ui-sans-serif, system-ui, sans-serif;--font-data:"JetBrains Mono", ui-monospace, monospace;--text-caption:12px;--text-label:14px;--text-body:16px;--text-lead:20px;--text-title:26px;--text-heading:34px;--text-display:44px;--text-fluid-display:clamp(2.3rem, 4.5vw, 4rem);--text-fluid-heading:clamp(1.75rem, 3vw, 2.4rem);--radius-control:6px;--radius-surface:10px;--radius-pill:999px}*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth;min-width:320px}body{background:var(--paper);min-height:100vh;color:var(--ink);font-family:var(--font-body);font-size:var(--text-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.5}button,textarea,input{color:inherit;font:inherit}button,a,textarea,input{touch-action:manipulation}button{cursor:pointer}button:focus-visible,a:focus-visible,textarea:focus-visible,input:focus-visible{outline-offset:3px;outline:2px solid #5e889494}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--petrol);font-family:var(--font-data);font-size:var(--text-caption);letter-spacing:.11em;text-transform:uppercase;font-weight:600}.auth-page{background:var(--paper);grid-template-columns:minmax(340px,1.08fr) minmax(440px,.92fr);min-height:100vh;display:grid}.auth-story{border-right:1px solid var(--border-strong);flex-direction:column;justify-content:space-between;min-height:100vh;padding:44px clamp(40px,6vw,96px);display:flex}.auth-story .brand-lockup{align-self:flex-start}.auth-story__message{margin:auto 0}.auth-story__title{font-family:var(--font-heading);letter-spacing:-.06em;margin-top:18px;font-size:clamp(3.25rem,6vw,6.5rem);font-weight:600;line-height:.9}.auth-story__detail,.auth-story__security{color:var(--ink-muted)}.auth-story__detail{font-size:var(--text-lead);margin-top:28px}.auth-story__security{border-top:1px solid var(--border-strong);font-size:var(--text-label);padding-top:18px}.auth-workspace{align-content:center;justify-items:center;min-height:100vh;padding:72px clamp(28px,5vw,84px) 40px;display:grid}.auth-workspace__context{color:var(--petrol);font-family:var(--font-data);font-size:var(--text-caption);letter-spacing:.12em;text-transform:uppercase;position:absolute;top:24px;right:32px}.auth-brand,.login-brand{color:var(--ink);justify-content:center;align-items:center;gap:10px;text-decoration:none;display:flex}.auth-brand strong,.login-brand strong{font-family:var(--font-heading);font-size:var(--text-lead)}.auth-brand span,.login-brand span{color:var(--ink-muted);font-size:var(--text-label)}.auth-card{width:min(460px,100%);box-shadow:none;text-align:left;background:0 0;border:0;border-radius:0;padding:0}.auth-mark{border-left:3px solid var(--ink);border-right:3px solid var(--ldk-mark-teal);width:44px;height:44px;color:var(--action-primary);background:0 0;place-items:center;margin-bottom:26px;display:grid}.auth-card h1{font-size:var(--text-heading);margin-top:7px}.auth-intro{color:var(--ink-muted);margin-top:8px}.auth-status-slot{align-content:center;min-height:36px;margin:10px 0 4px;display:grid}.auth-card form{gap:9px;display:grid}.auth-card label,.auth-otp-label{font-size:var(--text-label);font-weight:600}.auth-card input:not([type=checkbox]),.mp-table-toolbar input{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);width:100%;min-height:46px;padding:0 13px}.auth-label-row{justify-content:space-between;align-items:center;gap:12px;margin-top:8px;display:flex}.auth-password-field{position:relative}.auth-password-field input{padding-right:44px}.auth-password-field button{width:44px;height:46px;color:var(--ink-muted);background:0 0;border:0;place-items:center;display:grid;position:absolute;top:0;right:0}.text-link{color:var(--petrol);font-size:var(--text-caption);background:0 0;border:0;padding:0}.text-link:hover{text-decoration:underline}.auth-submit{text-align:center;justify-content:center;width:100%;margin-top:12px;text-decoration:none}.auth-pending{min-height:46px;color:var(--ink-muted);align-items:center;gap:12px;display:flex}.auth-pending .loading-spinner{flex:none;margin:0}.form-error,.form-notice{border-left:3px solid var(--error);background:var(--error-soft);color:var(--error);font-size:var(--text-label);overflow-wrap:anywhere;padding:8px 12px;line-height:20px}.form-notice{border-left-color:var(--petrol);background:var(--petrol-soft);color:var(--petrol)}.auth-link-button{width:100%;min-height:44px;color:var(--petrol);font-size:var(--text-label);background:0 0;border:0;margin-top:4px;padding:0 8px;font-weight:600}.auth-form-region{align-content:start;min-height:188px;display:grid}.auth-form-region .auth-pending{justify-content:center;align-self:center}.auth-help,.auth-note,.table-note{color:var(--ink-subtle);font-size:var(--text-caption);text-align:center}.auth-help{margin-top:24px;display:block}.auth-hint{color:var(--ink-subtle);font-size:var(--text-caption);margin-top:2px}.auth-acknowledgement{color:var(--ink-muted);font-size:var(--text-caption);grid-template-columns:20px 1fr;align-items:start;gap:10px;margin:14px 0 2px;display:grid;font-weight:400!important}.auth-acknowledgement input{accent-color:var(--action-primary);margin-top:3px}.auth-qr{border:1px solid var(--border);border-radius:var(--radius-surface);text-align:center;margin-bottom:14px;padding:18px}.auth-qr img{width:min(168px,100%);height:auto}.auth-qr p{color:var(--ink-muted);font-size:var(--text-caption);margin-top:8px}.auth-otp{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:2px;display:grid}.auth-otp input{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);width:100%;min-height:56px;font-family:var(--font-data);font-size:var(--text-lead);text-align:center;font-weight:600;padding:0!important}.auth-otp input:focus-visible{border-color:var(--focus);outline-offset:2px;outline:2px solid #5e889494}.auth-otp.invalid input{border-color:var(--error)}.auth-otp input:disabled{background:var(--surface-muted);color:var(--ink-subtle)}.mp-invoice-table{margin-top:32px}.mp-table-scroll{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);overflow-x:auto}.mp-invoice-table table,.mp-admin-table table{border-collapse:collapse;width:100%}.mp-invoice-table th,.mp-invoice-table td,.mp-admin-table th,.mp-admin-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:16px}.mp-invoice-table th,.mp-admin-table th{color:var(--ink-muted);font-size:var(--text-caption);letter-spacing:.03em;font-weight:600}.mp-invoice-table tbody tr:last-child td,.mp-admin-table tbody tr:last-child td{border-bottom:0}.money{font-family:var(--font-data);font-variant-numeric:tabular-nums;font-weight:600}.mp-invoice-table{container-type:inline-size}@container (width<=720px){.mp-invoice-table .mp-table-scroll{background:0 0;border:0;overflow-x:visible}.mp-invoice-table table,.mp-invoice-table tbody,.mp-invoice-table tr,.mp-invoice-table td{width:100%;display:block}.mp-invoice-table thead{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.mp-invoice-table tr{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);margin-bottom:12px;padding:6px 16px}.mp-invoice-table td{border-bottom:1px solid var(--border);white-space:normal;text-align:right;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;display:flex}.mp-invoice-table td:before{color:var(--ink-muted);font-size:var(--text-caption);text-align:left;content:attr(data-label);flex:none;font-weight:600}.mp-invoice-table td:first-child{font-size:var(--text-lead);text-align:left;justify-content:flex-start}.mp-invoice-table td:first-child:before{content:none}.mp-invoice-table tr td:last-child{border-bottom:0;justify-content:flex-start}.mp-invoice-table tr td:last-child:before{content:none}}.invoice-status,.client-status{border-radius:var(--radius-pill);font-size:var(--text-caption);white-space:nowrap;padding:3px 8px;font-weight:600;display:inline-flex}.invoice-status.paid,.client-status.active{background:var(--olive-soft);color:var(--olive-ink)}.invoice-status.due,.client-status.invited{background:var(--orange-soft);color:var(--orange)}.invoice-status.overdue{background:var(--error-soft);color:var(--error)}.client-status.paused{background:var(--surface-muted);color:var(--ink-muted)}.table-action{border-radius:var(--radius-control);color:var(--petrol);font:inherit;font-size:var(--text-caption);text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:600;text-decoration:none;display:inline-flex}button.table-action:hover,a.table-action:hover{text-decoration:underline}.table-action:disabled{color:var(--ink-subtle);cursor:not-allowed;text-decoration:none}.table-actions{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.table-action.unavailable,.unavailable{color:var(--ink-subtle);font-weight:400}.table-note{text-align:left;margin-top:13px}.supporting-copy,.admin-intro{color:var(--ink-muted);margin-top:8px}.admin-page{min-height:100vh}.admin-header{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;min-height:68px;padding:0 32px;display:flex}.admin-header .login-brand{justify-content:flex-start}.admin-header>div{align-items:center;gap:18px;display:flex}.admin-content{width:min(1180px,100% - 40px);margin:0 auto;padding:64px 0}.admin-content h1{font-size:var(--text-display);margin-top:6px}.admin-title-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px 24px;display:flex}.admin-title-row>div:first-child{flex:320px;min-width:0}.admin-title-row .primary-button,.surface-error .secondary-button{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.admin-title-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-title-actions .secondary-button{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.admin-tabs{border-bottom:1px solid var(--border);gap:18px;margin-top:26px;display:flex}.admin-tabs button{min-height:42px;color:var(--ink-muted);font:inherit;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 2px}.admin-tabs button.active{border-bottom-color:var(--petrol);color:var(--petrol);font-weight:600}.audit-table-wrap{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);margin-top:24px;overflow-x:auto}.audit-table{border-collapse:separate;border-spacing:0;width:100%}.audit-table th:last-child,.audit-table td:last-child{background:var(--surface);box-shadow:inset 1px 0 0 var(--border);position:sticky;right:0}.audit-table th,.audit-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;vertical-align:middle;padding:14px 16px}.audit-table th{color:var(--ink-muted);font-size:var(--text-caption)}.audit-table tbody tr:last-child td{border-bottom:0}.audit-table td small{color:var(--ink-subtle);font-size:var(--text-caption);margin-top:2px;font-weight:400;display:block}.audit-table select{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);min-height:38px;font:inherit;font-size:var(--text-label);padding:0 30px 0 10px}.mp-admin-table{margin-top:34px}.mp-table-toolbar,.mp-table-footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.mp-table-toolbar{margin-bottom:12px}.mp-table-toolbar label{width:min(380px,100%)}.mp-table-footer{color:var(--ink-subtle);font-size:var(--text-caption);padding:12px 2px}.sort-button{background:0 0;border:0;align-items:center;gap:6px;padding:0;font-weight:600;display:inline-flex}.check-cell{width:48px}.check-cell input{accent-color:var(--petrol)}.table-menu{position:relative}.table-menu .secondary-button{align-items:center;gap:7px;display:inline-flex}.table-menu-panel{z-index:20;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);width:190px;box-shadow:var(--shadow-overlay);padding:6px;position:absolute;top:calc(100% + 6px);right:0}.table-menu-panel button{border-radius:var(--radius-control);text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;padding:9px;display:flex}.table-menu-panel button:hover{background:var(--surface-muted)}.auth-state{text-align:center;place-content:center;gap:14px;min-height:100vh;padding:30px;display:grid}.auth-state a{color:var(--petrol)}.loading-spinner{border:2px solid var(--border);border-top-color:var(--petrol);border-radius:50%;width:24px;height:24px;margin:0 auto;animation:.7s linear infinite spin}.surface-loading{min-height:220px;color:var(--ink-muted);align-items:center;gap:12px;display:flex}.surface-loading .loading-spinner{margin:0}.surface-error,.live-empty{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);margin-top:32px;padding:34px}.surface-error p,.live-empty p{color:var(--ink-muted);margin-top:6px}.live-empty{color:var(--ink-muted);justify-items:start;gap:8px;display:grid}.live-empty svg{color:var(--petrol);margin-bottom:8px}.live-empty strong{color:var(--ink)}.admin-feedback{min-height:36px;margin-top:24px}.project-picker{gap:6px;max-width:420px;margin-top:8px;display:grid}.project-picker label{font-size:var(--text-label);font-weight:600}.project-picker select{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);width:100%;min-height:44px;font:inherit;padding:0 12px}.admin-panel{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);margin-top:32px;padding:26px}.admin-panel h2{font-size:var(--text-lead)}.admin-panel-intro,.admin-panel-empty{color:var(--ink-muted);font-size:var(--text-label);margin-top:6px}.admin-panel-empty{margin:18px 0 0}.admin-panel-form{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));align-items:end;gap:12px;margin-top:18px;display:grid}.admin-panel-form label{font-size:var(--text-label);margin-bottom:6px;font-weight:600;display:block}.admin-panel-form input,.admin-panel-form select{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);width:100%;min-height:44px;font:inherit;padding:0 12px}.admin-panel-form .primary-button{justify-content:center}.ordered-ledger{border-top:1px solid var(--border);margin:18px 0 0;padding:0;list-style:none}.ordered-ledger li{border-bottom:1px solid var(--border);grid-template-columns:25px 1fr auto;align-items:center;gap:12px;min-height:58px;display:grid}.ordered-ledger li:has(>time){grid-template-columns:25px 1fr auto auto}.ordered-ledger time{color:var(--ink-muted);font-size:var(--text-label);white-space:nowrap}.ledger-mark{border:1px solid var(--border-strong);width:25px;height:25px;color:var(--ink-subtle);font-family:var(--font-data);font-size:var(--text-caption);border-radius:50%;place-items:center;display:grid}.ledger-mark.complete{border-color:var(--olive);background:var(--olive-soft);color:var(--olive)}.ledger-mark.quiet{border:0}.ordered-ledger .is-complete{color:var(--ink-muted);text-decoration:line-through}.ledger-detail{color:var(--ink-muted);margin-left:4px;font-weight:400;display:inline-block}.ledger-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:2px;display:flex}.ledger-actions label{cursor:pointer}.ledger-actions input[type=file]{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.version-history{grid-column:2/-1;gap:4px;margin:0;padding:0 0 12px;list-style:none;display:grid}.version-history li{color:var(--ink-muted);font-size:var(--text-caption);gap:12px;display:flex}.version-history time{color:var(--ink-subtle)}.icon-button:disabled{color:var(--ink-subtle);cursor:not-allowed;opacity:.45}.icon-button.danger{color:var(--orange)}.inline-add{flex-wrap:wrap;align-items:end;gap:10px;margin-top:18px;display:flex}.inline-add label{font-size:var(--text-label);font-weight:600}.inline-field{gap:6px;display:grid}.inline-add input:not([type=checkbox]),.inline-add select{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);min-width:200px;min-height:44px;font:inherit;padding:0 12px}.inline-add select{width:100%}.inline-add .secondary-button{white-space:nowrap;align-items:center;gap:7px;display:inline-flex}.inline-check{min-height:44px;color:var(--ink-muted);align-items:center;gap:8px;display:inline-flex;font-weight:400!important}.inline-check input{accent-color:var(--petrol)}.inline-add textarea{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);min-width:200px;font:inherit;resize:vertical;padding:10px 12px}.panel-form{border-top:1px solid var(--border);align-items:start;row-gap:14px;margin-top:24px;padding-top:20px}.panel-form>h3{font-size:var(--text-body);flex:100%;margin:0}.panel-form>.inline-field{flex:200px}.panel-form>.inline-field input{width:100%}.panel-form>.inline-field.wide-field{flex-basis:100%}.field-note,.field-hint{color:var(--ink-muted);font-size:var(--text-label);flex:100%;margin:0}.field-hint{font-size:var(--text-caption);flex:0 auto}.wide-field{flex:100%}.wide-field textarea{width:100%}.custom-fields{border:1px solid var(--border);border-radius:var(--radius-control);flex:100%;grid-template-columns:minmax(0,1fr);gap:10px;min-inline-size:0;margin:0;padding:14px 16px;display:grid}.custom-fields legend{color:var(--ink-muted);font-size:var(--text-label);padding:0 6px;font-weight:600}.custom-fields .secondary-button{justify-self:start;align-items:center;gap:7px;display:inline-flex}.custom-field-row{align-items:center;gap:10px;display:flex}.custom-field-pair{flex-wrap:wrap;flex:auto;gap:10px;min-width:0;display:flex}.inline-add .custom-field-pair input{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);min-width:0;min-height:44px;font:inherit;flex:160px;padding:0 12px}.credential-editor{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface-sunken);grid-column:1/-1;margin:0 0 18px;padding:18px 16px}.progress-surface{margin-top:32px}.progress-summary{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr;align-items:baseline;gap:6px 18px;padding-bottom:28px;display:grid}.progress-summary>strong{font-family:var(--font-data);font-size:var(--text-heading)}.progress-summary>span{color:var(--ink-muted)}.progress-summary .progress-track{grid-column:1/-1}.phase-ledger{margin:28px 0 42px;padding:0;list-style:none}.phase-ledger li{border-bottom:1px solid var(--border);grid-template-columns:25px 1fr auto;align-items:center;gap:11px;min-height:58px;display:grid}.phase-ledger li>span{border:1px solid var(--border-strong);width:25px;height:25px;color:var(--ink-subtle);font-family:var(--font-data);font-size:var(--text-caption);border-radius:50%;place-items:center;display:grid}.phase-ledger li.complete>span{border-color:var(--olive);background:var(--olive-soft);color:var(--olive)}.phase-ledger li.current>span{border-color:var(--petrol);background:var(--petrol-soft);color:var(--petrol);font-weight:600}.phase-ledger li.current>strong{color:var(--petrol)}.phase-ledger small{color:var(--ink-subtle)}.phase-ledger li.current small{color:var(--petrol)}.milestone-list{border-top:1px solid var(--border);margin-top:12px}.milestone-list>div{border-bottom:1px solid var(--border);grid-template-columns:25px 1fr auto;align-items:center;gap:11px;padding:16px 0;display:grid}.milestone-list>div>span:first-child{justify-self:center}.milestone-list time{color:var(--ink-muted);font-size:var(--text-label)}.milestone-list .is-complete{color:var(--ink-muted);text-decoration:line-through}.milestone-done{color:var(--olive);place-items:center;display:grid}.attention-dot{background:var(--orange);border-radius:50%;width:7px;height:7px}.site-addresses{margin-top:30px}.site-addresses ul{border-top:1px solid var(--border);margin:12px 0 0;padding:0;list-style:none}.site-addresses li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:52px;display:flex}.site-addresses li>span{color:var(--ink-muted);font-size:var(--text-label)}.site-addresses a{color:var(--petrol);overflow-wrap:anywhere;align-items:center;gap:7px;font-weight:600;text-decoration:none;display:inline-flex}.site-addresses a:hover{text-decoration:underline}.next-action>div{gap:6px;min-width:0;display:grid}.next-action span{color:var(--border-pressed);font-size:var(--text-caption);letter-spacing:.04em;text-transform:uppercase;font-weight:600}.next-action strong{font-family:var(--font-heading);font-size:var(--text-lead);letter-spacing:-.015em;font-weight:600}.media-ledger,.document-ledger,.credentials-ledger{border-top:1px solid var(--border);margin-top:30px}.media-ledger article,.document-ledger article,.credentials-ledger article{border-bottom:1px solid var(--border);grid-template-columns:44px 1fr auto;align-items:center;gap:14px;min-height:78px;display:grid}.media-ledger article{grid-template-columns:56px minmax(0,1fr) auto}.credentials-ledger article{grid-template-columns:44px minmax(140px,1fr) 44px minmax(260px,auto)}.file-icon,.credential-icon{border-radius:var(--radius-control);background:var(--surface-muted);width:36px;height:36px;color:var(--petrol);place-items:center;display:grid}.media-thumbnail{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-muted);width:56px;height:44px;color:var(--petrol);cursor:pointer;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.media-thumbnail:hover{border-color:var(--active)}.media-thumbnail:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.media-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.media-thumbnail__skeleton{background:linear-gradient(100deg, var(--surface-muted) 20%, var(--surface) 42%, var(--surface-muted) 64%);background-size:220% 100%;width:100%;height:100%;animation:1.2s ease-in-out infinite thumbnail-shimmer}.media-thumbnail__fallback{place-items:center;width:100%;height:100%;display:grid}@keyframes thumbnail-shimmer{to{background-position-x:-220%}}.media-ledger article>div:first-of-type,.document-ledger article>div:first-of-type,.credentials-ledger article>div:first-of-type{gap:3px;min-width:0;display:grid}.media-ledger small,.document-ledger small,.credentials-ledger small{color:var(--ink-subtle)}.credentials-ledger a{width:44px;height:44px;color:var(--petrol);place-items:center;display:grid}.credential-detail{color:var(--ink-muted);font-size:var(--text-label);grid-column:2/-1;gap:8px;padding:0 0 16px;display:grid}.credential-detail p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.credential-detail dl{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:4px 18px;margin:0;display:grid}.credential-detail dl>div{gap:1px;display:grid}.credential-detail dt{color:var(--ink-subtle);font-size:var(--text-caption)}.credential-detail dd{color:var(--ink);overflow-wrap:anywhere;margin:0}.credential-detail small{color:var(--ink-subtle);font-size:var(--text-caption)}.credential-secret{justify-content:end;align-items:center;gap:7px;display:flex}.credential-secret code{min-width:118px;color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-caption);overflow-wrap:anywhere}.credential-secret .secondary-button{align-items:center;gap:6px;display:inline-flex}.credential-message{color:var(--petrol);font-size:var(--text-caption);margin-top:12px}.dialog-backdrop{z-index:80;background:#1b1a166b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.admin-dialog{border-radius:var(--radius-surface);background:var(--surface);width:min(560px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-overlay);padding:30px;overflow-y:auto}.admin-dialog header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px;display:flex}.admin-dialog header h2{font-size:var(--text-title)}.admin-dialog header p,.dialog-note{color:var(--ink-muted);font-size:var(--text-caption);margin-top:5px}.admin-dialog form{gap:9px;display:grid}.admin-dialog label{font-size:var(--text-label);margin-top:7px;font-weight:600}.admin-dialog input,.admin-dialog select{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);width:100%;min-height:44px;font:inherit;padding:0 12px}.client-details-form{border-top:1px solid var(--border);margin-top:24px;padding-top:22px}.client-details-fields{gap:16px;display:grid}.client-details-fields fieldset{border:1px solid var(--border);border-radius:var(--radius-control);min-inline-size:0;margin:0;padding:14px}.client-details-fields legend{color:var(--petrol);font-family:var(--font-display);font-size:var(--text-label);padding:0 6px;font-weight:700}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px;display:grid}.details-grid>div{min-width:0}.inline-check{align-items:center;gap:9px;margin:12px 0;display:flex}.admin-dialog .inline-check input{width:18px;min-height:18px}.generated-password{grid-template-columns:1fr auto;gap:8px;display:grid}.dialog-actions{border-top:1px solid var(--border);flex-wrap:wrap;gap:8px;margin-top:22px;padding-top:20px;display:flex}.dialog-actions .secondary-button{cursor:pointer;align-items:center;gap:7px;display:inline-flex}.dialog-actions input[type=file]{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.dialog-actions .dialog-note{flex-basis:100%;margin-top:0}.secondary-button.danger{border-color:var(--orange);color:var(--orange)}.admin-dialog form>.primary-button{justify-content:center;margin-top:12px}.archived-notice{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface-sunken);margin-bottom:22px;padding:14px 16px}.archived-notice strong{font-size:var(--text-label)}.archived-notice p{color:var(--ink-muted);font-size:var(--text-label);margin-top:4px}.storage-warning{border:1px solid var(--orange);border-radius:var(--radius-control);background:var(--orange-soft);margin-top:26px;padding:18px}.storage-warning p{color:var(--ink-muted);font-size:var(--text-label);margin-top:5px}.upload-toolbar{align-items:center;gap:12px;margin-top:24px;display:flex}.upload-toolbar label{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.upload-toolbar input[type=file]{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.file-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.table-action.danger{color:var(--orange)}.storage-quota{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface-muted);gap:9px;margin-top:24px;padding:14px 16px;display:grid}.storage-quota-summary{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.storage-quota-summary span{color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-caption)}.storage-quota progress{width:100%;height:8px;accent-color:var(--petrol)}.folder-navigation{gap:12px;margin-top:20px;display:grid}.folder-breadcrumb{flex-wrap:wrap;align-items:center;gap:5px;margin:0;padding:0;list-style:none;display:flex}.folder-breadcrumb li:not(:last-child):after{content:"/";color:var(--ink-subtle);margin-left:5px}.folder-breadcrumb button,.folder-list button{border-radius:var(--radius-control);min-height:36px;color:var(--petrol);font:inherit;font-size:var(--text-label);cursor:pointer;background:0 0;border:1px solid #0000;padding:5px 10px}.folder-breadcrumb button:hover,.folder-breadcrumb button:focus-visible,.folder-list button:hover,.folder-list button:focus-visible{border-color:var(--border-strong);background:var(--surface-muted)}.folder-breadcrumb button.current{color:var(--ink);font-weight:600}.folder-list{flex-wrap:wrap;gap:7px;display:flex}.folder-list button{border-color:var(--border);background:var(--surface)}.preview-unavailable{max-width:230px;color:var(--ink-muted);font-size:var(--text-caption)}.file-preview-dialog{border-radius:var(--radius-surface);background:var(--surface);width:min(900px,100%);max-height:calc(100vh - 40px);box-shadow:var(--shadow-overlay);padding:24px;overflow:auto}.file-preview-dialog header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.file-preview-dialog header h2{font-size:var(--text-title)}.file-preview-dialog img,.file-preview-dialog video,.file-preview-dialog iframe{object-fit:contain;border:0;width:100%;max-height:70vh;display:block}.file-preview-dialog audio{width:100%}.file-preview-dialog iframe{background:var(--surface-sunken);min-height:55vh}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=600px){.auth-page{padding:32px 16px}.auth-card{padding:28px 20px}.auth-card h1{font-size:var(--text-title)}.auth-otp{gap:6px}.auth-otp input{min-height:52px;font-size:var(--text-lead)}.admin-header{padding:0 20px}.admin-content{padding-top:42px}.admin-title-row{flex-direction:column;align-items:stretch}.admin-title-row>div:first-child{flex:0 auto}.admin-title-row .primary-button{justify-content:center}.admin-title-actions{display:grid}.details-grid{grid-template-columns:minmax(0,1fr)}.mp-table-toolbar{flex-direction:column;align-items:stretch}.milestone-list>div{grid-template-columns:25px 1fr}.milestone-list time{grid-column:2}.ordered-ledger li,.ordered-ledger li:has(>time){grid-template-columns:25px 1fr;padding:12px 0}.ordered-ledger li>time{grid-column:2}.ordered-ledger .ledger-actions{grid-column:2;justify-content:flex-start}.media-ledger article{grid-template-columns:56px minmax(0,1fr);padding:14px 0}.document-ledger article{grid-template-columns:42px minmax(0,1fr);padding:14px 0}.media-ledger .table-action,.document-ledger .table-action{grid-column:2;justify-self:start}.credentials-ledger article{grid-template-columns:42px 1fr 42px;padding:14px 0}.credential-secret{flex-wrap:wrap;grid-column:2/-1;justify-content:start}.admin-dialog{padding:24px 18px}.generated-password{grid-template-columns:1fr}}h1,h2,h3,p,dl,dd{margin:0}h1,h2,h3{font-family:var(--font-heading);text-wrap:balance}p{text-wrap:pretty}.skip-link{z-index:100;border-radius:var(--radius-control);background:var(--ink);color:#fff;padding:10px 14px;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.portal-app{min-height:100vh}.topbar{z-index:20;border-bottom:1px solid var(--border);background:var(--paper);justify-content:space-between;align-items:center;height:66px;padding:0 32px;display:flex;position:sticky;top:0}@supports (backdrop-filter:blur(1px)){.topbar{backdrop-filter:saturate(180%)blur(12px);background:#faf8f3d1}}.brand{min-height:44px;font-family:var(--font-heading);font-size:var(--text-body);letter-spacing:-.02em;background:0 0;border:0;align-items:baseline;padding:0;display:flex}.brand strong{font-weight:700}.brand span{color:var(--ink-subtle);margin-left:3px;font-weight:500}.topbar-actions,.notification-wrap,.account-wrap{align-items:center;display:flex;position:relative}.topbar-actions{gap:14px}.icon-button,.avatar{border-radius:var(--radius-control);background:0 0;border:0;place-items:center;min-width:44px;height:44px;display:inline-grid}.icon-button:not(:disabled):hover{background:var(--surface-muted);color:var(--petrol)}.icon-button.danger:not(:disabled):hover{background:var(--orange-soft);color:var(--orange)}.avatar{background:var(--ink);width:40px;min-width:40px;height:40px;color:var(--surface);font-weight:600;font-size:var(--text-label);border-radius:50%}.notification-dot{border:2px solid var(--paper);background:var(--orange);border-radius:50%;width:8px;height:8px;position:absolute;top:7px;right:6px}.notification-panel{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);width:min(360px,100vw - 32px);box-shadow:var(--shadow-overlay);padding:8px;position:absolute;top:50px;right:0}.notification-heading{justify-content:space-between;align-items:center;padding:10px 10px 12px;display:flex}.notification-heading span{color:var(--orange);font-size:var(--text-caption);font-weight:600}.notification-read-all{border-radius:var(--radius-surface);background:var(--petrol-soft);width:100%;color:var(--petrol);font-size:var(--text-caption);text-align:left;border:0;padding:8px 10px;font-weight:700}.notification-item{border:0;border-top:1px solid var(--border);text-align:left;background:0 0;grid-template-columns:7px minmax(0,1fr);align-items:start;column-gap:10px;width:100%;padding:12px 10px;display:grid}.notification-item:hover{background:var(--surface-muted)}.notification-mark{background:0 0;border-radius:50%;width:7px;height:7px;margin-top:7px}.is-unread>.notification-mark{background:var(--orange)}.notification-body{gap:3px;min-width:0;display:grid}.notification-body strong{color:var(--ink-muted);font-size:var(--text-label);font-weight:500}.notification-item.is-unread .notification-body strong{color:var(--ink);font-weight:600}.notification-body time{color:var(--ink-subtle);font-size:var(--text-caption)}.notification-empty{border-top:1px solid var(--border);color:var(--ink-muted);font-size:var(--text-label);padding:16px 10px}.account-menu{z-index:30;border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);width:220px;box-shadow:var(--shadow-overlay);text-align:left;gap:6px;padding:14px;display:grid;position:absolute;top:50px;right:0}.settings-page{background:var(--paper);min-height:100vh}.settings-card{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface);width:min(100% - 32px,720px);box-shadow:var(--shadow-raised);margin:48px auto;padding:32px}.settings-card h1{font-size:var(--text-heading);margin:22px 0 8px}.settings-card>p{color:var(--ink-muted);line-height:1.6}.preference-list{gap:12px;margin-top:28px;display:grid}.preference-row{border:1px solid var(--border);border-radius:var(--radius-surface);cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:16px;transition:border-color .16s,background .16s;display:flex}.preference-row:hover{border-color:var(--border-strong);background:var(--surface-muted)}.preference-row:has(input:focus-visible){outline-offset:3px;outline:3px solid #087e8b52}.preference-row>span{gap:4px;display:grid}.preference-row small{color:var(--ink-muted)}.switch{flex:none;width:46px;height:26px;display:inline-block;position:relative}.switch input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute}.switch-track{border:1px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-muted);pointer-events:none;width:100%;height:100%;transition:background .18s,border-color .18s;display:block}.switch-track:after{background:var(--surface);width:20px;height:20px;box-shadow:var(--shadow-raised);content:"";border-radius:50%;margin:2px;transition:transform .18s cubic-bezier(.16,1,.3,1);display:block}.switch input:checked+.switch-track{border-color:var(--petrol);background:var(--petrol)}.switch input:checked+.switch-track:after{transform:translate(20px)}.switch input:disabled+.switch-track{opacity:.5}.settings-card h2{font-size:var(--text-lead);margin:0 0 8px}.profile-facts{border-top:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px 24px;margin:26px 0 0;padding-top:22px;display:grid}.profile-facts>div{gap:4px;min-width:0;display:grid}.profile-facts dt{color:var(--ink-subtle);font-size:var(--text-caption)}.profile-facts dd{color:var(--ink);overflow-wrap:anywhere;gap:2px;margin:0;display:grid}.profile-facts dd small{color:var(--ink-subtle);font-size:var(--text-caption)}.settings-links{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.settings-links a{text-decoration:none}.settings-locale{margin-top:20px}.settings-locale button{min-width:64px;min-height:44px}.notification-filter{gap:8px;margin-top:20px;display:flex}.notification-filter button{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface);min-height:44px;color:var(--ink-muted);font:inherit;font-size:var(--text-label);padding:0 14px;font-weight:600}.notification-filter button.active{border-color:var(--petrol);background:var(--petrol-soft);color:var(--petrol)}.notification-history{border-top:1px solid var(--border);margin:20px 0 0;padding:0;list-style:none}.notification-history li{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.notification-history li.is-unread{background:var(--petrol-soft)}.notification-history li>div{gap:3px;min-width:0;display:grid}.notification-history strong{font-size:var(--text-body);overflow-wrap:anywhere}.notification-history li.is-unread strong{color:var(--petrol)}.notification-history small{color:var(--ink-muted);font-size:var(--text-label);overflow-wrap:anywhere}.notification-history time{color:var(--ink-subtle);font-size:var(--text-caption)}.notification-history .table-action{flex:none;min-height:44px}.review-conversation{border:1px solid var(--border);border-radius:var(--radius-surface);background:var(--surface-sunken);grid-column:1/-1;gap:14px;margin:0 0 18px;padding:16px;display:grid}.review-conversation h4{font-size:var(--text-label);color:var(--ink-muted);margin:0}.conversation-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.conversation-list li{border-radius:var(--radius-control);background:var(--surface);gap:3px;padding:10px 12px;display:grid}.conversation-list li.is-internal{background:var(--surface-shade)}.conversation-list strong{font-size:var(--text-label);align-items:center;gap:8px;display:flex}.conversation-list p{color:var(--ink-muted);overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.internal-badge{border-radius:var(--radius-pill);background:var(--orange-soft);color:var(--orange);font-size:var(--text-caption);padding:1px 7px;font-weight:600}.conversation-compose{flex-wrap:wrap;align-items:start;gap:10px;display:flex}.conversation-compose.is-internal{border-top:1px solid var(--border);padding-top:12px}.outbox-note{min-width:210px;color:var(--ink-subtle);font-size:var(--text-caption);white-space:normal;margin-top:4px;line-height:1.45;display:block}.outbox-error>span{overflow-wrap:anywhere;white-space:normal;width:250px;display:block}.notification-notice{border-top:1px solid var(--border);color:var(--ink-muted);font-size:var(--text-caption);margin:0;padding:10px;line-height:1.5}.notification-see-all{border-top:1px solid var(--border);color:var(--petrol);font-size:var(--text-caption);padding:12px 10px 2px;font-weight:700;text-decoration:none;display:block}.notification-see-all:hover{text-decoration:underline}.form-status{color:var(--petrol);margin-top:18px;font-weight:600}.membership-pill{border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--text-caption);align-items:center;gap:6px;margin:2px 4px 2px 0;padding:4px 7px;display:inline-flex}.membership-pill button{color:var(--orange);font-size:var(--text-caption);background:0 0;border:0;padding:0;font-weight:700}.account-menu strong{font-size:var(--text-label)}.account-menu small{color:var(--ink-subtle);font-size:var(--text-caption)}.account-menu a,.account-menu button{border:0;border-top:1px solid var(--border);width:100%;color:var(--ink);font:inherit;text-align:left;background:0 0;padding:9px 0;text-decoration:none;display:block}.account-menu a:first-of-type{margin-top:6px}.account-menu a:hover,.account-menu button:hover{color:var(--petrol)}.locale-switcher{gap:6px;margin:6px 0;display:flex}.locale-switcher button{border:1px solid var(--border);border-radius:var(--radius-control);width:auto;font-family:var(--font-data);font-size:var(--text-caption);padding:4px 7px}.locale-switcher button.active{border-color:var(--petrol);background:var(--petrol-soft);color:var(--petrol)}.review-history{gap:8px;margin-top:20px;display:grid}.review-history button{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);text-align:left;justify-content:space-between;gap:14px;padding:12px;display:flex}.review-history button.active{border-color:var(--petrol);background:var(--petrol-soft)}.review-history small{color:var(--ink-muted)}.trash-section{border-top:1px solid var(--border);margin-top:28px;padding-top:24px}.trash-section>p{color:var(--ink-muted);margin:6px 0 14px}.notification-item small{color:var(--ink-subtle)}.dashboard{width:min(100%,1264px);margin:0 auto;padding:36px 32px 64px}.date-line{color:var(--ink-subtle);font-size:var(--text-label);margin-bottom:8px}.dashboard h1{max-width:900px;font-size:var(--text-fluid-display);letter-spacing:-.03em;font-weight:600;line-height:1.08}.intro{max-width:680px;color:var(--ink-muted);font-size:var(--text-body);margin-top:14px}.metric-ledger{border-top:1px solid var(--border);border-bottom:1px solid var(--border);grid-template-columns:repeat(3,1fr);margin-top:34px;padding:20px 0;display:grid}.metric-ledger>div{border-left:1px solid var(--border);gap:2px;padding-left:24px;display:grid}.metric-ledger>div:first-child{border-left:0;padding-left:0}.metric-ledger dd{font-family:var(--font-heading);font-size:var(--text-heading);letter-spacing:-.03em;font-weight:600;line-height:1.2}.metric-ledger dt{color:var(--ink-muted);font-size:var(--text-label)}.metric-ledger .attention-metric dd{color:var(--orange)}.projects-section{margin-top:38px}.section-heading{justify-content:space-between;align-items:center;gap:24px;display:flex}.section-heading h2,.activity-section h2,.details-section h2{font-size:var(--text-lead);letter-spacing:-.02em;font-weight:600}.text-button,.back-button{min-height:44px;color:var(--ink-muted);font-size:var(--text-label);background:0 0;border:0;align-items:center;padding:0;font-weight:600;text-decoration:none;display:inline-flex}.text-button:hover,.back-button:hover{color:var(--petrol)}.text-button:disabled,.avatar:disabled{cursor:not-allowed;opacity:.62}.project-row{border:1px solid var(--border-strong);border-radius:var(--radius-surface);background:var(--surface);text-align:left;grid-template-columns:48px minmax(280px,1fr) 192px 44px;align-items:center;width:100%;margin-top:20px;padding:28px;transition:border-color .18s,transform .18s,box-shadow .18s;display:grid}.project-row:hover{border-color:var(--petrol);box-shadow:var(--shadow-raised);transform:translateY(-1px)}.project-mark{border-radius:var(--radius-surface);background:var(--ink);color:#fff;width:40px;height:40px;font-family:var(--font-heading);font-size:var(--text-caption);place-items:center;font-weight:600;display:grid}.project-primary{gap:3px;padding-left:16px;display:grid}.project-title-line{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.project-title-line>strong{font-family:var(--font-heading);font-size:var(--text-lead);letter-spacing:-.015em}.status{border-radius:var(--radius-control);width:fit-content;min-height:26px;font-size:var(--text-caption);align-items:center;gap:6px;padding:4px 9px;font-weight:600;display:inline-flex}.status-attention{background:var(--orange-soft);color:var(--orange)}.status-active{background:var(--petrol-soft);color:var(--petrol)}.status-complete{background:var(--olive-soft);color:var(--olive-ink)}.status-quiet{background:var(--surface-muted);color:var(--ink-muted)}.project-subtitle{color:var(--ink-muted);font-size:var(--text-label)}.project-progress{gap:8px;display:grid}.project-progress>span:first-child{justify-content:space-between;align-items:center;display:flex}.project-progress small,.project-meta small{color:var(--ink-subtle);font-size:var(--text-caption);text-transform:uppercase;font-weight:600}.project-progress b{font-family:var(--font-data);font-size:var(--text-caption)}.progress-track{border-radius:var(--radius-control);background:var(--border);height:8px;display:block;overflow:hidden}.progress-track>span{border-radius:inherit;background:var(--petrol);height:100%;display:block}.row-chevron{border-radius:var(--radius-surface);background:var(--surface-muted);place-items:center;width:44px;height:44px;margin-left:16px;display:grid}.project-meta{border-top:1px solid var(--border);grid-column:1/-1;grid-template-columns:1fr 1fr 1fr;gap:24px;margin-top:26px;padding-top:22px;display:grid}.project-meta>span{gap:4px;display:grid}.project-meta strong{font-size:var(--text-label)}.project-page{width:min(100%,1440px);margin:0 auto;padding:28px 32px 72px}.project-header{border-bottom:1px solid var(--border);grid-template-columns:180px 1fr 180px;align-items:end;padding-bottom:28px;display:grid}.back-button{justify-self:start;align-items:center;gap:8px;padding:0;display:inline-flex}.project-header>div{text-align:center}.project-header p{color:var(--ink-subtle);font-size:var(--text-label)}.project-header h1{font-size:var(--text-fluid-heading);letter-spacing:-.025em;margin-top:2px}.mobile-project-menu{display:none}.project-shell{grid-template-columns:220px minmax(0,1fr);min-height:700px;display:grid}.project-sidebar{border-right:1px solid var(--border);padding:30px 24px 30px 0}.project-sidebar>p{color:var(--ink-subtle);font-size:var(--text-caption);text-transform:uppercase;margin:0 0 12px 14px;font-weight:600}.project-sidebar nav{gap:4px;display:grid;position:sticky;top:90px}.project-sidebar button{border-radius:var(--radius-control);min-height:44px;color:var(--ink-muted);text-align:left;font-size:var(--text-label);background:0 0;border:0;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:0 12px;font-weight:500;display:grid}.project-sidebar button:hover{background:var(--surface-muted);color:var(--ink)}.project-sidebar button:disabled,.mobile-menu-sheet>button:disabled,.mobile-bottom-nav button:disabled{cursor:not-allowed;opacity:.48}.project-sidebar button:disabled:hover{color:var(--ink-muted);background:0 0}.project-sidebar button.active{background:var(--petrol-soft);color:var(--petrol);font-weight:600}.project-sidebar button>span{background:var(--orange);color:#fff;min-width:22px;height:22px;font-size:var(--text-caption);border-radius:50%;place-items:center;display:grid}.project-content{min-width:0;padding:36px 0 0 36px}.overview-hero{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;gap:48px;padding-bottom:36px;display:flex}.context-label{color:var(--ink-subtle);font-size:var(--text-caption);text-transform:uppercase;margin-bottom:6px;font-weight:600}.overview-hero h2{font-size:var(--text-fluid-display);letter-spacing:-.035em;font-weight:600;line-height:1}.overview-hero p:last-child{max-width:630px;color:var(--ink-muted);margin-top:14px}.progress-number{text-align:right;flex:none;gap:4px;display:grid}.progress-number span{color:var(--petrol);font-family:var(--font-heading);font-size:var(--text-display);letter-spacing:-.04em;font-weight:600;line-height:1}.progress-number small{color:var(--ink-subtle)}.phase-section{border-bottom:1px solid var(--border);padding:34px 0 38px}.mono{color:var(--ink-subtle);font-family:var(--font-data);font-size:var(--text-caption)}.phase-rail{grid-template-columns:repeat(5,1fr);margin:28px 0 0;padding:0;list-style:none;display:grid}.phase-rail li{gap:4px;padding-right:12px;display:grid;position:relative}.phase-rail li:before{z-index:0;background:var(--border);content:"";height:2px;position:absolute;top:10px;left:0;right:0}.phase-rail li:last-child:before{display:none}.phase-rail li.complete:before{background:var(--olive)}.phase-rail li.current:before{background:linear-gradient(to right, var(--petrol) 54%, var(--border) 54%)}.phase-marker{z-index:1;border:2px solid var(--border-strong);background:var(--paper);border-radius:50%;place-items:center;width:22px;height:22px;margin-bottom:5px;display:grid}.complete .phase-marker{border-color:var(--olive);background:var(--olive);color:#fff}.current .phase-marker{border:5px solid var(--petrol);background:var(--surface)}.phase-rail strong{font-size:var(--text-label)}.phase-rail small{color:var(--ink-subtle);font-family:var(--font-data);font-size:var(--text-caption)}.next-action{border-radius:var(--radius-surface);background:var(--ink);color:var(--surface);justify-content:space-between;align-items:center;gap:40px;margin:36px 0;padding:28px;display:flex}.next-action .context-label{color:var(--border-pressed)}.next-action h2{font-size:var(--text-title);letter-spacing:-.02em}.next-action p:last-child{max-width:620px;color:var(--border-pressed);font-size:var(--text-label);margin-top:8px}.primary-button,.secondary-button,.download-button{border-radius:var(--radius-control);min-height:44px;font-size:var(--text-label);justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;transition:background .16s,transform .12s;display:inline-flex}.primary-button{border:1px solid var(--petrol);background:var(--petrol);color:#fff}.primary-button:hover{border-color:var(--petrol-pressed);background:var(--petrol-pressed)}.primary-button:active,.secondary-button:active,.download-button:active{transform:scale(.97)}.primary-button:disabled,.secondary-button:disabled,.download-button:disabled{cursor:not-allowed;opacity:.5}.primary-button:disabled:hover{border-color:var(--petrol);background:var(--petrol)}.primary-button:disabled:active,.secondary-button:disabled:active,.download-button:disabled:active{transform:none}.next-action .primary-button{border-color:var(--petrol-bright);background:var(--petrol-bright);color:var(--ink);flex:none}.overview-columns{grid-template-columns:1.55fr .75fr;gap:48px;padding-top:8px;display:grid}.activity-list{margin:20px 0 0;padding:0;list-style:none}.activity-list li{grid-template-columns:14px 1fr;gap:14px;padding:0 0 24px;display:grid}.activity-marker{border:2px solid var(--paper);width:10px;height:10px;box-shadow:0 0 0 1px var(--border-strong);border-radius:50%;margin-top:7px}.activity-marker.attention{background:var(--orange)}.activity-marker.progress{background:var(--petrol)}.activity-marker.complete{background:var(--olive)}.activity-list strong{font-size:var(--text-label)}.activity-list p{color:var(--ink-muted);font-size:var(--text-label);margin-top:2px}.activity-list small{margin-top:5px;display:block}.details-section dl{margin-top:20px}.details-section dl>div{border-bottom:1px solid var(--border);padding:13px 0}.details-section dt{color:var(--ink-subtle);font-size:var(--text-caption)}.details-section dd{font-size:var(--text-label);margin-top:3px;font-weight:600}.review-layout{grid-template-columns:minmax(0,1fr) minmax(280px,330px);gap:34px;display:grid}@media (width<=1180px){.review-layout{grid-template-columns:minmax(0,1fr)}.decision-panel{position:static}}.review-heading{align-items:end}.review-heading h2{font-size:var(--text-heading)}.review-intro{max-width:700px;color:var(--ink-muted);margin-top:10px}.review-attachment,.review-conversation{margin-top:26px}.review-attachment h3,.review-conversation h3{font-size:var(--text-label)}.review-attachment .secondary-button{overflow-wrap:anywhere;text-align:left;align-items:center;gap:8px;margin-top:10px;display:inline-flex}.attachment-empty{color:var(--ink-muted);font-size:var(--text-label);margin-top:8px}.comment-list{background:var(--border);border:1px solid var(--border);border-radius:var(--radius-surface);gap:1px;margin:12px 0 0;padding:0;list-style:none;display:grid;overflow:hidden}.comment-list li{background:var(--surface);padding:14px 16px}.comment-list li>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.comment-list strong{font-size:var(--text-label)}.comment-list time{color:var(--ink-subtle);font-size:var(--text-caption)}.comment-list p{color:var(--ink-muted);overflow-wrap:anywhere;white-space:pre-wrap;margin-top:6px}.comment-attachment-link{color:var(--petrol);font-size:var(--text-label);text-align:left;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin-top:10px;padding:0;display:inline-flex}.comment-attachment-link:hover{text-decoration:underline}.comment-attachment{margin-top:12px}.comment-attachment input[type=file]{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.comment-attachment-picker,.decision-panel label.comment-attachment-picker{color:var(--ink-muted);font-size:var(--text-label);cursor:pointer;align-items:center;gap:8px;margin-top:0;font-weight:500;display:inline-flex}.comment-attachment-picker:hover{color:var(--petrol)}.comment-attachment input[type=file]:focus-visible+svg{outline:2px solid var(--petrol);outline-offset:3px}.comment-attachment-chip{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--field);color:var(--ink-muted);font-size:var(--text-label);align-items:center;gap:8px;padding:8px 10px;display:flex}.comment-attachment-chip span{overflow-wrap:anywhere;flex:1;min-width:0}.comment-attachment-chip .icon-button{flex-shrink:0}.download-button{color:var(--ink-muted);background:0 0;border:0;margin-top:14px}.download-button:hover{color:var(--petrol)}.decision-panel{border-radius:var(--radius-surface);background:var(--surface);box-shadow:var(--shadow-raised);align-self:start;padding:24px;position:sticky;top:96px}.decision-panel h2{font-size:var(--text-lead)}.decision-panel>p{color:var(--ink-muted);font-size:var(--text-label);margin-top:8px}.decision-panel label{font-size:var(--text-label);margin-top:24px;font-weight:600;display:block}.decision-panel textarea{resize:vertical;border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface);width:100%;min-height:130px;margin-top:8px;padding:12px;line-height:1.5}.decision-panel textarea::placeholder{color:var(--ink-subtle)}.decision-panel textarea[aria-invalid=true]{border-color:var(--error)}.field-error{color:var(--error)!important;font-size:var(--text-caption)!important;margin-top:7px!important}.full-button{width:100%;margin-top:12px}.secondary-button{border:1px solid var(--border-strong);background:var(--surface-muted);color:var(--ink)}.secondary-button:hover{background:var(--surface-edge)}.review-success{max-width:720px;padding-top:96px}.success-icon{background:var(--olive);color:#fff;border-radius:50%;place-items:center;width:64px;height:64px;margin-bottom:24px;display:grid}.review-success h2{font-size:var(--text-display);letter-spacing:-.03em}.review-success>p:not(.context-label){max-width:600px;color:var(--ink-muted);margin-top:12px}.review-success dl{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:24px;margin-top:36px;padding-top:24px;display:grid}.review-success dt{color:var(--ink-subtle);font-size:var(--text-caption)}.review-success dd{font-family:var(--font-data);font-size:var(--text-label);margin-top:4px}.supporting-view{max-width:760px}.supporting-icon{border-radius:var(--radius-surface);background:var(--petrol-soft);width:56px;height:56px;color:var(--petrol);place-items:center;display:grid}.supporting-view h2{font-size:var(--text-heading);margin-top:20px}.supporting-view>p{max-width:640px;color:var(--ink-muted);margin-top:8px}.empty-state{border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:38px;padding:28px 0}.empty-state p{color:var(--ink-muted);margin-top:6px}.mobile-menu-backdrop,.mobile-bottom-nav{display:none}.page-enter{animation:.42s cubic-bezier(.16,1,.3,1) both page-enter}@keyframes page-enter{0%{opacity:.01;clip-path:inset(0 0 16%);transform:translateY(10px)}to{opacity:1;clip-path:inset(0);transform:translateY(0)}}@media (width<=900px){.topbar{padding:0 20px}.dashboard,.project-page{padding-left:20px;padding-right:20px}.project-row{grid-template-columns:48px minmax(0,1fr) 44px}.project-progress{grid-column:2/3;margin:18px 0 0 16px}.row-chevron{grid-area:1/3}.project-header{grid-template-columns:auto 1fr;align-items:center;gap:12px}.project-header>div{text-align:left;grid-area:2/1/auto/-1}.mobile-project-menu{border:1px solid var(--border);border-radius:var(--radius-control);background:var(--surface);min-height:44px;font-size:var(--text-label);justify-self:end;align-items:center;gap:8px;padding:0 12px;font-weight:600;display:inline-flex}.project-shell{display:block}.project-sidebar{display:none}.project-content{padding-left:0}.review-layout{grid-template-columns:1fr}.decision-panel{position:static}}@media (width<=680px){.topbar{height:60px;padding:0 16px}.dashboard{padding:28px 16px 96px}.dashboard h1{font-size:var(--text-heading)}.intro{font-size:var(--text-body)}.metric-ledger{margin-top:28px}.metric-ledger>div{padding-left:12px}.metric-ledger dd{font-size:var(--text-title)}.metric-ledger dt{font-size:var(--text-caption)}.projects-section{margin-top:30px}.project-row{grid-template-columns:42px minmax(0,1fr) 36px;padding:18px 16px}.project-mark{width:38px;height:38px}.project-primary{padding-left:12px}.project-title-line{gap:5px;display:grid}.project-title-line>strong{font-size:var(--text-body)}.project-subtitle{font-size:var(--text-label)}.project-progress{margin-left:12px}.row-chevron{width:36px;height:40px;margin-left:0}.project-meta{grid-template-columns:1fr;gap:16px;margin-top:20px;padding-top:18px}.project-page{padding:18px 16px calc(96px + env(safe-area-inset-bottom))}.project-header .back-button{white-space:nowrap;gap:0;width:44px;font-size:0;overflow:hidden}.project-header .back-button svg{flex:none}.project-header{padding-bottom:20px}.project-header h1{font-size:var(--text-title)}.project-content{padding-top:28px}.overview-hero{gap:24px;padding-bottom:28px;display:grid}.overview-hero h2{font-size:var(--text-display)}.progress-number{text-align:left;grid-template-columns:auto 1fr;align-items:baseline;gap:10px}.progress-number span{font-size:var(--text-display)}.phase-rail{grid-template-columns:1fr;gap:0}.phase-rail li{grid-template-columns:28px 1fr auto;align-items:center;min-height:58px}.phase-rail li:before{width:2px;height:auto;top:0;bottom:0;left:10px}.phase-rail li:first-child:before{top:50%}.phase-rail li:last-child:before{display:block;bottom:50%}.phase-rail li.current:before{background:linear-gradient(to bottom, var(--petrol) 54%, var(--border) 54%)}.phase-marker{grid-column:1;margin:0}.phase-rail strong{grid-column:2}.phase-rail small{grid-column:3}.next-action{gap:22px;padding:22px;display:grid}.next-action .primary-button{width:100%}.overview-columns{grid-template-columns:1fr;gap:32px}.review-heading{align-items:start}.review-heading h2{font-size:var(--text-title)}.decision-panel{padding:20px}.review-success{padding-top:56px}.review-success dl{grid-template-columns:1fr}.mobile-bottom-nav{z-index:30;padding:7px 8px max(7px, env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fffdf8fa;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #1b1a160f}.mobile-bottom-nav button{border-radius:var(--radius-control);min-height:50px;color:var(--ink-subtle);font-size:var(--text-caption);background:0 0;border:0;place-items:center;gap:2px;padding:4px;font-weight:500;display:grid}.mobile-bottom-nav button.active{color:var(--petrol)}.mobile-menu-backdrop{z-index:50;background:#1b1a165c;align-items:flex-end;display:flex;position:fixed;inset:0}.mobile-menu-sheet{width:100%;max-height:82vh;padding:20px 16px max(24px, env(safe-area-inset-bottom));border-radius:var(--radius-surface) var(--radius-surface) 0 0;background:var(--surface);box-shadow:var(--shadow-overlay);animation:.26s cubic-bezier(.16,1,.3,1) sheet-enter;overflow:auto}.mobile-menu-heading{font-family:var(--font-heading);font-size:var(--text-lead);justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.mobile-menu-sheet>button{border:0;border-top:1px solid var(--border);text-align:left;width:100%;min-height:52px;font-size:var(--text-label);background:0 0;grid-template-columns:24px 1fr 24px;align-items:center;gap:12px;padding:0 10px;display:grid}.mobile-menu-sheet>button.active{color:var(--petrol);font-weight:600}}@keyframes sheet-enter{0%{transform:translateY(24px)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ldk-mark{width:1.5rem;height:1.5rem;color:var(--ink);flex:none;display:block}.brand-lockup{min-height:44px;color:var(--ink);align-items:center;gap:9px;text-decoration:none;display:inline-flex}.brand-lockup__mark{width:2rem;height:2rem}.brand-lockup__wordmark{text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;min-width:max-content;line-height:1;display:inline-flex}.brand-lockup__wordmark>*{align-self:flex-start}.brand-lockup__wordmark strong{font-family:var(--font-heading);font-size:var(--text-lead);letter-spacing:-.02em;font-weight:700}.brand-lockup__wordmark small{color:var(--ink-muted);font-family:var(--font-data);font-size:var(--text-caption);letter-spacing:.14em;text-transform:uppercase;margin-top:4px;font-weight:600}.brand-lockup--sm .brand-lockup__mark{width:1.5rem;height:1.5rem}.brand-lockup--sm .brand-lockup__wordmark strong{font-size:var(--text-label)}.brand-lockup--sm .brand-lockup__wordmark small{margin-top:2px;font-size:10px}.brand-lockup--lg .brand-lockup__mark{width:2.75rem;height:2.75rem}.brand-lockup--lg .brand-lockup__wordmark strong{font-size:var(--text-title)}.brand-lockup:hover .brand-lockup__wordmark small,.brand-lockup:focus-visible .brand-lockup__wordmark small{color:var(--active)}.portal-header{z-index:20;border-bottom:1px solid var(--border);background:var(--paper);justify-content:space-between;align-items:center;gap:24px;min-height:64px;padding:8px 32px;display:flex;position:sticky;top:0}.portal-header__controls,.portal-navigation{align-items:center;display:flex}.portal-header__controls{justify-content:flex-end;gap:16px;min-width:0}.portal-navigation{gap:6px;min-width:0}.portal-navigation__link{min-height:44px;color:var(--ink-muted);font-size:var(--text-label);white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:0 10px;font-weight:600;text-decoration:none;transition:color .16s,border-color .16s;display:inline-flex}.portal-navigation__link:hover,.portal-navigation__link:focus-visible{color:var(--active)}.portal-navigation__link.is-active{border-bottom-color:var(--active);color:var(--active)}.portal-header__sign-out{min-height:44px;color:var(--ink-muted);font-size:var(--text-label);background:0 0;border:0;padding:0 2px;font-weight:600}.portal-header__sign-out:hover,.portal-header__sign-out:focus-visible{color:var(--action-primary)}.portal-header--admin,.portal-header--account{background:var(--surface)}@media (width<=760px){.portal-header{padding:8px 16px max(8px, env(safe-area-inset-top));flex-direction:column;align-items:flex-start;gap:4px}.portal-header__controls{scrollbar-width:none;justify-content:space-between;gap:8px;width:100%;padding-bottom:2px;overflow-x:auto}.portal-header__controls::-webkit-scrollbar{display:none}.portal-navigation{flex:1 0 auto}.portal-navigation__link{padding:0 8px}}@media (prefers-reduced-motion:reduce){.portal-navigation__link{transition:none}}h1,h2,h3{font-family:var(--font-heading);letter-spacing:-.035em}.topbar,.portal-header{border-bottom-color:var(--border-strong);min-height:64px}.topbar .brand{align-items:center;min-width:156px}.primary-button,.auth-submit{border-color:var(--action-primary);background:var(--action-primary);color:#fff}.primary-button:hover,.auth-submit:hover,.next-action .primary-button:hover{border-color:var(--action-primary-hover);background:var(--action-primary-hover);color:#fff}.primary-button:disabled:hover,.auth-submit:disabled:hover{border-color:var(--action-primary);background:var(--action-primary)}.primary-button:active,.auth-submit:active,.secondary-button:active,.download-button:active{transform:scale(.96)}.next-action .primary-button{border-color:var(--action-primary);background:var(--action-primary);color:#fff}.eyebrow,.context-label,.project-sidebar>p,.audit-table th,.date-line{color:var(--focus);font-family:var(--font-data);font-size:var(--text-caption);letter-spacing:.12em;text-transform:uppercase;font-weight:600}.project-row{box-shadow:none;background:0 0;border-width:0 0 1px;border-radius:0;margin-top:0;padding:26px 12px}.project-row:first-child{border-top:1px solid var(--ink)}.project-row:hover{border-color:var(--focus);background:var(--surface);box-shadow:none;transform:none}.project-mark{border-left:3px solid var(--ink);border-right:3px solid var(--ldk-mark-teal);color:var(--action-primary);background:0 0;border-radius:0}.project-sidebar button.active{border-left:2px solid var(--active);background:var(--surface);border-radius:0}.project-sidebar button>span,.status,.invoice-status{border-radius:var(--radius-control)}.admin-content{width:min(1440px,100% - 64px);padding:52px 0 72px}.admin-content h1{letter-spacing:-.05em;font-size:clamp(2.25rem,4vw,3.5rem)}.admin-panel,.settings-card{box-shadow:none;background:0 0;border-width:1px 0 0;border-radius:0;padding:28px 0}.settings-card{width:min(100% - 44px,880px);margin:40px auto 0}.settings-card:last-child{border-bottom:1px solid var(--border-strong);margin-bottom:64px}.audit-table-wrap,.mp-table-scroll{background:0 0;border-width:1px 0;border-radius:0}.audit-table th,.audit-table td{padding:13px 12px}.audit-table tbody tr:hover{background:var(--surface)}.admin-dialog,.file-preview-dialog{border:1px solid var(--border-strong);background:var(--surface);border-radius:10px}.client-status-filter{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.client-status-filter button{border:1px solid var(--border-strong);border-radius:var(--radius-control);min-height:44px;color:var(--ink-muted);font-size:var(--text-label);background:0 0;padding:0 14px;font-weight:600}.client-status-filter button.active{border-color:var(--active);background:var(--petrol-soft);color:var(--active);box-shadow:inset 0 0 0 1px var(--active)}.admin-projects-content{max-width:1440px}.project-context-bar{border:1px solid var(--border);background:var(--surface);border-radius:10px;justify-content:space-between;align-items:end;gap:24px;margin-top:4px;padding:18px 20px;display:flex}.admin-projects-content .project-picker{width:min(520px,100%);max-width:none;margin:0}.project-context-summary{text-align:right;justify-items:end;gap:3px;min-width:0;display:grid}.project-context-summary span{color:var(--ink-subtle);font-size:var(--text-caption);letter-spacing:.06em;text-transform:uppercase}.project-context-summary strong{max-width:420px;font-family:var(--font-heading);font-size:var(--text-lead);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-editor-shell{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:clamp(22px,3vw,44px);margin-top:30px;display:grid}.project-editor-rail{min-width:0}.project-editor-nav{border-block:1px solid var(--border-strong);padding:10px 0;display:grid;position:sticky;top:92px}.project-editor-nav__eyebrow{color:var(--ink-subtle);font-family:var(--font-data);font-size:var(--text-caption);letter-spacing:.09em;text-transform:uppercase;padding:9px 12px 12px}.project-editor-nav a{min-height:46px;color:var(--ink-muted);font-size:var(--text-label);border-left:2px solid #0000;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:8px;padding:8px 11px;font-weight:600;line-height:1.25;text-decoration:none;transition:color .16s,background-color .16s,border-color .16s;display:grid}.project-editor-nav a>span{color:var(--ink-subtle);font-family:var(--font-data);font-size:10px;font-weight:500}.project-editor-nav a:hover{background:var(--surface-muted);color:var(--ink)}.project-editor-nav a.active{border-left-color:var(--active);background:var(--petrol-soft);color:var(--active)}.project-editor-nav a:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.project-editor-workspace{min-width:0}.admin-projects-content .admin-panel{border:1px solid var(--border);background:var(--surface);border-radius:10px;min-width:0;margin:0 0 18px;padding:clamp(20px,2.4vw,32px)}.project-editor-group{min-width:0;scroll-margin-top:96px}.project-editor-group:focus{outline:none}.project-editor-duo{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.project-editor-duo>.admin-panel{margin:0 0 18px}.admin-projects-content .admin-panel-form{margin:0;display:block}.project-form-section{min-width:0;scroll-margin-top:96px}.project-form-section:focus{outline:none}.project-form-section+.project-form-section,.project-internal-form,.project-internal-readonly{border-top:1px solid var(--border);margin-top:30px;padding-top:28px}.project-section-heading{gap:5px;margin-bottom:20px;display:grid}.project-section-heading>span{color:var(--active);font-family:var(--font-data);font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.project-section-heading h2{letter-spacing:-.025em;font-size:clamp(1.25rem,2vw,1.65rem)}.project-section-heading p{max-width:62ch;color:var(--ink-muted);font-size:var(--text-label)}.project-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.project-form-grid--overview,.project-form-grid--internal,.project-form-grid--planning{grid-template-columns:repeat(3,minmax(0,1fr))}.project-form-grid .form-field-wide{grid-column:1/-1}.admin-projects-content .admin-panel-form label{color:var(--ink-muted);font-size:var(--text-label);margin-bottom:7px;font-weight:600;display:block}.admin-projects-content .admin-panel-form input,.admin-projects-content .admin-panel-form select,.admin-projects-content .admin-panel-form textarea{border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--field);width:100%;min-width:0;color:var(--ink);font:inherit;transition:border-color .16s,box-shadow .16s,background-color .16s}.admin-projects-content .admin-panel-form input,.admin-projects-content .admin-panel-form select{min-height:46px;padding:0 12px}.admin-projects-content .admin-panel-form textarea{resize:vertical;min-height:116px;padding:11px 12px;line-height:1.5}.admin-projects-content .admin-panel-form input:hover,.admin-projects-content .admin-panel-form select:hover,.admin-projects-content .admin-panel-form textarea:hover{border-color:var(--ink-subtle)}.admin-projects-content .admin-panel-form input:focus-visible,.admin-projects-content .admin-panel-form select:focus-visible,.admin-projects-content .admin-panel-form textarea:focus-visible{border-color:var(--focus);outline:2px solid var(--focus);outline-offset:2px}.project-form-actions{border-top:1px solid var(--border);justify-content:flex-end;margin-top:22px;padding-top:18px;display:flex}.project-form-actions .primary-button,.project-form-actions .secondary-button{justify-content:center;min-width:min(240px,100%)}.project-internal-readonly{gap:10px;display:grid}@media (width<=1100px){.project-editor-shell{grid-template-columns:1fr;gap:18px}.project-editor-nav{z-index:10;border:1px solid var(--border);background:#fffdf8f5;border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:8px;display:grid;position:sticky;top:0}.project-editor-nav__eyebrow{display:none}.project-editor-nav a{border:0;border-bottom:2px solid #0000;border-radius:5px;grid-template-columns:auto minmax(0,1fr);min-height:42px}.project-editor-nav a.active{border-bottom-color:var(--active)}.project-form-grid--overview,.project-form-grid--internal,.project-form-grid--planning{grid-template-columns:repeat(2,minmax(0,1fr))}.project-editor-duo{grid-template-columns:1fr;gap:0}}@media (width<=680px){.admin-projects-content{width:min(100% - 32px,1440px)}.project-context-bar{flex-direction:column;align-items:stretch;gap:14px;padding:16px}.project-context-summary{text-align:left;justify-items:start}.project-context-summary strong{max-width:100%}.project-editor-shell{margin-top:20px}.project-editor-nav{border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-projects-content .admin-panel{padding:20px 16px}.project-form-grid,.project-form-grid--overview,.project-form-grid--internal,.project-form-grid--planning{grid-template-columns:minmax(0,1fr);gap:14px}.project-form-actions{justify-content:stretch}.project-form-actions .primary-button,.project-form-actions .secondary-button{width:100%;min-width:0}}.client-master-detail{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:24px;display:grid}.client-master-detail>*{min-width:0}.client-detail-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;position:sticky;top:24px}.client-detail-panel h2{font-size:var(--text-title);margin:4px 0 0}.client-detail-panel dl{gap:16px;margin:24px 0 0;display:grid}.client-detail-panel dl div{border-top:1px solid var(--border);padding-top:12px}.client-detail-panel dt{color:var(--muted);font-size:var(--text-small)}.client-detail-panel dd{overflow-wrap:anywhere;margin:5px 0 0}.table-link{color:var(--ink);font:inherit;text-decoration:underline;text-decoration-color:var(--focus);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}@media (width<=900px){.client-master-detail{grid-template-columns:1fr}.client-detail-panel{position:static}}.decision-panel{border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 18px 50px #28231814}.form-error,.surface-error{border-left-color:var(--error);background:#fff5f0}.form-notice,.review-success{border-left-color:var(--success);background:#f2f8f3}@media (width<=900px){.auth-page{grid-template-columns:1fr;padding:0}.auth-story{border-right:0;border-bottom:1px solid var(--border-strong);min-height:auto;padding:22px}.auth-story__message,.auth-story__security{display:none}.auth-workspace{align-content:start;min-height:calc(100vh - 89px);padding:54px 22px 40px}.auth-workspace__context{top:112px;right:22px}.admin-content{width:min(100% - 40px,1440px)}}@media (width<=680px){.portal-header{min-height:60px;position:relative}.portal-header__controls{border-top:1px solid var(--border)}.auth-card{padding:0}.auth-card input:not([type=checkbox]),.auth-submit,.admin-dialog input,.admin-dialog select{min-height:52px}.project-page{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.review-layout .decision-panel{z-index:12;bottom:calc(72px + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:16px 16px 0 0;margin:24px -16px -24px;padding:16px;position:sticky;box-shadow:0 -12px 30px #2823181f}.decision-panel textarea{min-height:92px}.settings-card{width:calc(100% - 32px)}.admin-content{width:calc(100% - 32px);padding-top:36px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
