:root{--paper: #f5f6f2;--surface: #ffffff;--surface-2: #edf4ef;--ink: #1f2824;--muted: #65706b;--line: #dce3dd;--teal: #16776f;--teal-dark: #0d514c;--amber: #c47b25;--rose: #a94757;--violet: #6751a3;--green: #2d7b4e;--shadow: 0 18px 48px rgba(26, 38, 34, .1);--radius: 8px;color-scheme:light}*{box-sizing:border-box}body{min-width:320px;margin:0;background:linear-gradient(180deg,#edf4efe6,#f5f6f2b3 32%),var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.auth-gate{align-items:center;background:var(--paper);display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;position:fixed;z-index:9999}.auth-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);max-width:360px;padding:36px;text-align:center}.auth-card .brand-mark{margin:0 auto 18px}.auth-card h1{font-size:25px;margin:8px 0 12px}.auth-card p:not(.eyebrow){color:var(--muted);line-height:1.5;margin:0 0 24px}.signed-in-user{color:var(--muted);font-size:13px;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button,input,select{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:276px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:24px;height:100vh;padding:24px 18px;border-right:1px solid var(--line);background:#ffffffc7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;padding:4px 6px 8px}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;background:var(--ink);color:#fff;font-size:13px;font-weight:800;letter-spacing:0}.brand h1,.topbar h2,.panel h3{margin:0;letter-spacing:0}.brand h1{font-size:24px;line-height:1.05}.eyebrow,.section-label{margin:0 0 4px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.side-nav{display:grid;gap:6px}.nav-item,.client-list button,.step-tab,.icon-button,.primary-button,.ghost-button{border:1px solid transparent;border-radius:var(--radius)}.utility-button{min-width:62px;padding:0 12px}.nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;background:transparent;color:var(--muted);text-align:left;font-weight:750}.nav-item:hover,.nav-item.is-active{background:var(--surface-2);color:var(--ink)}.nav-item.is-active{border-color:#16776f38}.nav-icon{display:grid;width:22px;height:22px;place-items:center;border-radius:6px;background:#1f282414;color:var(--teal-dark);font-size:12px;font-weight:900}.sidebar-section{display:grid;gap:10px}.client-list{display:grid;gap:7px}.client-list button{display:grid;gap:2px;width:100%;padding:10px;background:transparent;text-align:left}.client-list button:hover,.client-list button.is-active{background:#f2f5f1}.client-list strong{overflow:hidden;color:var(--ink);font-size:13px;text-overflow:ellipsis;white-space:nowrap}.client-list span,.firm-panel p{color:var(--muted);font-size:12px}.firm-panel{margin-top:auto;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfcfa}.firm-panel strong{font-size:14px}.firm-panel p{margin:4px 0 0}.main{min-width:0;padding:24px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.topbar h2{font-size:28px}.topbar-actions{display:flex;align-items:center;gap:10px}.search-box{display:flex;align-items:center;gap:8px;min-width:240px;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--muted)}.search-box input{width:100%;border:0;outline:0;background:transparent}select,input[type=text],input[type=search],input[type=number]{color:var(--ink)}.topbar select,.panel select,.add-field-form select,.form-grid input,.form-grid select,.add-field-form input{min-height:42px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.topbar select{padding:0 34px 0 12px}.icon-button{display:grid;width:42px;height:42px;place-items:center;border-color:var(--line);background:var(--surface);color:var(--ink);font-weight:900}.icon-button:hover,.ghost-button:hover{border-color:#16776f61;color:var(--teal-dark)}.view{display:none}.view.is-active{display:block}.workspace-grid,.client-intake-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:18px;align-items:start}.content-column,.right-rail,.builder-grid,.exports-layout{display:grid;gap:18px;min-width:0}.builder-grid{grid-template-columns:310px 340px minmax(0,1fr);align-items:start}.exports-layout{grid-template-columns:420px minmax(0,1fr);align-items:start}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric-card,.panel,.template-card,.field-card,.status-card{border:1px solid var(--line);border-radius:var(--radius);background:#ffffffeb;box-shadow:0 1px #ffffffbf inset}.metric-card{min-height:118px;padding:16px}.metric-card strong{display:block;margin:10px 0 2px;font-size:30px;line-height:1}.metric-card span,.metric-card p{color:var(--muted);font-size:13px}.metric-card p{margin:10px 0 0}.metric-spark{display:flex;align-items:end;gap:3px;height:24px}.metric-spark i{display:block;width:14px;border-radius:4px 4px 1px 1px;background:var(--teal)}.metric-card:nth-child(2) .metric-spark i{background:var(--amber)}.metric-card:nth-child(3) .metric-spark i{background:var(--violet)}.metric-card:nth-child(4) .metric-spark i{background:var(--rose)}.panel{min-width:0;padding:16px;box-shadow:var(--shadow)}.panel-header,.intake-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.panel-header.compact{margin-bottom:12px}.panel h3{font-size:18px}.primary-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 14px;font-weight:800}.primary-button{border-color:var(--teal);background:var(--teal);color:#fff}.primary-button:hover{background:var(--teal-dark)}.ghost-button{border-color:var(--line);background:var(--surface);color:var(--ink)}.primary-button span,.ghost-button span{font-weight:900}.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:#f6f7f5;color:var(--muted);font-size:12px;font-weight:800;white-space:nowrap}.status-pill.good{border-color:#2d7b4e42;background:#2d7b4e1a;color:var(--green)}.status-pill.warn{border-color:#c47b2547;background:#c47b251f;color:#845019}.status-pill.risk{border-color:#a947573d;background:#a947571a;color:var(--rose)}.persistence-pill{min-height:42px;border-radius:var(--radius)}.client-table{display:grid;gap:8px}.table-row{display:grid;grid-template-columns:minmax(140px,1fr) 122px minmax(80px,110px) 64px 70px;gap:8px;align-items:center;min-height:58px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfcfb}.table-row.header{min-height:34px;border:0;background:transparent;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.table-row:not(.header){cursor:pointer}.table-row:not(.header):hover,.table-row.is-active{border-color:#16776f4d;background:#f3f8f5}.client-name strong,.selected-client-panel strong{display:block}.client-name span,.selected-client-panel span,.detail-list span{color:var(--muted);font-size:12px}.progress-bar{overflow:hidden;height:8px;border-radius:999px;background:#e7ece8}.progress-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--teal),var(--green))}#workflowCanvas{display:block;width:100%;max-width:100%;min-height:210px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfcfb}.detail-list,.packet-checklist,.clarification-list,.export-options,.upload-list,.template-cards,.section-list,.field-list{display:grid;gap:10px}.detail-list{margin-bottom:16px}.detail-item,.check-item,.clarification-item,.option-row,.upload-row,.template-card,.field-card,.section-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfcfb}.check-item,.clarification-item{align-items:flex-start}.check-item:before,.clarification-item:before{content:"";flex:0 0 auto;width:10px;height:10px;margin-top:5px;border-radius:999px;background:var(--green)}.check-item.missing:before,.clarification-item.missing:before{background:var(--rose)}.check-item.pending:before,.clarification-item.pending:before{background:var(--amber)}.check-item div,.clarification-item div{flex:1}.check-item p,.clarification-item p{margin:2px 0 0;color:var(--muted);font-size:12px}.normalized-panel pre{overflow:auto;max-height:500px;margin:0;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#19211d;color:#dfeee5;font-family:SFMono-Regular,Consolas,monospace;font-size:12px;line-height:1.55}.template-card{align-items:flex-start}.template-card button,.section-row button{display:contents;color:inherit}.template-card strong,.section-row strong,.field-card strong,.option-row span{font-size:14px}.template-card p,.section-row span,.field-card span,.option-row strong,.upload-row strong{margin:3px 0 0;color:var(--muted);font-size:12px;font-weight:650}.template-card.is-active,.section-row.is-active{border-color:#16776f57;background:#f2f8f5}.section-row{cursor:pointer}.switch{position:relative;flex:0 0 auto;width:40px;height:24px}.switch input{position:absolute;opacity:0;pointer-events:none}.switch span{display:block;width:100%;height:100%;border-radius:999px;background:#d8ded9}.switch span:after{content:"";position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0000002e;transition:transform .16s ease}.switch input:checked+span{background:var(--teal)}.switch input:checked+span:after{transform:translate(16px)}.field-card{align-items:center}.field-card .field-meta{flex:1;min-width:0}.field-card .field-actions{display:flex;align-items:center;gap:10px}.field-type{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#6751a31a;color:var(--violet);font-size:12px;font-weight:800}.add-field-form{display:grid;grid-template-columns:minmax(0,1fr) 160px auto;gap:10px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.add-field-form label,.form-grid label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.add-field-form input,.add-field-form select,.form-grid input,.form-grid select{width:100%;padding:0 11px}.client-intake-layout{grid-template-columns:minmax(0,1fr) 390px}.intake-panel{min-height:680px}.progress-ring{display:grid;width:72px;height:72px;place-items:center;border:8px solid rgba(22,119,111,.14);border-top-color:var(--teal);border-radius:50%;color:var(--teal-dark);font-weight:900}.step-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:18px}.step-tab{min-height:42px;border-color:var(--line);background:#fbfcfb;color:var(--muted);font-weight:800}.step-tab.is-active{border-color:#16776f57;background:#edf6f1;color:var(--teal-dark)}.step-panel{display:none}.step-panel.is-active{display:block}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.toggle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.toggle-card{display:flex;align-items:center;gap:10px;min-height:76px;padding:12px;border:1px solid var(--line);border-radius:var(--radius);background:#fbfcfb;font-weight:800}.toggle-card input,.upload-row input,.option-row input{width:18px;height:18px;accent-color:var(--teal)}.conditional-block{display:none;margin-top:14px;padding:14px;border:1px solid rgba(196,123,37,.24);border-radius:var(--radius);background:#c47b2514}.conditional-block.is-visible{display:block}.upload-row,.option-row{cursor:pointer}.upload-row span,.option-row span{flex:1}.file-drop{display:grid;place-items:center;min-height:150px;border:1px dashed rgba(22,119,111,.45);border-radius:var(--radius);background:#f1f8f4;color:var(--teal-dark);font-weight:850}.file-drop input{display:none}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.export-table{overflow:auto}.export-row{display:grid;grid-template-columns:180px minmax(180px,1fr) 140px 120px;gap:12px;min-width:660px;padding:12px;border-bottom:1px solid var(--line)}.export-row.header{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.export-row:last-child{border-bottom:0}.toast{position:fixed;right:24px;bottom:24px;z-index:20;transform:translateY(16px);opacity:0;max-width:360px;padding:12px 14px;border:1px solid rgba(22,119,111,.26);border-radius:var(--radius);background:#1f2824;color:#fff;box-shadow:var(--shadow);transition:opacity .18s ease,transform .18s ease;pointer-events:none}.toast.is-visible{transform:translateY(0);opacity:1}.demo-flow{display:grid;grid-template-columns:minmax(150px,.75fr) minmax(500px,2fr) auto;gap:16px;align-items:center;margin-bottom:18px;padding:12px 14px;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:var(--radius);background:var(--surface)}.demo-flow-copy strong{font-size:14px}.demo-steps,.view-switch,.button-row,.panel-actions,.dialog-actions{display:flex;align-items:center;gap:8px}.demo-step,.view-switch button{min-height:36px;border:1px solid var(--line);border-radius:7px;background:#fbfcfb;color:var(--muted);font-size:12px;font-weight:800}.demo-step{display:inline-flex;align-items:center;gap:6px;padding:0 9px}.demo-step span{display:grid;width:20px;height:20px;place-items:center;border-radius:50%;background:#e6ebe7}.demo-step.is-active,.demo-step.is-complete{border-color:#16776f4d;color:var(--teal-dark)}.demo-step.is-active{background:#edf6f1}.demo-step.is-complete span{background:var(--teal);color:#fff}.view-switch{padding:3px;border:1px solid var(--line);border-radius:var(--radius);background:#f1f4f1}.view-switch button{padding:0 10px;border:0;background:transparent}.view-switch button.is-active{background:var(--surface);color:var(--ink);box-shadow:0 1px 3px #1f28241f}.panel-actions{margin-top:16px}.panel-actions button{flex:1}.response-summary{display:grid;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}.response-summary .detail-item{align-items:flex-start}.response-summary .detail-item span{max-width:72%;font-size:13px}.client-config-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:14px 16px;border:1px solid rgba(22,119,111,.28);border-radius:var(--radius);background:#f1f8f4}.client-config-bar h3,.client-config-bar p{margin:0}.client-config-bar h3{font-size:18px}.client-config-bar>div>p:last-child{margin-top:3px;color:var(--muted);font-size:13px}.custom-question-editor{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.client-custom-questions{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.client-custom-questions:empty{display:none}.client-custom-questions h4{margin:0;font-size:15px}.client-custom-questions label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:800}.client-custom-questions input[type=text],.client-custom-questions input[type=number]{min-height:42px;padding:0 11px;border:1px solid var(--line);border-radius:var(--radius)}.is-hidden{display:none!important}.client-dialog{width:min(680px,calc(100vw - 32px));padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 24px 80px #14201b40}.client-dialog::backdrop{background:#14201b7a}.client-dialog h3{margin:0;font-size:22px}.client-dialog input,.client-dialog select{width:100%;min-height:42px;padding:0 11px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.dialog-actions{justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}@media(max-width:1180px){.demo-flow{grid-template-columns:1fr auto}.demo-steps{grid-column:1 / -1;order:3}.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line)}.side-nav{grid-template-columns:repeat(4,minmax(0,1fr))}.firm-panel{display:none}.workspace-grid,.client-intake-layout,.builder-grid,.exports-layout{grid-template-columns:1fr}.right-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1450px)and (min-width:1181px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-grid{grid-template-columns:300px minmax(0,1fr)}.field-editor{grid-column:1 / -1}}@media(max-width:760px){.main,.sidebar{padding:16px}.topbar,.topbar-actions,.panel-header,.intake-header{align-items:stretch;flex-direction:column}.demo-flow,.demo-steps{display:grid;grid-template-columns:1fr 1fr}.demo-flow-copy,.demo-steps{grid-column:1 / -1}.view-switch{justify-self:end}.demo-step{justify-content:flex-start}.search-box,.topbar select,.topbar-actions,.primary-button,.ghost-button{width:100%}.side-nav,.metric-grid,.right-rail,.form-grid,.toggle-grid,.step-tabs,.add-field-form,.table-row{grid-template-columns:1fr}.table-row.header{display:none}.sidebar{gap:16px}.side-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.nav-item{min-height:50px}.client-list{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scroll-snap-type:x mandatory}.client-list button{min-width:180px;scroll-snap-align:start}}
