/* Approved whole-portal design system, v1.10.0. */
:root{--bg:#f8f9f6;--ink:#252b25;--muted:#636e62;--line:#e2e7de;--tc-soft:#f2f5ee;--tc-hover:#faf8eb;--tc-yellow:#fdc500;--tc-radius:11px;color-scheme:light}
[hidden]{display:none!important}body{background:var(--bg);font:400 14px/1.5 Arial,sans-serif;color:var(--ink)}button,input,select,textarea{font-family:inherit}h1{font-size:25px;line-height:1.25;letter-spacing:-.5px;font-weight:500;margin:5px 0 7px}h2{font-size:15px;font-weight:500}h3{font-size:14px;font-weight:500}strong,b{font-weight:500}p{font-size:12px;line-height:1.65;color:var(--muted)}small{font-size:11px;color:var(--muted)}.btn,.pillbtn,.document-app button,.document-app .button{font-weight:500;font-size:12px;min-height:38px;padding:10px 13px;border-radius:7px;white-space:normal}.btn:not(.brand):not(.green):not(.dark):hover:not(:disabled),.document-app button.secondary:hover:not(:disabled){background:var(--tc-hover)}.btn.dark,.btn.brand,.btn.green,.document-app button:not(:where(.secondary,.status-filter,.quote-row,.edit-item,.remove-item,.portal-menu,.document-navigation button)){background:var(--tc-yellow);border-color:var(--tc-yellow);color:#292710}.textbtn{font-size:11px;font-weight:400}.panel,.card,.document-app .paper{border:1px solid var(--line);border-radius:11px;background:#fff;box-shadow:none}.panel{padding:17px;margin-bottom:17px}.heading{margin-bottom:22px}.eyebrow{font-size:10px;letter-spacing:1.1px;color:var(--muted)}.badge{font-size:10px;padding:4px 8px;border-radius:20px;font-weight:400}.badge.ok{background:#e8f3eb;color:#2b6946}.badge.review,.badge.outstanding{background:#fff0cc;color:#7c580e}.notice{border-radius:8px;font-size:12px}.formlabel{font-weight:500}.actions{gap:12px}.interactive-record{cursor:pointer;transition:background-color .15s}.interactive-record:hover,.interactive-record:focus-visible{background:var(--tc-hover)}.interactive-record:focus-visible{outline:2px solid #a78b21;outline-offset:2px}.file-record{border-radius:7px;padding:12px 8px}.file-open strong,.file-record strong{font-weight:500}.file-open{background:transparent}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
/* A consistent shell for client, studio and document views. */
.portal-shell .layout>aside,.portal-document-sidebar{background:#202620;color:#d5ded1;width:208px;padding:26px 14px}.portal-shell .layout>aside{height:100dvh}.portal-shell .brand-logo,.refined-brand img{width:170px;max-width:100%}.portal-shell .portal{margin:30px 8px 13px;font-size:9px;letter-spacing:1.1px;color:#aebba6}.portal-shell aside nav button,.portal-shell .quote-nav,.portal-document-sidebar nav a{display:flex;align-items:center;gap:9px;padding:11px 10px;min-height:40px;font-size:12px;font-weight:400;border:0;border-radius:7px;text-decoration:none}.portal-shell .quote-nav{margin:0;color:#d5ded1}.portal-shell aside nav button:hover:not(.active),.portal-document-sidebar nav a:hover{background:#30392e}.portal-shell aside nav button.active,.portal-document-sidebar nav a[aria-current=page]{background:var(--tc-yellow);color:#252710}.navicon{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;flex:none}.navicon svg{display:block}.portal-shell main{margin-left:208px;width:calc(100% - 208px)}.portal-shell header{background:#fff;border-bottom:1px solid var(--line);height:70px;padding:16px 24px}.portal-shell .breadcrumb{font-size:11px}.portal-shell .content{padding:26px 24px;max-width:1440px}.portal-shell .help{border:0!important;border-top:1px solid #424c3e!important;border-radius:0!important;background:transparent!important;padding:17px 8px!important;margin:35px 0 0!important;font-weight:400}.portal-shell .help strong{font-size:11px}.portal-shell .demo{font-size:10px;padding:7px 10px;margin-bottom:18px;background:transparent;border:1px solid var(--line);border-radius:7px}.portal-shell .stat{border:1px solid var(--line);border-radius:11px;padding:16px;background:#fff}.portal-shell .stat label{font-size:10px;color:var(--muted)}.portal-shell .stat strong{font-size:25px;margin:8px 0 3px;font-weight:400;font-variant-numeric:tabular-nums}.portal-shell .stats,.portal-shell .kpi{gap:12px;margin-bottom:20px}.portal-shell .stat small{font-size:10px}.portal-shell .sectionhead h2{font-size:15px;font-weight:500}.portal-shell .twocol{gap:18px;grid-template-columns:minmax(0,1fr) 270px}.portal-shell .client-project-card .client-project-cover{height:145px;background:#e9eddf}.portal-shell .client-project-card .cardbody{padding:16px}.portal-shell .client-project-card h3{font-size:14px;font-weight:500}.portal-shell .client-project-card p{font-size:11px}.portal-shell .client-project-card:hover .cardbody{background:var(--tc-hover)}.portal-shell #allCards{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portal-shell .client-project-card .project-monogram{font:64px Georgia,serif;letter-spacing:-3px;color:#56674d}.portal-shell .client-project-card .project-cover-caption{font-size:8px;letter-spacing:1.5px}.portal-shell .client-project-card .cardfoot{font-size:10px}.portal-shell .next-action-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 18px;align-items:center;border:1px solid #d9c45e;margin-bottom:24px;padding:18px}.next-action-banner .badge{justify-self:start;grid-column:1}.next-action-banner h3{grid-column:1;margin:3px 0;font-size:15px}.next-action-banner p{grid-column:1;margin:0}.next-action-banner>button{grid-column:2;grid-row:1/4;min-width:120px}.portal-shell .tablewrap{padding:0}.portal-shell th{font-size:10px;padding:11px 14px;background:#f6f8f3}.portal-shell td{font-size:12px;padding:13px 14px}.portal-shell tr:hover td{background:var(--tc-hover)}.portal-shell .studio-project-record{padding:15px 16px;border-radius:10px}.portal-shell .studio-project-record h3{font-weight:500}.portal-shell .wf-job{font-size:12px;padding:14px 10px}.portal-shell .wf-job strong{font-weight:500}.portal-shell .wf-job .job-progress-meter{max-width:210px}.portal-shell .wf-job small,.portal-shell .wf-job-progress{font-size:10px}.wf-stage-content{flex:1;min-width:0}.wf-steps li{align-items:flex-start;gap:12px;padding:13px 10px}.wf-steps li.current{background:#faf8eb}.wf-steps #wfAdvance{margin-top:12px}.wf-steps .wf-check{font-size:12px;margin:8px 0}.wf-steps .wf-check input{width:16px;height:16px}.wf-steps .textbtn{margin:5px 0 0;padding:2px 0;min-height:28px;text-decoration:underline}.wf-steps #wfAdvance .btn{margin-top:8px}.wf-step-number{border:1px solid var(--line);background:#fff;color:var(--muted);width:27px;height:27px;flex-basis:27px}.wf-steps .current .wf-step-number{border-color:var(--tc-yellow);background:var(--tc-yellow)}.wf-steps .complete .wf-step-number{border-color:#e8f3eb;background:#e8f3eb;color:#2b6946}.project-progress-overview{padding:10px 0;margin:8px 0 14px}.project-progress-overview p{font-size:11px}.project-progress-overview>.progress{margin:8px 0;height:4px}.wf-meta{font-size:11px;padding:10px 0}.project-progress-heading{font-size:12px}.client-project-content>h1{margin-right:24px}.client-project-content>.panel{padding:17px}.client-project-content .wf-client-job{padding:13px 0}.portal-shell dialog:has([data-client-project-detail]){width:min(1100px,96vw);max-width:1100px;padding:26px;max-height:94dvh}.portal-shell dialog{background:var(--bg);border:1px solid var(--line)}.project-pricing .pricing-totals{padding:12px 0}.project-pricing .pricing-totals strong{font-weight:400}.project-pricing .pricing-totals>span:last-child strong{font-size:22px}.project-assets{background:#fff;border:1px solid var(--line);border-radius:11px;padding:17px;margin:17px 0}.project-assets details>summary{padding:0;display:flex;align-items:center;min-height:38px}.project-assets details>summary::after{content:'⌄';margin-left:auto}.client-more{border:1px solid var(--line);border-radius:8px;padding:6px 12px;margin-top:16px}
/* Design approvals overview, grouped by the real project and current job proof. */
.approval-overview.panel{padding:0;border:0;background:transparent}.approval-toolbar input{max-width:430px;margin-bottom:14px}.approval-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.approval-project{margin-top:25px}.approval-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.approval-card{padding:0;border:1px solid var(--line);background:#fff;border-radius:11px;overflow:hidden;text-align:left;color:var(--ink);cursor:pointer;min-width:0}.approval-card:hover{border-color:#c5c2a4}.approval-card:hover .approval-card-body{background:var(--tc-hover)}.approval-artwork{position:relative;height:145px;display:grid;place-items:center;background:#e9eddf;font-size:20px;color:#73806b}.approval-artwork img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#f2f5ee}.approval-card-body{padding:16px}.approval-card h3{margin:10px 0 6px;font-size:14px}.approval-card p{margin:0 0 5px;font-size:11px;overflow-wrap:anywhere}.approval-card small{display:block;font-size:9px;overflow-wrap:anywhere}.approval-action{display:block;margin-top:15px;font-size:11px}.approval-card:focus-visible{outline:3px solid #a78b21;outline-offset:3px}
/* Proof artwork and feedback open together in a generous viewer. */
.portal-shell dialog.proof-review-dialog{width:min(1240px,97vw)!important;max-width:1240px!important;padding:26px;max-height:95dvh;background:var(--bg)}.proof-review-dialog .file-preview-subtitle{font-size:11px;overflow-wrap:anywhere}.proof-review-dialog h1{font-size:23px;overflow-wrap:anywhere}.proof-review-dialog .review-back{padding:0 0 8px}.proof-review-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start;margin-top:20px}.proof-review-artwork{min-width:0}.proof-review-artwork .file-preview-stage{min-height:420px;max-height:65dvh;border:1px solid var(--line);border-radius:11px;background:#eef1e9}.proof-review-artwork .file-preview-stage img{object-fit:contain;max-height:60dvh}.proof-review-feedback{background:#fff;border:1px solid var(--line);border-radius:11px;padding:18px;position:sticky;top:0;min-width:0}.proof-review-feedback h2{font-size:15px;margin:13px 0 8px}.proof-review-feedback textarea{height:120px;min-height:90px;width:100%;box-sizing:border-box}.proof-review-feedback p{overflow-wrap:anywhere}.proof-review-feedback [data-proof-confirm]{background:#fffbeb;border:1px solid #e4d68d;border-radius:8px;padding:12px;margin-top:14px}.proof-review-feedback [data-proof-confirm] p{font-size:11px}.review-actions{margin-top:16px}.review-actions>div{display:flex;gap:9px;margin-top:10px;flex-wrap:wrap}.review-actions .btn{flex:1;min-width:0}.review-actions small{display:block;font-size:10px}.proof-review-dialog .close{z-index:8}.file-preview-stage .pdf-text-content{font-size:10px}
/* Billing, forms, terms and email use the same navigation and rhythm. */
.portal-document-sidebar{position:fixed;left:0;top:0;bottom:0;box-sizing:border-box;overflow:auto;z-index:20}.portal-document-sidebar p{margin:30px 8px 13px;font-size:9px;letter-spacing:1.1px;color:#aebba6}.portal-document-sidebar nav{display:flex;flex-direction:column;gap:4px}.portal-document-sidebar nav a{color:#d5ded1}.portal-document-sidebar .refined-brand{display:block;padding:0 6px}.sidebar-caption{font-size:11px;margin:40px 8px 0;padding-top:17px;border-top:1px solid #424c3e}.sidebar-caption small{display:block;font-size:10px;color:#aebba6;margin-top:4px}.document-app.has-portal-sidebar>header{margin-left:208px;padding:16px 24px;height:70px;box-sizing:border-box}.document-app.has-portal-sidebar>main{margin:0 0 0 208px;max-width:1440px;padding:26px 24px;box-sizing:border-box}.document-app.has-portal-sidebar header nav{margin-left:auto}.refined-crumb{font-size:11px;color:var(--muted)}.document-app .document-view{gap:18px}.document-app .billing-document-main,.document-app .billing-document-actions{border-radius:11px;padding:20px}.document-app .document-heading h1{font-weight:500}.document-app .document-section h2{font-weight:500}.document-app .quote-row{min-height:68px;background:#fff!important;border-color:var(--line)!important;color:var(--ink)!important}.document-app .quote-row:hover{background:var(--tc-hover)!important}.document-app button.status-filter{background:#fff;color:var(--muted);border:1px solid var(--line)}.document-app button.status-filter.active{background:var(--tc-soft);color:var(--ink);border-color:#aeb9a5}.document-app .payment-method-choices{grid-template-columns:1fr;gap:9px}.document-app .payment-choice{background:#fff!important;border:1px solid var(--line)!important;color:var(--ink)!important;text-align:left;font-size:12px}.document-app .payment-choice:hover{background:var(--tc-hover)!important;border-color:#bcb36f!important}.document-app .payment-choice[aria-pressed=true]{border-color:var(--tc-yellow)!important;box-shadow:inset 0 0 0 1px var(--tc-yellow)}.document-app .payment-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin:16px 0}.document-app .payment-actions .provider-actions{margin:0;flex:1}.document-app .payment-actions #changePayment{margin:0;padding:0;min-height:38px;background:transparent!important;border:0!important;color:var(--muted)!important;font-size:11px;text-decoration:underline}.document-app .provider-actions .button{background:var(--tc-yellow);color:#292710;border-color:var(--tc-yellow)}.document-app #messages>.paper{padding:15px 17px;margin:0;border-radius:0;border-bottom:0}.document-app #messages>.paper:first-child{border-radius:11px 11px 0 0}.document-app #messages>.paper:last-child{border-radius:0 0 11px 11px;border-bottom:1px solid var(--line)}.document-app #messages h2{font-size:13px;margin:0}.document-app #messages .paper p{font-size:11px;margin:6px 0}.document-app #messages pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 Arial,sans-serif}.portal-menu{display:none}.portal-shell button.is-processing,.document-app button.is-processing{cursor:progress!important}
@media(max-width:1050px){.approval-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-shell .twocol{grid-template-columns:1fr}.proof-review-layout{grid-template-columns:minmax(0,1fr) 280px}.portal-shell #overviewCards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.portal-shell .layout{display:block}.portal-shell .layout>aside,.portal-document-sidebar{display:none;position:static;width:100%;height:auto;max-height:65dvh;overflow:auto}.portal-menu-open .layout>aside,.portal-menu-open .portal-document-sidebar{display:block}.portal-shell aside nav,.portal-document-sidebar nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.portal-shell aside .help,.sidebar-caption{display:none}.portal-shell .portal,.portal-document-sidebar p{margin-top:18px}.portal-shell main{margin-left:0;width:100%}.portal-shell header{padding:12px 16px;min-height:64px;height:auto;flex-wrap:wrap;gap:9px}.portal-shell .breadcrumb,.refined-crumb{display:none}.portal-menu{display:block;min-height:40px;flex-shrink:0}.portal-shell .content{padding:22px 16px}.portal-shell .profile,.portal-shell .headerlinks{gap:8px;margin-left:auto}.portal-shell .profile .name,.portal-shell header .compact{display:none}.portal-shell .heading{gap:12px;flex-wrap:wrap}.portal-shell h1{font-size:23px}.portal-shell .heading>.btn{min-height:44px}.portal-shell .stats{grid-template-columns:1fr 1fr}.portal-shell .stats>.stat:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:3px 12px}.portal-shell .stats>.stat:last-child strong{grid-column:2;grid-row:1/3;margin:0;font-size:22px}.portal-shell .stats>.stat:last-child small{grid-column:1}.portal-shell .kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-shell #overviewCards,.portal-shell #allCards{grid-template-columns:1fr}.portal-shell .next-action-banner{display:block;padding:16px}.next-action-banner>button{margin-top:13px;width:100%;min-height:44px}.portal-shell .wf-columns{grid-template-columns:1fr}.portal-shell .wf-job{padding:13px 8px}.portal-shell input:not([type=checkbox]):not([type=radio]),.portal-shell select,.portal-shell textarea,.document-app input:not([type=checkbox]):not([type=radio]),.document-app select,.document-app textarea{font-size:16px}.portal-shell dialog:has([data-client-project-detail]){width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:24px 16px;box-sizing:border-box}.approval-grid{grid-template-columns:1fr}.approval-artwork{height:160px}.approval-toolbar input{max-width:100%;box-sizing:border-box}.approval-filters .client-filter-button{min-height:40px}.portal-shell dialog.proof-review-dialog{width:100vw!important;max-width:100vw!important;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:22px 16px 130px;box-sizing:border-box}.proof-review-layout{grid-template-columns:1fr;gap:16px}.proof-review-feedback{position:static;padding:16px}.proof-review-artwork .file-preview-stage{min-height:240px;max-height:none}.proof-review-artwork .file-preview-stage img{max-height:60dvh}.proof-review-feedback .review-actions{position:fixed;bottom:0;left:0;right:0;z-index:5;padding:10px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);margin:0;box-shadow:0 -4px 14px #20262008}.review-actions>div{flex-wrap:nowrap;margin-top:7px}.review-actions .btn{min-height:44px}.proof-review-dialog .close{position:fixed;top:12px;right:10px}.document-app.has-portal-sidebar>header{margin-left:0;padding:12px 16px;height:auto;min-height:64px;flex-wrap:wrap;gap:12px}.document-app.has-portal-sidebar>main{margin-left:0;padding:22px 16px;max-width:100%;width:100%}.document-app .document-view{grid-template-columns:1fr}.document-app .billing-document-main,.document-app .billing-document-actions{padding:16px}.document-app .payment-actions{flex-direction:column;align-items:stretch;gap:16px}.document-app .payment-actions #changePayment{align-self:center;min-height:44px}.document-app #messages>.paper{padding:16px}.interactive-record{touch-action:manipulation}.wf-steps .textbtn{min-height:40px}.portal-shell .btn,.document-app button,.document-app .button{min-height:44px}.portal-shell .project-status-filters{flex-wrap:wrap}.project-assets{padding:16px}}
@media print{.portal-document-sidebar,.portal-menu,.review-actions,.review-back{display:none!important}.document-app.has-portal-sidebar>main,.document-app.has-portal-sidebar>header{margin-left:0!important}.interactive-record{outline:none!important}.proof-review-layout{display:block}.proof-review-feedback{position:static}.portal-shell .layout>aside{display:none!important}}
/* Override the earlier payment-choice emphasis while keeping checkout primary. */
.document-app #paymentChooser .payment-choice{background:#fff!important;border:1px solid var(--line)!important;color:var(--ink)!important}
.document-app #paymentChooser .payment-choice:hover{background:var(--tc-hover)!important;border-color:#bcb36f!important}
.document-app #paymentChooser .payment-choice[aria-pressed=true]{border-color:var(--tc-yellow)!important;box-shadow:inset 0 0 0 1px var(--tc-yellow)}
.document-app #paymentChooser .payment-choice[aria-pressed=true] strong::after{content:' ✓';color:#5e602e}

.proof-review-artwork .actions .btn.dark{background:#fff;color:var(--ink);border:1px solid var(--line)}
.billing-export>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;list-style:none;padding:0;min-height:40px;cursor:pointer}.billing-export>summary::after{content:'+';font-size:18px;color:var(--muted)}.billing-export[open]>summary::after{content:'−'}.billing-export>summary>span{font-size:15px;font-weight:500}.billing-export>summary small{font-size:11px;margin-left:auto}.billing-export .export-notes{border-top:1px solid var(--line);margin-top:14px;padding-top:5px}.billing-export .export-notes>summary{font-size:11px}.billing-export .export-notes p{font-size:11px}.billing-export input,.billing-export select{width:100%;box-sizing:border-box}.billing-export #billingExportStatus:empty{display:none}
@media(max-width:760px){.billing-export>summary{flex-wrap:wrap}.billing-export>summary small{margin-left:0;flex-basis:85%}.billing-export>summary::after{margin-left:auto}.billing-export .actions{flex-direction:column;align-items:stretch}.billing-export .fieldgrid{grid-template-columns:1fr}}
.fulfilment-panel fieldset{border:0;padding:0;margin:0;min-width:0}.fulfilment-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 18px}.fulfilment-choices label{display:flex;gap:9px;align-items:flex-start;padding:12px;border:1px solid var(--line);border-radius:8px;font-size:12px;cursor:pointer}.fulfilment-choices label:has(input:checked){background:var(--tc-hover);border-color:#c5ac33}.fulfilment-choices input{width:16px;height:16px;flex-shrink:0;margin:1px 0 0}.fulfilment-choices small{display:block;font-size:10px;line-height:1.5;margin-top:5px}.fulfilment-panel textarea{box-sizing:border-box;width:100%;min-height:68px}.client-fulfilment{padding:13px 15px;background:#f6f8f2;border:1px solid var(--line);border-radius:8px;margin:14px 0}.client-fulfilment h3{margin:0 0 8px}.client-fulfilment p{overflow-wrap:anywhere;white-space:pre-line}
@media(max-width:760px){.fulfilment-choices{grid-template-columns:1fr}.fulfilment-choices label{padding:14px;min-height:54px}}
