/* Self-contained design system; no external font or analytics requests. */
.zfsa-app,.zfsa-dialog,.zfsa-toast{--ink:#20342e;--muted:#758079;--green:#173f38;--green-hover:#24554b;--paper:#f5f5f0;--line:#e5e8e1;--gold:#b9a16e;--white:#fff;--radius:14px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:14px;line-height:1.55;font-weight:400;box-sizing:border-box}
.zfsa-app *,.zfsa-dialog *{box-sizing:border-box}.zfsa-standalone{margin:0;background:#f5f5f0}.zfsa-app h1,.zfsa-app h2,.zfsa-app h3,.zfsa-dialog h2,.zfsa-dialog h3{color:var(--ink);margin:0;font-weight:400}.zfsa-app h1,.zfsa-app h2,.zfsa-dialog h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em}.zfsa-app h1{font-size:clamp(30px,3.2vw,45px);line-height:1.15}.zfsa-app h2,.zfsa-dialog h2{font-size:28px;line-height:1.25}.zfsa-app h3,.zfsa-dialog h3{font-size:16px;font-weight:600;line-height:1.4}.zfsa-app p,.zfsa-dialog p{margin:12px 0 18px}.zfsa-app a,.zfsa-dialog a{color:inherit;text-decoration:none}.zfsa-app button,.zfsa-dialog button,.zfsa-app input,.zfsa-dialog input,.zfsa-app select,.zfsa-dialog select,.zfsa-app textarea,.zfsa-dialog textarea{font:inherit}.zfsa-app button,.zfsa-dialog button{cursor:pointer}.zfsa-app button:disabled,.zfsa-dialog button:disabled{opacity:.45;cursor:not-allowed}.zfsa-app a:focus-visible,.zfsa-app button:focus-visible,.zfsa-dialog button:focus-visible,.zfsa-dialog a:focus-visible{outline:3px solid #b9a16e;outline-offset:4px}.icon{width:20px;height:20px;flex:none;vertical-align:middle}.eyebrow{display:block;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:10px;font-weight:600;letter-spacing:.18em;line-height:1.5;margin-bottom:14px;color:#798575}.muted{color:var(--muted)}.small,small{font-size:12px}.wordmark{font-size:39px;font-weight:500;letter-spacing:.12em;line-height:1.1;display:block}.wordmark span{display:block;font-size:8px;letter-spacing:.16em;margin-top:10px;font-weight:500;white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:8px;min-height:44px;padding:11px 18px;font-weight:500;font-size:13px;line-height:1.4;transition:background .15s,transform .15s;white-space:nowrap;text-decoration:none}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn.primary{background:var(--green);color:white;border-color:var(--green)}.btn.primary:hover:not(:disabled){background:var(--green-hover)}.btn.secondary{background:white;border-color:#dfe5dc;color:var(--ink)}.btn.secondary:hover:not(:disabled){background:#f3f5ef}.btn.light{background:#f6f6ee;color:#163e35}.icon-btn{border:0;background:transparent;border-radius:7px;display:inline-flex;padding:9px;align-items:center;justify-content:center;color:inherit;min-width:38px;min-height:38px}.icon-btn:hover{background:#8c9a8014}.text-btn,.text-link{border:0;padding:0;background:transparent;font-size:12px;color:var(--green);font-weight:600;cursor:pointer}.text-btn:hover,.text-link:hover{text-decoration:underline}.quiet{color:var(--muted);font-weight:400}.text-link{display:inline-flex;align-items:center;gap:9px}.skip-link{position:fixed;top:-100px;left:16px;background:white;color:#173f38;padding:15px;z-index:10000}.skip-link:focus{top:12px}
/* Authentication */
.auth-layout{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;background:#fbfbf8}.auth-story{background:#163d34;color:#f1f2e9;padding:50px 58px 28px;position:relative;overflow:hidden;display:flex;flex-direction:column;min-height:100vh}.auth-story .wordmark{position:relative;z-index:2}.story-copy{margin:auto 0;max-width:490px;padding:100px 0 190px;position:relative;z-index:2}.story-copy .eyebrow{color:#bec8b6;font-size:9px;letter-spacing:.2em}.story-copy h1{color:#f6f4e9;font-size:clamp(45px,4.7vw,73px);font-weight:400;line-height:1.12}.story-copy p{color:#c0cbbf;font-size:15px;line-height:1.9;margin-top:25px}.story-rule{width:46px;height:1px;background:#bba66f;margin:29px 0 20px}.story-caption{font-size:8px;letter-spacing:.22em;color:#d0d7c5}.auth-story footer{display:flex;justify-content:space-between;gap:18px;font-size:9px;letter-spacing:.02em;color:#adbdac;position:relative;z-index:2}.auth-story footer span{font-size:8px}.arch-art{position:absolute;width:570px;height:600px;right:-150px;bottom:-135px;transform:rotate(-17deg);opacity:.42;pointer-events:none;border:1px solid #b9bb8d33;border-radius:300px 300px 0 0;background:linear-gradient(125deg,#c6c59a13,transparent 60%)}.arch-art i{position:absolute;border:1px solid #b9bb8d44;inset:25px;border-radius:300px 300px 0 0}.arch-art i:nth-child(2){inset:60px}.arch-art i:nth-child(3){inset:95px}.arch-art i:nth-child(4){inset:130px}.arch-art i:nth-child(5){inset:165px}.auth-main{padding:50px 60px 28px;display:flex;flex-direction:column;justify-content:center;min-width:0}.auth-form-wrap{max-width:370px;width:100%;margin:auto}.auth-form-wrap h2{font-size:38px}.auth-form-wrap>.muted{font-size:13px;line-height:1.8;margin:18px 0 30px;max-width:330px}.auth-form-wrap .field{margin-bottom:18px}.auth-submit{width:100%;justify-content:space-between;margin-top:12px;min-height:49px;padding-left:20px;padding-right:20px}.auth-extras{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:3px 0 17px}.auth-extras .checkline{font-size:11px}.auth-extras .text-btn{font-size:11px}.auth-switch{text-align:center;margin:26px 0 17px;font-size:12px;color:var(--muted)}.auth-form-wrap>.quiet{display:block;margin:0 auto;font-size:11px}.auth-footer{display:flex;justify-content:space-between;font-size:10px;color:#829082;width:100%;max-width:370px;margin:50px auto 0}.auth-footer a:hover{color:var(--green)}.auth-mobile-brand{display:none}
/* App layout */
.portal-shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh;background:var(--paper)}.sidebar{background:#173d34;color:#cbd5c8;display:flex;flex-direction:column;padding:35px 20px 20px;position:sticky;top:0;height:100vh;overflow:auto;z-index:20}.sidebar .wordmark{color:#f6f5ed;padding:0 14px;font-size:34px;margin-bottom:40px}.sidebar .wordmark span{font-size:7px;color:#b7c6b3}.nav-group{margin-bottom:25px}.nav-label{display:block;font-size:8px;letter-spacing:.16em;color:#8fa48e;padding:0 14px;margin-bottom:11px}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 13px;margin-bottom:3px;font-size:12px;border-radius:7px;transition:.15s;color:#c9d5c5}.nav-link .icon{width:18px;height:18px;color:#acbea6}.nav-link small{margin-left:auto;font-size:10px;opacity:.75}.nav-link.active,.nav-link:hover{background:#ffffff12;color:white}.nav-link.active{box-shadow:inset 2px 0 #c2ad77}.nav-link.active .icon{color:#d8d7af}.sidebar-bottom{margin-top:auto;padding-top:16px}.sidebar-bottom .nav-link{font-size:11px}.support-link{display:flex;justify-content:space-between;align-items:center;font-size:10px;border-top:1px solid #ffffff16;padding:20px 12px;margin-top:16px}.support-link .icon{width:15px;height:15px}.account{display:flex;align-items:center;gap:9px;border-top:1px solid #ffffff16;padding:18px 3px 0}.avatar{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#edf0e6;color:#21483b;font-family:Georgia,serif;font-size:17px;flex:none}.account .avatar{background:#ffffff14;color:#e6e8d6}.account>div{min-width:0;flex:1}.account strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10px;font-weight:500;color:#edf0e4}.account small{font-size:9px;color:#91a58f}.account .icon-btn{min-width:30px;padding:5px}.account .icon{width:17px}.workspace{min-width:0;display:flex;flex-direction:column}.topbar{height:73px;display:flex;align-items:center;gap:24px;padding:0 43px;background:#fbfcf8;border-bottom:1px solid var(--line)}.topbar-brand{font-size:8px;letter-spacing:.2em;color:#8a9488}.today{margin-left:auto;color:#7b877b;font-size:11px}.brand-link{font-size:11px;font-weight:600;color:var(--green)}.mobile-toggle{display:none}.workspace main{padding:42px 43px 60px;flex:1;outline:none;min-width:0;max-width:1600px;width:100%;margin:0 auto}.workspace-footer{display:flex;justify-content:space-between;gap:16px;margin:0 43px;padding:20px 0;border-top:1px solid var(--line);font-size:9px;color:#889384}.workspace-footer span{font-size:8px;letter-spacing:.04em}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:33px}.page-heading .eyebrow{font-size:9px;margin-bottom:10px}.page-heading h1{font-size:37px}.page-heading p{font-size:12px;margin:13px 0 0}.heading-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end;max-width:50%}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:25px 26px}.panel-heading h2{font-size:23px}.panel-heading .eyebrow{margin-bottom:7px;font-size:8px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:27px}.stat-card{background:#fff;border:1px solid var(--line);padding:22px 23px 18px;border-radius:12px;transition:.15s}.stat-card:hover{border-color:#a6b5a0;transform:translateY(-2px)}.stat-card>span{display:block;color:#728071;font-size:11px}.stat-card>strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:38px;line-height:1.2;margin:13px 0 17px}.stat-card>small{display:flex;align-items:center;gap:7px;font-size:9px;color:#8c9687}.stat-card>small .icon{width:13px;height:13px}.stat-card>small .icon:last-child{margin-left:auto}.dashboard-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);gap:24px}.care-card{background:#e8ecdf;border:1px solid #dce3d3;border-radius:14px;padding:30px 28px;position:relative;overflow:hidden;min-height:330px}.care-card .eyebrow{font-size:8px;color:#78866d}.care-card h2{font-size:30px;line-height:1.22;position:relative;z-index:1}.care-card p{font-size:12px;color:#768170;max-width:260px;line-height:1.85;position:relative;z-index:1}.care-card .btn{font-size:11px;position:relative;z-index:1;margin-top:12px}.care-monogram{position:absolute;font-family:Georgia,serif;font-size:270px;line-height:1;color:#d8dfcc;right:-25px;bottom:-60px}.services-section{margin-top:35px}.services-section>.panel-heading{padding:0 0 20px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.service-card{border:1px solid var(--line);background:#fafbf7;padding:20px 18px;text-align:left;border-radius:10px;display:flex;flex-direction:column;align-items:flex-start;min-height:157px;transition:.15s;color:var(--ink)}.service-card:hover{background:white;border-color:#a5b19c;transform:translateY(-2px)}.service-card>.icon:first-child{color:#81916e;margin-bottom:16px;width:22px;height:22px}.service-card strong{font-size:12px;font-weight:600}.service-card span{font-size:10px;color:#8a9584;margin:6px 0 13px;line-height:1.6}.service-card>.icon:last-child{width:15px;height:15px;margin-left:auto;margin-top:auto;color:#849679}
/* Lists and details */
.record-row{display:flex;align-items:center;gap:15px;padding:19px 25px;border-top:1px solid #edf0e8;transition:background .15s;min-width:0}.record-row:first-child{border-top:0}.record-row:hover{background:#f8faf5}.record-icon{width:35px;height:39px;border-radius:8px;background:#f1f4eb;color:#718469;display:flex;align-items:center;justify-content:center;flex:none}.record-title{flex:1;min-width:100px}.record-title strong{display:block;font-size:12px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.record-title small{display:block;font-size:10px;color:#8a9585;margin-top:3px}.record-extra{font-size:11px;color:#778472;min-width:95px;text-align:right}.row-arrow{width:15px;height:15px;color:#92a18a}.badge{display:inline-block;background:#f1f2ed;border:1px solid #e5e8df;color:#7b8773;font-size:9px;padding:4px 8px;border-radius:5px;white-space:nowrap;font-weight:500;line-height:1.4}.status-active,.status-approved,.status-accepted{background:#eaf2e7;color:#477043;border-color:#dce8d5}.status-submitted,.status-sent,.status-review{background:#f7f1df;color:#917230;border-color:#eee4c6}.status-scheduled,.status-in_progress{background:#e9eeec;color:#3e6b5c;border-color:#dbe5df}.status-declined,.status-cancelled{background:#faede8;color:#995f4c;border-color:#f0ddd4}.status-archived,.status-superseded{opacity:.65}.empty-state{text-align:center;padding:45px 25px;max-width:480px;margin:0 auto}.empty-icon{width:47px;height:47px;border-radius:50%;background:#f0f3e9;display:inline-flex;align-items:center;justify-content:center;color:#8b9b7c;margin-bottom:20px}.empty-state h3{font-family:Georgia,serif;font-size:21px;font-weight:400}.empty-state p{font-size:12px;color:#8b9585;max-width:310px;margin:12px auto 20px;line-height:1.8}.list-toolbar{display:flex;align-items:center;gap:14px;margin-bottom:18px}.search-form{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:white;border-radius:8px;padding:0 13px;max-width:430px;flex:1;min-width:0}.search-form .icon{width:16px;height:16px;color:#97a08e}.search-form input{border:0!important;background:transparent!important;min-height:43px;outline:none;width:100%;min-width:0;box-shadow:none!important;padding:0!important;font-size:12px!important}.search-form button{font-size:10px}.list-toolbar>select{max-width:180px}.result-count{margin-left:auto;font-size:10px;color:#8e9789}.list-panel{min-height:100px}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:25px}.pagination>span{font-size:11px;color:#8b9584}.pagination .btn{font-size:11px;min-height:36px;padding:8px 13px}.back-link{display:inline-block;margin-bottom:20px;font-size:11px;color:#74846c!important}.detail-meta{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:-12px;margin-bottom:27px;font-size:11px;color:#819075}.detail-meta>a,.detail-meta>span{display:inline-flex;align-items:center;gap:6px}.detail-meta .icon{width:15px;height:15px}.detail-columns{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:22px}.detail-content{padding:28px;min-width:0}.detail-pairs{margin:0}.detail-pairs>div{padding:13px 0;border-bottom:1px solid #edf0e8;display:grid;grid-template-columns:155px minmax(0,1fr);gap:20px}.detail-pairs>div:last-child{border-bottom:0}.detail-pairs dt{font-size:11px;color:#849078}.detail-pairs dd{margin:0;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8}.attachment-panel{padding:23px}.attachment-panel h3{font-family:Georgia,serif;font-size:20px;font-weight:400}.file-list>a{display:flex;align-items:center;gap:9px;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px}.file-list>a>span{min-width:0;overflow-wrap:anywhere;flex:1}.file-list small{display:block;font-size:9px;color:#88977a}.file-list .icon{width:16px;height:16px;color:#8a9b7c}.upload-label{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--green);position:relative;padding:13px 0;cursor:pointer}.upload-label input{display:block;font-size:10px;width:100%;position:absolute;inset:0;opacity:0;cursor:pointer}.attachment-panel form{margin-top:12px}.attachment-panel form>small{font-size:9px;color:#8c977f;display:block;margin-bottom:13px}.attachment-panel form .btn{width:100%;font-size:11px;min-height:38px}.related-parent{padding:22px;margin-top:18px;font-size:11px}.related-parent a{display:flex;justify-content:space-between;align-items:center}.related-panel{margin-top:25px}.audit{margin-top:25px;font-size:11px;color:#86917c}.audit summary{cursor:pointer}.audit>div{padding:8px 0;border-bottom:1px solid var(--line);display:flex;gap:25px}.answer-section{margin-top:27px}.answer-section h3{display:flex;align-items:center;gap:10px;margin-bottom:10px}.answer-section h3 .icon{color:#8f9e7e}.checklist{margin-top:16px}.check-item{display:flex;align-items:center;gap:11px;border-bottom:1px solid var(--line);padding:13px 0;font-size:12px}.check-item .icon{width:16px;height:16px;color:#a0aa96}.check-item.done .icon{color:#548044}.check-item small{margin-left:auto;font-size:10px;color:#86987b}.detail-content>h3{margin-top:25px}.table-scroll{overflow-x:auto}.quote-table{border-collapse:collapse;width:100%;font-size:11px}.quote-table th{text-align:left;font-size:9px;font-weight:500;color:#87947b;border-bottom:1px solid var(--line);padding:12px 8px}.quote-table td{padding:17px 8px;border-bottom:1px solid var(--line);vertical-align:top}.quote-table td:first-child{width:55%}.quote-table td:last-child,.quote-table th:last-child{text-align:right;white-space:nowrap}.quote-table td p{font-size:10px;color:#829076;margin:6px 0 0;white-space:pre-wrap}.quote-table td strong{font-size:12px;font-weight:600}.quote-table .badge{margin:5px}.quote-totals{margin:25px 0 30px auto;max-width:330px;font-size:12px}.quote-totals>div{display:flex;justify-content:space-between;gap:18px;padding:9px 0}.quote-totals>div>span{color:#849077}.quote-totals strong{font-weight:500;white-space:nowrap}.quote-totals .grand-total{border-top:1px solid var(--line);margin-top:9px;padding-top:16px;font-size:17px}.quote-totals .grand-total span{color:var(--ink)}.quote-totals small{display:block;font-size:9px;color:#899680;margin-top:14px}
/* Forms and dialogs */
.field{margin-bottom:17px;min-width:0}.field>label,.field-label{display:block;font-size:11px;font-weight:500;margin-bottom:7px;color:#52634b}.field>label>span{color:#a59362}.zfsa-app input:not([type=checkbox]):not([type=file]),.zfsa-dialog input:not([type=checkbox]):not([type=file]),.zfsa-app select,.zfsa-dialog select,.zfsa-app textarea,.zfsa-dialog textarea{border:1px solid #dce2d6;border-radius:7px;background:#fff;color:#263a2b;width:100%;padding:11px 12px;min-height:44px;font-size:12px;line-height:1.5;box-shadow:none;transition:border-color .15s;max-width:none}.zfsa-app input:focus,.zfsa-dialog input:focus,.zfsa-app select:focus,.zfsa-dialog select:focus,.zfsa-app textarea:focus,.zfsa-dialog textarea:focus{outline:0;border-color:#8da07c;box-shadow:0 0 0 3px #82966c17}.field small{display:block;font-size:10px;color:#89957b;margin-top:6px}.zfsa-app input[type=checkbox],.zfsa-dialog input[type=checkbox]{width:16px;height:16px;accent-color:#214b3b;flex:none;margin:0;cursor:pointer;box-shadow:none}.checkline{display:flex;align-items:flex-start;gap:9px;font-size:12px;color:#6f7e65;line-height:1.6;cursor:pointer}.checkline input{margin-top:2px!important}.consent{margin:20px 0}.consent a{text-decoration:underline}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:23px;padding-top:20px;border-top:1px solid var(--line)}.form-actions>small{margin-right:auto;color:#879479;font-size:10px;max-width:290px}.form-error{background:#fff0ea;border:1px solid #edcabb;border-radius:7px;padding:12px 15px;font-size:12px;color:#954c33;margin-bottom:20px}.notice{background:#f2f5ec;border:1px solid #e1e8d6;color:#78856a;border-radius:8px;padding:14px 17px;font-size:12px;line-height:1.75}.notice.success{background:#edf5e9;color:#4a743f}.notice.error{background:#fff0ea;color:#954c33}.zfsa-dialog{background:#fff;border:1px solid #d6dfce;border-radius:16px;padding:0;width:min(520px,calc(100% - 30px));max-height:calc(100dvh - 50px);box-shadow:0 25px 90px #0a211c30;overflow:auto}.zfsa-dialog.dialog-wide{width:min(870px,calc(100% - 30px))}.zfsa-dialog::backdrop{background:#15302880;backdrop-filter:blur(5px)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:27px 30px 22px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:5}.dialog-head .eyebrow{font-size:8px;margin-bottom:7px}.dialog-head h2{font-size:27px}.dialog-content{padding:25px 30px 28px}.zfsa-dialog fieldset{border:1px solid var(--line);border-radius:8px;padding:13px 16px;margin:0 0 17px}.zfsa-dialog legend{font-size:11px;color:#78866e;padding:0 5px}.zfsa-dialog fieldset .checkline{margin:8px 0}.steps{display:flex;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:23px;gap:20px}.steps>span{display:flex;align-items:center;gap:7px;color:#9ea693;font-size:10px}.steps b{display:flex;align-items:center;justify-content:center;background:#f0f2e9;border:1px solid #e4e8da;color:#9ba68e;width:25px;height:25px;border-radius:50%;font-size:10px;font-weight:500}.steps .current{color:#204a38;font-weight:600}.steps .current b{color:#fff;background:#214b39;border-color:#214b39}.steps .done b{background:#e6edda;color:#5b7b44}.service-select-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:13px 0 24px}.service-option{position:relative;display:flex;gap:9px;align-items:center;padding:17px 12px;background:#fafbf7;border:1px solid #e2e7d9;border-radius:9px;cursor:pointer;font-size:11px}.service-option .icon{width:18px;height:18px;color:#879775}.service-option strong{font-size:11px;font-weight:500}.service-option:has(input:checked){background:#eef3e7;border-color:#799768}.service-option input{width:13px!important;height:13px!important}.question-group{border-top:1px solid var(--line);padding-top:23px;margin-top:24px}.question-group h3{display:flex;gap:10px;align-items:center;margin-bottom:20px}.review-summary{background:#f7f9f2;padding:23px;border-radius:10px}.review-summary h3{font-family:Georgia,serif;font-size:24px;font-weight:400}.report-checks{display:grid;gap:13px;margin-bottom:24px}.accept-total{font-family:Georgia,serif;font-size:32px;padding:12px 0}.accept-total small{display:block;font-family:inherit;font-size:14px;color:#829071}.builder-header{display:flex;justify-content:space-between;align-items:center;margin:20px 0 15px}.builder-header .btn{font-size:11px}.catalog-add{display:flex;gap:10px;margin-bottom:20px}.catalog-add select{flex:1;min-width:0}.quote-line{border:1px solid #dfe6d7;border-radius:9px;padding:16px;background:#fafbf7;margin-bottom:12px}.line-top{display:flex;align-items:center;gap:10px;margin-bottom:8px}.line-top input{font-weight:600!important}.line-values{display:grid;grid-template-columns:.7fr 1fr 1fr 1fr .8fr;gap:9px;margin-top:12px;align-items:end}.line-values>label{font-size:9px;color:#829273}.line-values input{font-size:11px!important;padding:9px!important;min-height:38px!important}.line-values>label.checkline{font-size:10px;align-self:center;margin-top:15px}.calculation-summary{display:grid;grid-template-columns:repeat(4,1fr);padding:20px 0;gap:12px;margin:10px 0 17px;border-bottom:1px solid var(--line)}.calculation-summary span{display:block;color:#859476;font-size:9px;margin-bottom:6px}.calculation-summary strong{display:block;font-size:13px;font-weight:600}.settings-panel{padding:30px;max-width:850px}.settings-panel h3{margin:12px 0 22px;padding-bottom:12px;border-bottom:1px solid var(--line)}.settings-panel h3:not(:first-of-type){margin-top:32px}.zfsa-toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:14px 22px;border-radius:9px;box-shadow:0 8px 35px #102d2630;background:#173f38;color:white;z-index:10000;max-width:calc(100vw - 30px);font-size:12px}.zfsa-toast.error{background:#914f3c}.loading{min-height:250px;display:flex;align-items:center;justify-content:center;gap:15px;color:#89967d;font-size:12px}.loading>span{width:18px;height:18px;border:2px solid #d6dfcb;border-top-color:#53704d;border-radius:50%;animation:zfsa-spin .8s linear infinite}@keyframes zfsa-spin{to{transform:rotate(360deg)}}.privacy-page{padding:70px 30px;max-width:770px;margin:0 auto}.privacy-page .wordmark{margin-bottom:60px}.privacy-page>p{font-size:15px;line-height:1.9;color:#76836c}.privacy-page>h1{margin-bottom:30px}.privacy-page>p a{text-decoration:underline}.privacy-page>.btn{margin-top:25px}
/* WordPress admin embedding */
body.toplevel_page_zfsa-portal #wpcontent{padding-left:0}body.toplevel_page_zfsa-portal #wpbody-content{padding-bottom:0}body.toplevel_page_zfsa-portal #wpfooter{display:none}body.toplevel_page_zfsa-portal .portal-shell{min-height:calc(100vh - 32px)}body.toplevel_page_zfsa-portal .sidebar{top:32px;height:calc(100vh - 32px)}
@media(min-width:1500px){.auth-main{padding-left:90px;padding-right:90px}.auth-story{padding-left:75px}.story-copy{max-width:590px}}
@media(max-width:1200px){.portal-shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding-left:13px;padding-right:13px}.workspace main{padding:32px 27px 45px}.topbar{padding:0 27px}.workspace-footer{margin:0 27px}.page-heading h1{font-size:33px}.page-heading{align-items:flex-start}.stat-card{padding:20px 16px 16px}.dashboard-columns{grid-template-columns:minmax(0,1.4fr) minmax(210px,1fr);gap:18px}.record-row{gap:10px;padding:17px 18px}.dashboard-columns .record-extra{display:none}.detail-columns{grid-template-columns:minmax(0,1fr) 235px}.detail-content{padding:23px}.detail-pairs>div{grid-template-columns:120px minmax(0,1fr)}.heading-actions{max-width:47%}.heading-actions .btn{font-size:11px;padding:10px 12px}.auth-story{padding:40px 38px 25px}.auth-main{padding:40px 38px 25px}.service-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:950px){.portal-shell{grid-template-columns:180px minmax(0,1fr)}.sidebar .wordmark{font-size:30px;padding:0 10px}.sidebar .wordmark span{font-size:6px}.nav-link{padding:10px;font-size:11px;gap:9px}.nav-label{padding:0 10px;font-size:7px}.workspace main{padding:29px 22px 40px}.topbar{padding:0 22px;gap:16px}.stat-grid{grid-template-columns:repeat(2,1fr)}.stat-card>strong{font-size:33px;margin:9px 0 13px}.dashboard-columns{grid-template-columns:1fr}.care-card{min-height:240px}.care-card p{max-width:370px}.care-card h2 br{display:none}.detail-columns{grid-template-columns:1fr}.detail-columns>aside{display:grid;grid-template-columns:1fr 1fr;gap:15px}.related-parent{margin:0}.page-heading{flex-direction:column;gap:19px}.heading-actions{max-width:none;justify-content:flex-start}.topbar-brand{font-size:7px}.auth-layout{grid-template-columns:.9fr 1fr}.auth-story{padding:35px 30px 25px}.auth-story footer span{display:none}.story-copy{padding-bottom:150px}.story-copy h1{font-size:49px}.story-copy p{font-size:13px}.auth-main{padding:35px 30px 25px}.auth-form-wrap h2{font-size:32px}.auth-extras{align-items:flex-start;gap:7px}}
@media(max-width:700px){.auth-layout{display:block}.auth-story{display:none}.auth-main{min-height:100dvh;padding:29px 25px}.auth-mobile-brand{display:block;font-size:27px;letter-spacing:.13em;color:#254b3b;margin-bottom:55px}.auth-mobile-brand>span{font-size:8px;letter-spacing:.17em;margin-left:12px}.auth-form-wrap{margin:auto}.auth-form-wrap h2{font-size:35px}.auth-footer{margin-top:50px}.portal-shell{display:block}.sidebar{position:fixed;top:0!important;left:0;bottom:0;width:245px;height:100dvh!important;transform:translateX(-100%);transition:transform .2s;box-shadow:8px 0 40px #142b2420}.sidebar.open{transform:translateX(0)}.mobile-toggle{display:inline-flex}.topbar{height:62px;gap:12px;padding:0 17px;position:sticky;top:0;z-index:10}.topbar-brand{font-size:7px;letter-spacing:.1em}.today{font-size:9px}.brand-link{display:none}.workspace main{padding:27px 19px 40px}.page-heading h1{font-size:32px}.page-heading p{font-size:12px;max-width:320px}.page-heading{margin-bottom:24px}.stat-grid{gap:10px;margin-bottom:20px}.stat-card{padding:18px 16px 15px}.stat-card>span{font-size:10px}.stat-card>strong{font-size:33px}.stat-card>small{font-size:8px}.panel-heading{padding:20px}.panel-heading h2{font-size:21px}.panel-heading .text-link{font-size:10px}.service-grid{grid-template-columns:repeat(2,1fr);gap:10px}.service-card{padding:18px 15px;min-height:150px}.care-card{padding:25px}.care-card h2{font-size:29px}.care-card p{font-size:12px;max-width:285px}.record-row{padding:16px 15px;gap:10px;flex-wrap:wrap}.record-title{min-width:130px}.record-title strong{font-size:11px}.record-title small{font-size:9px}.record-extra{min-width:auto;font-size:10px}.row-arrow{display:none}.record-icon{width:29px;height:32px}.record-icon .icon{width:17px;height:17px}.badge{font-size:8px}.list-toolbar{flex-wrap:wrap;gap:10px}.search-form{flex-basis:100%;max-width:none}.list-toolbar>select{max-width:160px;min-height:38px;font-size:11px}.result-count{font-size:9px}.detail-columns>aside{display:block}.related-parent{margin-top:15px}.detail-content{padding:19px}.detail-pairs>div{grid-template-columns:1fr;gap:4px;padding:12px 0}.detail-meta{gap:10px;font-size:10px}.detail-pairs dd{font-size:12px}.detail-pairs dt{font-size:10px}.heading-actions .btn{font-size:11px;min-height:40px}.quote-table{font-size:10px;min-width:410px}.quote-totals{max-width:none}.workspace-footer{margin:0 20px;font-size:8px}.workspace-footer>span{display:none}.zfsa-dialog{max-height:calc(100dvh - 20px);width:calc(100% - 20px)!important;border-radius:12px}.dialog-head{padding:21px 20px 17px}.dialog-head h2{font-size:25px}.dialog-content{padding:21px 20px}.form-grid{grid-template-columns:1fr;gap:0}.steps{gap:10px}.steps>span{font-size:8px;gap:5px}.steps b{width:22px;height:22px;flex:none}.service-select-grid{grid-template-columns:1fr 1fr;gap:8px}.service-option{padding:13px 10px;gap:6px}.service-option strong{font-size:10px}.service-option .icon{display:none}.form-actions{flex-wrap:wrap}.form-actions>small{max-width:none;width:100%;margin-bottom:7px}.line-values{grid-template-columns:1fr 1fr}.line-values label:last-child{grid-column:1/-1;margin:0}.catalog-add{flex-direction:column}.builder-header h3{font-size:14px}.builder-header .btn{font-size:10px;padding:8px}.calculation-summary{grid-template-columns:1fr 1fr}.settings-panel{padding:22px}.privacy-page{padding:40px 25px}.privacy-page>h1{font-size:37px}body.toplevel_page_zfsa-portal .portal-shell{min-height:100vh}.empty-state{padding:34px 20px}}
@media(prefers-reduced-motion:reduce){.zfsa-app *,.zfsa-dialog *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.record-title .record-compact{display:none}@media(max-width:1100px){.record-title .record-compact{display:block;color:#52694f;margin-top:5px}}

/* Original ZFSA website logo; preserve its proportions on every surface. */
.brand-logo{display:block;width:100%;height:auto;object-fit:contain;max-width:100%}
.auth-story .wordmark{width:300px;max-width:100%}
.auth-story .brand-logo,.sidebar .brand-logo{filter:brightness(0) invert(1)}
.sidebar .wordmark{width:100%;max-width:220px;box-sizing:border-box}
.sidebar .wordmark span{margin-top:16px;white-space:normal;line-height:1.5}
.auth-mobile-brand{width:240px;max-width:100%}
.privacy-page .wordmark{width:280px;max-width:100%}
.topbar-brand{display:block;width:150px;flex:none}
@media(max-width:700px){.topbar-brand{width:135px}.auth-mobile-brand{margin-bottom:48px}.sidebar .wordmark{max-width:220px}}

/* Shared language selector, usable with keyboard and touch. */
.language-switch{display:inline-flex;align-items:center;gap:2px;flex:none;font-size:11px;line-height:1;color:#657366;letter-spacing:.06em}
.language-switch button{font:inherit;letter-spacing:inherit;min-width:34px;min-height:40px;padding:8px 5px;background:transparent;border:0;border-radius:5px;color:inherit;cursor:pointer}
.language-switch button[aria-pressed="true"]{color:#173f38;font-weight:700;text-decoration:underline;text-underline-offset:5px}
.language-switch button:hover{background:#e9eee4}.language-switch button:focus-visible{outline:2px solid #b9a16e;outline-offset:2px}
.auth-main{position:relative;padding-top:90px}.auth-language{position:absolute;right:32px;top:22px}.privacy-language{display:flex;justify-content:flex-end;margin-bottom:20px}
.topbar .language-switch{margin-left:0}.topbar .today{margin-left:auto}
@media(max-width:700px){.auth-main{padding-top:80px}.auth-language{right:20px;top:15px}.topbar .today{display:none}.topbar .language-switch{margin-left:auto}.topbar{gap:10px}.topbar-brand{width:125px}.language-switch button{min-height:44px}}
