:root{--paper: #f6f4ee;--card: #fffdf8;--ink: #171a21;--ink-soft: #3c4048;--muted: #6b6f7a;--rule: #e3dfd3;--rule-strong: #cfc9b8;--stamp: #c34a22;--stamp-deep: #9e3813;--red: #b3261e;--red-bg: #fbeeec;--amber: #96690a;--amber-bg: #faf3e0;--green: #1c7a4d;--green-bg: #e9f4ee;--info-bg: #eef1f6;--est: #5a6b8c;--serif: "Fraunces", Georgia, "Times New Roman", serif;--sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--shadow: 0 1px 2px rgba(23, 26, 33, .05), 0 8px 24px -12px rgba(23, 26, 33, .18)}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}::selection{background:#f3d8cc}button{font:inherit;cursor:pointer}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;gap:16px;padding:14px 28px;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:20}.wordmark{font-family:var(--serif);font-weight:700;font-size:22px;letter-spacing:-.02em;color:var(--ink);text-decoration:none;user-select:none}.wordmark .dot{color:var(--stamp)}.topbar .crumb{font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.btn{border:1px solid var(--rule-strong);background:var(--card);color:var(--ink);border-radius:8px;padding:8px 14px;font-size:13.5px;font-weight:500;transition:border-color .15s,background .15s,transform .05s}.btn:hover{border-color:var(--ink-soft)}.btn:active{transform:translateY(1px)}.btn.primary{background:var(--ink);border-color:var(--ink);color:var(--paper)}.btn.primary:hover{background:#23262e}.btn.stamp{background:var(--stamp);border-color:var(--stamp);color:#fff}.btn.stamp:hover{background:var(--stamp-deep)}.landing{flex:1;display:flex;flex-direction:column;align-items:center;padding:8vh 24px 48px}.landing h1{font-family:var(--serif);font-weight:600;font-size:clamp(34px,5.4vw,58px);letter-spacing:-.025em;line-height:1.06;text-align:center;max-width:15ch}.landing h1 em{font-style:italic;color:var(--stamp)}.landing .sub{margin-top:18px;font-size:16.5px;color:var(--ink-soft);text-align:center;max-width:52ch}.dropzone{margin-top:44px;width:min(680px,92vw);border:1.5px dashed var(--rule-strong);border-radius:16px;background:var(--card);padding:52px 32px;text-align:center;transition:border-color .15s,background .15s,box-shadow .15s;box-shadow:var(--shadow)}.dropzone.hot{border-color:var(--stamp);background:#fff8f3;box-shadow:0 0 0 4px #c34a221f,var(--shadow)}.dropzone .dz-title{font-family:var(--serif);font-size:21px;font-weight:600}.dropzone .dz-hint{margin-top:6px;color:var(--muted);font-size:13.5px}.dropzone .dz-actions{margin-top:22px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.landing .privacy{margin-top:26px;font-size:13px;color:var(--muted);display:flex;align-items:center;gap:8px}.privacy .lock{color:var(--green)}.landing .capabilities{margin-top:64px;display:grid;grid-template-columns:repeat(auto-fit,minmax(196px,1fr));gap:14px;width:min(900px,92vw)}.cap{background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:18px 18px 16px}.cap .cap-k{font-family:var(--serif);font-weight:600;font-size:16px}.cap p{margin-top:6px;font-size:13.5px;color:var(--muted)}.err-banner{margin-top:20px;width:min(680px,92vw);background:var(--red-bg);border:1px solid #e5c5c1;color:var(--red);border-radius:10px;padding:14px 18px;font-size:14px}.err-banner b{display:block;margin-bottom:2px}.err-banner .quiet{color:var(--ink-soft)}.dealroom{flex:1;width:min(1180px,100%);margin:0 auto;padding:30px 28px 80px}.deal-hero{padding:8px 0 26px;border-bottom:2px solid var(--ink)}.deal-hero .addr{font-family:var(--serif);font-weight:600;font-size:clamp(26px,3.6vw,40px);letter-spacing:-.02em;line-height:1.1}.deal-hero .parties{margin-top:8px;color:var(--ink-soft);font-size:15px}.deal-hero .parties b{font-weight:600}.keyrow{display:flex;flex-wrap:wrap;gap:0;margin-top:22px;border:1px solid var(--rule);border-radius:12px;background:var(--card);overflow:hidden}.key{flex:1 1 130px;padding:14px 18px;border-right:1px solid var(--rule);min-width:120px}.key:last-child{border-right:none}.key .k-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.key .k-value{margin-top:3px;font-family:var(--serif);font-size:20px;font-weight:600;white-space:nowrap}.key .k-value.missing{color:var(--red);font-size:15px;font-family:var(--sans);font-weight:600}.key .k-sub{font-size:12px;color:var(--muted);margin-top:1px}.tl-section{margin-top:34px}.section-h{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.section-h h2{font-family:var(--serif);font-weight:600;font-size:21px;letter-spacing:-.01em}.section-h .note{font-size:12.5px;color:var(--muted)}.section-h .spacer{flex:1}.timeline{position:relative;overflow-x:auto;padding:18px 8px 6px;background:var(--card);border:1px solid var(--rule);border-radius:14px;box-shadow:var(--shadow)}.tl-rail{display:flex;min-width:640px;padding:10px 26px 18px}.tl-node{flex:1;min-width:108px;position:relative;padding-top:34px}.tl-node:before{content:"";position:absolute;top:21px;left:0;right:0;height:2px;background:var(--rule-strong)}.tl-node:first-child:before{left:50%}.tl-node:last-child:before{right:50%}.tl-dot{position:absolute;top:14px;left:50%;transform:translate(-50%);width:16px;height:16px;border-radius:50%;background:var(--card);border:3px solid var(--ink);z-index:2}.tl-node.past .tl-dot{background:var(--ink)}.tl-node.today .tl-dot{border-color:var(--stamp);background:var(--stamp);box-shadow:0 0 0 5px #c34a222e}.tl-node.urgent .tl-dot{border-color:var(--stamp)}.tl-node.est .tl-dot{border-style:dashed;border-color:var(--est)}.tl-body{text-align:center;padding:0 6px}.tl-date{font-size:12px;font-weight:600;color:var(--ink-soft)}.tl-node.today .tl-date{color:var(--stamp)}.tl-title{font-size:12.5px;color:var(--muted);margin-top:2px;line-height:1.3}.tl-days{margin-top:4px;display:inline-block;font-size:10.5px;font-weight:600;border-radius:99px;padding:1px 8px}.tl-days.past{color:var(--muted);background:var(--info-bg)}.tl-days.today{color:#fff;background:var(--stamp)}.tl-days.urgent{color:var(--stamp-deep);background:#f9e3da}.tl-days.upcoming{color:var(--green);background:var(--green-bg)}.deal-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:26px;margin-top:34px;align-items:start}@media(max-width:900px){.deal-grid{grid-template-columns:1fr}}.card{background:var(--card);border:1px solid var(--rule);border-radius:14px;box-shadow:var(--shadow)}.dl-card{display:flex;gap:16px;padding:16px 18px;border-bottom:1px solid var(--rule)}.dl-card:last-child{border-bottom:none}.dl-date{flex:0 0 74px;text-align:center;padding-top:2px}.dl-date .d-mon{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--stamp)}.dl-date .d-day{font-family:var(--serif);font-size:30px;font-weight:700;line-height:1}.dl-date .d-wk{font-size:11px;color:var(--muted);margin-top:2px}.dl-date.none .d-day{color:var(--rule-strong)}.dl-main{flex:1;min-width:0}.dl-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dl-title{font-weight:600;font-size:15px}.badge{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border-radius:5px;padding:2px 7px}.badge.time{background:var(--ink);color:var(--paper)}.badge.est{background:#e7ecf5;color:var(--est)}.badge.ext{background:var(--green-bg);color:var(--green)}.badge.st-past{background:var(--info-bg);color:var(--muted)}.badge.st-today{background:var(--stamp);color:#fff}.badge.st-urgent{background:#f9e3da;color:var(--stamp-deep)}.badge.st-missing{background:var(--red-bg);color:var(--red)}.dl-detail{margin-top:5px;font-size:13.5px;color:var(--ink-soft)}.dl-basis{margin-top:5px;font-size:11.5px;color:var(--muted);font-style:italic}.flag{display:flex;gap:12px;padding:13px 16px;border-bottom:1px solid var(--rule)}.flag:last-child{border-bottom:none}.flag .f-pip{flex:0 0 10px;height:10px;border-radius:50%;margin-top:5px}.flag.red .f-pip{background:var(--red)}.flag.amber .f-pip{background:var(--amber)}.flag.info .f-pip{background:var(--est)}.flag .f-title{font-weight:600;font-size:14px}.flag.red .f-title{color:var(--red)}.flag.amber .f-title{color:var(--amber)}.flag .f-detail{font-size:13px;color:var(--ink-soft);margin-top:3px}.flag .f-basis{font-size:11px;color:var(--muted);font-style:italic;margin-top:3px}.flag-clean{padding:20px 18px;font-size:14px;color:var(--green);display:flex;gap:10px;align-items:center}.facts{margin-top:26px}.fact-group{padding:14px 18px;border-bottom:1px solid var(--rule)}.fact-group:last-child{border-bottom:none}.fact-group h3{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:700;margin-bottom:8px}.fact-row{display:flex;gap:10px;font-size:13.5px;padding:2.5px 0}.fact-row .fk{flex:0 0 128px;color:var(--muted)}.fact-row .fv{flex:1;min-width:0;overflow-wrap:anywhere}.fact-row .fv.empty{color:var(--rule-strong)}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{font-size:12px;font-weight:500;background:var(--info-bg);border-radius:99px;padding:3px 10px;color:var(--ink-soft)}.explainer{margin-top:34px}.exp-item{border-bottom:1px solid var(--rule)}.exp-item:last-child{border-bottom:none}.exp-head{width:100%;display:flex;align-items:baseline;gap:14px;background:none;border:none;text-align:left;padding:13px 18px}.exp-head:hover{background:#fbf9f2}.exp-num{font-family:var(--serif);font-weight:700;font-size:15px;color:var(--stamp);flex:0 0 24px}.exp-title{font-weight:600;font-size:14.5px;flex:1}.exp-chev{color:var(--muted);font-size:12px}.exp-body{padding:2px 18px 16px 56px;font-size:13.5px;color:var(--ink-soft)}.exp-body .lens{margin-top:8px;display:flex;gap:8px}.lens .who{flex:0 0 52px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding-top:2px}.foot{border-top:1px solid var(--rule);padding:22px 28px 30px;font-size:12px;color:var(--muted);text-align:center;line-height:1.7}.foot .brand{font-family:var(--serif);font-weight:700;color:var(--ink-soft)}.quick{flex:1;width:min(720px,94vw);margin:0 auto;padding:40px 0 80px}.quick h1{font-family:var(--serif);font-weight:600;font-size:30px;letter-spacing:-.02em}.quick .sub{color:var(--muted);margin-top:6px;font-size:14px}.qform{margin-top:26px;display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}@media(max-width:640px){.qform{grid-template-columns:1fr}}.qfield{display:flex;flex-direction:column;gap:5px}.qfield.wide{grid-column:1 / -1}.qfield label{font-size:12.5px;font-weight:600;color:var(--ink-soft)}.qfield input,.qfield select{font:inherit;font-size:14.5px;padding:9px 12px;border:1px solid var(--rule-strong);border-radius:8px;background:var(--card);color:var(--ink)}.qfield input:focus,.qfield select:focus{outline:none;border-color:var(--stamp);box-shadow:0 0 0 3px #c34a2224}.qfield .hint{font-size:11.5px;color:var(--muted)}.qactions{grid-column:1 / -1;display:flex;gap:12px;margin-top:8px}.doors{margin-top:40px;display:grid;grid-template-columns:1fr 1fr;gap:16px;width:min(880px,92vw)}@media(max-width:700px){.doors{grid-template-columns:1fr}}.door{text-align:left;border-radius:16px;padding:26px 24px;border:1.5px solid var(--rule-strong);background:var(--card);box-shadow:var(--shadow);cursor:pointer;transition:border-color .15s,transform .08s,box-shadow .15s;display:flex;flex-direction:column;gap:8px}.door:hover{transform:translateY(-1px)}.primary-door{background:var(--ink);border-color:var(--ink)}.primary-door .door-k{color:var(--paper)}.primary-door .door-d{color:#b9bcc4}.primary-door:hover{border-color:var(--stamp);box-shadow:0 0 0 3px #c34a2233,var(--shadow)}.dropzone-door{border-style:dashed}.dropzone-door.hot{border-color:var(--stamp);background:#fff8f3;box-shadow:0 0 0 4px #c34a221f,var(--shadow)}.door-k{font-family:var(--serif);font-weight:600;font-size:20px}.door-d{font-size:13.5px;color:var(--muted);line-height:1.5}.builder{flex:1;display:grid;grid-template-columns:180px minmax(0,1fr) 320px;gap:28px;width:min(1280px,100%);margin:0 auto;padding:30px 28px 80px;align-items:start}@media(max-width:1080px){.builder{grid-template-columns:160px minmax(0,1fr)}.b-side{grid-column:1 / -1}}@media(max-width:700px){.builder{grid-template-columns:1fr}.b-nav{position:static;display:flex;flex-wrap:wrap;gap:6px}}.b-nav{position:sticky;top:74px;display:flex;flex-direction:column;gap:2px}.b-nav-item{text-align:left;background:none;border:none;border-left:2px solid transparent;padding:8px 12px;font-size:13.5px;color:var(--muted);border-radius:0 8px 8px 0}.b-nav-item:hover{color:var(--ink);background:#f1eee6}.b-nav-item.active{color:var(--stamp);border-left-color:var(--stamp);font-weight:600;background:#fdf3ee}.b-nav-item.danger{margin-top:18px;color:var(--red);opacity:.7}.b-title{font-family:var(--serif);font-weight:600;font-size:26px;letter-spacing:-.02em;margin-bottom:18px}.b-side{position:sticky;top:74px}.b-addenda{max-width:640px}.autosave{font-size:11.5px;color:var(--green)}.chip-toggle{font-size:12.5px;font-weight:500;border-radius:99px;padding:5px 13px;border:1px solid var(--rule-strong);background:var(--card);color:var(--ink-soft);transition:all .12s}.chip-toggle:hover{border-color:var(--ink-soft)}.chip-toggle.on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.modal-scrim{position:fixed;inset:0;background:#171a2173;z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;overflow-y:auto}.modal{background:var(--paper);border-radius:16px;width:min(720px,100%);padding:24px 26px 22px;box-shadow:0 24px 80px -12px #171a2166}.modal-head{display:flex;justify-content:space-between;align-items:baseline}.modal-head h2{font-family:var(--serif);font-weight:600;font-size:24px}.modal-sub{margin-top:8px;font-size:13.5px;color:var(--muted)}.amod-grid{margin-top:18px;display:flex;flex-direction:column;gap:4px}.amod-row{display:flex;gap:10px;align-items:center;padding:9px 10px;border-radius:8px;cursor:pointer}.amod-row:hover{background:#f1eee6}.amod-row input{width:16px;height:16px;accent-color:var(--stamp)}.amod-label{font-weight:600;font-size:14.5px}.amod-fields{padding:4px 10px 14px 36px}.amod-inline{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--ink-soft);grid-column:1 / -1}.modal-actions{margin-top:16px;display:flex;justify-content:flex-end}.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--paper);font-size:13.5px;padding:11px 18px;border-radius:10px;box-shadow:0 12px 40px -8px #171a2180;z-index:60;max-width:min(560px,90vw)}@media print{.topbar,.dz-actions,.section-h .btn,.noprint{display:none!important}body{background:#fff}.card,.timeline,.keyrow{box-shadow:none}.dealroom{padding:0}}.dash{flex:1;width:min(1080px,100%);margin:0 auto;padding:30px 28px 80px}.dash-empty{padding:26px;font-size:14.5px;color:var(--ink-soft)}.dash-row{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--rule)}.dash-row:last-child{border-bottom:none}.dash-open{flex:1;min-width:0;background:none;border:none;text-align:left;padding:0;display:flex;flex-direction:column;gap:2px}.dash-addr{font-family:var(--serif);font-weight:600;font-size:16.5px;color:var(--ink)}.dash-open:hover .dash-addr{color:var(--stamp)}.dash-sub{font-size:12.5px;color:var(--muted)}.dash-next{flex:0 0 220px;display:flex;flex-direction:column;gap:1px}.dash-next-date{font-size:12.5px;font-weight:700;color:var(--stamp)}.dash-next-title{font-size:12px;color:var(--ink-soft)}.dash-next-title.quiet{color:var(--rule-strong)}.dash-stage{font:inherit;font-size:12.5px;padding:6px 8px;border:1px solid var(--rule-strong);border-radius:7px;background:var(--card);color:var(--ink-soft)}.dash-del{background:none;border:none;color:var(--rule-strong);font-size:20px;line-height:1;padding:4px 6px}.dash-del:hover{color:var(--red)}.feed-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:none;border:none;padding:11px 16px;border-bottom:1px solid var(--rule)}.feed-row:last-child{border-bottom:none}.feed-row:hover{background:#fbf9f2}.feed-chip{flex:0 0 92px;text-align:center;font-size:11px;font-weight:700;border-radius:99px;padding:3px 0}.feed-chip.overdue{background:var(--red-bg);color:var(--red)}.feed-chip.today{background:var(--stamp);color:#fff}.feed-chip.week{background:var(--amber-bg);color:var(--amber)}.feed-title{font-size:14px;font-weight:600;color:var(--ink)}.feed-addr{margin-left:auto;font-size:12.5px;color:var(--muted)}.lib-row{display:flex;align-items:center;gap:16px;padding:13px 18px;border-bottom:1px solid var(--rule);text-decoration:none;color:inherit}.lib-row:last-child{border-bottom:none}.lib-row:hover{background:#fbf9f2}.lib-no{flex:0 0 64px;font-family:var(--serif);font-weight:700;font-size:14px;color:var(--stamp)}.lib-main{flex:1;display:flex;flex-direction:column;gap:1px}.lib-title{font-weight:600;font-size:14.5px}.lib-note{font-size:12.5px;color:var(--muted)}.lib-dl{font-size:12px;color:var(--est)}.acct{padding:20px 22px}.acct-head h3{font-family:var(--serif);font-size:18px;font-weight:600}.acct-head p{font-size:13px;color:var(--muted);margin:6px 0 14px}.acct-head.signed{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.acct-err{grid-column:1 / -1;color:var(--red);font-size:13px;font-weight:600}.acct-listings h4{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.listing-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--rule)}.listing-main{flex:1;display:flex;flex-direction:column;gap:1px}.listing-title{font-weight:600;font-size:14px}.listing-sub{font-size:12.5px;color:var(--muted)}.listing-sub a{color:var(--est)}.sev-summary{font-size:12px;font-weight:700;border-radius:99px;padding:4px 12px}.sev-summary.good{background:var(--green-bg);color:var(--green)}.sev-summary.warn{background:var(--amber-bg);color:var(--amber)}.sev-summary.bad{background:var(--red-bg);color:var(--red)}.sec-dot{display:inline-block;width:18px;font-size:11px;font-weight:700}.sec-dot.good{color:var(--green)}.sec-dot.warn{color:var(--amber)}.sec-dot.bad{color:var(--red)}.sec-dot.empty{color:var(--rule-strong)}.b-lede{font-size:14px;color:var(--ink-soft);max-width:62ch;margin-bottom:18px}.dict-input{display:flex;gap:12px;margin-top:16px;align-items:stretch}.mic-btn{flex:0 0 auto;border-radius:12px;border:1.5px solid var(--rule-strong);background:var(--card);font-size:15px;font-weight:600;padding:0 20px}.mic-btn.live{background:var(--red);border-color:var(--red);color:#fff;animation:micpulse 1.2s ease-in-out infinite}@keyframes micpulse{50%{box-shadow:0 0 0 8px #b3261e26}}.dict-text{flex:1;font:inherit;font-size:14.5px;padding:10px 12px;border:1px solid var(--rule-strong);border-radius:10px;background:var(--card);resize:vertical}.dict-text:focus{outline:none;border-color:var(--stamp);box-shadow:0 0 0 3px #c34a2224}.dict-review{margin-top:16px;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}.dict-chip{display:flex;align-items:baseline;gap:7px;border:1px solid var(--rule);border-radius:9px;padding:8px 10px;font-size:12.5px;background:var(--card)}.dict-chip.sure{border-color:#bcd8c8;background:var(--green-bg)}.dict-chip.guess{border-color:#e3cf9d;background:var(--amber-bg)}.dict-chip.missing{opacity:.6}.dc-icon{font-weight:700}.dict-chip.sure .dc-icon{color:var(--green)}.dict-chip.guess .dc-icon{color:var(--amber)}.dc-label{color:var(--muted);flex:0 0 auto}.dc-value{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drop-overlay{position:fixed;inset:0;z-index:80;background:#171a218c;display:flex;align-items:center;justify-content:center;pointer-events:none}.drop-overlay-card{background:var(--paper);border:2px dashed var(--stamp);border-radius:18px;padding:34px 48px;font-family:var(--serif);font-weight:600;font-size:22px}.foot-nav{display:flex;gap:18px;justify-content:center;margin-bottom:10px}.foot-nav a{color:var(--ink-soft);font-weight:600;text-decoration:none;font-size:12.5px}.foot-nav a:hover{color:var(--stamp)}.deal-grid.client{grid-template-columns:1fr}.state-pick{display:inline-flex;align-items:center;gap:7px}.state-pick select{font:inherit;font-size:13px;font-weight:600;padding:7px 10px;border:1px solid var(--rule-strong);border-radius:8px;background:var(--card);color:var(--ink);max-width:150px}.state-tier-dot{display:inline-block;width:9px;height:9px;border-radius:50%}.state-tier-dot.full{background:var(--green)}.state-tier-dot.state{background:var(--est)}.state-tier-dot.assoc{background:var(--amber)}.state-tier-dot.attorney{background:var(--muted)}.state-banner{margin-top:22px;width:min(680px,92vw);border-radius:12px;padding:13px 18px;display:flex;flex-direction:column;gap:3px;border:1px solid var(--rule);background:var(--card);text-align:left}.state-banner.full{border-color:#bcd8c8;background:var(--green-bg)}.state-banner.state{border-color:#c4cfe2;background:#eef1f8}.state-banner-name{font-family:var(--serif);font-weight:700;font-size:15px}.state-banner-note{font-size:13px;color:var(--ink-soft)}.state-banner-note a{color:var(--est);font-weight:600}.builder-state-note{background:var(--amber-bg);border-bottom:1px solid var(--rule);padding:10px 28px;font-size:13px;color:var(--ink-soft)}.state-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:4px;padding:14px}.state-cell{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12.5px;font-weight:700;padding:9px 4px;border:1px solid transparent;border-radius:8px;background:none;color:var(--ink-soft)}.state-cell:hover{background:#f1eee6}.state-cell.active{border-color:var(--stamp);color:var(--stamp);background:#fdf3ee}:root{--spring: cubic-bezier(.34, 1.56, .64, 1);--soft-out: cubic-bezier(.22, 1, .36, 1);--d-quick: .18s;--d-move: .32s;--d-grand: .52s}html.motion [data-reveal]{opacity:0;transform:translateY(14px)}html.motion [data-reveal].in{opacity:1;transform:none;transition:opacity var(--d-grand) var(--soft-out) var(--reveal-delay, 0ms),transform var(--d-grand) var(--soft-out) var(--reveal-delay, 0ms)}html.motion .landing h1{animation:rise var(--d-grand) var(--soft-out) both}html.motion .landing .sub{animation:rise var(--d-grand) var(--soft-out) .12s both}html.motion .landing .state-banner{animation:rise var(--d-grand) var(--soft-out) .2s both}html.motion .doors{animation:rise var(--d-grand) var(--soft-out) .26s both}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}html.motion .wordmark .dot{display:inline-block;animation:dotbow .9s var(--spring) .5s both}@keyframes dotbow{0%{transform:translateY(-10px) scale(.6)}60%{transform:translateY(2px) scale(1.15)}to{transform:none}}html.motion .timeline.in .tl-node:before{animation:railgrow var(--d-grand) var(--soft-out) both;animation-delay:calc(var(--tl-i, 0) * 70ms);transform-origin:left center}html.motion .timeline:not(.in) .tl-node:before{transform:scaleX(0)}@keyframes railgrow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}html.motion .timeline.in .tl-dot{animation:dotpop .48s var(--spring) both;animation-delay:calc(var(--tl-i, 0) * 70ms + .12s)}html.motion .timeline:not(.in) .tl-dot{transform:translate(-50%) scale(0)}@keyframes dotpop{0%{transform:translate(-50%) scale(0)}to{transform:translate(-50%) scale(1)}}html.motion .timeline.in .tl-body{animation:rise .42s var(--soft-out) both;animation-delay:calc(var(--tl-i, 0) * 70ms + .18s)}html.motion .tl-node.today .tl-dot:after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--stamp);animation:ping 2.6s var(--soft-out) infinite}@keyframes ping{0%{opacity:.7;transform:scale(.6)}70%,to{opacity:0;transform:scale(2.1)}}.btn{will-change:transform}html.motion .btn{transition:border-color .15s,background .15s,transform .16s var(--spring),box-shadow .2s}html.motion .btn:hover{transform:translateY(-1px)}html.motion .btn:active{transform:translateY(1px) scale(.97)}html.motion .btn.stamp:hover{box-shadow:0 4px 14px -4px #c34a228c}html.motion .btn.stamp:active{animation:thunk .24s var(--spring)}@keyframes thunk{0%{transform:scale(1)}40%{transform:scale(.94) rotate(-.6deg)}to{transform:scale(.97) translateY(1px)}}html.motion .card,html.motion .cap,html.motion .door{transition:transform var(--d-quick) var(--soft-out),box-shadow var(--d-move) var(--soft-out),border-color .15s}html.motion .cap:hover,html.motion .door:hover{transform:translateY(-3px);box-shadow:0 2px 3px #171a210d,0 14px 34px -14px #171a213d}html.motion .dict-chip.sure,html.motion .dict-chip.guess{animation:chippop .38s var(--spring) both}@keyframes chippop{0%{opacity:0;transform:scale(.82)}to{opacity:1;transform:scale(1)}}html.motion .dc-icon{display:inline-block}html.motion .dict-chip.sure .dc-icon{animation:checkin .42s var(--spring) .12s both}@keyframes checkin{0%{transform:scale(0) rotate(-30deg)}to{transform:scale(1) rotate(0)}}html.motion .flag.red .f-pip,html.motion .feed-chip.overdue{animation:breathe 2.4s ease-in-out infinite}@keyframes breathe{50%{opacity:.55}}html.motion .card.in>.dl-card,html.motion .card.in>.feed-row,html.motion .card.in>.dash-row{animation:rise .42s var(--soft-out) both}html.motion .card.in>:nth-child(1){animation-delay:40ms}html.motion .card.in>:nth-child(2){animation-delay:90ms}html.motion .card.in>:nth-child(3){animation-delay:.14s}html.motion .card.in>:nth-child(4){animation-delay:.19s}html.motion .card.in>:nth-child(5){animation-delay:.24s}html.motion .card.in>:nth-child(6){animation-delay:.29s}html.motion .card.in>:nth-child(n+7){animation-delay:.33s}html.motion .drop-overlay-card{animation:overlayin .32s var(--spring) both}@keyframes overlayin{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:none}}html.motion .modal{animation:modalin .36s var(--spring) both}@keyframes modalin{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}html.motion .toast{animation:toastin .38s var(--spring) both}@keyframes toastin{0%{opacity:0;transform:translate(-50%,14px) scale(.95)}to{opacity:1;transform:translate(-50%) scale(1)}}.b-progress{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600;color:var(--muted)}.b-progress-track{width:120px;height:5px;border-radius:99px;background:var(--rule);overflow:hidden}.b-progress-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--stamp),var(--stamp-deep))}html.motion .b-progress-fill{transition:width var(--d-grand) var(--soft-out)}.b-progress.done{color:var(--green)}.b-progress.done .b-progress-fill{background:var(--green)}.state-banner.full{background:linear-gradient(135deg,var(--green-bg) 0%,#f2f8ef 55%,#fbf7ea 100%)}.state-banner.state{background:linear-gradient(135deg,#eef1f8,#f3f2f8 60%,#faf6ef)}html.motion .mic-btn.live{animation:micpulse 1.2s ease-in-out infinite,micbob 2.4s ease-in-out infinite}@keyframes micbob{50%{transform:translateY(-1px)}}
