:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#10263e;background:#f3f6fa;font-size:16px;line-height:1.5;--blue:#245eea;--ink:#10263e;--muted:#52647a;--line:#dbe3ec}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,p{margin:0}h1{font-size:2.25rem;line-height:1.15;letter-spacing:-.04em}h2{font-size:1.25rem;letter-spacing:-.02em}h3{font-size:1rem}p{color:var(--muted)}small,.small{font-size:.875rem;color:var(--muted)}.loading{padding:20vh 8vw}.brand{display:flex;gap:12px;align-items:center;font-size:1.2rem;font-weight:700;letter-spacing:-.02em}.mark{display:grid;place-items:center;background:#66e3cf;color:#0b2038;width:38px;height:38px;border-radius:10px;font-size:1.4rem;font-weight:800}.brand small{display:block;color:#9db0c5;font-size:.8rem;font-weight:400;letter-spacing:.03em}.shell{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#0b2038;color:white;padding:30px 22px;display:flex;flex-direction:column;gap:30px}.sidebar nav{display:grid;gap:6px}.sidebar nav button{border:0;background:transparent;color:#b6c5d6;border-radius:8px;padding:12px 14px;text-align:left;display:flex;gap:13px;align-items:center}.sidebar nav button:hover{background:#17334f;color:white}.sidebar nav button.active{background:#234663;color:white}.navicon{display:inline-grid;place-items:center;font-size:1rem;width:20px;font-weight:700}.side-bottom{margin-top:auto;font-size:.875rem;color:#abc0d5;display:grid;gap:15px}.side-bottom strong{color:white;font-weight:500}.firm-select{width:100%;background:#132f4b;color:white;border:1px solid #456078;border-radius:8px;padding:10px;font-size:.875rem}.side-bottom button{background:none;border:0;color:#b6c5d6;text-align:left;padding:0}.main{padding:26px 40px 50px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;color:var(--muted);margin-bottom:36px}.topbar .secure{display:flex;gap:8px;align-items:center}.secure:before{content:'◆';color:#0c866c;font-size:.7rem}.pagehead{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:28px}.pagehead p{margin-top:9px}.eyebrow{text-transform:uppercase;font-size:.75rem;font-weight:700;letter-spacing:.12em;color:#49708e;margin-bottom:10px}.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.btn{border:1px solid var(--line);background:white;color:var(--ink);border-radius:8px;padding:10px 16px;display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;white-space:nowrap;min-height:42px}.btn:hover{background:#f0f5ff;text-decoration:none}.btn.primary{background:var(--blue);border-color:var(--blue);color:white}.btn.primary:hover{background:#174dce}.btn.danger{color:#b53140;border-color:#e7bac0}.btn.text{border:0;background:none;padding:5px 0;min-height:30px}.btn.sm{padding:6px 11px;font-size:.875rem;min-height:34px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:28px}.stat{background:white;border:1px solid var(--line);border-radius:12px;padding:20px 22px}.stat .value{font-size:2rem;line-height:1.2;font-weight:650;letter-spacing:-.05em;margin-top:12px}.stat .label{font-size:.875rem;color:var(--muted)}.stat.accent{background:#103751;border-color:#103751;color:white}.stat.accent .label{color:#c0dae7}.panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin-bottom:22px}.panel-head{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head p{font-size:.875rem;margin-top:5px}.panel-body{padding:24px}.workgrid{display:grid;grid-template-columns:310px minmax(0,1fr);gap:22px;align-items:start}.clientlist{max-height:650px;overflow:auto}.clientbtn{display:block;width:100%;border:0;border-bottom:1px solid #edf0f4;background:white;padding:17px 22px;text-align:left}.clientbtn:hover{background:#f6f8fc}.clientbtn.selected{background:#eef3ff;box-shadow:inset 3px 0 var(--blue)}.clientbtn strong{font-size:.95rem;display:block}.clientmeta{display:flex;gap:7px;align-items:center;margin-top:6px;font-size:.8125rem;color:var(--muted)}.pill{display:inline-flex;align-items:center;border-radius:5px;padding:4px 8px;font-size:.75rem;font-weight:600;line-height:1.5;background:#eff3f8;color:#52647a}.pill.open,.pill.changes{background:#fff1db;color:#845300}.pill.received{background:#e9efff;color:#284fa5}.pill.approved,.pill.delivered{background:#e2f5ee;color:#116c50}.pill.waived{background:#edf1f5;color:#617083}.pill.failed,.pill.bounced,.pill.complained,.pill.uncertain{background:#fbe8ec;color:#a72843}.search{width:100%;font-size:.875rem;padding:10px 12px;border:1px solid var(--line);border-radius:7px}.searchwrap{padding:14px 18px;border-bottom:1px solid var(--line)}.client-heading{padding:24px}.client-heading h2{font-size:1.5rem}.client-heading .contact{margin:7px 0 15px;font-size:.875rem;color:var(--muted)}.tabs{display:flex;gap:22px;padding:0 24px;border-bottom:1px solid var(--line)}.tabs button{border:0;background:none;padding:12px 0;color:var(--muted);font-size:.875rem;border-bottom:3px solid transparent}.tabs button.selected{color:var(--blue);border-color:var(--blue);font-weight:600}.request{padding:18px 24px;border-bottom:1px solid #e6ecf3}.request:last-child{border-bottom:0}.request summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.request summary::-webkit-details-marker{display:none}.request .title{font-size:.95rem;font-weight:600;display:block}.request .meta{font-size:.8125rem;color:var(--muted);margin-top:4px}.request[open]{background:#fbfcff}.request-content{padding-top:17px}.request-content .notes{white-space:pre-wrap;margin-bottom:16px;font-size:.9375rem}.filelist{display:grid;gap:8px;margin-bottom:15px}.file{display:flex;justify-content:space-between;gap:15px;background:white;border:1px solid var(--line);border-radius:6px;padding:10px 13px;font-size:.875rem}.comment{padding:11px 14px;border-left:3px solid #bacce2;margin:10px 0;background:#f0f4f9;white-space:pre-wrap;font-size:.875rem}.comment small{display:block;margin-bottom:4px}.empty{padding:55px 30px;text-align:center}.empty .emptyicon{display:inline-grid;place-items:center;background:#eaf0fb;color:#41668c;width:58px;height:58px;border-radius:16px;font-size:1.6rem;margin-bottom:18px}.empty h2{margin-bottom:9px}.empty p{max-width:430px;margin:0 auto 22px}.notice-inline{padding:13px 17px;background:#edf5fa;border:1px solid #cddfe9;border-radius:8px;font-size:.875rem;margin:18px 0;color:#325770}.notice-inline.warn{background:#fff7e8;border-color:#ecd8ac;color:#7d5c20}.tablewrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.875rem}th{text-align:left;padding:13px 20px;font-weight:500;color:var(--muted);background:#f8fafd;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:16px 20px;border-bottom:1px solid #e7edf4;vertical-align:top}td p{font-size:.8125rem;margin-top:4px}.tablewrap td strong{font-size:.875rem}.row-actions{display:flex;gap:8px;flex-wrap:wrap}.transaction{padding:18px 24px;border-bottom:1px solid var(--line)}.transaction-top{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px}.transaction .desc{font-weight:600;font-size:.9375rem}.transaction .suggestion{background:#f0f6ff;border:1px solid #d6e4ff;border-radius:8px;padding:12px;margin-top:12px;font-size:.875rem;display:flex;justify-content:space-between;gap:12px;align-items:center}.fields{display:grid;gap:16px}.field{display:grid;gap:6px}.field label{font-size:.875rem;font-weight:550}.field input,.field select,.field textarea{width:100%;border:1px solid #cbd6e2;border-radius:7px;padding:10px 12px;background:white;color:var(--ink)}.field textarea{resize:vertical;min-height:90px}.field input[type=file]{font-size:.875rem}.field .hint{font-size:.8125rem;color:var(--muted)}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.settingsgrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.settingsgrid .panel{margin:0}.checkline{display:flex;align-items:flex-start;gap:10px;font-size:.875rem}.checkline input{margin-top:5px;min-width:18px}dialog{border:1px solid var(--line);border-radius:16px;padding:0;width:min(560px,calc(100% - 32px));max-height:90vh;color:var(--ink);box-shadow:0 25px 100px #0b20382b}dialog::backdrop{background:#09213d77;backdrop-filter:blur(2px)}.modal-head{padding:22px 26px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:15px}.modal-head button{border:0;background:none;padding:0;color:var(--muted);font-size:1.5rem}.modal-body{padding:24px 26px}.form-error{color:#b12742;margin-top:15px;font-size:.875rem}.login{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:white}.login-story{background:#0b2038;color:white;padding:55px 9vw 55px 6vw;display:flex;flex-direction:column;justify-content:space-between;gap:40px}.login-story h1{font-size:3.5rem;max-width:580px;line-height:1.06;letter-spacing:-.055em}.login-story h1 span{color:#66e3cf}.login-story p{color:#adc2d5;margin-top:22px;max-width:440px;font-size:1.05rem}.flow{display:grid;gap:0;margin-top:38px}.flowline{display:flex;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid #29415b;font-size:.9375rem;color:#d5e4ed}.flowline span{display:grid;place-items:center;width:30px;height:30px;background:#21415b;border-radius:50%;color:#66e3cf;font-size:.8125rem}.login-story footer{font-size:.8125rem;color:#90a9bf}.login-form{display:flex;align-items:center;justify-content:center;padding:50px}.login-form-inner{width:100%;max-width:390px}.login-form h2{font-size:1.75rem;margin-bottom:10px}.login-form p{font-size:.9375rem;margin-bottom:28px}.login-form .btn{width:100%}.login-form .footnote{font-size:.8125rem;margin-top:22px;line-height:1.6}.backlink{display:inline-block;margin-top:35px;font-size:.875rem}.client-shell{max-width:920px;margin:auto;padding:30px 28px 60px}.client-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:40px}.client-shell .brand small{color:var(--muted)}.client-shell h1{margin-bottom:12px}.client-shell .request{padding:22px}.client-shell .request summary{cursor:default}.client-shell .progress{height:6px;background:#e0e8f1;border-radius:5px;margin-top:18px;overflow:hidden}.progress-fill{height:100%;background:#147965;width:0}.client-shell .panel-head{background:#fafcff}.client-shell .clientintro{margin-bottom:30px}.client-shell footer{font-size:.875rem;color:var(--muted);margin-top:30px}.mobile-brand{display:none}#notice{position:fixed;bottom:24px;right:24px;background:#0b2038;color:white;padding:14px 20px;border-radius:10px;box-shadow:0 10px 40px #0b203830;max-width:400px;font-size:.875rem;z-index:10;display:none}#notice.visible{display:block}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1200px){.main{padding:25px}.workgrid{grid-template-columns:260px minmax(0,1fr)}.settingsgrid{grid-template-columns:1fr}.pagehead h1{font-size:2rem}}@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:relative;height:auto;padding:18px 22px;gap:15px}.sidebar .brand{font-size:1rem}.sidebar .brand small{display:none}.side-bottom{margin-top:0;display:flex;gap:12px;align-items:center}.side-bottom>div{display:none}.side-bottom .firm-select{margin:0;max-width:240px}.side-bottom>button{padding:7px}.sidebar nav{display:flex;overflow:auto;gap:4px}.sidebar nav button{white-space:nowrap;padding:9px 11px;font-size:.875rem}.navicon{display:none}.main{padding:22px}.topbar{margin-bottom:24px}.workgrid{grid-template-columns:1fr}.clientlist{max-height:280px}.stats{gap:10px}.stat{padding:15px}.login-story{padding:45px}.login-story h1{font-size:2.75rem}.login-form{padding:30px}}@media(max-width:600px){.login{grid-template-columns:1fr}.login-story{padding:28px;gap:25px}.login-story h1{font-size:2.25rem}.login-story p,.flow,.login-story footer{display:none}.login-form{padding:35px 28px;align-items:flex-start}.main{padding:20px 16px}.topbar .secure{display:none}.pagehead{flex-direction:column;gap:16px}.pagehead h1{font-size:1.8rem}.stats{grid-template-columns:1fr 1fr}.stat .value{font-size:1.65rem}.panel-head,.panel-body,.request,.client-heading{padding:18px}.twocol{grid-template-columns:1fr}.client-shell{padding:20px 16px}.client-top{gap:12px}.client-top .brand{font-size:1rem}.client-shell h1{font-size:1.8rem}.request summary{gap:10px}.request .meta{line-height:1.7}.request .pill{max-width:115px;text-align:center}.client-shell .clientintro{margin-bottom:22px}.settingsgrid{display:block}.settingsgrid .panel{margin-bottom:20px}.btn{white-space:normal}.transaction .suggestion{align-items:flex-start;flex-direction:column}#notice{left:16px;right:16px;bottom:16px}th,td{padding:12px 16px}}

.sidebar .brand{color:#fff}

.sidebar,.sidebar nav{min-width:0}.sidebar nav button{flex-shrink:0}.request summary>div,.file>span,.client-heading{min-width:0;overflow-wrap:anywhere}.client-top .brand{min-width:0}.client-top .brand>div{overflow-wrap:anywhere}
.period-filter{display:flex;align-items:center;gap:14px;padding:12px 24px;background:#f7faff;border-bottom:1px solid var(--line);font-size:.875rem}.period-filter select,input[type=month]{padding:7px 10px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink)}.period-note{margin-bottom:14px}.file-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px;background:white;border:1px solid var(--line);border-radius:8px}.file-row>div{min-width:0}.file-name{overflow-wrap:anywhere;font-size:.875rem}.contact-grid{display:grid;gap:10px}.contact-card{padding:14px;border:1px solid var(--line);border-radius:8px;margin:10px 0}.contact-card p{font-size:.875rem;margin:6px 0 10px}.backup-list{max-height:300px;overflow:auto}.stage-banner{padding:10px;background:#fff1cf;color:#795700;border:1px solid #dfc581;border-radius:8px;font-size:.875rem;margin-bottom:18px}.authenticator-page{max-width:530px;margin:6vh auto;padding:24px}.authenticator-page .brand{margin-bottom:30px}.authenticator-page h1{font-size:1.7rem;margin-bottom:14px}.authenticator-page p{margin-bottom:20px}.authenticator-page .actions{margin-top:20px}#authenticator-qr{max-width:210px;margin:auto}#authenticator-qr svg{width:100%;height:auto}dialog.wide{width:min(900px,calc(100% - 32px))}.drop-zone{padding:25px;border:2px dashed #adbed1;border-radius:12px;text-align:center;background:#f7faff}.drop-zone.dragging{border-color:var(--blue);background:#eaf0ff}.drop-zone .actions{justify-content:center;margin-top:12px}#upload-queue{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.upload-card{min-width:0;border:1px solid var(--line);border-radius:10px;padding:15px;margin-top:16px}.upload-card .file-row{padding:0;border:0}.upload-card strong{overflow-wrap:anywhere}.upload-preview{height:160px;overflow:hidden;background:#f1f4f8;border-radius:6px;margin:12px 0;display:grid;place-items:center;color:var(--muted)}.upload-preview img{display:block;min-width:0;min-height:0;width:100%;height:160px;max-height:160px;object-fit:contain}.upload-card progress{width:100%;height:8px}.upload-status{font-size:.8125rem;min-height:36px}.upload-card .twocol{gap:10px;margin-top:13px}.upload-card label{font-size:.8125rem}.upload-card input{padding:7px 8px;border:1px solid var(--line);border-radius:5px;width:100%;background:white}.upload-card .checkline{margin-top:12px}.upload-card .checkline input{width:auto}.uncertain{color:#896010}.mfa-form{margin-bottom:20px}#upload-summary{font-weight:600;padding:10px 0}.contact-card .actions{gap:7px}@media(max-width:600px){#upload-queue{grid-template-columns:1fr}.period-filter{padding:12px 18px;flex-wrap:wrap}.file-row{align-items:flex-start;flex-direction:column}.modal-body,.modal-head{padding:18px}.side-bottom .firm-select{max-width:220px}}
/* Review, recovery and keyboard use */
[hidden]{display:none!important}:focus-visible{outline:3px solid #245eea;outline-offset:3px}.btn,.btn.sm,.btn.text,.modal-head button{min-height:44px}.modal-head button{min-width:44px}.skip-link{position:absolute;left:16px;top:-100px;padding:12px 18px;background:white;z-index:100;border:2px solid var(--blue);border-radius:8px}.skip-link:focus{top:12px}.stats{grid-template-columns:repeat(5,minmax(0,1fr))}.request summary{min-height:44px}.request .next-action{font-size:.9rem;margin:0 0 14px}.clarification{border-left:4px solid #b77c16;background:#fff5e2;padding:14px;margin-bottom:16px}.clarification p{white-space:pre-wrap}.withdrawn-history{margin:18px 0}.withdrawn-history>summary{padding:10px 0;font-size:.875rem}.withdrawn-file{background:#f5f7fa;margin:8px 0}.progress-security_pending,.progress-security_delayed{background:#edf1f7;color:#415772}.progress-security_blocked{background:#fbe8ec;color:#922b43}.progress-staff_review,.progress-details_review{background:#e9efff;color:#284fa5}.progress-missing,.progress-changes{background:#fff1db;color:#845300}.progress-approved,.progress-waived{background:#e2f5ee;color:#116c50}.workload-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.workload-filters label{font-size:.875rem;display:grid;gap:6px}.workload-filters .checkline{display:flex;align-items:center}.workload-filters select,.workload-filters input{padding:10px;border:1px solid var(--line);border-radius:7px;background:white;min-height:44px}.workload-filters input[type=checkbox]{min-height:20px}.optional-details{margin:12px 0}.optional-details>summary{font-size:.875rem;cursor:pointer;padding:12px 0}.review-dialog{width:min(1280px,calc(100% - 32px));max-height:94vh}.review-dialog .modal-head{position:sticky;top:0;background:white;z-index:2}.review-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,1fr);gap:24px}.review-original{background:#f4f7fb;border:1px solid var(--line);border-radius:10px;padding:16px}.review-original h3{margin-bottom:12px}#original-preview{min-height:180px;max-height:66vh;overflow:auto;padding:10px;display:grid;align-items:start}#original-preview img{width:100%;height:auto;object-fit:contain}.text-original{font:14px/1.6 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink)}.review-context{margin-top:20px;border-top:1px solid var(--line);padding-top:16px}.review-context h3{margin:12px 0}.review-dialog .form-footer{position:sticky;bottom:0;background:white;padding:16px 0 0;border-top:1px solid var(--line)}#page-controls{justify-content:center;margin:12px 0}.review-navigation{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.upload-card progress{height:12px}.drop-zone .btn{white-space:normal}.client-shell label select{display:block;margin-top:6px;max-width:100%;min-height:44px;padding:8px;border:1px solid var(--line);border-radius:7px}.clientintro h1{overflow-wrap:anywhere}.file-row .actions{flex-shrink:0}.field input,.field select{min-height:44px}
@media(max-width:1150px){.stats{grid-template-columns:repeat(3,minmax(0,1fr))}.main{padding:24px}.workgrid{grid-template-columns:260px minmax(0,1fr)}}
@media(max-width:800px){.review-grid{grid-template-columns:1fr}.review-dialog{max-height:92vh}#original-preview{max-height:50vh}.review-original{padding:10px}.pagehead{flex-wrap:wrap}.file-row{align-items:flex-start;flex-wrap:wrap}.workload-filters{align-items:stretch}.workload-filters>label{flex:1 1 180px}}
@media(max-width:600px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:16px}.main{padding:18px}.request summary{flex-direction:column;gap:8px}.client-top{gap:16px;flex-wrap:wrap}.client-shell .panel-head{flex-wrap:wrap}.twocol{grid-template-columns:1fr}.review-dialog{width:calc(100% - 16px)}.modal-head h2{font-size:1.1rem}.review-navigation .btn{white-space:normal}.pagehead .actions{width:100%}.btn{white-space:normal}.topbar{gap:14px;flex-wrap:wrap}.client-shell{max-width:100%;padding:18px}.form-footer{flex-wrap:wrap}.workgrid{grid-template-columns:1fr}.clientlist{max-height:230px}}
.original-pane{background:#f4f7fb;border:1px solid var(--line);border-radius:10px;padding:16px}.original-pane h3,.review-grid>section h3{margin-bottom:12px}.review-grid .field{margin-top:12px}.review-grid .checkline{margin:16px 0}.review-context:first-child{margin-top:0;border-top:0;padding-top:0;margin-bottom:20px}
/* Personal password accounts */
.password-input{display:flex;gap:8px;align-items:center}.password-input input{min-width:0;flex:1}.password-input button{flex-shrink:0;min-height:44px}.account-links{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0}.account-links .linkbtn{background:none;border:0;padding:8px 0;min-height:44px;color:var(--accent,#245f56);text-decoration:underline;cursor:pointer;font:inherit}.account-company{display:flex;gap:12px;align-items:center;margin:16px auto;max-width:1000px;padding:0 24px}.account-company select{min-width:0;max-width:100%}.account-email{overflow-wrap:anywhere}

.login-form .password-input button{width:auto;min-width:76px;flex:0 0 auto;margin:0}.password-input input{width:0;flex:1 1 0}
.automation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.automation-summary strong{font-size:2rem}.automation-event{display:grid;gap:4px;border-bottom:1px solid var(--line);padding:12px 0}.automation-event:last-child{border-bottom:0}.tablewrap .linkbtn{border:0;background:none;color:var(--blue);text-align:left;padding:8px 0;min-height:44px;font:inherit;cursor:pointer}.modal-body h3{margin-top:18px}@media(max-width:600px){.automation-summary{grid-template-columns:1fr}.automation-summary .panel-body{padding:16px}.automation-summary strong{font-size:1.5rem}}

.setup-contact{border:1px solid var(--line);border-radius:8px;padding:14px;margin:12px 0;min-width:0}.setup-contact legend{padding:0 6px;font-size:.875rem}.setup-contact .field{min-width:0}[aria-invalid=true]{border:2px solid #a12842!important}.form-error:empty{display:none}.form-error:focus{outline:2px solid #a12842}.modal-body input,.modal-body select,.modal-body textarea{max-width:100%;box-sizing:border-box}.request .pill{white-space:normal;overflow-wrap:anywhere}.modal-body .optional-details>summary{min-height:44px}.modal-body fieldset .twocol{gap:12px}@media(max-width:400px){.modal-body,.modal-head{padding:16px}.main{padding:14px}.client-shell{padding:14px}.brand small{font-size:9px}.stat .label{font-size:.7rem}.form-footer .btn{flex:1}.modal-head{gap:8px}.sidebar nav{max-width:100%;overflow-x:auto}}

.status-group{display:inline-flex;flex-direction:column;gap:4px;align-items:flex-start}.status-group small{font-size:11px;color:#526478}.request summary>.status-group{align-items:flex-end;max-width:260px}@media(max-width:600px){.request summary>.status-group{align-items:flex-start;max-width:100%}}

.mail-provider{border:1px solid var(--line,#dce3e5);padding:16px;border-radius:12px;min-width:0}.mail-connection{padding:16px 0;border-top:1px solid var(--line,#dce3e5);overflow-wrap:anywhere}.mail-connection:first-of-type{margin-top:16px}.mail-provider h3{margin:0 0 8px}.mail-provider p,.mail-connection p{margin:8px 0}
@media(min-width:901px){.sidebar{overflow-y:auto}.sidebar nav,.sidebar .brand,.sidebar .side-bottom{flex-shrink:0}}

.permission-members{display:grid;gap:12px}.permission-member{padding:12px;border:1px solid #dce3ea;border-radius:8px}.permission-member label,.permission-member small{display:block}.permission-member small{font-weight:400;overflow-wrap:anywhere}.permission-member select{width:100%;margin-top:8px;min-height:44px}.settingsgrid select{max-width:100%}

.reminder-email-preview{border-top:1px solid var(--line,#d5dee7);padding-top:20px;margin-top:20px}.reminder-email-preview h3{font-size:16px;margin:0 0 16px}.reminder-addresses{margin:12px 0}.reminder-addresses div{display:grid;grid-template-columns:90px 1fr;gap:12px;padding:6px 0}.reminder-addresses dt{font-size:12px;color:var(--muted,#607080)}.reminder-addresses dd{margin:0;font-size:13px;overflow-wrap:anywhere}.reminder-subject{display:block;font-size:14px;margin:18px 0 10px}.reminder-copy{font-size:13px;line-height:1.65;font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--line,#d5dee7);border-radius:8px;padding:16px;background:var(--bg,#f3f6f8);max-height:360px;overflow:auto}@media(max-width:480px){.reminder-addresses div{grid-template-columns:1fr;gap:3px}.reminder-copy{padding:12px;font-size:12px}}

/* Billing retains the portal's compact, keyboard-friendly controls. */
.billing-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0}.billing-stats strong{display:block;font-size:26px;margin-top:8px}.billing-filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px}.billing-designs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.billing-design-card{border:1px solid var(--line,#dfe5e5);border-radius:12px;padding:20px}.billing-logo{display:block;max-width:140px;max-height:60px;object-fit:contain;margin:12px 0}.invoice-detail-grid{display:grid;grid-template-columns:minmax(0,2.5fr) minmax(240px,1fr);gap:20px}.invoice-detail-grid aside .panel{margin-bottom:16px}.invoice-detail-total{font-size:21px;white-space:nowrap}.invoice-totals{text-align:right;margin:24px 0}.invoice-line{border:1px solid var(--line,#dfe5e5);border-radius:10px;padding:14px;margin:14px 0}.invoice-line legend{font-size:13px;font-weight:600}.invoice-line-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) 44px;gap:10px;align-items:end}.invoice-line-values input{width:100%;min-width:0}.billing-service-picker{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.invoice-calculation{border-radius:8px;padding:16px;background:#eff5f4;font-weight:600;margin:18px 0}.invoice-pdf-preview{background:#f0f2f4;padding:10px;min-height:200px}.invoice-pdf-preview img{display:block;width:100%;height:auto}.checkline small{display:block}.billing-tabs{overflow-x:auto;white-space:nowrap}dialog:has(.invoice-editor),dialog:has(.invoice-pdf-preview){max-width:860px;width:calc(100% - 32px)}.invoice-editor details{margin:18px 0}.invoice-table td{vertical-align:top}.invoice-line-values .field label{font-size:12px}input[type=color]{height:44px;padding:4px}.invoice-detail-grid p[data-user-content]{white-space:pre-wrap}
@media(max-width:800px){.invoice-detail-grid{grid-template-columns:1fr}.billing-stats{grid-template-columns:1fr 1fr}.billing-stats .panel:last-child{grid-column:1/-1}.billing-filters{grid-template-columns:1fr}.invoice-detail-total{font-size:18px}.invoice-line-values{grid-template-columns:1fr 1fr}.invoice-line-values [data-remove-line]{justify-self:end}.billing-service-picker{grid-template-columns:1fr}.billing-designs{grid-template-columns:1fr}.invoice-detail-grid .panel-head{flex-wrap:wrap}.invoice-detail-grid .twocol{grid-template-columns:1fr}dialog:has(.invoice-editor),dialog:has(.invoice-pdf-preview){width:calc(100% - 16px);max-height:calc(100dvh - 16px)}.invoice-calculation{font-size:13px}}
.service-filters{display:flex;align-items:end;flex-wrap:wrap;gap:16px}.service-filters label,.service-form-grid label,.service-requirement-editor label{display:grid;gap:6px}.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}.service-card h2{font-size:1.2rem}.service-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0}.service-plan-card{border:1px solid var(--line,#d9dee8);border-radius:12px;padding:20px;margin-bottom:20px;min-width:0}.service-plan-card legend{font-weight:700;padding:0 8px}.service-document-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--line,#d9dee8)}.service-requirement-editor{display:grid;grid-template-columns:1fr 2fr 1fr;gap:10px;padding:14px 0;border-bottom:1px solid #d9dee8}.service-plan-card textarea{min-height:100px;width:100%}.service-evidence{border:1px solid #d9dee8;border-radius:10px;margin:14px 0;min-width:0;padding:14px}.service-plan-card select[multiple]{min-height:70px}.service-form-grid input,.service-form-grid select,.service-requirement-editor input,.service-requirement-editor select{width:100%;min-width:0}@media(max-width:620px){.service-form-grid,.service-requirement-editor{grid-template-columns:1fr}.service-document-row{align-items:start;flex-direction:column}.service-plan-card{padding:12px}.service-filters{align-items:stretch}.service-filters>label{width:100%}}
.service-filters input,.service-filters select,.service-form-grid input,.service-form-grid select,.service-requirement-editor input,.service-requirement-editor select,.service-plan-card textarea,.service-plan-card select[multiple]{border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:11px 12px;font:inherit;min-height:44px;max-width:100%}.service-filters input:focus-visible,.service-filters select:focus-visible,.service-form-grid input:focus-visible,.service-form-grid select:focus-visible,.service-plan-card textarea:focus-visible{outline:3px solid #3157d5;outline-offset:2px}@media(max-width:620px){.service-filters input,.service-filters select,.service-form-grid input,.service-form-grid select,.service-plan-card textarea{font-size:16px}}

.ai-answer{margin-top:2rem;border-top:1px solid var(--line,#d5dde5);padding-top:1.5rem}.ai-answer-text{white-space:pre-wrap;overflow-wrap:anywhere}.ai-suggestion{padding:1rem 0;border-bottom:1px solid var(--line,#d5dde5)}.ai-suggestion blockquote{margin:0;padding:.75rem 1rem;border-left:3px solid #345cdd;white-space:pre-wrap;overflow-wrap:anywhere}#ai-form select,#ai-form textarea{max-width:100%}

#ai-form>label:not([hidden]){display:grid;gap:6px;font-size:.875rem;font-weight:550;min-width:0}#ai-form input,#ai-form select,#ai-form textarea{width:100%;min-height:44px;border:1px solid #cbd6e2;border-radius:7px;padding:10px 12px;background:white;color:var(--ink);font:inherit;min-width:0}#ai-form textarea{resize:vertical;min-height:110px}
#ai-form .checkline{display:flex;align-items:center;gap:10px;min-height:44px}#ai-form .checkline input[type=checkbox]{width:18px;height:18px;min-width:18px;min-height:18px;padding:0;margin:0;flex:0 0 18px}

/* Document-first setup and period archive. */
.document-period-filters,.document-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.document-period-filters{grid-template-columns:180px minmax(180px,1fr) minmax(200px,1.3fr)}
.document-period-filters label,.document-form-grid label,.document-requirement-editor>label{display:grid;gap:7px;min-width:0}
.document-period-filters input,.document-period-filters select,.document-form-grid input,.document-form-grid select,.document-requirement-editor input,.document-requirement-editor select{width:100%;min-width:0}
.document-group-card,.document-extra-contact,.document-requirement-editor{border:1px solid var(--border,#dce5df);border-radius:12px;padding:18px;margin:0 0 18px;min-width:0}
.document-group-card>legend,.document-extra-contact>legend,.document-requirement-editor>legend{padding:0 8px;font-weight:600}
.document-requirement-editor{display:grid;grid-template-columns:minmax(160px,1.5fr) minmax(160px,1fr);gap:12px;background:var(--paper,#fff);margin-top:16px}
.document-requirement-editor .checkline,.document-requirement-editor>.btn{grid-column:1/-1}
.document-requirement-editor input[type=checkbox],.document-form-grid input[type=checkbox]{width:auto}
.document-group-card>.actions,.document-template-picker{margin-top:16px}
.document-period-panel{margin-bottom:22px}
.document-period-list{padding:0 24px}
.document-period-row{display:grid;grid-template-columns:minmax(160px,1.4fr) minmax(180px,1.2fr) auto;gap:16px;padding:20px 0;border-top:1px solid var(--border,#dce5df);align-items:start}
.document-period-row h3{font-size:17px;margin:0 0 8px;overflow-wrap:anywhere}
.document-period-row p{margin:7px 0}.document-period-row .actions{justify-content:flex-end;flex-wrap:wrap}
.document-period-status{min-width:0}.document-period-status .pill{white-space:normal;line-height:1.4}
#document-billing-fields{margin-top:16px}#document-billing-fields .invoice-line{margin-top:16px}
.progress-not_due,.progress-not_required{background:#eef1ef;color:#52625b}
@media(max-width:760px){.document-period-filters,.document-form-grid,.document-requirement-editor,.document-period-row{grid-template-columns:minmax(0,1fr)}.document-period-list{padding:0 16px}.document-period-row .actions{justify-content:flex-start}.document-group-card,.document-extra-contact,.document-requirement-editor{padding:14px}.document-template-picker{align-items:stretch}.document-template-picker>.field{width:100%}.document-period-panel>.panel-head{align-items:flex-start;flex-direction:column;gap:12px}}
