@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--ink:#18211d;--deep:#1f2a24;--moss:#536353;--sage:#dce3d4;--stone:#f5f0e7;--paper:#fffaf0;--brass:#b48a4a;--clay:#9a664d;--line:#ded4c4;--muted:#6c7469;--shadow:0 24px 70px rgba(24,33,29,.14);--r:24px;--gap:18px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;max-width:100%;overflow-x:hidden;font-family:Inter,system-ui,sans-serif;color:var(--ink);background:linear-gradient(180deg,var(--stone),#ede4d4);line-height:1.5}
.skip{position:absolute;left:-999px}
.skip:focus{left:12px;top:12px;background:var(--ink);color:white;padding:12px;border-radius:12px;z-index:5}
button,input,textarea,select{font:inherit}
button{min-height:44px;border:0;border-radius:999px;padding:12px 18px;font-weight:800;cursor:pointer}
button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(180,138,74,.55);outline-offset:3px}
.topbar{position:sticky;top:0;z-index:4;background:rgba(245,240,231,.88);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px clamp(16px,4vw,44px)}
.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}.timeline-nav-action{display:grid;gap:1px;min-height:48px;padding:8px 17px;border-radius:8px;background:var(--brass);color:var(--ink);text-align:left;box-shadow:0 7px 18px rgba(83,63,32,.18)}.timeline-nav-action[hidden]{display:none}.timeline-nav-action span{font-size:.8rem}.timeline-nav-action small{max-width:180px;overflow:hidden;font-size:.65rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.brand{display:flex;gap:12px;align-items:center}
.brand div{display:grid;gap:2px;line-height:1.1}
.brand strong{font-family:Georgia,"Times New Roman",serif;font-size:1.08rem;font-weight:500;letter-spacing:.01em}
.brand small{display:block}
.brand small,.muted,.note{color:var(--muted)}
.mark{display:grid;place-items:center;width:46px;height:46px;background:var(--deep);color:var(--paper);border-radius:16px;font-weight:900}
.hero-brand{display:block;overflow:hidden;background:#fff}
.hero-brand img{display:block;width:100%;height:100%;object-fit:contain}
nav{display:flex;gap:8px;flex-wrap:wrap}
.tab{background:transparent;color:var(--moss);padding:10px 14px}
.tab.active{background:var(--deep);color:var(--paper)}
main{padding:28px clamp(16px,4vw,44px)}
.hero{display:grid;grid-template-columns:minmax(0,1.35fr) 360px;gap:24px;align-items:stretch;margin-bottom:30px}
.landing-hero[hidden]{display:none}
.hero>div,.phone,.panel{background:rgba(255,250,240,.86);border:1px solid rgba(222,212,196,.95);border-radius:var(--r);box-shadow:var(--shadow)}
.hero>div{padding:clamp(24px,5vw,54px)}
.hero-brand{width:clamp(150px,18vw,210px);height:70px;margin:0 0 24px;border-bottom:1px solid var(--line)}
.hero-brand img{object-position:50% 52%}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;color:var(--clay);font-weight:900;margin:0 0 8px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(2.1rem,5vw,5rem);line-height:.96;letter-spacing:-.06em;max-width:980px}
h2{font-size:clamp(1.45rem,3vw,2.4rem);line-height:1.05;letter-spacing:-.04em}
h3{letter-spacing:-.02em}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.primary{background:var(--deep);color:var(--paper)}
.secondary{background:var(--sage);color:var(--deep);border:1px solid rgba(83,99,83,.22)}
.full{width:100%}
.phone{padding:24px;background:linear-gradient(160deg,#fffaf0,#e4decf);border:8px solid var(--ink);border-radius:34px}
.phone-head{width:88px;height:7px;background:var(--ink);opacity:.3;border-radius:9px;margin:0 auto 22px}
.phone-client-preview{width:100%;aspect-ratio:16/9;display:block;margin:0 0 16px;border-radius:12px;object-fit:cover;box-shadow:0 9px 22px rgba(24,33,29,.15)}
.phone-edition{margin:0 auto 18px;padding:0 0 12px;border-bottom:1px solid rgba(83,99,83,.25);color:var(--moss);font-family:Georgia,"Times New Roman",serif;font-size:.92rem;letter-spacing:.04em;text-align:center}
.secure-kicker{margin-bottom:7px;color:var(--clay);font-size:.66rem;font-weight:800;letter-spacing:.14em;text-align:center;text-transform:uppercase}
.phone ul{padding-left:20px}
.view{display:none}
.view.active{display:block}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin:22px 0}
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap)}
.card{padding:22px;background:var(--paper);border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 30px rgba(24,33,29,.08)}
.card-brand-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.card-edition{padding-left:9px;border-left:2px solid var(--brass);color:var(--moss);font-size:.65rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.card .meta{display:flex;gap:8px;flex-wrap:wrap}
.klein-client-card{overflow:hidden}.client-card-preview{width:calc(100% + 44px);height:150px;display:block;margin:-22px -22px 20px;object-fit:cover;border-bottom:1px solid var(--line)}
.pill{display:inline-flex;align-items:center;min-height:32px;border-radius:999px;padding:6px 10px;background:rgba(180,138,74,.14);color:#704e1f;font-weight:800;font-size:.82rem}
.panel{padding:22px;margin-bottom:18px}
.two,.brief-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}
.check{padding-left:20px}
.layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:var(--gap)}
.rooms{background:var(--deep);color:var(--paper);border-radius:var(--r);padding:20px;align-self:start;position:sticky;top:94px}
.room{width:100%;text-align:left;border-radius:16px;background:rgba(255,255,255,.1);color:var(--paper);margin-bottom:10px}
.room.active{background:var(--brass);color:var(--ink)}
.field{display:grid;gap:8px;margin:14px 0;font-weight:800}
.field input,.field textarea,.field select,.decision-row input{width:100%;max-width:100%;border:1px solid var(--line);border-radius:16px;min-height:48px;padding:12px 14px;background:#fffdf8;color:var(--ink)}
textarea{resize:vertical}
.drop{display:grid;place-items:center;text-align:center;gap:8px;border:2px dashed #c7b99f;background:#fffdf8;border-radius:22px;padding:26px;min-height:150px;cursor:pointer}
.drop input{position:absolute;opacity:0;pointer-events:none}
.file-list,.notes,#decisionList,.intel{display:grid;gap:10px;margin-top:14px}
.file,.note-card,.decision,.intel-card{border:1px solid var(--line);border-radius:16px;padding:12px;background:#fffdf8}
.file b{display:block}
.voicebar,.decision-row{display:flex;gap:12px;align-items:center}
.voice-record{min-width:160px;min-height:44px}
.voice-record[aria-pressed="true"]{background:var(--clay)}
.decision-row input{flex:1}
.decision{display:flex;justify-content:space-between;gap:10px;align-items:center}
.decision.approved{background:#eef4e9}
.decision button{border-radius:14px;padding:8px 12px;min-height:40px}
pre{white-space:pre-wrap;background:var(--deep);color:var(--paper);border-radius:18px;padding:18px;min-height:360px;overflow:auto}
footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--muted);padding:22px clamp(16px,4vw,44px) 40px}
.footer-brand{display:flex;align-items:baseline;gap:10px;color:var(--ink);font-family:Georgia,"Times New Roman",serif}.footer-brand small{color:var(--muted);font-family:Inter,system-ui,sans-serif;font-size:.62rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
@media(max-width:900px){.topbar{align-items:flex-start;flex-direction:column}.topbar-actions{width:100%;align-items:stretch;flex-direction:column}.topbar-actions nav{justify-content:space-between}.timeline-nav-action{width:100%}.timeline-nav-action small{max-width:none}
.hero,.layout,.two,.brief-grid{grid-template-columns:1fr}
.grid{grid-template-columns:1fr}
.rooms{position:static}
.section-head{align-items:flex-start;flex-direction:column}
.phone{max-width:420px;margin:auto}
}
@media(max-width:420px){main{padding:18px 12px}
.hero>div,.panel,.phone,.rooms{border-radius:18px;padding:18px}
h1{font-size:2.3rem}
.actions,.voicebar,.decision-row{flex-direction:column;align-items:stretch}
button{width:100%}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}
}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.compact{margin:0 0 8px}.inspiration-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:16px 0 26px}.photo-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fffdf8}.photo-card img{width:100%;aspect-ratio:4/3;display:block;object-fit:cover}.photo-card-body{padding:12px}.photo-card-body p{font-size:.82rem;margin:3px 0 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.photo-card button{width:100%;padding:9px 12px}
.research-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}.research-heading h3{margin:0}.research-heading select{min-height:44px;border:1px solid var(--line);border-radius:999px;background:#fffdf8;padding:8px 34px 8px 14px}.research-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:14px}.research-card{border:1px solid var(--line);border-radius:20px;background:#fffdf8;padding:18px;box-shadow:0 8px 24px rgba(24,33,29,.06)}.research-card header{display:flex;justify-content:space-between;align-items:start;gap:10px}.research-card h4{font-size:1.08rem;margin:8px 0}.research-card .client-note{border-left:3px solid var(--brass);padding-left:10px;color:var(--moss)}.research-details{margin:12px 0 0}.research-details dt{font-weight:900;margin-top:9px}.research-details dd{margin:2px 0 0;color:#465048}.source-label{font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:var(--clay)}
dialog{width:min(980px,calc(100% - 24px));max-height:calc(100vh - 24px);overflow:auto;border:1px solid var(--line);border-radius:26px;padding:24px;background:var(--paper);color:var(--ink);box-shadow:var(--shadow)}dialog::backdrop{background:rgba(24,33,29,.72);backdrop-filter:blur(3px)}.dialog-close{position:absolute;right:14px;top:14px;font-size:1.6rem;background:var(--sage);width:44px;padding:0}.dialog-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:24px;padding-top:24px}.dialog-image{width:100%;max-height:70vh;object-fit:contain;background:var(--stone);border-radius:18px}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.choice{display:flex;align-items:center;gap:9px;background:#fffdf8;border:1px solid var(--line);border-radius:14px;padding:10px;font-weight:700}.choice:has(input:checked){border-color:var(--brass);background:#f6eddd}.choice input{width:20px;height:20px;accent-color:var(--deep)}fieldset{border:0;padding:0;margin:16px 0}legend{font-weight:900;margin-bottom:9px}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap}.status{min-height:24px;margin:12px 0 0;color:var(--moss);font-weight:700}
@media(max-width:700px){.dialog-grid{grid-template-columns:1fr}.dialog-image{max-height:38vh}.choice-grid{grid-template-columns:1fr}.research-heading{align-items:stretch;flex-direction:column}.research-heading select{width:100%}.research-cards{grid-template-columns:1fr}dialog{padding:16px}.dialog-actions{flex-direction:column}.dialog-actions button{width:100%}}
/* Budget Compass */
.budget-panel{overflow:hidden;background:linear-gradient(145deg,rgba(255,250,240,.98),rgba(242,235,220,.96))}
.section-head.compact{margin:0 0 12px;align-items:center}.section-head.compact h3{font-size:clamp(1.35rem,3vw,1.8rem);margin:0}.budget-intro{max-width:680px;margin-bottom:22px}
.budget-status-pill{display:inline-flex;align-items:center;min-height:36px;padding:7px 13px;border-radius:999px;font-size:.82rem;font-weight:900;background:#e8efe2;color:#31543a}.budget-status-pill.over{background:#f6e0d9;color:#873c2e}.budget-status-pill.under{background:#e5eee1;color:#31543a}
.budget-summary{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(2,minmax(140px,.7fr));gap:12px;margin-bottom:20px}.budget-summary-main,.budget-metric{border:1px solid rgba(222,212,196,.9);border-radius:20px;padding:18px;background:rgba(255,253,248,.76)}.budget-summary-main{display:grid;gap:4px;background:var(--deep);color:var(--paper);border:0}
.summary-kicker,.budget-metric span{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;opacity:.72}.budget-summary-main strong{font-size:clamp(1.8rem,5vw,2.8rem);line-height:1.05}.budget-summary-main>span:last-child{font-size:.88rem;color:#dce3d4}.budget-metric{display:flex;flex-direction:column;justify-content:center;gap:5px}.budget-metric strong{font-size:1.25rem}
.budget-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.budget-card{--status:#536353;position:relative;padding:17px;border:1px solid var(--line);border-radius:20px;background:#fffdf8;box-shadow:0 8px 20px rgba(24,33,29,.05);min-width:0}.budget-card.over{--status:#a8553f}.budget-card.under{--status:#50704e}
.budget-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.budget-card h4{font-size:1.02rem;margin:0;overflow-wrap:anywhere}.budget-edit{min-width:44px;width:44px;height:44px;min-height:44px;padding:0;border:1px solid var(--line);background:transparent;color:var(--moss);font-size:.8rem}
.budget-amount-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:12px 0 8px}.budget-amount-row strong{font-size:1.12rem}.budget-amount-row span{color:var(--status);font-size:.84rem;font-weight:900;text-align:right}
.budget-progress{height:9px;background:#e7e1d6;border-radius:999px;overflow:hidden}.budget-progress span{display:block;width:var(--progress);max-width:100%;height:100%;border-radius:inherit;background:var(--status);transition:width .35s ease}.budget-card-foot{display:flex;justify-content:space-between;gap:10px;margin-top:9px;font-size:.78rem;color:var(--muted)}.budget-card-note{font-size:.85rem;margin:12px 0 0;padding-top:10px;border-top:1px solid #ece4d8;color:#525a52;overflow-wrap:anywhere}
.budget-editor{margin-top:18px;border:1px solid var(--line);border-radius:20px;background:rgba(255,253,248,.72)}.budget-editor summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:12px 16px;font-weight:900;cursor:pointer;list-style:none}.budget-editor summary::-webkit-details-marker{display:none}.budget-editor[open] summary{border-bottom:1px solid var(--line)}
.budget-editor form{padding:4px 16px 16px}.budget-form-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:0 12px}.budget-note-field{grid-column:1/-1}.money-input{display:flex;align-items:center;border:1px solid var(--line);border-radius:16px;background:#fffdf8;overflow:hidden;min-height:48px}.money-input>span{padding-left:13px;color:var(--muted);font-weight:700}.money-input input{border:0!important;border-radius:0!important;padding-left:5px!important}.budget-form-actions{display:flex;align-items:center;gap:10px}.text-button{background:transparent;color:var(--moss);text-decoration:underline}
.budget-doc-chip{display:inline-flex;margin-top:11px;padding:5px 9px;border-radius:999px;background:#efe9dc;color:var(--moss);font-size:.74rem;font-weight:800}
.spend-capture{margin-top:20px;padding:clamp(16px,3vw,22px);border-radius:22px;background:var(--deep);color:var(--paper)}.spend-capture-head,.recent-spending-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.spend-capture h4,.recent-spending h4{font-size:1.2rem;margin:0}.spend-capture .eyebrow{color:#d4b681}.spend-capture .pill{flex:none;background:rgba(255,255,255,.12);color:var(--paper)}
.spending-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 12px;margin-top:14px}.spending-form-grid .field{min-width:0}.spending-form-grid .field span{color:#e8e4dc}.spending-form-grid .field small{font-weight:500;opacity:.7}.spending-form-grid .field input,.spending-form-grid .field select,.spending-form-grid .field textarea{border-color:rgba(255,255,255,.14)}
.spend-file{grid-column:1/-1;display:flex;align-items:center;gap:13px;min-width:0;min-height:82px;padding:14px 16px;border:1.5px dashed rgba(255,255,255,.32);border-radius:18px;background:rgba(255,255,255,.07);cursor:pointer}.spend-file input{position:absolute;width:1px;height:1px;opacity:0}.spend-file-icon{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:15px;background:var(--brass);color:var(--ink);font-size:1.5rem;font-weight:900}.spend-file>span:last-child{display:grid;min-width:0}.spend-file strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spend-file small{color:#cdd3cc;font-weight:500}.spending-notes{grid-column:1/-1}.spending-form-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.spending-form-actions .primary{background:var(--brass);color:var(--ink)}.spending-form-actions .muted{color:#d4d9d3}
.recent-spending{margin-top:24px}.recent-spending-head{align-items:center;margin-bottom:12px}.recent-spending-head .eyebrow{margin-bottom:4px}.spending-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.spending-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;min-width:0;padding:15px 48px 15px 15px;border:1px solid var(--line);border-radius:20px;background:#fffdf8;box-shadow:0 7px 18px rgba(24,33,29,.05)}.document-icon{display:grid;place-items:center;width:48px;height:54px;border-radius:13px;background:#eadfd0;color:var(--clay);font-size:.68rem;font-weight:900;letter-spacing:.06em}.document-icon.photo{background:#dfe8da;color:#416044}.spending-card-body,.spending-card-top>div{min-width:0}.spending-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.spending-card h5{margin:2px 0 0;font-size:.84rem;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-vendor{font-weight:900;overflow-wrap:anywhere}.spending-card-top>strong{flex:none;font-size:1.05rem}.credit-amount{color:#416744}.document-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.document-chips span{padding:4px 7px;border-radius:999px;background:#eee8dd;color:#5c665e;font-size:.69rem;font-weight:800}.document-chips .status-chip{background:#e6e2d8;color:#595f59}.document-chips .status-chip.paid{background:#dfeade;color:#31543a}.document-chips .status-chip.ordered{background:#e3e7ef;color:#3c4f72}.document-chips .status-chip.credit{background:#e4eee4;color:#31543a}.document-chips .status-chip.quote{background:#f3e6ce;color:#76531f}.spending-card p{margin:9px 0 0;font-size:.8rem;color:#515b52;overflow-wrap:anywhere}.document-remove{position:absolute;right:8px;top:8px;width:36px;min-height:36px;padding:0;background:transparent;color:var(--muted);font-size:1.15rem}.spending-empty{grid-column:1/-1;display:grid;gap:3px;padding:22px;border:1px dashed var(--line);border-radius:18px;text-align:center;color:var(--muted)}.spending-empty strong{color:var(--ink)}
@media(max-width:700px){.budget-summary{grid-template-columns:1fr 1fr}.budget-summary-main{grid-column:1/-1}.budget-cards{grid-template-columns:1fr}.budget-form-grid{grid-template-columns:1fr}.budget-note-field{grid-column:auto}}
@media(max-width:800px){.spending-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spending-documents{grid-template-columns:1fr}}
@media(max-width:520px){.spend-capture-head,.recent-spending-head{align-items:flex-start;flex-direction:column}.spending-form-grid{grid-template-columns:1fr}.spending-notes,.spend-file{grid-column:auto}.spending-form-actions{align-items:stretch;flex-direction:column}.spending-card{grid-template-columns:40px minmax(0,1fr);padding-left:12px;gap:10px}.document-icon{width:40px;height:48px}.spending-card-top{display:grid;gap:3px}.spending-card-top>strong{grid-row:1}.spending-card-top>div{grid-row:2}.spend-file strong{white-space:normal;overflow-wrap:anywhere}}
@media(max-width:420px){.budget-summary{grid-template-columns:1fr}.budget-summary-main{grid-column:auto}.budget-form-actions{align-items:stretch;flex-direction:column}.budget-edit{width:44px}.section-head.compact{flex-direction:row;align-items:center}}

/* Example Upload & Accuracy Lab */
.accuracy-lab{overflow:hidden;background:linear-gradient(145deg,#fffaf0,#eee8da)}
.lab-intro{max-width:760px}.lab-status-pill{display:inline-flex;align-items:center;min-height:36px;padding:7px 13px;border-radius:999px;background:var(--deep);color:var(--paper);font-size:.82rem;font-weight:900;white-space:nowrap}
.lab-upload-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 4px}.lab-drop{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;min-height:104px;padding:14px;border:1px solid var(--line);border-radius:20px;background:#fffdf8;cursor:pointer;transition:transform .2s ease,border-color .2s ease}.lab-drop:hover{transform:translateY(-2px);border-color:var(--brass)}.lab-drop:focus-within{outline:3px solid rgba(180,138,74,.55);outline-offset:3px}.lab-drop input{position:absolute;width:1px;height:1px;opacity:0}.lab-drop .lab-icon{grid-row:1/3;display:grid;place-items:center;width:48px;height:54px;border-radius:15px;background:#dfe8da;color:#416044;font-size:.65rem;font-weight:900;letter-spacing:.04em}.lab-drop.budget .lab-icon{background:#f0e1c8;color:#77501d}.lab-drop.plan .lab-icon{background:#e2e5eb;color:#465573}.lab-drop.walkthrough .lab-icon{background:#eadfd8;color:#824c3a}.lab-drop strong{align-self:end;line-height:1.15}.lab-drop small{align-self:start;color:var(--muted);font-size:.73rem}
.lab-results{display:grid;gap:12px;margin-top:16px}.lab-card{position:relative;display:grid;grid-template-columns:88px minmax(0,1fr);gap:15px;padding:15px 52px 15px 15px;border:1px solid var(--line);border-radius:22px;background:#fffdf8;box-shadow:0 8px 22px rgba(24,33,29,.06)}.lab-preview,.lab-file-icon{width:88px;height:88px;border-radius:17px;object-fit:cover;background:var(--deep);color:var(--paper)}.lab-file-icon{display:grid;place-items:center;font-size:.75rem;font-weight:900;letter-spacing:.08em}.lab-card .document-remove{width:44px;min-height:44px}.lab-card-body{min-width:0}.lab-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.lab-card h4{margin:3px 0 0;overflow-wrap:anywhere}.lab-meta{margin:5px 0 10px;color:var(--muted);font-size:.8rem}.review-chip{display:inline-flex;align-items:center;min-height:32px;padding:5px 9px;border-radius:999px;background:#f1e2cd;color:#79531f;font-size:.72rem;font-weight:900;white-space:nowrap}.review-chip.passed{background:#dfeade;color:#31543a}.review-chip.review{background:#e4e8ef;color:#405271}.lab-totals{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.lab-totals span{display:grid;gap:2px;min-width:130px;padding:9px 11px;border-radius:13px;background:#f1ece3;font-size:.72rem;color:var(--muted)}.lab-totals strong{color:var(--ink);font-size:.9rem}.detected-rows{margin:10px 0;border:1px solid var(--line);border-radius:14px}.detected-rows summary{min-height:44px;padding:11px 13px;cursor:pointer;font-weight:800}.row-list{display:grid;max-height:260px;overflow:auto;border-top:1px solid var(--line)}.row-list>div{display:flex;justify-content:space-between;gap:12px;padding:9px 13px;font-size:.8rem}.row-list>div+div{border-top:1px solid #eee7db}.row-list span{text-align:right;color:var(--muted)}.validation-list{margin:9px 0;padding:10px 10px 10px 30px;border-radius:13px;background:#f8e8e2;color:#7f3e31;font-size:.82rem}.lab-pass{margin:9px 0;color:#38613f;font-size:.82rem;font-weight:800}.lab-warning{color:#824537;font-weight:800}.apply-budget{margin-top:6px}
.test-summary{margin-top:18px;padding:18px;border-radius:22px;background:var(--deep);color:var(--paper)}.test-summary-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.test-summary h4{margin:0}.test-summary .eyebrow{color:#d4b681}.test-summary .text-button{color:#f0dfbd}.test-summary .muted{color:#cbd0cb}.summary-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.summary-chips>div{display:grid;gap:2px;padding:12px;border-radius:15px;background:rgba(255,255,255,.09)}.summary-chips strong{font-size:1.45rem}.summary-chips span{font-size:.72rem;color:#d6dbd6}.test-summary .lab-pass{color:#cfe4cb}.test-summary .lab-warning{color:#f1c4b6}
@media(max-width:950px){.lab-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.lab-card{grid-template-columns:56px minmax(0,1fr);gap:11px;padding-left:12px}.lab-preview,.lab-file-icon{width:56px;height:64px}.lab-card-top{display:grid}.review-chip{justify-self:start}.summary-chips{grid-template-columns:1fr 1fr}.row-list>div{display:grid}.row-list span{text-align:left}}
@media(max-width:420px){.lab-upload-grid{grid-template-columns:1fr}.lab-drop{min-height:92px}.test-summary-head{align-items:flex-start;flex-direction:column}.test-summary .text-button{text-align:left}.lab-totals span{width:100%}}

/* Refined client studio */
:root{--ink:#20231f;--deep:#203129;--moss:#526158;--sage:#e1e4dc;--stone:#f2eee6;--paper:#fbf8f1;--brass:#aa8651;--clay:#876b55;--line:#d9d1c4;--muted:#6f726c;--shadow:0 16px 44px rgba(32,35,31,.08);--r:18px;--gap:20px}
body{background:var(--stone)}
h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.025em}
h1{line-height:1.02;letter-spacing:-.045em}
.topbar{background:rgba(242,238,230,.94);padding-block:12px}
.mark{border-radius:4px;font-family:Georgia,"Times New Roman",serif;font-weight:500}
.hero>div,.phone,.panel,.card{background:var(--paper);box-shadow:var(--shadow)}
.hero>div{border-left:4px solid var(--brass)}
.phone{background:var(--paper);border-width:6px}
.panel,.card,.research-card,.budget-card,.spending-card,.lab-card{border-radius:var(--r);box-shadow:0 8px 26px rgba(32,35,31,.055)}
.primary,.secondary,.tab,.pill{border-radius:4px}
.eyebrow{letter-spacing:.16em;font-weight:700}
button{font-weight:700}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,label:focus-within{outline:3px solid rgba(170,134,81,.55);outline-offset:3px}
.budget-panel,.accuracy-lab{background:var(--paper)}
.budget-intro{font-size:1rem;line-height:1.65;margin-bottom:8px}
.budget-updated{margin:0 0 22px;padding-left:12px;border-left:2px solid var(--brass);color:var(--moss);font-size:.82rem;font-weight:700}
.budget-summary{grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(110px,.7fr))}
.budget-summary-main,.budget-metric{border-radius:10px;background:#f7f3eb}
.budget-summary-main{background:var(--deep)}
.budget-metric.paid strong{color:#31543a}.budget-metric.due strong{color:#77501d}
.budget-card{border-radius:12px}.budget-progress{height:4px}
.spend-capture{border-radius:12px;background:var(--deep)}
.spend-file,.money-input,.field input,.field textarea,.field select,.decision-row input{border-radius:7px}
.recent-totals{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.pill.quiet{background:#ece7de;color:var(--moss)}
.spending-card{padding-right:72px;border-radius:12px}
.document-actions{position:absolute;right:8px;top:8px;display:grid;gap:2px}
.document-actions .document-edit,.document-actions .document-remove{position:static;width:56px;min-height:36px;padding:4px;background:transparent;color:var(--moss);font-size:.74rem}
.document-actions .document-remove{font-size:1.1rem}
.document-chips .status-chip.due{background:#f2e5d0;color:#76531f}
.budget-editor{border-radius:12px}
.text-button.danger{color:#8a4033}
@media(max-width:1100px){.budget-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-summary-main{grid-column:1/-1}}
@media(max-width:520px){.recent-totals{justify-content:flex-start}.spending-card{padding-right:58px}.document-actions .document-edit,.document-actions .document-remove{width:44px}.budget-summary{grid-template-columns:1fr 1fr}}

/* Change Timeline & Commitment Tracker */
.change-panel{overflow:hidden;background:var(--paper)}
.change-intro{max-width:680px;font-size:1rem;line-height:1.65}
.latest-change{position:relative;margin:20px 0;padding:clamp(20px,4vw,30px);overflow:hidden;border:0;border-radius:12px;background:var(--deep);color:var(--paper);box-shadow:0 16px 34px rgba(32,49,41,.16)}
.latest-change:after{content:"";position:absolute;right:-56px;bottom:-76px;width:190px;height:190px;border:1px solid rgba(212,182,129,.24);border-radius:50%}
.latest-change-top,.change-card-top,.timeline-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.latest-label{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#d4b681}
.latest-change .change-type{margin:18px 0 5px;color:#cdd6ce}.latest-change h4{position:relative;margin:0 0 8px;font-size:clamp(1.45rem,3vw,2.15rem)}.latest-change>p{position:relative;max-width:720px;color:#e3e6e2}
.change-meta{position:relative;display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.change-meta>span{display:grid;gap:2px;min-width:180px;padding:10px 12px;border-left:2px solid var(--brass);background:rgba(255,255,255,.07);font-size:.72rem;color:#cbd2cc}.change-meta strong{color:var(--paper);font-size:.82rem;overflow-wrap:anywhere}
.change-status{display:inline-flex;align-items:center;min-height:29px;padding:5px 9px;border-radius:999px;background:#e7e3d9;color:#555f57;font-size:.69rem;font-weight:900;white-space:nowrap}.change-status.approved,.change-status.complete,.change-status.paid{background:#dfeade;color:#31543a}.change-status.due,.change-status.pending{background:#f3e3ca;color:#76531f}.latest-change .change-status{background:rgba(255,255,255,.14);color:var(--paper)}
.change-editor{margin:0 0 24px;border:1px solid var(--line);border-radius:12px;background:#f7f3eb}.change-editor summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:13px 16px;list-style:none;cursor:pointer;font-weight:800}.change-editor summary::-webkit-details-marker{display:none}.change-editor[open] summary{border-bottom:1px solid var(--line)}.change-editor form{padding:4px 16px 18px}.change-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}.change-notes{grid-column:1/-1}.change-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.timeline-head{margin:4px 0 13px}.timeline-head h4{margin:0;font-size:1.2rem}.timeline-head .eyebrow{margin-bottom:3px}.timeline-head select{min-height:44px;max-width:230px;border:1px solid var(--line);border-radius:7px;background:#fffdf8;padding:9px 12px;color:var(--ink)}
.change-timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.change-card{--change-accent:var(--brass);display:grid;grid-template-columns:112px minmax(0,1fr);min-width:0;border:1px solid var(--line);border-top:3px solid var(--change-accent);border-radius:12px;background:#fffdf8;box-shadow:0 8px 24px rgba(32,35,31,.05)}.change-card.type-floor-plan{--change-accent:#526879}.change-card.type-architectural{--change-accent:#765d4d}.change-card.type-invoice{--change-accent:#9a723b}.change-card.type-selection{--change-accent:#657b5d}.change-card.type-builder-commitment{--change-accent:#826550}
.change-card-date{display:flex;flex-direction:column;justify-content:center;padding:16px;border-right:1px solid var(--line);background:#f4efe6}.change-card-date span{font-family:Georgia,"Times New Roman",serif;font-size:1.05rem}.change-card-date small{margin-top:4px;color:var(--muted);font-size:.66rem}.change-card-body{min-width:0;padding:16px}.change-card .change-type{margin:0;color:var(--clay);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.change-card h4{margin:8px 0 3px;font-size:1.05rem;overflow-wrap:anywhere}.change-card p{margin:8px 0 0;color:#535c54;font-size:.83rem;overflow-wrap:anywhere}.change-card .change-category{margin:0;color:var(--moss);font-weight:800}.linked-document{display:inline-flex;max-width:100%;margin-top:11px;padding:5px 8px;border-radius:4px;background:#ece7de;color:var(--moss);font-size:.7rem;font-weight:800;overflow-wrap:anywhere}.timeline-empty{grid-column:1/-1;padding:22px;border:1px dashed var(--line);border-radius:12px;text-align:center;color:var(--muted)}
@media(max-width:900px){.change-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.change-timeline{grid-template-columns:1fr}}
@media(max-width:520px){.change-form-grid{grid-template-columns:1fr}.change-notes{grid-column:auto}.timeline-head{align-items:stretch;flex-direction:column}.timeline-head select{max-width:none;width:100%}.change-card{grid-template-columns:1fr}.change-card-date{border-right:0;border-bottom:1px solid var(--line);padding:11px 14px}.change-card-date small{margin:0}.change-actions{align-items:stretch;flex-direction:column}.change-meta{display:grid}.change-meta>span{min-width:0}}

/* Inspiration workflow, secure edit handoff, and walkthrough plan */
.photo-path{margin-top:8px;padding-top:8px;border-top:1px solid var(--line);color:var(--clay);font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.ai-edit-box{margin:0 0 22px;padding:18px;border:1px solid #c9b58f;border-radius:12px;background:linear-gradient(145deg,#f4ecdc,#fbf8f1)}
.ai-edit-heading,.ai-edit-heading>div{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ai-edit-heading>div{justify-content:flex-start}.ai-edit-heading h3{margin:0;font-size:1.15rem}.ai-edit-heading p{margin:2px 0 0;color:var(--muted);font-size:.76rem;line-height:1.4}.ai-spark{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:50%;background:var(--deep);color:#ead5ae;font-size:.72rem;font-weight:900}.safe-label{flex:none;padding:5px 7px;border:1px solid #bfa77a;border-radius:4px;color:#6f5731;font-size:.66rem;font-weight:900}.prompt-suggestions{display:flex;gap:7px;flex-wrap:wrap;margin:-3px 0 12px}.prompt-suggestions button{min-height:36px;padding:7px 10px;border:1px solid var(--line);border-radius:4px;background:#fffdf8;color:var(--moss);font-size:.74rem}
.library-panel,.walkthrough-panel{overflow:hidden}.library-intro,.walkthrough-intro{max-width:760px;line-height:1.65}.folder-rail{display:flex;gap:7px;margin:18px -2px 16px;padding:2px 2px 8px;overflow-x:auto;scrollbar-width:thin}.folder-chip{flex:none;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--moss);font-size:.78rem}.folder-chip.active{border-color:var(--deep);background:var(--deep);color:var(--paper)}
.stage-road,.walkthrough-roadmap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin-bottom:18px;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden}.stage-road>div{display:grid;grid-template-columns:28px 1fr;gap:0 8px;padding:12px;background:#f6f1e8}.stage-road span{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--deep);color:var(--paper);font-size:.72rem;font-weight:900}.stage-road strong{font-size:.76rem}.stage-road small{color:var(--muted);font-size:.66rem}
.library-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.library-card{display:grid;grid-template-columns:112px minmax(0,1fr);min-width:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fffdf8}.library-card>img,.spec-monogram{width:112px;height:100%;min-height:190px;object-fit:cover;background:var(--deep);color:#dbc497}.spec-monogram{display:grid;place-items:center;font-size:.72rem;font-weight:900;letter-spacing:.12em}.library-card-body{min-width:0;padding:14px}.library-card-top,.library-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.library-card-top{color:var(--clay);font-size:.67rem;font-weight:800;text-transform:uppercase}.library-card-top time{color:var(--muted);text-align:right}.library-card h4{margin:8px 0 4px;font-size:1.04rem}.library-card p{margin:0;color:var(--muted);font-size:.78rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.mini-path{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:12px 0}.mini-path span{height:5px;overflow:hidden;border-radius:999px;background:#e3ded4;color:transparent}.mini-path span.reached{background:var(--brass)}.library-actions{align-items:flex-end}.current-stage{color:var(--moss);font-size:.69rem;font-weight:900}.library-actions button{min-height:38px;padding:7px 9px;font-size:.69rem}.library-actions button:disabled{cursor:default;opacity:.7}.library-empty{grid-column:1/-1;padding:28px;border:1px dashed var(--line);border-radius:12px;text-align:center;color:var(--muted)}
.walkthrough-panel{background:var(--deep);color:var(--paper)}.walkthrough-panel .muted{color:#cbd2cc}.walkthrough-panel .pill{background:rgba(255,255,255,.12);color:var(--paper)}.walkthrough-roadmap{grid-template-columns:repeat(3,minmax(0,1fr));margin:20px 0;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.12)}.walkthrough-roadmap>div{display:grid;grid-template-columns:34px 1fr;gap:0 10px;padding:15px;background:rgba(255,255,255,.05)}.walkthrough-roadmap>div.active{background:#f4ecdc;color:var(--ink)}.walkthrough-roadmap>div.complete{background:rgba(170,134,81,.22)}.walkthrough-roadmap span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border:1px solid #ad956b;border-radius:50%;color:#dbc497;font-weight:900}.walkthrough-roadmap .active span{background:var(--brass);color:var(--ink)}.walkthrough-roadmap strong{font-size:.84rem}.walkthrough-roadmap small{color:#bfc8c1;font-size:.69rem}.walkthrough-roadmap .active small{color:var(--muted)}
.walkthrough-rooms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.walkthrough-rooms article{padding:16px;border:1px solid rgba(255,255,255,.14);border-radius:10px;background:rgba(255,255,255,.06)}.room-plan-head{display:flex;justify-content:space-between;gap:10px}.room-plan-head span{color:#d4b681;font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.room-plan-head h4{margin:4px 0 0;font-size:1.05rem}.room-plan-head time{color:#bfc8c1;font-size:.68rem;text-align:right}.room-signals{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:14px}.room-signals span{display:grid;padding:8px;border-left:1px solid rgba(255,255,255,.18);color:#bfc8c1;font-size:.62rem}.room-signals strong{color:var(--paper);font-size:1rem}
@media(max-width:900px){.library-items{grid-template-columns:1fr}.stage-road{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.ai-edit-heading{display:grid}.safe-label{justify-self:start}.walkthrough-roadmap{grid-template-columns:1fr}.walkthrough-rooms{grid-template-columns:1fr}.library-card{grid-template-columns:88px minmax(0,1fr)}.library-card>img,.spec-monogram{width:88px}.room-signals{grid-template-columns:repeat(2,1fr)}}
@media(max-width:430px){.stage-road{grid-template-columns:1fr}.library-card{grid-template-columns:1fr}.library-card>img,.spec-monogram{width:100%;height:150px;min-height:0}.library-actions{align-items:stretch;flex-direction:column}.library-actions button{width:100%}.section-head.compact{align-items:flex-start;flex-direction:column}}
.file .hero-exterior{margin-top:9px}.library-actions{flex-wrap:wrap}
.upload-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.upload-heading h3{margin:0}.cloud-status{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:#f5f0e7;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.04em}.cloud-status:before{content:"";width:7px;height:7px;border-radius:50%;background:#9a9489}.cloud-status.connected{border-color:#b7c8b7;background:#edf4eb;color:#416044}.cloud-status.connected:before{background:#5d805f}.cloud-status.syncing{border-color:#dac39e;background:#faf2e4;color:#77501d}.cloud-status.syncing:before{background:#b48a4a;box-shadow:0 0 0 3px rgba(180,138,74,.15)}.cloud-status-detail{margin:7px 0 14px;font-size:.76rem}

/* Client opening and room story */
.client-opening{display:grid;margin:0 0 clamp(42px,8vw,88px);overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--deep);color:var(--paper);box-shadow:0 24px 60px rgba(32,49,41,.14)}
.exterior-hero-visual{position:relative;isolation:isolate;min-height:330px;overflow:hidden;background:linear-gradient(155deg,#d9d3c7 0 46%,#a9b0a3 46% 66%,#58675c 66%)}
.exterior-hero-visual:after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(19,28,23,.66))}
.exterior-hero-visual>img{width:100%;height:100%;min-height:330px;display:block;object-fit:cover}
.exterior-image-label{position:absolute;z-index:3;left:18px;right:18px;bottom:16px;padding-top:12px;border-top:1px solid rgba(255,255,255,.45);color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.css-house{position:absolute;inset:0}
.house-sun{position:absolute;top:34px;right:12%;width:70px;height:70px;border-radius:50%;background:#e8d5aa;box-shadow:0 0 50px rgba(232,213,170,.62)}
.house-roof{position:absolute;z-index:1;left:13%;bottom:43%;width:75%;height:24%;background:#3b403b;clip-path:polygon(8% 100%,35% 14%,66% 14%,96% 100%)}
.house-body,.house-wing{position:absolute;z-index:1;bottom:18%;height:31%;background:#ded7ca;box-shadow:0 18px 30px rgba(31,42,35,.18)}
.house-body{left:20%;width:55%}.house-wing{right:7%;width:25%;height:25%;background:#c7baa5}
.house-door{position:absolute;z-index:2;left:43%;bottom:18%;width:13%;height:25%;background:#715b49;border:5px solid #b7aa98}
.house-window{position:absolute;z-index:2;bottom:29%;height:12%;background:linear-gradient(135deg,#536668,#25373a);border:4px solid #b7aa98;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.house-window.one{left:25%;width:14%}.house-window.two{right:12%;width:14%;bottom:27%}
.house-ground{position:absolute;z-index:1;left:-5%;right:-5%;bottom:8%;height:14%;border-radius:50% 50% 0 0;background:#526158}
.client-opening-copy{display:flex;flex-direction:column;padding:clamp(28px,7vw,52px) clamp(22px,6vw,46px)}
.client-opening-copy .eyebrow{color:#d6bd8e}
.client-opening-copy h2{max-width:650px;margin-bottom:18px;color:var(--paper);font-size:clamp(2rem,8vw,4.4rem);line-height:1}
.client-opening-copy>p:not(.eyebrow):not(.status){max-width:590px;color:#d6ddd7;line-height:1.75}
.client-opening-meta{display:grid;gap:8px;margin:10px 0 24px;padding:17px 0;border-block:1px solid rgba(255,255,255,.15);color:#d6bd8e;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.client-opening-meta span:last-child{color:var(--paper)}
.exterior-upload{position:relative;display:grid;grid-template-columns:1fr;gap:2px;align-self:flex-start;min-width:min(100%,290px);padding:13px 50px 13px 16px;border:1px solid rgba(255,255,255,.28);border-radius:6px;cursor:pointer;transition:background .2s ease,border-color .2s ease}
.exterior-upload:after{content:"+";position:absolute;right:17px;top:50%;translate:0 -50%;color:#d6bd8e;font-family:Georgia,"Times New Roman",serif;font-size:1.5rem}
.exterior-upload:hover{border-color:#d6bd8e;background:rgba(255,255,255,.06)}
.exterior-upload input{position:absolute;width:1px;height:1px;opacity:0}
.exterior-upload span{font-weight:800}.exterior-upload small{color:#bac3bc}
.client-opening-copy .status{color:#d6bd8e}
.recap-section{margin-bottom:clamp(48px,8vw,90px)}
.recap-heading{display:grid;gap:8px;margin-bottom:22px}
.recap-heading h3{margin:0;font-size:clamp(1.8rem,7vw,3.2rem)}
.recap-heading>p{max-width:420px;color:var(--muted)}
.room-recaps{border-top:1px solid var(--line)}
.room-recap{border-bottom:1px solid var(--line);background:transparent}
.room-recap summary{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;padding:20px 2px;list-style:none;cursor:pointer}
.room-recap summary::-webkit-details-marker{display:none}
.room-recap summary:hover .recap-summary>strong{color:var(--clay)}
.recap-number{padding-top:2px;color:var(--brass);font-family:Georgia,"Times New Roman",serif;font-size:.9rem}
.recap-summary{display:grid;gap:7px;min-width:0}
.recap-kicker,.recap-detail span,.recap-history>span{color:var(--clay);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.recap-summary>strong{font-family:Georgia,"Times New Roman",serif;font-size:1.1rem;font-weight:500;line-height:1.35;transition:color .2s ease}
.recap-latest{color:var(--muted);font-size:.74rem;line-height:1.5}.recap-latest b{margin-right:6px;color:var(--moss);text-transform:uppercase}
.recap-side{grid-column:2;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--muted);font-size:.7rem}
.recap-side>b{color:var(--moss);white-space:nowrap}.recap-side i{display:inline-block;margin-left:5px;color:var(--brass);font-size:1rem;font-style:normal;transition:rotate .25s ease}
.room-recap[open] .recap-side i{rotate:45deg}
.recap-detail{margin-left:52px;padding:0 0 24px}
.recap-detail-lead{display:grid;gap:7px;padding:17px;border-left:3px solid var(--brass);background:#ebe5d9}
.recap-detail-lead strong{font-family:Georgia,"Times New Roman",serif;font-size:1.06rem;font-weight:500}
.recap-detail-grid{display:grid;gap:1px;margin-top:12px;border:1px solid var(--line);background:var(--line)}
.recap-detail-grid>div{padding:15px;background:var(--paper)}
.recap-detail-grid p{margin:7px 0 0;color:#515a53;font-size:.82rem;line-height:1.6}
.recap-history{margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}
.recap-history p{margin:7px 0;color:var(--muted);font-size:.78rem}.recap-history p b{margin-right:8px;color:var(--ink)}
.client-tools-head{margin-top:0}
@media(min-width:620px){.client-opening-meta{grid-template-columns:1fr 1fr}.client-opening-meta span:last-child{text-align:right}.recap-heading{grid-template-columns:1fr auto;align-items:end}.recap-heading>p{text-align:right}.room-recap summary{grid-template-columns:52px minmax(0,1fr) minmax(180px,.34fr);gap:18px;padding:25px 4px}.recap-summary>strong{font-size:1.3rem}.recap-side{grid-column:auto;display:grid;align-content:space-between;text-align:right}.recap-detail{margin-left:74px}.recap-detail-grid{grid-template-columns:1fr 1fr}}
@media(min-width:960px){.client-opening{grid-template-columns:minmax(0,1.2fr) minmax(370px,.8fr);min-height:620px}.exterior-hero-visual,.exterior-hero-visual>img{min-height:620px}.client-opening-copy{justify-content:center}.recap-detail-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:420px){.client-opening{margin-inline:-12px;border-inline:0;border-radius:0}.exterior-hero-visual,.exterior-hero-visual>img{min-height:300px}.recap-side{align-items:flex-start;flex-direction:column}.recap-detail{margin-left:0}.recap-heading{padding-inline:2px}}

/* Client opening experience and room story recaps */
.client-opening{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);min-height:min(690px,72vh);margin:-4px 0 26px;overflow:hidden;border-radius:18px;background:var(--deep);color:var(--paper);box-shadow:0 26px 70px rgba(24,33,29,.18)}
.exterior-hero-visual{position:relative;min-height:520px;overflow:hidden;background:linear-gradient(168deg,#c9d2c7 0 45%,#9da99b 45% 62%,#5b665b 62%)}
.exterior-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 50%,rgba(25,37,31,.2)),linear-gradient(0deg,rgba(15,24,19,.38),transparent 42%)}
.exterior-hero-visual img{width:100%;height:100%;min-height:520px;display:block;object-fit:cover}
.exterior-image-label{position:absolute;z-index:2;left:22px;bottom:20px;max-width:calc(100% - 44px);padding:8px 10px;border:1px solid rgba(255,255,255,.2);background:rgba(24,35,29,.64);color:#f7f2e8;font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(8px)}
.css-house{position:absolute;inset:0;overflow:hidden}
.house-sun{position:absolute;top:10%;right:12%;width:90px;height:90px;border-radius:50%;background:rgba(245,230,194,.58);box-shadow:0 0 70px rgba(246,226,181,.7)}
.house-body{position:absolute;left:12%;bottom:18%;width:62%;height:39%;background:#d6c9b6;box-shadow:0 24px 36px rgba(26,34,29,.27)}
.house-roof{position:absolute;z-index:1;left:7%;bottom:55%;width:72%;height:9%;background:#303a34;clip-path:polygon(5% 100%,20% 0,85% 0,100% 100%)}
.house-wing{position:absolute;left:59%;bottom:18%;width:34%;height:29%;background:#b9aa94;border-top:8px solid #303a34}
.house-door{position:absolute;z-index:1;left:52%;bottom:18%;width:10%;height:28%;background:#594a3d;border:5px solid #c9bba7}
.house-window{position:absolute;z-index:1;bottom:29%;height:18%;background:linear-gradient(145deg,#41544f,#7d948e);border:6px solid #c5b8a5;box-shadow:inset 0 0 0 1px rgba(255,255,255,.24)}
.house-window.one{left:18%;width:27%}.house-window.two{left:69%;width:15%;bottom:26%;height:14%}
.house-ground{position:absolute;left:-5%;right:-5%;bottom:8%;height:13%;border-radius:50% 50% 0 0;background:#535e52;box-shadow:0 -9px 0 rgba(108,119,103,.7)}
.client-opening-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:clamp(28px,5vw,64px)}
.client-edition{display:grid;gap:4px;width:fit-content;margin:0 0 25px;padding:0 0 12px;border-bottom:1px solid rgba(255,255,255,.24);color:var(--paper);font-family:Georgia,"Times New Roman",serif;font-size:1.05rem;letter-spacing:.02em}.client-edition span{color:#c8b081;font-family:Inter,system-ui,sans-serif;font-size:.61rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.client-opening-copy .eyebrow{color:#d4b681}.client-opening-copy h2{margin-bottom:18px;color:var(--paper);font-size:clamp(2rem,4.5vw,4.4rem);line-height:.98}.client-opening-copy>p:not(.eyebrow,.status){max-width:560px;color:#d5dcd6;line-height:1.7}
.client-opening-meta{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.client-opening-meta span{min-height:34px;padding:7px 10px;border-left:2px solid var(--brass);background:rgba(255,255,255,.07);font-size:.75rem;font-weight:800}
.next-build-milestone{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1fr);gap:12px 18px;max-width:600px;margin:0 0 20px;padding:16px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08)}.next-build-milestone>div>span{color:#d4b681;font-size:.63rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.next-build-milestone h3{margin:3px 0 0;color:var(--paper);font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:500}.next-build-milestone p{display:grid;align-content:start;gap:4px;margin:0;color:var(--paper);font-size:.77rem}.next-build-milestone p span{color:#cbd4cc;line-height:1.45}.milestone-timeline-button{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:10px 14px;border:1px solid rgba(255,255,255,.2);border-radius:4px;background:var(--paper);color:var(--deep);text-align:left}.milestone-timeline-button span{font-size:1.05rem}
.exterior-upload{position:relative;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:0 12px;width:fit-content;max-width:100%;min-height:52px;padding:9px 14px;border:1px solid rgba(255,255,255,.24);cursor:pointer}.exterior-upload:before{content:"＋";grid-row:1/3;display:grid;place-items:center;width:32px;height:32px;background:var(--brass);color:var(--ink);font-weight:900}.exterior-upload input{position:absolute;width:1px;height:1px;opacity:0}.exterior-upload span{font-size:.82rem;font-weight:800}.exterior-upload small{color:#bfc9c1;font-size:.68rem}.client-opening-copy .status{color:#d7c49e}
.client-opening-copy .hero-update-note{max-width:430px;margin:10px 0 0;color:#bfc9c1;font-size:.72rem;line-height:1.45}
.recap-section{margin:0 0 34px}.recap-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:30px 0 15px}.recap-heading h3{margin:0;font-size:clamp(1.65rem,3vw,2.5rem)}.recap-heading>p{max-width:390px;margin:0;color:var(--muted)}
.room-recaps{display:grid;gap:10px}.room-recap{min-width:0;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:0 8px 24px rgba(32,35,31,.05);overflow:hidden}.room-recap summary{display:grid;grid-template-columns:54px minmax(0,1fr) minmax(180px,.35fr);gap:16px;align-items:center;min-height:128px;padding:18px 20px;cursor:pointer;list-style:none}.room-recap summary::-webkit-details-marker{display:none}.room-recap[open] summary{border-bottom:1px solid var(--line);background:#f7f2e9}.recap-number{align-self:start;color:var(--brass);font-family:Georgia,"Times New Roman",serif;font-size:1.25rem}.recap-summary{display:grid;min-width:0;gap:5px}.recap-kicker,.recap-detail span,.recap-history>span{color:var(--clay);font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.recap-summary>strong{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.08rem,2vw,1.35rem);font-weight:500;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.recap-latest{color:var(--muted);font-size:.76rem;overflow-wrap:anywhere}.recap-latest b{margin-right:5px;color:var(--moss)}
.recap-side{display:grid;gap:14px;justify-items:end;text-align:right;color:var(--moss);font-size:.74rem}.recap-side>b{display:flex;align-items:center;justify-content:flex-end;min-height:44px;color:var(--deep)}.recap-side i{display:grid;place-items:center;width:32px;height:32px;margin-left:9px;border:1px solid var(--line);font-style:normal}.room-recap[open] .recap-side i{transform:rotate(45deg)}
.recap-detail{padding:20px}.recap-detail-lead{display:grid;gap:6px;padding:18px 20px;border-left:3px solid var(--brass);background:var(--deep);color:var(--paper)}.recap-detail-lead span{color:#d4b681}.recap-detail-lead strong{font-family:Georgia,"Times New Roman",serif;font-size:1.25rem;font-weight:500}.recap-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:14px;background:var(--line);border:1px solid var(--line)}.recap-detail-grid>div{min-width:0;padding:16px;background:#fffdf8}.recap-detail-grid p{margin:7px 0 0;color:#4f5951;font-size:.84rem;overflow-wrap:anywhere}.recap-history{margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}.recap-history p{margin:8px 0;color:var(--muted);font-size:.8rem}.recap-history p b{margin-right:7px;color:var(--moss)}.client-tools-head{margin-top:8px}
@media(max-width:900px){.client-opening{grid-template-columns:1fr;min-height:0}.exterior-hero-visual,.exterior-hero-visual img{min-height:430px}.client-opening-copy{min-height:390px}.recap-heading{align-items:flex-start;flex-direction:column;gap:8px}}
@media(max-width:650px){.client-opening{margin-inline:-4px}.exterior-hero-visual,.exterior-hero-visual img{min-height:330px}.client-opening-copy{min-height:0;padding:28px 20px}.client-opening-copy h2{font-size:2.25rem}.next-build-milestone{grid-template-columns:1fr}.milestone-timeline-button{grid-column:1}.room-recap summary{grid-template-columns:38px minmax(0,1fr);gap:10px;min-height:0;padding:18px 14px}.recap-side{grid-column:2;justify-items:start;text-align:left;gap:4px}.recap-side>b{justify-content:flex-start}.recap-detail{padding:14px}.recap-detail-grid{grid-template-columns:1fr}.recap-heading>p{font-size:.88rem}.house-body{left:8%;width:68%}.house-roof{left:3%;width:78%}}
.brief-title-lockup{display:flex;align-items:center;padding-left:16px;border-left:3px solid var(--brass)}
@media(max-width:650px){.hero-brand{width:145px;height:55px}.brief-title-lockup{align-items:flex-start}.client-edition{margin-bottom:18px}}
@media(max-width:420px){.exterior-upload{width:100%}.exterior-hero-visual,.exterior-hero-visual img{min-height:280px}.recap-number{font-size:1rem}.recap-summary>strong{-webkit-line-clamp:3}}

/* Client portal command center */
.client-command-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:22px 0}.client-command-bar button{display:grid;align-content:start;gap:4px;min-width:0;min-height:112px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);text-align:left;box-shadow:0 8px 22px rgba(32,35,31,.05)}.client-command-bar button:hover{border-color:var(--brass);transform:translateY(-2px)}.client-command-bar span,.next-project-facts dt{color:var(--clay);font-size:.64rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.client-command-bar strong{font-family:Georgia,"Times New Roman",serif;font-size:1rem}.client-command-bar small{color:var(--muted);line-height:1.35}
.client-updates{display:grid;grid-template-columns:minmax(190px,.35fr) minmax(0,1fr);gap:20px;align-items:center;margin:0 0 22px;padding:18px 20px;border:1px solid var(--line);border-left:4px solid var(--brass);background:var(--stone)}.client-updates h3{margin:0}.client-updates .eyebrow{margin-bottom:4px}.recent-update-list{display:flex;gap:10px;min-width:0;overflow-x:auto;padding:2px}.recent-update{flex:1 0 190px;min-width:0;padding-left:12px;border-left:1px solid var(--line)}.recent-update strong,.recent-update span{display:block}.recent-update strong{font-size:.82rem;overflow-wrap:anywhere}.recent-update span{margin-top:4px;color:var(--muted);font-size:.69rem}
.next-project-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;margin-bottom:28px;padding:clamp(22px,4vw,34px);border-radius:16px;background:var(--deep);color:var(--paper);box-shadow:var(--shadow)}.next-project-lead>span{display:inline-block;margin-bottom:8px;color:#d4b681;font-size:.7rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.next-project-lead h3{margin:0;font-size:clamp(2rem,4vw,3.5rem);color:var(--paper)}.next-project-lead>p:last-child{max-width:650px;color:#ccd4ce}.next-project-facts{display:grid;gap:1px;margin:0;background:rgba(255,255,255,.12)}.next-project-facts div{padding:13px 15px;background:rgba(255,255,255,.06)}.next-project-facts dt{color:#d4b681}.next-project-facts dd{margin:5px 0 0;font-weight:800;line-height:1.4}.next-project-card>button{grid-column:1/-1;min-height:48px}
.portal-section{margin:0 0 28px;padding:clamp(20px,3vw,30px);border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:0 10px 28px rgba(32,35,31,.06)}.portal-section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:18px}.portal-section-head h3{margin:0;font-size:clamp(1.7rem,3vw,2.5rem)}.portal-section-head>p{max-width:470px;margin:0;color:var(--muted)}.client-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-decision-card{display:grid;gap:14px;min-width:0;padding:18px;border:1px solid var(--line);border-top:3px solid var(--brass);background:var(--paper)}.client-decision-card.approved{border-top-color:var(--moss);background:var(--sage)}.client-decision-card header{display:flex;justify-content:space-between;gap:12px}.client-decision-room,.client-decision-status{font-size:.67rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.client-decision-room{color:var(--clay)}.client-decision-status{color:var(--moss)}.client-decision-card h4{margin:5px 0 0;font-size:1.2rem}.client-decision-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}.client-decision-meta span{display:grid;gap:3px;padding:10px;background:var(--stone);color:var(--muted);font-size:.68rem}.client-decision-meta strong{color:var(--ink);font-size:.78rem}.client-decision-actions{display:flex;gap:8px}.client-decision-actions button{flex:1;min-height:44px}.client-decision-empty{grid-column:1/-1;color:var(--muted)}
.client-file-controls{display:grid;grid-template-columns:minmax(160px,.3fr) minmax(0,1fr);gap:12px;align-items:end}.client-file-controls .field{margin:0}.client-file-drop{position:relative;display:grid;gap:3px;min-height:64px;padding:12px 16px;border:1px dashed var(--brass);background:var(--stone);cursor:pointer}.client-file-drop input{position:absolute;width:1px;height:1px;opacity:0}.client-file-drop span{font-weight:900}.client-file-drop small{color:var(--muted)}.client-document-filters{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 12px}.client-document-filters button{min-height:44px;padding:8px 13px;border:1px solid var(--line);background:transparent;color:var(--moss)}.client-document-filters button.active{border-color:var(--deep);background:var(--deep);color:var(--paper)}.client-document-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.client-document-card{display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;min-width:0;padding:14px;border:1px solid var(--line);background:var(--paper)}.client-document-mark{display:grid;place-items:center;width:48px;height:48px;background:var(--stone);color:var(--clay);font-size:.67rem;font-weight:900}.client-document-card strong,.client-document-card span{display:block;overflow-wrap:anywhere}.client-document-card span{margin-top:4px;color:var(--muted);font-size:.7rem}
@media(max-width:1000px){.client-command-bar{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.client-command-bar{grid-template-columns:1fr 1fr}.client-command-bar button{min-height:100px}.client-updates,.next-project-card{grid-template-columns:1fr}.recent-update-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow-x:visible;padding:0}.recent-update{min-width:0;padding:10px 12px;border:1px solid var(--line);background:var(--paper)}.client-decision-grid,.client-document-list{grid-template-columns:1fr}.portal-section-head{align-items:flex-start;flex-direction:column;gap:7px}.client-file-controls{grid-template-columns:1fr}.client-file-controls>*,.client-document-card>div,.recap-detail>*{min-width:0;max-width:100%}.client-file-drop small,.client-document-card strong,.client-document-card span,.recap-detail-lead strong{overflow-wrap:anywhere}.room-recap summary{grid-template-columns:38px minmax(0,1fr);}.recap-side{width:100%;justify-items:stretch;text-align:left}.recap-side>b{min-height:44px;justify-content:space-between}.recap-side i{width:44px;height:44px}.recap-detail{overflow:hidden}}
@media(max-width:430px){.client-command-bar{grid-template-columns:1fr}.client-command-bar button{min-height:88px}.client-decision-meta{grid-template-columns:1fr}.client-decision-actions{flex-direction:column}.client-updates{padding:16px}.recent-update-list{grid-template-columns:1fr}.portal-section{padding:18px 14px}.client-document-card{grid-template-columns:40px minmax(0,1fr);gap:10px;padding:12px}.client-document-mark{width:40px;height:40px}.recap-detail-lead{padding:16px 14px}}

/* Build control, master timeline, and prototype progress model */
.build-control{margin:32px 0 44px;padding:clamp(20px,4vw,38px);border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow)}
.build-control-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;margin-bottom:24px}.build-control-head h3{margin:0 0 10px;font-size:clamp(2rem,4vw,3.6rem)}.build-control-head>div:first-child>p:last-child{max-width:720px;margin:0;color:var(--muted)}
.build-score{display:grid;min-width:170px;padding:18px;border-left:3px solid var(--brass);background:#f2ede3}.build-score strong{font-family:Georgia,"Times New Roman",serif;font-size:2.8rem;font-weight:500;line-height:1}.build-score span{font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.build-score small{margin-top:8px;color:var(--moss)}
.build-overview{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.7fr);gap:16px}.progress-model-card,.meeting-packet{min-width:0;border-radius:12px;background:var(--deep);color:var(--paper)}.progress-model-card{padding:clamp(16px,3vw,26px);overflow:hidden}.meeting-packet{padding:24px;background:#eee7da;color:var(--ink)}
.model-heading{display:flex;align-items:start;justify-content:space-between;gap:15px}.model-heading .eyebrow,.meeting-packet .eyebrow{color:#c29e67}.model-heading h4,.meeting-packet h4{margin:0;font-size:1.45rem}.model-heading>span{color:#cbd2cc;font-size:.75rem;font-weight:800}
.build-model{position:relative;min-height:320px;margin:10px 0;background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.09),transparent 48%)}.build-model svg{position:relative;z-index:1;display:block;width:100%;height:auto;filter:drop-shadow(0 24px 20px rgba(0,0,0,.2))}.model-layer{opacity:0;transform:translateY(-8px);transition:opacity .65s ease,transform .65s ease}.model-layer.visible{opacity:1;transform:none}.model-ground{opacity:.65}.model-orbit{position:absolute;inset:24% 10% 7%;border:1px solid rgba(203,180,137,.16);border-radius:50%;transform:rotate(-8deg)}
.model-note{max-width:720px;margin:0;color:#cbd2cc;font-size:.78rem}.model-legend{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px}.model-legend span{padding:5px 7px;border:1px solid rgba(255,255,255,.12);color:#8f9b93;font-size:.63rem}.model-legend .done{color:#d9c69f}.model-legend .active{border-color:var(--brass);background:var(--brass);color:var(--ink);font-weight:800}
.meeting-stat{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:14px 0;border-bottom:1px solid var(--line)}.meeting-stat span,.meeting-next>span{font-size:.67rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:var(--clay)}.meeting-stat strong{grid-row:1/3;grid-column:2;font-size:1.8rem}.meeting-stat small{color:var(--muted)}.meeting-stat.alert strong{color:#8a4033}.meeting-next{padding:16px 0}.meeting-next p{display:grid;margin:9px 0}.meeting-next small{color:var(--muted)}.packet-updated{padding-top:12px;border-top:1px solid var(--line);color:var(--moss);font-size:.72rem}
.timeline-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:34px 0 14px}.timeline-toolbar h4,.room-build-recaps h4{margin:0;font-size:1.5rem}.timeline-key{display:flex;gap:6px;flex-wrap:wrap}.timeline-key span,.status-select{padding:6px 9px;border:1px solid var(--line);border-radius:4px;font-size:.68rem;font-weight:800}.timeline-key span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#8c958d}.timeline-key .complete:before{background:#557356}.timeline-key .in-progress:before{background:#b58a4c}.timeline-key .blocked:before{background:#984d3e}
.build-timeline{display:grid;grid-template-columns:130px minmax(0,1fr);border-top:1px solid var(--line)}.phase-marker{grid-column:1;display:grid;align-content:start;gap:3px;padding:21px 12px 12px 0;border-bottom:1px solid var(--line)}.phase-marker span{font-family:Georgia,"Times New Roman",serif;font-size:1rem}.phase-marker small{color:var(--muted);font-size:.65rem}
.build-item{grid-column:2;display:grid;grid-template-columns:48px minmax(0,1fr) minmax(155px,.4fr);gap:15px;align-items:center;min-height:106px;padding:16px 0;border-bottom:1px solid var(--line)}.build-item+.phase-marker{margin-top:0}.build-check{display:grid;place-items:center;width:44px;min-height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--muted);font-family:Georgia,"Times New Roman",serif;font-size:.76rem}.build-item.complete .build-check{border-color:#567458;background:#567458;color:white;font-size:1rem}.build-item.blocked{background:linear-gradient(90deg,transparent,#f8e8e2)}.build-item.blocked .build-check{border-color:#9b5142;color:#8a4033}.build-item-copy{min-width:0}.build-phase{display:none}.build-item h5{margin:2px 0 4px;font-family:Georgia,"Times New Roman",serif;font-size:1.13rem}.build-item.complete h5{text-decoration:line-through;color:var(--muted)}.build-item-copy p{margin:0;color:var(--moss);font-size:.78rem}.build-item-copy>small{display:block;margin-top:5px;color:var(--clay);font-size:.66rem}.build-target{display:grid;justify-items:end;gap:8px;text-align:right}.build-target>strong{font-size:.75rem}.status-select{min-height:38px;background:#f6f2e9;color:var(--ink)}.status-select.complete{background:#e3ece0;color:#31543a}.status-select.in-progress{background:#f2e5cc;color:#76531f}.status-select.blocked{background:#f4dfd9;color:#843c30}
.room-build-recaps{margin-top:32px;padding-top:26px;border-top:1px solid var(--line)}.room-build-recaps>div:last-child{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}.room-build-card{padding:15px;border:1px solid var(--line);background:#fffdf8}.room-build-card header>div{display:flex;justify-content:space-between;gap:10px}.room-build-card header span{font-family:Georgia,"Times New Roman",serif}.room-build-card header i{display:block;height:3px;margin:10px 0;background:linear-gradient(90deg,var(--brass) var(--room-progress),#e5dfd4 var(--room-progress))}.room-build-card ul{display:grid;gap:6px;margin:0;padding:0;list-style:none}.room-build-card li{display:grid;grid-template-columns:14px 1fr auto;gap:5px;color:var(--moss);font-size:.7rem}.room-build-card li.complete{color:#456048}.room-build-card li.blocked{color:#8a4033}.room-build-card li small{font-size:.58rem;text-align:right}
@media(max-width:900px){.build-overview{grid-template-columns:1fr}.build-control-head{grid-template-columns:1fr}.build-score{min-width:0}.room-build-recaps>div:last-child{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.build-control{margin-inline:-4px;padding:18px 14px}.build-model{min-height:220px}.timeline-toolbar{align-items:flex-start;flex-direction:column}.build-timeline{grid-template-columns:1fr}.phase-marker{grid-column:1;padding:20px 0 8px}.build-item{grid-column:1;grid-template-columns:42px minmax(0,1fr);gap:10px}.build-target{grid-column:2;justify-items:start;text-align:left}.build-target label,.status-select{width:100%}.room-build-recaps>div:last-child{grid-template-columns:1fr}.model-legend{display:none}}

/* Public Sample Build Lab */
.sample-lab{min-width:0;margin:28px 0;padding:clamp(18px,4vw,38px);border:2px solid var(--brass);border-radius:18px;background:var(--paper);box-shadow:var(--shadow);overflow:hidden}.sample-lab-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:24px;padding-bottom:24px;border-bottom:1px solid var(--line)}.sample-lab-hero h3{margin:0 0 9px;font-size:clamp(2rem,5vw,4rem)}.sample-lab-hero p:last-child{max-width:760px;margin:0;color:var(--moss)}.sample-profile-facts{display:grid;gap:1px;background:var(--line)}.sample-profile-facts span{display:grid;gap:2px;min-width:0;padding:12px 14px;background:#f5f0e7;font-size:.78rem;overflow-wrap:anywhere}.sample-profile-facts b{color:var(--clay);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}.sample-search-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.28fr) auto;gap:10px;align-items:end;margin:24px 0 6px}.sample-search-tools label{display:grid;gap:6px;min-width:0;color:var(--moss);font-size:.72rem;font-weight:800}.sample-search-tools input,.sample-search-tools select{width:100%;max-width:100%;min-height:48px;padding:10px 13px;border:1px solid var(--line);border-radius:4px;background:#fff;color:var(--ink)}.sample-result-status{min-height:24px;margin:8px 0;color:var(--moss);font-size:.78rem;font-weight:800}.sample-jump-nav{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 26px}.sample-jump-nav a,.sample-resource-card>a{display:inline-flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:4px;color:var(--deep);font-size:.76rem;font-weight:800;text-decoration:none}.sample-jump-nav a:hover,.sample-resource-card>a:hover{border-color:var(--brass);background:#f3ecdf}.sample-walkthrough{display:grid;grid-template-columns:minmax(190px,.35fr) minmax(0,1fr);gap:20px;padding:22px;background:var(--deep);color:var(--paper)}.sample-walkthrough h4{margin:0;font-size:1.55rem}.sample-walkthrough>div>p:last-child{color:#cbd4cc}.sample-walkthrough ol{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;counter-reset:steps}.sample-walkthrough li{counter-increment:steps;display:grid;align-content:start;gap:5px;min-width:0;padding:12px;background:rgba(255,255,255,.08);font-size:.72rem}.sample-walkthrough li:before{content:counter(steps,decimal-leading-zero);color:#d4b681;font-family:Georgia,serif;font-size:1.2rem}.sample-walkthrough li span{color:#ced5cf;overflow-wrap:anywhere}.sample-lab-section{margin-top:34px;scroll-margin-top:110px}.sample-section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:14px}.sample-section-heading h4{margin:0;font-size:clamp(1.45rem,3vw,2.1rem)}.sample-section-heading>span{max-width:300px;color:var(--muted);font-size:.72rem;text-align:right}.sample-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sample-resource-card{display:grid;align-content:start;min-width:0;padding:17px;border:1px solid var(--line);background:#fffdf8}.sample-card-top{display:flex;align-items:start;justify-content:space-between;gap:12px;color:var(--clay);font-size:.63rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.sample-card-top b{text-align:right;color:var(--muted)}.sample-resource-card h5{margin:10px 0 6px;font-family:Georgia,serif;font-size:1.1rem}.sample-resource-card p{margin:0 0 10px;color:var(--moss);font-size:.8rem}.sample-resource-card dl{display:grid;gap:5px;margin:auto 0 12px;padding-top:9px;border-top:1px solid var(--line)}.sample-resource-card dl div{display:grid;grid-template-columns:65px minmax(0,1fr);gap:8px;font-size:.7rem}.sample-resource-card dt{color:var(--clay);font-weight:800}.sample-resource-card dd{min-width:0;margin:0;color:var(--muted);overflow-wrap:anywhere}.sample-resource-card>a{justify-self:start}.sample-resource-card.trend{border-top:3px solid var(--moss)}.sample-filter-chips{display:flex;gap:6px;margin:0 0 12px;padding-bottom:3px;overflow-x:auto}.sample-filter-chips button{flex:none;min-height:42px;padding:8px 11px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--moss);font-size:.72rem}.sample-filter-chips button.active{border-color:var(--deep);background:var(--deep);color:var(--paper)}.sample-empty{grid-column:1/-1;padding:18px;border:1px dashed var(--line);color:var(--muted)}.sample-allowance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.sample-allowance-summary span{display:grid;gap:4px;padding:14px;border:1px solid var(--line);background:#f7f3eb}.sample-allowance-summary small{color:var(--muted);font-size:.66rem;font-weight:800;text-transform:uppercase}.sample-allowance-summary strong{font-size:1.3rem}.sample-allowance-summary .over strong,.variance.over{color:#944230}.sample-allowance-summary .under strong,.variance.under{color:#3f6945}.sample-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line)}.sample-ledger{width:100%;min-width:980px;border-collapse:collapse;font-size:.74rem}.sample-ledger th,.sample-ledger td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.sample-ledger th{background:var(--deep);color:var(--paper);font-size:.64rem;letter-spacing:.06em;text-transform:uppercase}.sample-ledger td:first-child strong,.sample-ledger td:first-child span{display:block}.sample-ledger td:first-child span{color:var(--muted);font-size:.67rem}.variance{font-weight:900;white-space:nowrap}.ledger-status{display:inline-block;padding:4px 6px;background:#ede8dc;font-size:.65rem;font-weight:800}.sample-ledger-cards{display:none}.open-sample-lab{margin-top:16px;border-radius:4px}
@media(max-width:900px){.sample-lab-hero,.sample-walkthrough{grid-template-columns:1fr}.sample-walkthrough ol{grid-template-columns:repeat(2,minmax(0,1fr))}.sample-search-tools{grid-template-columns:1fr 1fr}.sample-search-tools button{grid-column:1/-1}.sample-resource-grid{grid-template-columns:1fr}}
@media(max-width:650px){.sample-lab{margin-inline:-4px;padding:18px 14px}.sample-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.sample-section-heading>span{text-align:left}.sample-walkthrough{padding:18px 14px}.sample-walkthrough ol{grid-template-columns:1fr}.sample-search-tools{grid-template-columns:1fr}.sample-search-tools button{grid-column:auto}.sample-allowance-summary{grid-template-columns:1fr}.sample-table-wrap{display:none}.sample-ledger-cards{display:grid;gap:8px}.sample-ledger-cards article{padding:14px;border:1px solid var(--line);background:#fffdf8}.sample-ledger-cards header{display:flex;justify-content:space-between;gap:12px}.sample-ledger-cards header span{color:var(--clay);font-size:.65rem;font-weight:800;text-transform:uppercase}.sample-ledger-cards h5{margin:3px 0;font-family:Georgia,serif;font-size:1.05rem}.sample-ledger-cards dl{display:grid;gap:6px;margin:10px 0 0}.sample-ledger-cards dl div{display:grid;grid-template-columns:95px minmax(0,1fr);gap:8px;font-size:.72rem}.sample-ledger-cards dt{color:var(--muted)}.sample-ledger-cards dd{min-width:0;margin:0;overflow-wrap:anywhere}}

/* Searchable selection and trend intelligence */
.advisor-shell{margin:0 0 30px;padding:clamp(20px,4vw,36px);border-radius:18px;background:#18241f;color:var(--paper);box-shadow:var(--shadow);overflow:hidden}.advisor-heading{display:flex;align-items:start;justify-content:space-between;gap:24px}.advisor-heading h3{max-width:780px;margin:0;font-size:clamp(2rem,4vw,3.4rem);color:var(--paper)}.advisor-heading p:last-child{max-width:800px;color:#c9d1cb}.advisor-live{flex:none;padding:9px 12px;border:1px solid #718477;color:#d8c08e;font-size:.69rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.advisor-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin:24px 0 14px}.advisor-search{display:grid;gap:7px}.advisor-search span{font-size:.69rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.advisor-search input{width:100%;min-height:52px;padding:12px 15px;border:1px solid #718477;border-radius:4px;background:#fffdf8;color:var(--ink);font:inherit}.advisor-search-row button{min-height:52px}.advisor-filters{display:flex;gap:7px;max-width:100%;padding:5px 0;overflow-x:auto;scrollbar-width:thin}.advisor-filters button{flex:none;min-height:44px;padding:8px 12px;border:1px solid #52635a;background:transparent;color:#dde3de}.advisor-filters button.active{border-color:#d0b178;background:#d0b178;color:#18241f;font-weight:900}.advisor-filters.room-filter{margin-top:4px}.advisor-filters.room-filter button{border-radius:999px}.advisor-result-status{margin:14px 0;color:#c9d1cb;font-size:.76rem}.advisor-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.advisor-card{display:grid;grid-template-rows:auto 1fr auto auto;min-width:0;padding:16px;background:#fffdf8;color:var(--ink)}.advisor-card header{display:flex;align-items:start;justify-content:space-between;gap:10px}.advisor-card header span{color:var(--clay);font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.advisor-card h4{margin:5px 0 0;font-size:1.13rem}.selection-status{flex:none;padding:5px 7px;background:var(--sage);color:var(--moss);font-size:.62rem;text-transform:uppercase}.advisor-card>p{color:var(--muted);font-size:.78rem;line-height:1.5}.advisor-card dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:0;background:var(--line)}.advisor-card dl div{padding:9px;background:var(--stone)}.advisor-card dt{color:var(--muted);font-size:.61rem;text-transform:uppercase}.advisor-card dd{margin:3px 0 0;font-size:.75rem;font-weight:900}.advisor-card .risk-high{color:#8a4033}.advisor-card footer{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-top:13px;font-size:.67rem}.advisor-card footer span{color:var(--muted)}.advisor-card a,.resource-links a{color:#3f6251;overflow-wrap:anywhere}.advisor-empty{grid-column:1/-1;padding:30px;border:1px dashed #718477}.advisor-lower-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:12px;margin-top:18px}.profile-packet,.production-panel{min-width:0;padding:20px;background:#f2ede3;color:var(--ink)}.mini-head{display:flex;justify-content:space-between;gap:10px}.mini-head h4,.production-panel h4{margin:0;font-size:1.45rem}.mini-head>span{height:fit-content;padding:5px 7px;background:#7e493e;color:white;font-size:.62rem;font-weight:900}.profile-packet>p,.production-panel>p{color:var(--muted);font-size:.78rem}.packet-docs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.packet-docs article{padding:11px;background:#fffdf8;border-left:2px solid var(--brass)}.packet-docs strong{font-size:.72rem}.packet-docs p{margin:5px 0 0;color:var(--muted);font-size:.68rem}.profile-packet h5{margin-bottom:8px}.packet-ledger{display:grid;gap:4px}.packet-ledger>div{display:grid;grid-template-columns:minmax(90px,.5fr) minmax(0,1fr) auto;gap:8px;align-items:center;padding:9px;background:#fffdf8;font-size:.7rem}.packet-ledger small{color:var(--muted)}.packet-ledger b.under{color:#416448}.packet-ledger b.over{color:#8a4033}.profile-packet details{margin-top:12px}.profile-packet summary{min-height:44px;padding:12px;background:#fffdf8;cursor:pointer;font-weight:900}.resource-links{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:6px}.resource-links a{display:grid;padding:9px;background:#fffdf8;font-size:.72rem}.resource-links small{color:var(--muted)}.production-panel{background:#dfe8df}.production-panel dl{display:grid;gap:1px;background:#afbdaf}.production-panel dl div{padding:12px;background:#f5f7f2}.production-panel dt{color:var(--clay);font-size:.62rem;font-weight:900;text-transform:uppercase}.production-panel dd{margin:4px 0 0;font-size:.78rem}.connection-safe{padding-top:12px;border-top:1px solid #afbdaf}.advisor-shell button,.advisor-shell a,.profile-packet summary{min-height:44px}
@media(max-width:1000px){.advisor-results{grid-template-columns:1fr 1fr}.advisor-lower-grid{grid-template-columns:1fr}}
@media(max-width:680px){.advisor-shell{margin-inline:-4px;padding:20px 14px}.advisor-heading{display:grid}.advisor-live{width:fit-content}.advisor-search-row{grid-template-columns:1fr}.advisor-results,.packet-docs,.resource-links{grid-template-columns:1fr}.packet-ledger>div{grid-template-columns:1fr}.advisor-card footer{align-items:flex-start;flex-direction:column}.advisor-card footer a{display:flex;align-items:center}.advisor-filters{margin-inline:-14px;padding-inline:14px}.profile-packet,.production-panel{padding:16px}}
