:root{--bg:#fff;--ink:#171717;--muted:#525252;--surface:#fff;--surface-subtle:#f5f5f5;--primary:#0f766e;--primary-hover:#115e59;--primary-foreground:#fff;--brand-accent-soft:#fff7ed;--focus:#0f766e;--line:#e5e5e5;--input-border:#a3a3a3;--brand-accent:#f97316;--status-neutral-bg:#f5f5f5;--status-neutral-text:#525252;--status-progress-bg:#fff;--status-progress-text:#0f766e;--status-attention-bg:#fff7ed;--status-attention-text:#9a3412;--status-success-bg:#f0fdfa;--status-success-text:#0f766e;--status-success-border:#99d5cf;--status-danger-bg:#fef2f2;--status-danger-text:#991b1b}.skip-link{z-index:100;background:var(--surface);padding:12px;position:absolute;top:-80px;left:16px}.skip-link:focus{top:8px}.mobile-section,.mobile-admin-email{display:none}button:not(.secondary):not(.link):not(.nav):not(.project-card):not(.milestone-summary):not(.project-tabs button):not(.password-toggle){background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}@media (max-width:767px){.shell>aside,.project-tabs{display:none!important}.mobile-section{display:block}.mobile-admin-email{display:inline-block}input,textarea,select{font-size:16px}button,.button{min-height:44px}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font:500 14px/1.57 var(--font-manrope), Arial, Helvetica, sans-serif;margin:0}h1,h2,h3{letter-spacing:-.03em;font-weight:700;line-height:1.25}h1{font-family:var(--font-manrope), Arial, sans-serif;margin:12px 0;font-size:clamp(28px,3vw,36px)}h2{font-size:22px}h3{font-size:17px}a{color:var(--muted)}button,.button{font:inherit;border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:999px;padding:10px 17px;font-weight:600;text-decoration:none;display:inline-block}button:disabled{opacity:.5;cursor:wait}button:hover:not(:disabled){filter:none}button:not(.secondary):not(.link):not(.nav):not(.project-card):not(.milestone-summary):not(.project-tabs button):not(.password-toggle):hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.secondary:hover:not(:disabled){background:var(--surface-subtle);border-color:var(--muted)}.secondary{color:var(--ink);border-color:var(--line);background:0 0}.link{color:var(--muted);background:0 0;border:none;padding:6px 0;font-size:13px;text-decoration:underline}input,textarea,select{border:1px solid var(--input-border);background:var(--surface);width:100%;font:500 16px/1.5 var(--font-manrope), Arial, sans-serif;color:inherit;border-radius:8px;padding:11px}textarea{resize:vertical;min-height:110px}label{margin:14px 0;font-size:13px;font-weight:600;display:block}label input,label textarea,label select{margin-top:5px;font-weight:500;display:block}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.shell{grid-template-rows:auto 1fr;grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.shell>*{min-width:0}.stats>div{overflow-wrap:anywhere;min-width:0}nav{max-width:100%}aside{background:var(--surface);border-right:1px solid var(--line);top:var(--portal-header-height);height:calc(100vh - var(--portal-header-height));flex-direction:column;padding:24px 20px;display:flex;position:sticky}.wordmark{font-family:var(--font-manrope), Arial, sans-serif;letter-spacing:5px;color:var(--ink);font-size:34px;font-weight:700;text-decoration:none}.wordmark span{letter-spacing:5px;font:9px Arial;display:block}.eyebrow{letter-spacing:.14em;color:var(--primary);margin-top:30px;font-size:10px;font-weight:700}.nav{color:var(--muted);text-align:left;background:0 0;border:none;width:100%;margin:4px 0;display:block}.nav.active{background:var(--surface-subtle);box-shadow:inset 3px 0 var(--primary);color:var(--ink)}.workspace{width:100%;max-width:1500px;margin:0 auto;padding:0 36px 56px}.topbar{border-bottom:1px solid var(--line);height:58px;color:var(--muted);justify-content:space-between;align-items:center;font-size:12px;display:flex}.topbar-actions{align-items:center;gap:12px;display:flex}.heading{justify-content:space-between;align-items:center;margin:30px 0;display:flex}.muted{color:var(--muted)}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row input{flex:1;min-width:180px}.badge{background:var(--surface-subtle);border:1px solid var(--line);white-space:nowrap;border-radius:20px;padding:3px 11px;font-size:11px;font-weight:600;display:inline-block}.cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:28px 0;display:grid}.project-card{background:var(--surface);color:var(--ink);border:1px solid var(--line);text-align:left;padding:25px}.project-card h2{font-family:var(--font-manrope), Arial, sans-serif;margin:25px 0 10px;font-size:25px}.project-card p{color:var(--muted)}.project-card footer{border-top:1px solid var(--line);justify-content:space-between;padding-top:20px;font-size:12px;display:flex}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;margin:18px 0;padding:24px}.panel h2:first-child{margin-top:0}.two-col{grid-template-columns:1fr 1fr;gap:20px;display:grid}.stats{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:repeat(3,1fr);display:grid}.stats>div{border-right:1px solid var(--line);padding:24px}.stats strong{font:600 24px/1.3 var(--font-manrope), Arial, sans-serif;display:block}.stats span{color:var(--muted);font-size:12px}summary{cursor:pointer;padding:5px 0;font-weight:600}details form{max-width:680px}details+details{margin-top:20px}.split{justify-content:space-between;align-items:center;gap:18px;margin:12px 0;display:flex}.split h2{margin:0}.pre{white-space:pre-wrap}.submission{border-left:3px solid var(--primary);background:var(--surface-subtle);margin:18px 0;padding:4px 18px}.prose{overflow-wrap:anywhere}.prose table{border-collapse:collapse;width:100%}.prose th,.prose td{border:1px solid var(--line);padding:8px}.alert,.notice{border:1px solid var(--line);margin:18px 0;padding:15px 20px}.notice{background:var(--brand-accent-soft);border-color:#fed7aa}.alert{background:var(--status-danger-bg);color:var(--status-danger-text);border-color:#fecaca;justify-content:space-between;display:flex}.empty{text-align:center;color:var(--muted);border:1px dashed var(--line);padding:50px}.login{max-width:510px;margin:60px auto;padding:20px}.login-card{background:var(--surface);border:1px solid var(--line);margin-top:25px;padding:32px}.login-card-top{justify-content:space-between;align-items:center;gap:20px;display:flex}.login-card-top .eyebrow{margin:0}.language-switch{border:1px solid var(--line);background:var(--surface-subtle);border-radius:999px;flex:none;padding:3px;display:inline-flex}.language-switch .language-option{min-height:32px;color:var(--muted);letter-spacing:.08em;border:0;border-radius:999px;padding:5px 11px;font-size:12px}.language-switch .language-option[aria-pressed=true]{background:var(--primary);color:var(--primary-foreground)}.login-card h1{font-size:32px}.secret{overflow-wrap:anywhere;white-space:pre-wrap;font-size:11px;display:block}.loading{min-height:100vh;color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex}.loading-logo{width:72px;height:72px;color:var(--ink)}.loading p{margin:0;font-size:14px}.loading-pending{animation:.2s ease-out .25s backwards loading-in}@keyframes loading-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.loading-pending{animation:none}}.login form>button{width:100%;margin-top:12px}.check-row{align-items:flex-start;gap:10px;line-height:1.5;display:flex}.check-row input{flex:0 0 18px;width:18px;height:18px;margin:2px 0 0}.login input[readonly]{background:var(--surface-subtle);color:var(--muted)}.field-note{color:var(--muted);margin-top:6px;font-size:12px;line-height:1.45;display:block}.otp-field{margin-top:5px;display:block;position:relative}.otp-field input{letter-spacing:.16em;margin-top:0;padding-right:112px}.otp-field .otp-action{min-height:auto;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:0;padding:2px 4px;font-size:12px;text-decoration:underline;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.form-error{color:var(--status-danger-text);font-weight:700}.form-message{border:1px solid;border-radius:8px;margin:16px 0 0;padding:12px 14px;line-height:1.55;text-decoration:none}.form-success{border-color:var(--status-success-border);background:var(--status-success-bg);color:var(--status-success-text)}.form-message.form-error{background:var(--status-danger-bg);border-color:#fecaca}.legal-accept .login-card{margin-top:25px}.legal-page{width:min(100% - 32px,960px);margin:0 auto;padding:28px 0 72px}.legal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;padding-bottom:24px;display:flex}.legal-language{align-items:center}.legal-language a[aria-current=page]{color:var(--primary);text-underline-offset:5px;font-weight:700;text-decoration-thickness:2px}.legal-draft{border-left:3px solid var(--primary);background:var(--brand-accent-soft);margin:24px 0;padding:12px 16px;font-weight:700}.legal-copy{border:1px solid var(--line);background:var(--surface);padding:clamp(22px,5vw,52px)}.legal-copy h1{margin-top:0}.legal-copy h2{border-top:1px solid var(--line);margin-top:48px;padding-top:24px}.legal-copy h3{margin-top:32px}.legal-copy table{display:block;overflow-x:auto}@media (max-width:600px){.login-card{padding:24px}.login-card-top{gap:12px}.language-switch .language-option{min-height:38px;padding-inline:10px}.legal-header{flex-direction:column;align-items:flex-start}.legal-language{flex-wrap:wrap}.legal-copy{padding:20px}}pre{white-space:pre-wrap}@media (max-width:767px){.shell{grid-template-columns:1fr}aside{border-bottom:1px solid var(--line);height:auto;padding:15px 20px;display:block;position:static}aside nav{display:flex;overflow:auto}aside .eyebrow,.nav{white-space:nowrap;width:auto}.workspace{padding:0 20px 35px}.heading{display:block}.heading .row{margin-top:20px}.two-col{grid-template-columns:1fr;gap:0}.stats>div{padding:14px}.stats strong{font-size:22px}h1{font-size:32px}.panel{padding:20px}.split{flex-wrap:wrap;align-items:flex-start}}.brand{color:var(--ink);letter-spacing:2.5px;align-items:center;gap:14px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.brand-logo{width:44px;height:44px}.avatar{background:var(--surface-subtle);width:36px;height:36px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.project-tabs{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:12px;margin:0 0 24px;display:flex}.project-tabs button{color:var(--ink);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:8px;padding:12px 14px;display:inline-flex}.section-icon{flex:none;width:17px;height:17px}.notify-control{white-space:nowrap;flex-direction:row;align-items:center;gap:6px;font-size:12px;display:inline-flex}.notify-control input{width:16px;height:16px;margin:0}.project-tabs button.selected{border-color:var(--primary);font-weight:700}.overview-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.overview-grid>div{min-width:0}.overview-grid .panel{margin:0 0 18px}.stats.four-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stats{margin-bottom:24px}.stats>div:last-child{border-right:0}.stats strong{font-size:clamp(18px,1.7vw,26px)}.action-panel{background:var(--surface-subtle);border-color:var(--line)}.action-panel h2{color:var(--primary)}.action-panel .eyebrow{margin:0 0 10px}.milestone-summary{text-align:left;width:100%;color:var(--ink);border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:minmax(0,1fr) auto;gap:8px 18px;padding:16px 0;display:grid}.milestone-summary .badge{grid-column:1/-1;justify-self:start}.badge.attention{color:var(--primary);background:var(--surface-subtle);border-color:var(--line)}.billing-summary{margin:20px 0 8px}.billing-summary>div{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;margin:12px 0;display:flex}.billing-summary dd{margin:0;font-weight:600}.billing-summary>div:last-child{border-top:1px solid var(--line);color:var(--primary);padding-top:16px}.contact-row{overflow-wrap:anywhere;align-items:center;gap:12px;margin:16px 0;display:flex}.contact-row small{color:var(--muted);display:block}.nav{border-radius:10px;align-items:center;gap:12px;display:flex}.nav>span{text-align:center;width:20px;font-size:20px}.heading .eyebrow{margin-top:0}.panel p:last-child{margin-bottom:0}.panel h3{color:var(--muted)}.project-card{border-radius:12px}@media (max-width:1199px){.overview-grid{grid-template-columns:1fr}}@media (max-width:767px){.shell aside{flex-direction:row;align-items:center;gap:8px;padding:8px 14px;display:flex;overflow-x:auto}.shell aside nav{overflow:visible}.shell aside .nav{padding:8px 10px;font-size:12px}.stats.four-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats>div{border-bottom:1px solid var(--line)}.project-tabs{gap:0}.project-tabs button{padding:12px 10px}.topbar{gap:12px}.cards{grid-template-columns:minmax(0,1fr)}}.review-meta{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:12px 24px;padding:16px 0;font-size:13px;display:flex}.review-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;margin:8px 0 20px;display:grid}.review-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;min-width:0;padding:24px}.review-card h3{color:var(--ink);margin-top:0;font-size:20px}.review-card .pre{overflow-wrap:anywhere}.decision-actions{gap:10px;display:grid}.review-note{color:var(--muted);font-size:12px}.review-history{border-top:1px solid var(--line);padding:14px 0}@media (max-width:1023px){.review-grid{grid-template-columns:1fr}.review-card{padding:18px}}.sidebar-projects{min-height:0;margin-bottom:20px;overflow:auto}.sidebar-projects .nav{overflow-wrap:anywhere;font-size:14px}.create-drawer{border:0;border-left:1px solid var(--line);background:var(--surface);width:min(520px,100%);max-width:100%;height:100dvh;max-height:100dvh;color:var(--ink);margin:0;padding:28px;position:fixed;inset:0 0 0 auto;overflow:auto}.create-drawer::backdrop{background:#181a1959}.create-drawer .split{margin-top:0}.create-drawer form>button{width:100%;margin-top:20px}.action-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.action-row>div:first-child{min-width:0}.action-row strong,.action-row small{display:block}.action-row small{color:var(--muted);margin-top:3px}.action-row dialog{text-align:left}.create-drawer>.secondary:last-child{margin-top:16px}.new-project-page{max-width:980px;margin:0 auto 64px}.new-project-form .panel{margin:0 0 20px}.form-section-heading{border-bottom:1px solid var(--line);align-items:flex-start;gap:14px;padding-bottom:18px;display:flex}.form-section-heading>span{background:var(--brand-accent-soft);width:30px;height:30px;color:var(--primary);border-radius:50%;flex:0 0 30px;place-items:center;font-weight:700;display:grid}.form-section-heading h2,.form-section-heading p{margin:0}.form-section-heading p,.field-help{color:var(--muted);font-size:12px;font-weight:500}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;display:grid}.access-list{gap:10px;margin:14px 0 20px;display:grid}.access-option,.access-person{border:1px solid var(--line);background:var(--bg);border-radius:9px;align-items:center;gap:12px;margin:0;padding:13px 14px;display:flex}.access-option input{width:auto;margin:0}.access-option span,.access-person>span{flex:1;min-width:0}.access-option strong,.access-option small,.access-person strong,.access-person small{overflow-wrap:anywhere;display:block}.access-option small,.access-person small{color:var(--muted);font-weight:500}.new-project-actions{justify-content:flex-end;gap:12px;display:flex}body{font-feature-settings:"kern";-webkit-font-smoothing:antialiased}.project-tabs button{font-size:14px;font-weight:600}.project-tabs button.selected{color:var(--primary)}.stats{background:var(--surface-subtle)}.stats strong{letter-spacing:-.03em;font-weight:700}.topbar,.project-card footer,.review-meta{font-size:13px}.action-row strong{font-size:16px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.project-counts{border-bottom:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:20px 40px;margin-bottom:24px;padding:12px 0 24px;display:flex}.project-counts>div{align-items:baseline;gap:8px;display:flex}.project-counts strong{color:var(--ink)}.project-table-wrap{border:1px solid var(--line);background:var(--surface);border-radius:8px;margin-top:24px;overflow:hidden}.project-table{border-collapse:collapse;text-align:left;width:100%}.project-table th{color:var(--muted);padding:18px 20px;font-size:13px;font-weight:600}.project-table td{border-top:1px solid var(--line);padding:24px 20px}.project-table tr:hover td{background:var(--surface-subtle)}.project-title{color:var(--ink);font-size:18px;font-weight:700;text-decoration:none}.project-title:hover{text-decoration:underline}.project-status{color:var(--muted)}.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}@media (max-width:767px){.project-table thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.project-table,.project-table tbody,.project-table tr,.project-table td{display:block}.project-table tr{border-bottom:1px solid var(--line);padding:16px}.project-table tr:last-child{border-bottom:0}.project-table td{overflow-wrap:anywhere;border:0;padding:6px 0}.project-table td[data-label]:not(:first-child):before{content:attr(data-label) ": ";color:var(--muted);font-size:13px}.project-table td:last-child .link{min-height:44px}}.detail-counts{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:20px 36px;padding:24px 0;display:flex}.detail-counts>div{flex-direction:column;gap:4px;display:flex}.detail-counts strong{font-size:20px;font-weight:700}.detail-counts span{color:var(--muted);font-size:13px}.overview-grid{gap:36px}.overview-grid .panel{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;margin:0;padding:24px 0}.overview-grid .panel h2{color:var(--ink);font-size:20px}.overview-grid .panel .eyebrow{margin-top:0}.overview-grid .action-panel h2{color:var(--ink)}.overview-grid .project-table-wrap{margin-top:12px}.detail-table th,.detail-table td{padding:16px 12px}.detail-table .link{color:var(--ink);text-align:left;font-size:14px;font-weight:600}@media (min-width:1200px){.overview-grid>div:last-child{border-left:1px solid var(--line);padding-left:28px}}@media (max-width:767px){.form-grid{grid-template-columns:1fr}.new-project-page .heading,.access-person,.new-project-actions{flex-direction:column;align-items:stretch}.new-project-actions button,.access-person button{width:100%}.detail-table td{padding:6px 0}.detail-counts{gap:16px 24px}}.section-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin:28px 0 16px;display:flex}.section-heading h2,.section-heading p{margin:0}.section-heading p{margin-top:4px}.section-heading>.action-row{border:0;padding:0}.section-heading>.action-row>div:first-child{display:none}.data-table-wrap{border:1px solid var(--line);background:var(--surface);border-radius:10px;overflow:hidden}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding:14px 16px;font-size:12px;font-weight:700}.data-table td{border-top:1px solid var(--line);vertical-align:top;padding:18px 16px}.data-table tr:hover td{background:var(--surface-subtle)}.table-actions{white-space:nowrap;justify-content:flex-end;gap:12px;display:flex}.status{background:var(--status-neutral-bg);color:var(--status-neutral-text);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:700;display:inline-flex}.status:before{content:"";background:#737373;border-radius:50%;width:7px;height:7px}.status-in-progress,.status-sending{border-color:var(--status-progress-text);background:var(--status-progress-bg);color:var(--status-progress-text)}.status-in-progress:before,.status-sending:before{background:var(--status-progress-text)}.status-awaiting-approval,.status-unpaid,.status-pending,.status-uncertain,.status-issued,.status-partial,.status-changes-requested,.status-published-draft-changes{background:var(--status-attention-bg);color:var(--status-attention-text)}.status-awaiting-approval:before,.status-unpaid:before,.status-pending:before,.status-uncertain:before,.status-issued:before,.status-partial:before,.status-changes-requested:before,.status-published-draft-changes:before{background:var(--brand-accent)}.status-approved,.status-paid,.status-published,.status-done,.status-accepted{background:var(--status-success-bg);color:var(--status-success-text)}.status-approved:before,.status-paid:before,.status-published:before,.status-done:before,.status-accepted:before{background:var(--status-success-text)}.status-overdue,.status-failed{background:var(--status-danger-bg);color:var(--status-danger-text)}.status-overdue:before,.status-failed:before{background:var(--status-danger-text)}.detail-section{border-bottom:1px solid var(--line);padding:28px 0}.content-toolbar{align-items:flex-end;gap:12px;margin:16px 0;display:flex}.content-toolbar>input{max-width:360px}.work-groups{gap:12px;display:grid}.work-milestone{border:1px solid var(--line);background:var(--surface);border-radius:10px;overflow:hidden}.work-milestone>summary,.portal-work-item>summary{list-style:none}.work-milestone>summary::-webkit-details-marker{display:none}.portal-work-item>summary::-webkit-details-marker{display:none}.work-milestone-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:72px;padding:16px 18px;display:flex}.work-milestone[open]>.work-milestone-summary{border-bottom:1px solid var(--line)}.work-milestone-title,.work-item-title{min-width:0}.work-summary-leading{flex:1;align-items:flex-start;gap:10px;min-width:0;display:flex}.work-chevron{width:18px;color:var(--muted);text-align:center;flex:none;font-size:20px;line-height:1.1;transition:transform .16s;transform:rotate(-90deg)}.work-milestone[open]>.work-milestone-summary .work-chevron,.portal-work-item[open]>.work-item-summary .work-chevron{transform:rotate(0)}.work-milestone-title strong,.work-item-title strong{overflow-wrap:anywhere;display:block}.work-milestone-title small,.work-item-title small{color:var(--muted);margin-top:4px;display:block}.work-milestone-meta{flex-shrink:0;align-items:center;gap:16px;display:flex}.work-milestone-meta small{color:var(--muted);white-space:nowrap}.work-milestone-body{padding:0 18px 18px}.work-milestone-facts,.work-item-facts{margin:0}.work-milestone-facts{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:16px 32px;padding:16px 0;display:flex}.work-milestone-facts div{min-width:140px}.work-milestone-facts dt,.work-item-facts dt{color:var(--muted);font-size:12px}.work-milestone-facts dd,.work-item-facts dd{color:var(--ink);margin:3px 0 0;font-weight:600}.work-item-list{border-top:1px solid var(--line)}.work-milestone-facts+.work-item-list{border-top:0}.portal-work-item{border-bottom:1px solid var(--line);margin:0}.portal-work-item:last-child{border-bottom:0}.work-item-summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:14px 0;display:flex}.work-item-detail{padding:0 0 16px}.work-item-body{border:1px solid var(--line);background:var(--surface-subtle);border-radius:8px;margin-bottom:16px;padding:14px 16px}.work-item-body p{margin:0}.work-item-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 20px;display:grid}.work-item-actions{justify-content:flex-start;margin-top:16px}.work-milestone-body>.action-row,.work-milestone-actions{margin-top:16px}.work-issues{margin-top:0;padding-top:32px}.work-issues .section-heading{margin-top:0}@media (max-width:767px){.work-milestone-summary,.work-item-summary{flex-direction:column;align-items:flex-start;gap:8px}.work-milestone-meta{justify-content:space-between;width:100%}.work-item-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}.inline-field{white-space:nowrap;align-items:center;gap:8px;margin:0;display:flex}.inline-field select{min-width:150px}.empty-state{text-align:center;color:var(--muted);padding:36px 20px}.empty-state strong{color:var(--ink);font-size:16px}.empty-state p{margin:4px 0 0}.next-action-strip{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--surface-subtle);border-radius:10px;justify-content:space-between;align-items:center;gap:28px;margin:24px 0 16px;padding:22px 24px;display:flex}.next-action-strip h2,.next-action-strip p{margin:0}.next-action-strip .eyebrow{margin-bottom:7px}.next-action-strip h2+p{color:var(--muted);margin-top:5px}.file-list,.mail-list{border-top:1px solid var(--line)}.file-row,.mail-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:16px 0;display:flex}.file-row small,.mail-row small{color:var(--muted);display:block}.settings-page{max-width:920px}.email-delivery-page{max-width:1180px}.email-stats{margin-top:32px}.email-stats span{color:var(--muted);margin-top:4px;display:block}.delivery-note{border-left:3px solid var(--accent);background:var(--surface-subtle);border-radius:10px;margin:24px 0;padding:18px 20px}.delivery-note p{color:var(--muted);margin:5px 0 0}.email-table td:first-child strong,.email-table td:first-child small{display:block}.email-table td:first-child small{color:var(--muted);overflow-wrap:anywhere;margin-top:4px}.settings-list{border-top:1px solid var(--line)}.settings-group-title{margin-top:48px}.billing-list>.panel{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:minmax(180px,1fr) minmax(220px,2fr) auto;align-items:center;gap:12px 24px;margin:0;padding:20px 0;display:grid}.billing-list>.panel>.split,.billing-list>.panel>.row,.billing-list>.panel>p,.billing-list>.panel>h3{margin:0}.proforma-status{flex-wrap:wrap;gap:6px;display:flex}.billing-list>.panel>.action-row>div{display:none}.billing-list>.panel>.action-row{border:0;align-self:center;padding:0}.password-toggle{min-height:auto;color:var(--muted);background:0 0;border:0;border-radius:0;padding:2px 4px;font-size:12px;text-decoration:underline;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.password-field{margin-top:5px;display:block;position:relative}.password-field input{margin-top:0;padding-right:64px}.activity-page{max-width:1100px}.developer-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0;display:grid}.developer-work-grid .panel,.developer-work-grid h2{margin:0}.work-list{border-top:1px solid var(--line);margin-top:14px}.work-item{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:left;background:0 0;border-radius:0;justify-content:space-between;align-items:center;gap:18px;padding:14px 0;display:flex}.work-item:hover{color:var(--primary);background:0 0}.work-item>span:last-child{text-align:right}.work-item small{color:var(--muted);margin-top:4px;display:block}.discussion-page{max-width:980px}.discussion-list{gap:12px;margin:24px 0;display:grid}.activity-table td:first-child{max-width:560px}.activity-table td:first-child small{color:var(--muted);margin-top:3px;display:block}.audit-note{max-width:760px;color:var(--muted);margin-top:24px;font-size:12px}.project-comments{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.comments-heading,.comments-list li,.comment-content header{align-items:center;display:flex}.comments-heading{justify-content:space-between;align-items:flex-start;gap:12px}.comments-heading>div{display:block}.comments-heading h3{margin:0;font-size:16px}.comments-heading p{color:var(--muted);margin:4px 0 0;font-size:12px}.comments-list{gap:16px;margin:18px 0;padding:0;list-style:none;display:grid}.comments-list li{align-items:flex-start;gap:12px;min-width:0}.comment-avatar{background:var(--surface-subtle);height:36px;color:var(--ink);border-radius:50%;flex:0 0 36px;place-items:center;display:grid}.comment-content{flex:1;min-width:0}.comment-content header{flex-wrap:wrap;gap:8px;font-size:12px}.comment-content header small,.comment-content time{color:var(--muted)}.comment-visibility{background:var(--surface-subtle);border-radius:999px;padding:2px 8px}.comment-visibility.client{background:var(--status-success-bg);color:var(--status-success-text)}.comment-content p{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0}.comments-empty{color:var(--muted);font-size:13px}.comment-composer{border-top:1px solid var(--line);padding-top:12px}.comment-composer>label:first-child{margin-top:8px}.comment-composer textarea{min-height:84px}.comment-options{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.comment-options>label{min-width:180px}.comment-options .comment-notify{align-items:center;gap:8px;display:flex}.comment-options .comment-notify input{width:18px;min-height:18px;margin:0}.comment-error{color:var(--status-danger-text)}.updates-layout{grid-template-columns:minmax(230px,.7fr) minmax(0,1.7fr);align-items:start;gap:24px;display:grid}.updates-list{gap:8px;display:grid}.update-choice{text-align:left;border-color:var(--line);width:100%;color:var(--ink);background:var(--surface);border-radius:8px}.update-choice.selected{border-left:3px solid var(--primary);background:var(--surface-subtle)}.update-detail{border:1px solid var(--line);border-radius:12px;min-width:0;padding:20px}.update-detail h2{margin-top:0}.update-detail-body{overflow-wrap:anywhere}.update-detail-body img{max-width:100%;height:auto}@media (max-width:1023px){.updates-layout{grid-template-columns:1fr}}@media (max-width:767px){.comments-heading{flex-direction:column;gap:6px}}@media (max-width:1023px){.developer-work-grid{grid-template-columns:1fr}.next-action-strip{flex-direction:column;align-items:stretch;gap:16px}.section-heading,.content-toolbar,.file-row,.mail-row{flex-direction:column;align-items:stretch}.data-table thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.data-table,.data-table tbody,.data-table tr,.data-table td{display:block}.data-table tr{border-bottom:1px solid var(--line);padding:14px 16px}.data-table tr:last-child{border-bottom:0}.data-table td{overflow-wrap:anywhere;border:0;padding:5px 0}.data-table td[data-label]:not(:first-child):before{color:var(--muted);content:attr(data-label) ": ";font-size:12px}.table-actions{flex-wrap:wrap;justify-content:flex-start}.billing-list>.panel{display:block}.billing-list>.panel>*{margin:10px 0}}:root{--portal-header-height:56px}.portal-header{z-index:20;height:var(--portal-header-height);background:var(--surface);border-bottom:1px solid var(--line);grid-column:1/-1;align-items:center;gap:16px;padding:0 24px;display:flex;position:sticky;top:0}.portal-header .brand{letter-spacing:3px;gap:10px;font-size:15px}.portal-header .brand-logo{width:30px;height:30px}.portal-label{border-left:2px solid var(--brand-accent);color:var(--muted);padding-left:16px;font-size:14px;line-height:20px}.portal-identity{min-width:0;color:var(--muted);align-items:center;gap:12px;margin-left:auto;font-size:13px;display:flex}.portal-email{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-main{min-width:0}@media (max-width:767px){.portal-header{gap:10px;padding:0 16px;position:static}.portal-label,.portal-email{display:none}}@media (max-width:379px){.portal-header .brand span{display:none}}h1,.portal-header .brand span{font-family:var(--font-jost), var(--font-manrope), Arial, sans-serif}h1{letter-spacing:-.005em;font-weight:400}.portal-header .brand span{letter-spacing:.22em;font-weight:400}.project-sidebar{background:#fafafa;gap:18px}.project-sidebar .nav{color:#404040;min-height:40px;box-shadow:none;border-radius:8px;align-items:center;gap:10px;margin:0;padding:0 12px;font-weight:500;display:flex}.project-sidebar .nav:hover{background:var(--surface-subtle)}.project-sidebar .nav.active{background:var(--surface);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line);font-weight:600}.project-sidebar .back-nav{color:var(--muted);font-size:13px}.project-switcher{margin:0}.project-switcher select{margin-top:0;font-size:14px;font-weight:600}.project-switcher small{color:var(--muted);margin:6px 2px 0;font-weight:500;display:block}.section-nav{flex-direction:column;gap:2px;display:flex}.project-sidebar .nav>span{text-align:left;width:auto;font-size:14px}.nav-label{flex:1}.project-sidebar .nav>.nav-badge{color:var(--muted);white-space:nowrap;font-size:12px;font-weight:500}.heading h1{letter-spacing:-.005em;font-weight:400}.section-heading .row>.action-row{border:0;padding:0}.section-heading .row>.action-row>div:first-child{display:none}.activity-more{margin-top:12px}.sidebar-footer{border-top:1px solid var(--line);margin-top:auto;padding-top:12px}.project-heading{flex-wrap:wrap;align-items:flex-end;gap:16px}.project-heading h1{margin:6px 0 10px}.project-heading .eyebrow{margin:0}.project-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;margin:0;font-size:13px;display:flex}.text-danger{color:var(--status-danger-text)}.meter{background:var(--surface-subtle);border-radius:999px;height:6px;display:block;overflow:hidden}.meter>span{background:var(--primary);height:100%;display:block}.meter-ink>span{background:var(--ink)}.summary-tiles{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:24px 0;display:grid}.summary-tile{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;min-width:0;padding:20px;display:flex}.summary-tile>span:first-child,.summary-tile small{color:var(--muted);font-size:13px}.summary-tile strong{letter-spacing:-.01em;overflow-wrap:anywhere;font-size:24px;font-weight:600}.summary-tile .link{color:var(--primary);align-self:flex-start;padding:0;font-weight:600}.summary-tile.tile-attention{background:var(--brand-accent-soft);border-color:#fed7aa}.summary-tile.tile-attention>span:first-child,.summary-tile.tile-attention small,.summary-tile.tile-attention .link{color:var(--status-attention-text)}.overview-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:20px;margin:0 0 20px}.overview-grid .panel{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:0;padding:24px}.overview-grid .panel h2{letter-spacing:0;margin:0;font-size:16px;font-weight:600}.overview-grid .split .link{color:var(--primary);font-weight:600;text-decoration:none}.overview-list{margin:14px 0 0;padding:0;list-style:none}.overview-list li{border-top:1px solid #f0f0f0;align-items:center;gap:12px;padding:12px 0;display:flex}.overview-list-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.overview-list-main small{color:var(--muted);font-size:13px}.amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.update-preview{background:var(--surface-subtle);border-radius:10px;flex-direction:column;gap:6px;margin-top:14px;padding:16px;display:flex}.update-preview small{color:var(--muted)}.update-preview p{color:#404040;margin:0}.milestone-step{border-radius:999px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:inline-flex}.step-done{background:var(--primary);color:var(--primary-foreground)}.step-active{color:var(--primary);box-shadow:inset 0 0 0 2px var(--primary)}.step-todo{background:var(--surface-subtle);color:var(--muted)}.milestone-track{gap:4px;margin:0 0 16px;display:flex}.milestone-track span{border-radius:999px;flex:1;height:8px}.milestone-track .track-done{background:var(--primary)}.milestone-track .track-active{background:#99d5cf}.milestone-track .track-todo{background:var(--line)}.work-milestone-summary .work-summary-leading{gap:14px}.milestone-facts{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:16px;display:grid}.milestone-facts section{background:var(--surface-subtle);border-radius:10px;flex-direction:column;gap:8px;padding:16px;display:flex}.milestone-facts h3{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px;font-weight:600}.milestone-facts dl{gap:8px;margin:0;display:grid}.milestone-facts dt{color:var(--muted);font-size:12px}.milestone-facts dd{margin:0;font-weight:600}.milestone-facts .fact-card>strong{font-size:20px;font-weight:600}.milestone-facts .meter{background:var(--line)}.milestone-facts .link{color:var(--primary);align-self:flex-start;padding:0;font-weight:600}.person-filter{flex-wrap:wrap;gap:6px;display:flex}.person-filter .chip{color:#404040;border:1px solid #d4d4d4;border-radius:999px;min-height:36px;padding:0 14px;font-size:13px}.person-filter .chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--surface)}.task-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:8px 0 24px;display:grid}.task-column{background:var(--surface-subtle);border-radius:12px;flex-direction:column;gap:10px;min-width:0;min-height:240px;padding:12px;display:flex}.task-column h3{letter-spacing:0;align-items:center;gap:8px;margin:4px 4px 2px;font-size:14px;font-weight:600;display:flex}.task-column h3 .muted{margin-left:auto;font-weight:500}.column-dot{border-radius:999px;width:8px;height:8px}.dot-not-started{background:#a3a3a3}.dot-in-progress{box-shadow:inset 0 0 0 2px var(--primary)}.dot-done{background:var(--primary)}.task-column .portal-work-item,.task-column .portal-work-item:last-child{border:1px solid var(--line);background:var(--surface);border-radius:10px}.column-empty{margin:4px;font-size:13px}.update-list{gap:12px;margin-bottom:20px;display:grid}.update-card{border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:8px;padding:18px 20px;display:flex}.update-card.selected{border-color:var(--input-border)}.update-card h3{margin:0}.update-card h3 .link{color:var(--ink);text-align:left;padding:0;font-size:16px;font-weight:600;text-decoration:none}.update-card h3 .link:hover{text-decoration:underline}.update-card-meta{flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.payment-totals dl{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin:0;display:grid}.payment-totals dt{color:var(--muted);align-items:center;gap:6px;font-size:13px;display:flex}.payment-totals dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:20px;font-weight:600}.key{border-radius:2px;width:8px;height:8px}.key-paid{background:var(--primary)}.key-due{background:var(--brand-accent)}.key-later{background:#d4d4d4}.payment-bar{gap:3px;height:10px;margin-top:18px;display:flex}.payment-bar span{border-radius:999px;flex-basis:0}.payment-bar .key-later{background:var(--line)}.status-not-invoiced{background:var(--status-neutral-bg);color:var(--status-neutral-text)}.status-awaiting-payment{background:var(--status-attention-bg);color:var(--status-attention-text)}.status-awaiting-payment:before{background:var(--brand-accent)}.status-review-needed,.status-payment-due{background:var(--status-attention-bg);color:var(--status-attention-text)}.status-review-needed:before,.status-payment-due:before{background:var(--brand-accent)}.project-sidebar .eyebrow{margin:8px 12px 0}.project-client{color:var(--muted);margin-top:2px;font-size:13px;display:block}.project-progress{gap:6px;min-width:140px;max-width:200px;display:grid}.project-progress small{color:var(--muted);font-size:13px}@media (max-width:1023px){.task-board{grid-template-columns:minmax(0,1fr)}.task-column{min-height:0}}
@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a342834df7752944-s.3q9gh2jvntrwt.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d3fe2f289711ac3f-s.2v2sz4qlut9s1.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/58c4895d0a0ef7cc-s.09bkcrcuv-0po.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/bfc7db5c00d21bc5-s.23qr8woi9ij9e.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6ab0db14f70d8ed6-s.1_0gbi-gsbqmd.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/a343f882a40d2cc9-s.p.0p-wng2nn8o-p.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Fallback;src:local(Arial);ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.0%;size-adjust:103.19%}.vT7MWq_className{font-family:Manrope,Manrope Fallback;font-style:normal}.vT7MWq_variable{--font-manrope:"Manrope", "Manrope Fallback"}
@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/39c55468420adfa6-s.1669nxjwa2fmv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.0dguglgc-iz4q.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:400;font-display:swap;src:url(../media/81cef6a21128489e-s.p.2csanl8cs02r-.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(../media/39c55468420adfa6-s.1669nxjwa2fmv.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9b8f0e32b229dbc1-s.0dguglgc-iz4q.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Jost;font-style:normal;font-weight:500;font-display:swap;src:url(../media/81cef6a21128489e-s.p.2csanl8cs02r-.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Jost Fallback;src:local(Arial);ascent-override:111.45%;descent-override:39.06%;line-gap-override:0.0%;size-adjust:96.01%}.oLYirG_className{font-family:Jost,Jost Fallback;font-style:normal}.oLYirG_variable{--font-jost:"Jost", "Jost Fallback"}
