:root{--spruce:#1B4332;--spruce-2:#256B4D;--stamp-green:#2E7D5B;--stamp-green-2:#2A7252;--postmark:#3A4E86;--marigold:#E0982B;--marigold-2:#CD8820;--marigold-ink:#A9741A;--paper:#F1EAD9;--paper-2:#F1EAD8;--card:#FFFFFF;--mist:#EFE8D8;--cream-card:#FCF9EF;--tape:#FCFAF3;--ink:#1E2A24;--ink-2:#3A4A40;--pencil:#6E6656;--faint:#9A8F76;--cream-text:#F1EAD9;--cream-muted:#8FB39E;--cream-tagline:#CFE0D3;--kraft:#E4D9BE;--tan:#D8C9A6;--line:#E0D5BA;--rule:#C9BD9C;--clay:#B4472C;--ok-text:#2E7D5B;--ok-bg:#E7F1EB;--ok-border:#BCD8C8;--verified-text:#3A4E86;--verified-bg:#E7EAF4;--verified-border:#C2C9E0;--redeem-text:#A9741A;--redeem-bg:#FBF0D9;--redeem-border:#E8D2A0;--attention-text:#B4472C;--attention-bg:#F8E7E1;--attention-border:#E6C2B6;--r-stamp:2px;--r-sm:6px;--r-md:10px;--r-lg:16px;--r-xl:16px;--shadow-sm:0 1px 2px rgba(30,42,36,0.06);--shadow-md:0 4px 16px rgba(30,42,36,0.09);--shadow-lg:0 14px 36px rgba(30,42,36,0.14);--shadow-paste:0 7px 16px rgba(30,42,36,0.16);--shadow-card:var(--shadow-md);--shadow-paper:var(--shadow-sm);--shadow-tool:var(--shadow-sm);--font-display:var(--font-display-src),"Newsreader",Georgia,serif;--font-body:var(--font-body-src),"Libre Franklin",system-ui,sans-serif;--font-mono:var(--font-mono-src),"IBM Plex Mono",ui-monospace,monospace;--ease-spring:cubic-bezier(0.2,0.8,0.2,1);--ease-out-back:cubic-bezier(0.34,1.56,0.64,1);color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}body,html{max-width:100vw;overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:5rem}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.reveal{animation:reveal-rise linear both;animation-timeline:view();animation-range:entry 0 entry 55%}}}@keyframes reveal-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}body{min-height:100vh;background-color:var(--paper);background-image:radial-gradient(rgba(110,102,86,.05) .5px,transparent 0);background-size:4px 4px;background-attachment:fixed;color:var(--ink-2);font-family:var(--font-body);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.page,.role-shell,main.page{position:relative;z-index:1}h1,h2,h3{font-family:var(--font-display);font-weight:500;line-height:1.12;letter-spacing:-.01em;color:var(--spruce)}h1{font-size:clamp(1.9rem,4.5vw,2.15rem)}h2{font-size:1.55rem}h3{font-family:var(--font-body);font-weight:600;font-size:1.2rem;letter-spacing:0;color:var(--ink)}a{color:var(--stamp-green);-webkit-text-decoration-color:rgba(46,125,91,.4);text-decoration-color:rgba(46,125,91,.4);text-underline-offset:2px}a:hover{color:var(--spruce)}.roi-section>h2,.section-label,.tenant-section>h2{font-family:var(--font-mono);font-size:.69rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--pencil)}.muted{color:var(--pencil);font-size:.85rem}.num{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.page{max-width:760px;margin:0 auto;padding:2.5rem 1.25rem 5rem;display:flex;flex-direction:column;gap:1.5rem}.role-shell[data-role=founder] .page,.role-shell[data-role=landlord] .page{max-width:1100px}.role-shell{min-height:100vh}.role-header{position:-webkit-sticky;position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:.85rem;padding:.7rem 1.25rem;background:var(--spruce);color:var(--cream-text);border-bottom:1px solid rgba(0,0,0,.25);background-image:repeating-linear-gradient(90deg,transparent 0 38px,rgba(241,234,217,.06) 38px 39px)}.role-mark{text-decoration:none;display:inline-flex;align-items:center}.role-badge,.role-switcher{font-family:var(--font-mono);font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:.24rem .6rem;border-radius:4px;background:rgba(224,152,43,.16);color:var(--marigold);border:1px solid rgba(224,152,43,.4)}.role-switcher{cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23E0982B'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .45rem center;padding-right:1.5rem}.role-switcher option{color:#111;background:#fff}.role-user{margin-right:auto;font-family:var(--font-mono);font-size:.8rem;font-weight:500;letter-spacing:.02em;color:var(--cream-tagline)}.role-user a{color:inherit;text-decoration:none}.role-user a:hover{color:var(--marigold)}.back-link{width:-moz-fit-content;width:fit-content;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.04em;color:var(--pencil);text-decoration:none}.back-link:hover{color:var(--spruce)}.wordmark{display:inline-flex;flex-direction:column;gap:.35rem}.wordmark-lockup{display:inline-flex;align-items:center;gap:.6rem}.wordmark-glyph{color:var(--marigold);flex:none}.wordmark-name{font-family:var(--font-display);font-weight:600;font-size:1.4rem;letter-spacing:-.01em;line-height:1}.wordmark-tagline{font-family:var(--font-display);font-style:italic;font-size:1rem}.wordmark--ink .wordmark-name{color:var(--spruce)}.wordmark--ink .wordmark-tagline{color:var(--pencil)}.wordmark--cream .wordmark-name{color:var(--cream-text)}.wordmark--cream .wordmark-tagline{color:var(--cream-tagline)}.btn-primary,button{font-family:var(--font-body)}.btn-primary,.completion-form button,.onboard-form button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.65rem 1.25rem;border:1px solid var(--stamp-green);border-radius:var(--r-sm);background:var(--stamp-green);color:#fff;font-weight:600;font-size:.92rem;text-decoration:none;cursor:pointer;box-shadow:var(--shadow-sm);transition:background .16s,transform .12s var(--ease-spring),box-shadow .18s}.btn-primary:hover,.completion-form button:hover:not(:disabled),.onboard-form button:hover:not(:disabled){background:var(--spruce-2);border-color:var(--spruce-2)}.btn-primary:active,.completion-form button:active:not(:disabled){transform:translateY(1px)}.completion-form button:disabled,.onboard-form button:disabled{opacity:.5;cursor:progress}.btn-secondary{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1.1rem;border:1.5px solid var(--spruce);border-radius:var(--r-sm);background:var(--card);color:var(--spruce);font-weight:600;font-size:.9rem;text-decoration:none;cursor:pointer;transition:background .16s,color .16s}.btn-secondary:hover{background:var(--spruce);color:#fff}.btn-link{border:none;background:transparent;color:var(--pencil);font-weight:600;font-size:.9rem;padding:.4rem .2rem;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.btn-link:hover{color:var(--spruce)}.nav-card:focus-visible,.role-mark:focus-visible,.role-switcher:focus-visible,[role=button]:focus-visible,a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--stamp-green);outline-offset:2px;border-radius:var(--r-sm)}.role-header .role-mark:focus-visible,.role-header .role-switcher:focus-visible,.role-header a:focus-visible,.role-header button:focus-visible{outline-color:var(--marigold)}:where(button:not([class])){font:inherit;font-weight:600;padding:.45rem .95rem;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer}input,select,textarea{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--rule);border-radius:var(--r-sm);padding:.55rem .65rem}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{outline:2px solid var(--stamp-green);outline-offset:1px;border-color:var(--stamp-green)}input[type=file]{background:var(--mist);border:1px dashed var(--rule);color:var(--ink-2);padding:.55rem .65rem}input[type=file]::-webkit-file-upload-button{font:inherit;font-weight:600;margin-right:.6rem;padding:.3rem .7rem;border:1px solid var(--stamp-green);border-radius:var(--r-sm);background:var(--card);color:var(--stamp-green);cursor:pointer}input[type=file]::file-selector-button{font:inherit;font-weight:600;margin-right:.6rem;padding:.3rem .7rem;border:1px solid var(--stamp-green);border-radius:var(--r-sm);background:var(--card);color:var(--stamp-green);cursor:pointer}.field{display:flex;flex-direction:column;gap:.3rem}.field>span:not(.field-error){font-family:var(--font-mono);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--pencil)}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--clay);outline-color:var(--clay)}.field-error,.form-error{font-size:.82rem;color:var(--clay)}.form-ok,.form-success{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;font-size:.85rem;font-weight:600;color:var(--stamp-green)}.form-hint{font-size:.85rem;color:var(--pencil)}.stamp-card{--stamp-accent:var(--stamp-green);position:relative;width:195px;min-height:245px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.55rem;padding:1.1rem 1rem 1.15rem;background:var(--cream-card);color:var(--ink);border-radius:3px;box-shadow:var(--shadow-paste)}.stamp-card:before{content:"";position:absolute;inset:4px;border-radius:2px;border:1.5px dashed var(--rule);pointer-events:none;opacity:.7}.stamp-card:after{content:"";position:absolute;left:10px;right:10px;top:0;height:4px;border-radius:0 0 3px 3px;background:var(--stamp-accent)}.stamp--green{--stamp-accent:var(--stamp-green)}.stamp--clay{--stamp-accent:var(--clay)}.stamp--marigold{--stamp-accent:var(--marigold)}.stamp-denom{display:flex;flex-direction:column;align-items:center;gap:.1rem;margin-top:.35rem}.stamp-pts{font-family:var(--font-mono);font-weight:600;font-size:.82rem;letter-spacing:.08em;color:var(--stamp-accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stamp-glyph-frame{width:60px;height:60px;display:flex;align-items:center;justify-content:center;margin:.1rem 0;color:var(--stamp-accent)}.stamp-glyph{width:44px;height:44px}.stamp-repair{font-family:var(--font-display);font-size:1.05rem;color:var(--ink);line-height:1.15}.stamp-serial{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em;color:var(--pencil);margin-top:auto;padding-top:.5rem;border-top:1px dashed var(--rule);width:100%;line-height:1.4}.stamp-postmark{position:absolute;top:76%;left:70%;width:90px;height:90px;transform:translate(-50%,-50%) rotate(-14deg);color:var(--postmark);opacity:.5;pointer-events:none;animation:postmark-press .45s var(--ease-out-back) both}.stamp-postmark circle{fill:none;stroke:var(--postmark);stroke-width:2}.stamp-postmark-wave{stroke:var(--postmark);stroke-width:1.6;fill:none}.stamp-postmark-text{fill:var(--postmark);font-family:var(--font-mono);font-size:7.5px;font-weight:600;letter-spacing:.12em}@keyframes postmark-press{0%{opacity:0;transform:translate(-50%,-50%) rotate(-14deg) scale(1.6)}60%{opacity:.5;transform:translate(-50%,-50%) rotate(-14deg) scale(.94)}to{opacity:.5;transform:translate(-50%,-50%) rotate(-14deg) scale(1)}}.stamp-pending-mark{position:absolute;bottom:2.4rem;left:50%;transform:translateX(-50%) rotate(-4deg);font-family:var(--font-mono);font-size:.55rem;font-weight:600;letter-spacing:.16em;color:var(--clay);border:1.5px solid var(--clay);border-radius:3px;padding:.15rem .4rem;opacity:.6}.stamp-mini{--stamp-accent:var(--stamp-green);position:relative;display:inline-flex;align-items:center;justify-content:center;width:26px;height:30px;border-radius:2px;background:var(--cream-card);border:1px solid var(--rule);color:var(--stamp-accent);vertical-align:middle}.stamp-mini.stamp--clay{--stamp-accent:var(--clay)}.stamp-mini.stamp--marigold{--stamp-accent:var(--marigold)}.stamp-mini.stamp--pending{border-style:dashed;background:#F4EFE3}.stamp-mini-glyph{width:15px;height:15px}.stamp-mini-mark{position:absolute;top:-3px;right:-3px;width:8px;height:8px;border-radius:50%;background:var(--postmark);border:1.5px solid var(--cream-card)}.stamp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(195px,1fr));grid-gap:1.25rem;gap:1.25rem;justify-items:center}.badge{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--font-mono);font-size:.69rem;font-weight:500;letter-spacing:.06em;padding:.32rem .6rem;border-radius:4px;border:1px solid transparent;white-space:nowrap}.badge--ok{color:var(--ok-text);background:var(--ok-bg);border-color:var(--ok-border)}.badge--verified{color:var(--verified-text);background:var(--verified-bg);border-color:var(--verified-border)}.badge--redeem{color:var(--redeem-text);background:var(--redeem-bg);border-color:var(--redeem-border)}.badge--attention{color:var(--attention-text);background:var(--attention-bg);border-color:var(--attention-border)}.lay-away{display:flex;flex-direction:column;gap:.5rem}.lay-away-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.lay-away-label{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--pencil)}.lay-away-figure{font-family:var(--font-mono);font-size:.78rem;color:var(--spruce);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lay-away-figure strong{color:var(--spruce);font-weight:600}.lay-away-track{position:relative;height:30px}.lay-away-rail{position:absolute;inset:0;background:var(--mist);border-radius:4px;border:1px solid var(--line);overflow:hidden}.lay-away-fill{width:var(--fill,0);background:repeating-linear-gradient(90deg,var(--stamp-green) 0 13px,var(--stamp-green-2) 13px 14px)}.lay-away-fill,.lay-away-welcome{position:absolute;left:0;top:0;bottom:0}.lay-away-welcome{width:var(--welcome,2%);background:var(--marigold)}.lay-away-tick{left:var(--at,0);width:1.5px;background:var(--rule)}.lay-away-redeemable,.lay-away-tick{position:absolute;top:-3px;bottom:-3px}.lay-away-redeemable{left:var(--at,50%);width:2px;background:var(--marigold-ink)}.lay-away-knob{position:absolute;left:var(--fill,0);top:50%;transform:translate(-50%,-50%);width:13px;height:13px;border-radius:50%;background:#fff;border:3px solid var(--spruce);box-shadow:0 2px 5px rgba(30,42,36,.25)}.lay-away-legend{display:flex;justify-content:space-between;gap:.5rem;font-family:var(--font-mono);font-size:.625rem;color:var(--pencil)}.lay-away-legend .redeem-now{color:var(--marigold-ink)}.lay-away-legend .to-go{margin-left:auto;color:var(--spruce);font-weight:600}.register-tape{max-width:340px;background:var(--tape);border:1px solid var(--line);border-radius:4px;padding:1.1rem 1.25rem;font-family:var(--font-mono);font-size:.75rem;color:var(--pencil);box-shadow:var(--shadow-sm)}.register-tape-row{display:flex;justify-content:space-between;gap:1rem;margin-top:.4rem}.register-tape-row:first-child{margin-top:0}.register-tape-rule{border-top:1px dashed var(--rule);margin:.75rem 0}.register-tape-available{display:flex;justify-content:space-between;gap:1rem;font-size:.94rem;color:var(--spruce);font-weight:600;border-bottom:3px double var(--spruce);padding-bottom:.5rem}.register-tape-paid{text-align:center;margin-top:.9rem}.register-tape-paid span{display:inline-block;transform:rotate(-3deg);color:var(--postmark);border:2.5px solid var(--postmark);border-radius:4px;font-size:.94rem;letter-spacing:.18em;padding:.2rem .9rem;font-weight:600}.register-tape-fine{font-size:.6rem;color:var(--faint);text-align:center;margin-top:.75rem}.rank-ladder{display:flex;align-items:flex-start;gap:0}.rank-node{flex:1 1;text-align:center;position:relative}.rank-node:not(:last-child):after{content:"";position:absolute;top:17px;left:50%;width:100%;height:2px;background:var(--line);z-index:0}.rank-dot{position:relative;z-index:1;width:34px;height:34px;margin:0 auto;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.75rem;font-weight:600;border:2px solid var(--line);background:var(--card);color:var(--pencil)}.rank-node[data-state=done] .rank-dot{border-color:var(--stamp-green);background:var(--ok-bg);color:var(--stamp-green)}.rank-node[data-state=current] .rank-dot{border-color:var(--stamp-green);background:var(--stamp-green);color:#fff}.rank-node-label{font-size:.69rem;margin-top:.5rem;color:var(--pencil);line-height:1.25}.rank-node[data-state=current] .rank-node-label{color:var(--spruce);font-weight:600}.unit-card{border:1px solid var(--line);border-radius:8px;padding:.9rem 1rem;background:var(--card)}.unit-card-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.unit-card-name{font-family:var(--font-display);font-size:1.05rem;color:var(--spruce)}.unit-card-stamps{display:flex;gap:.45rem;margin-top:.85rem;align-items:center}.unit-card-meta{margin-left:auto;font-family:var(--font-mono);font-size:.69rem;color:var(--pencil)}.kpi-tile{display:flex;flex-direction:column;gap:.2rem;padding:.95rem 1.1rem;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);box-shadow:var(--shadow-sm)}.kpi-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;color:var(--pencil)}.kpi-label,.kpi-value{font-family:var(--font-mono);font-weight:600}.kpi-value{font-size:1.5rem;line-height:1.1;color:var(--stamp-green);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi-hint{font-size:.7rem;color:var(--pencil)}.kpi-hint,.schedule-table{font-family:var(--font-mono)}.schedule-table{width:100%;border-collapse:collapse;font-size:.86rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.schedule-table td,.schedule-table th{text-align:left;padding:.65rem .8rem;border-bottom:1px solid var(--line);color:var(--ink-2)}.schedule-table thead th{font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--pencil);background:var(--mist)}.schedule-table tbody tr:last-child td{border-bottom:none}.schedule-table tbody tr:hover{background:var(--mist)}.schedule-table .num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--spruce)}.tenant-app{display:flex;flex-direction:column;gap:1.75rem}.tenant-app>header h1{display:flex;align-items:baseline;gap:.6rem}.redeem>p,.roi-dashboard>header p,.tenant-app>header p{color:var(--pencil);max-width:52ch}.workshop-hero{border-radius:var(--r-md);padding:1.4rem 1.5rem 1.3rem;background:var(--spruce);color:var(--cream-text);border:1px solid rgba(0,0,0,.18);box-shadow:var(--shadow-md);overflow:hidden;background-image:repeating-linear-gradient(90deg,transparent 0 38px,rgba(241,234,217,.05) 38px 39px)}.workshop-hero,.workshop-hero>*{position:relative}.hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.2rem}.workshop-hero .wordmark{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-muted);flex-direction:column;gap:0}.workshop-hero .wordmark small{display:block;margin-top:.35rem;font-family:var(--font-display);font-size:1.45rem;font-weight:600;letter-spacing:-.01em;text-transform:none;color:var(--cream-text)}.hero-balance{text-align:right;flex-shrink:0}.hero-balance .balance-label{display:block;font-family:var(--font-mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-muted)}.balance-pts{font-family:var(--font-mono);font-weight:600;font-size:2.1rem;line-height:1;color:var(--marigold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.balance-usd{display:block;font-family:var(--font-mono);font-size:.82rem;color:var(--cream-tagline)}.toolwall{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));grid-gap:.6rem;gap:.6rem}.tool-slot{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.7rem .4rem .55rem;border-radius:2px;border:1px solid var(--rule);background:var(--cream-card);text-align:center}.tool-slot[data-earned=false]{border-style:dashed;background:#F4EFE3}.tool-slot[data-earned=false] .tool-glyph{color:var(--faint)}.tool-slot[data-earned=false] .tool-name{color:var(--pencil)}.tool-slot[data-earned=true] .tool-glyph{color:var(--stamp-green)}.tool-slot[data-earned=true] .tool-name{color:var(--ink)}.tool-glyph{width:34px;height:34px;transition:transform .2s var(--ease-out-back)}.tool-slot[data-earned=true]:hover .tool-glyph{transform:translateY(-3px)}.tool-name{font-size:.7rem;font-weight:600;line-height:1.15}.tool-uses{font-family:var(--font-mono);font-size:.62rem;color:var(--marigold-ink);letter-spacing:.04em}.hero-foot{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-top:1.2rem;padding-top:1rem;border-top:1px solid rgba(241,234,217,.18)}.rank{display:flex;flex-direction:column;gap:.4rem;flex:1 1 240px;min-width:200px}.rank-name{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.rank-name strong{font-family:var(--font-display);font-size:1rem;color:var(--cream-text)}.rank-name span{font-family:var(--font-mono);font-size:.72rem;color:var(--cream-tagline)}.rankbar{height:7px;border-radius:99px;background:rgba(0,0,0,.25);overflow:hidden}.rankbar-fill{height:100%;border-radius:99px;background:var(--marigold);transition:width .8s var(--ease-spring)}.shoplight{display:flex;align-items:center;gap:.55rem;padding:.5rem .75rem;border-radius:var(--r-sm);background:rgba(241,234,217,.1);border:1px solid rgba(241,234,217,.18)}.shoplight .bulb{width:24px;height:24px;flex-shrink:0;color:rgba(241,234,217,.5)}.shoplight[data-lit=true] .bulb{color:var(--marigold)}.shoplight-text{display:flex;flex-direction:column;line-height:1.2}.shoplight-text strong{font-size:.82rem;color:var(--cream-text)}.shoplight-text span{font-family:var(--font-mono);font-size:.66rem;color:var(--cream-tagline)}.tenant-section{display:flex;flex-direction:column;gap:.85rem}.tenant-submission-list,.tenant-task-list{list-style:none;display:flex;flex-direction:column;gap:.7rem}.tenant-submission-item,.tenant-task-item{position:relative;display:flex;flex-direction:column;gap:.45rem;padding:.95rem 1.1rem .95rem 1.5rem;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.tenant-submission-item:before,.tenant-task-item:before{content:"";position:absolute;left:.65rem;top:.7rem;bottom:.7rem;width:0;border-left:2px dotted var(--rule)}.tenant-task-item[data-state=approved],.tenant-task-item[data-state=in-review]{background:var(--mist);box-shadow:none}.tenant-submission-head,.tenant-task-head{display:flex;gap:.5rem;align-items:baseline;justify-content:space-between}.tenant-submission-head strong,.tenant-task-head strong{font-family:var(--font-display);font-size:1.05rem;color:var(--spruce)}.tenant-submission-item .muted,.tenant-task-item .muted{color:var(--pencil)}.tool-chip{display:inline-flex;align-items:center;gap:.35rem;align-self:flex-start;padding:.22rem .55rem .22rem .4rem;border-radius:4px;background:var(--mist);border:1px solid var(--line);font-size:.72rem;font-weight:600;color:var(--ink-2)}.tool-chip svg{width:16px;height:16px;color:var(--stamp-green)}.redeem-cost,.review-points,.tenant-task-points{display:inline-flex;align-items:baseline;gap:.3rem;white-space:nowrap;font-family:var(--font-mono);font-size:.78rem;font-weight:600;padding:.2rem .55rem;border-radius:4px;background:var(--redeem-bg);color:var(--redeem-text);border:1px solid var(--redeem-border)}.redeem-cost .usd,.review-points .usd,.tenant-task-points .usd{font-weight:500;color:var(--pencil)}.tenant-task-state{font-size:.86rem;color:var(--ink-2)}.tenant-task-state.state-in-review{color:var(--marigold-ink);font-weight:600}.tenant-task-state.state-approved{color:var(--stamp-green);font-weight:600}.tenant-task-state.state-upcoming{color:var(--ink-2);font-style:italic}.tenant-submission-status{font-family:var(--font-mono);font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:.18rem .55rem;border-radius:4px;white-space:nowrap;background:var(--redeem-bg);color:var(--redeem-text);border:1px solid var(--redeem-border)}.review-photo,.tenant-submission-photo{align-self:flex-start;font-family:var(--font-mono);font-size:.78rem;color:var(--pencil)}.completion-form{display:flex;flex-direction:column;gap:.6rem;margin-top:.55rem;padding-top:.7rem;border-top:1px dashed var(--line)}.completion-form .field>span:not(.field-error),.review-form .field>span{color:var(--pencil)}.stamp{align-self:flex-start;display:inline-flex;align-items:center;gap:.3rem;margin-top:.2rem;padding:.3rem .7rem;font-family:var(--font-mono);font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--postmark);border:2px solid var(--postmark);border-radius:var(--r-stamp);background:var(--verified-bg);transform:rotate(-4deg);box-shadow:inset 0 0 0 1px rgba(58,78,134,.2);animation:stamp-press .5s var(--ease-out-back) both}.stamp.stamp--filed{color:var(--stamp-green);border-color:var(--stamp-green);background:var(--ok-bg);box-shadow:inset 0 0 0 1px rgba(46,125,91,.2)}@keyframes stamp-press{0%{opacity:0;transform:rotate(-4deg) scale(1.6)}55%{opacity:1;transform:rotate(-4deg) scale(.94)}to{opacity:1;transform:rotate(-4deg) scale(1)}}.reward-progress{display:flex;flex-direction:column;gap:.45rem}.reward-progress-label{font-size:.92rem;color:var(--ink-2)}.reward-progress-label strong{font-family:var(--font-mono);color:var(--spruce);font-weight:600}.reward-progress-bar{height:.6rem;border-radius:999px;overflow:hidden;background:var(--mist);border:1px solid var(--line)}.reward-progress-fill{height:100%;border-radius:inherit;background:var(--stamp-green);transition:width .6s var(--ease-spring)}.reward-trust{margin:0;font-family:var(--font-mono);font-size:.72rem;color:var(--pencil)}.redeem{gap:1.25rem}.redeem,.tenant-balance{display:flex;flex-direction:column}.tenant-balance{gap:.1rem;padding:1.1rem 1.3rem;border-radius:var(--r-md);background:var(--spruce);color:var(--cream-text);box-shadow:var(--shadow-md)}.tenant-balance-label{font-size:.66rem;text-transform:uppercase;letter-spacing:.16em;color:var(--cream-muted)}.tenant-balance-label,.tenant-balance-value{font-family:var(--font-mono);font-weight:600}.tenant-balance-value{font-size:2.2rem;line-height:1.05;color:var(--marigold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tenant-balance .balance-usd{text-align:left}.redeem-link{align-self:flex-start;margin-top:.4rem;font-family:var(--font-mono);font-size:.8rem;color:var(--stamp-green);text-decoration:none}.redeem-link:hover{text-decoration:underline}.redeem-options{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:.85rem;gap:.85rem}.redeem-option{display:flex;flex-direction:column;gap:.6rem;padding:1rem;border-radius:var(--r-md);background:var(--card);color:var(--ink);border:1px solid var(--line);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.redeem-option:after{content:"";position:absolute;left:0;right:0;bottom:2.9rem;border-top:2px dashed var(--rule)}.redeem-option-head{display:flex;flex-direction:column;gap:.4rem}.redeem-option-head strong{font-family:var(--font-display);font-size:1.1rem;color:var(--spruce)}.redeem-button{padding:.55rem .95rem;border:none;border-radius:var(--r-sm);font-family:var(--font-body);font-weight:600;font-size:.88rem;cursor:pointer;background:var(--marigold);color:var(--spruce);box-shadow:var(--shadow-sm);transition:background .16s}.redeem-button:hover:not(:disabled){background:var(--marigold-2)}.redeem-button:disabled{opacity:.5;cursor:not-allowed}.review-approve{padding:.55rem .95rem;border:none;border-radius:var(--r-sm);font-family:var(--font-body);font-weight:600;font-size:.88rem;cursor:pointer;background:var(--stamp-green);color:#fff;box-shadow:var(--shadow-sm);transition:background .16s}.review-approve:hover:not(:disabled){background:var(--spruce-2)}.redemption-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.redemption-item{display:flex;gap:.6rem;align-items:baseline;padding:.7rem 1rem;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line)}.redemption-item strong{color:var(--ink)}.redemption-item .muted,.redemption-status{font-family:var(--font-mono)}.redemption-status{margin-left:auto;font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:.18rem .55rem;border-radius:4px;white-space:nowrap;border:1px solid transparent}.redemption-status.status-pending{background:var(--redeem-bg);color:var(--redeem-text);border-color:var(--redeem-border)}.redemption-status.status-fulfilled{background:var(--ok-bg);color:var(--ok-text);border-color:var(--ok-border)}.redemption-status.status-failed{background:var(--attention-bg);color:var(--attention-text);border-color:var(--attention-border)}.redemption-claim-link{margin-left:auto;font-family:var(--font-mono);font-size:.74rem;font-weight:600;white-space:nowrap;color:var(--stamp-green);text-decoration:none}.redemption-claim-link:hover{text-decoration:underline}.redemption-item:has(.redemption-claim-link) .redemption-status{margin-left:0}.roi-dashboard{gap:1.75rem}.roi-dashboard,.roi-section{display:flex;flex-direction:column}.roi-section{gap:.85rem}.roi-total{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;grid-gap:.5rem 1rem;gap:.5rem 1rem;padding:1.3rem 1.4rem;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-md);overflow:hidden}.roi-total-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.16em;color:var(--pencil)}.roi-total-label,.roi-total-value{grid-column:1;font-family:var(--font-mono);font-weight:600}.roi-total-value{font-size:clamp(2.2rem,7vw,3rem);line-height:1;color:var(--stamp-green);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.roi-total .muted{grid-column:1/-1;color:var(--pencil);font-family:var(--font-mono);font-size:.76rem}.roi-total-aside{grid-column:2;grid-row:1/3;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;gap:.45rem;padding-left:1rem;border-left:1px solid var(--line);text-align:right}.roi-total-aside .field-row{display:flex;flex-direction:column;line-height:1.15}.roi-total-aside .field-row span{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--pencil)}.roi-total-aside .field-row strong{font-family:var(--font-display);font-size:1.3rem;color:var(--spruce)}@media (max-width:460px){.roi-total{grid-template-columns:1fr}.roi-total-aside{grid-column:1;grid-row:auto;flex-direction:row;justify-content:flex-start;gap:1.5rem;padding-left:0;padding-top:.8rem;border-left:none;border-top:1px solid var(--line);text-align:left}}.roi-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:.86rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.roi-table td,.roi-table th{text-align:left;padding:.65rem .8rem;border-bottom:1px solid var(--line)}.roi-table thead th{font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--pencil);background:var(--mist)}.roi-table tbody tr:last-child td{border-bottom:none}.roi-table tbody tr:hover{background:var(--mist)}.roi-table td{color:var(--ink-2)}.roi-table .roi-num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--spruce)}.roi-table .unit-cell{font-family:var(--font-body);font-weight:600;color:var(--ink)}.mini-wall{display:inline-flex;gap:3px;vertical-align:middle}.mini-wall .peg{width:8px;height:8px;border-radius:2px;background:var(--mist);border:1px solid var(--line)}.mini-wall .peg.filled{background:var(--stamp-green);border-color:var(--stamp-green-2)}.flag,.roi-status{display:inline-flex;align-items:center;gap:.3rem;font-family:var(--font-mono);font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:.2rem .5rem;border-radius:4px;white-space:nowrap;border:1px solid transparent}.flag--ok,.roi-status.status-up-to-date{background:var(--ok-bg);color:var(--ok-text);border-color:var(--ok-border)}.flag--warn,.roi-status.status-overdue{background:var(--attention-bg);color:var(--attention-text);border-color:var(--attention-border)}.review-list{list-style:none;gap:.9rem}.review-item,.review-list{display:flex;flex-direction:column}.review-item{gap:.5rem;padding:1rem 1.15rem;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.review-head{display:flex;gap:.5rem;align-items:baseline;justify-content:space-between}.review-head strong{font-family:var(--font-display);color:var(--spruce)}.review-item .muted{color:var(--pencil)}.review-form{display:flex;flex-direction:column;gap:.5rem;margin-top:.4rem;padding-top:.6rem;border-top:1px dashed var(--line)}.review-actions{display:flex;gap:.6rem}.review-actions button{padding:.55rem 1rem;border-radius:var(--r-sm);font-weight:600;font-size:.88rem;cursor:pointer}.review-actions button:disabled{opacity:.5;cursor:progress}.review-reject{background:var(--card);color:var(--clay);border:1.5px solid var(--clay)}.review-reject:hover:not(:disabled){background:var(--attention-bg)}.admin-nav{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.5rem}.catalog-admin,.onboarding{display:flex;flex-direction:column;gap:1.5rem}.onboard-forms{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.catalog-add,.catalog-form,.catalog-list-section,.onboard-chain,.onboard-form{display:flex;flex-direction:column;gap:.7rem}.onboard-form{padding:1.1rem;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.onboard-form h3{font-size:1.05rem}.onboard-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.82rem;font-weight:600;color:var(--ink-2)}.assignment-list,.catalog-list,.landlord-list,.unit-list{list-style:none;display:flex;flex-direction:column;gap:.55rem}.assignment-item,.catalog-item,.landlord-item{padding:.85rem 1rem;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.assignment-head,.landlord-head{display:flex;gap:.5rem;align-items:baseline}.assignment-head{justify-content:space-between}.unit-list{margin-top:.5rem;padding-left:.5rem;gap:0;box-shadow:none;border:none;background:transparent}.unit-item{display:flex;flex-direction:column;gap:.1rem;padding:.5rem 0;border-top:1px solid var(--line)}.unit-label{font-weight:700;color:var(--ink)}.tenant-tag{font-size:.8rem;color:var(--stamp-green)}.tenant-tag.vacant{color:var(--faint)}.catalog-item[data-active=false]{opacity:.6}.catalog-item-summary{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap;cursor:pointer}.catalog-item-name{font-weight:700;color:var(--ink)}.catalog-item-badge{font-family:var(--font-mono);font-size:.62rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:.12rem .4rem;border-radius:4px;background:var(--attention-bg);color:var(--attention-text);border:1px solid var(--attention-border)}.catalog-item-meta{margin-left:auto;font-family:var(--font-mono);font-size:.82rem;color:var(--pencil)}.catalog-item-body{display:flex;flex-direction:column;gap:.7rem;margin-top:.7rem;padding-top:.7rem;border-top:1px solid var(--line)}.catalog-item-description{font-size:.9rem;color:var(--ink-2)}.catalog-form-footer,.catalog-item-toggle{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.catalog-form-footer button,.catalog-item-toggle button{font:inherit;font-weight:600;padding:.45rem .9rem;border-radius:var(--r-sm);border:1.5px solid var(--spruce);background:var(--card);color:var(--spruce);cursor:pointer}.catalog-form-footer button:hover:not(:disabled),.catalog-item-toggle button:hover:not(:disabled){background:var(--spruce);color:#fff}.catalog-form-footer button:disabled{opacity:.5;cursor:progress}.catalog-item-toggle-hint{font-size:.78rem;color:var(--pencil)}.assignment-kind{font-family:var(--font-mono);font-size:.64rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;padding:.16rem .45rem;border-radius:4px;white-space:nowrap;background:var(--mist);color:var(--pencil);border:1px solid var(--line)}.assignment-kind.kind-scheduled{background:var(--verified-bg);color:var(--verified-text);border-color:var(--verified-border)}.nav-cards{display:grid;grid-gap:.7rem;gap:.7rem;margin-top:.5rem}.feature-card,.nav-card{display:block;padding:1.1rem 1.2rem;border-radius:var(--r-md);text-decoration:none;color:var(--ink);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:border-color .18s,transform .18s,box-shadow .18s}.nav-card:hover{border-color:var(--stamp-green);transform:translateY(-2px);box-shadow:var(--shadow-md)}.feature-card strong,.nav-card strong{display:block;margin-bottom:.2rem;font-family:var(--font-display);font-size:1.1rem;color:var(--spruce)}.feature-card p,.nav-card span{font-size:.86rem;color:var(--pencil);margin:0}.empty-state{padding:2.5rem 1.5rem;text-align:center;border-radius:var(--r-md);border:1px dashed var(--rule);background:var(--mist);color:var(--pencil)}.empty-state p{margin:0}.coming-soon,.unit-info{padding:1.3rem;border-radius:var(--r-md);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.coming-soon h2,.unit-info h2{font-size:1.2rem;margin-bottom:.5rem}.coming-soon ul{margin:0;padding-left:1.2rem;font-size:.9rem;color:var(--ink-2)}.unit-info .address{font-size:.9rem;color:var(--pencil)}.landing{text-align:center;padding:2rem 0 1rem;display:flex;flex-direction:column;align-items:center;gap:.75rem}.landing .eyebrow{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--pencil)}.landing h1{font-size:clamp(2.4rem,8vw,3.25rem);font-weight:500;letter-spacing:-.02em}.landing h1 .glow{color:var(--stamp-green);font-style:italic}.landing .tagline{font-family:var(--font-display);font-style:italic;font-size:1.15rem;color:var(--ink-2);max-width:46ch;margin-bottom:1rem}.landing .features{display:grid;grid-gap:.85rem;gap:.85rem;text-align:left;width:100%;margin-bottom:1.5rem}@media (min-width:560px){.landing .features{grid-template-columns:1fr 1fr}}.legal-page{max-width:760px}.legal-page h1{font-family:var(--font-display)}.legal-banner{padding:.85rem 1.1rem;border:1px solid var(--redeem-border);border-radius:var(--r-md);background:var(--redeem-bg);color:var(--ink);font-size:.9rem}.legal-section{display:flex;flex-direction:column;gap:.6rem}.legal-section h2{font-family:var(--font-display);font-size:1.4rem;color:var(--spruce)}.legal-section ul{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:.35rem;color:var(--ink-2)}.legal-page a{color:var(--stamp-green)}.legal-page a:hover{color:var(--spruce)}.site-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem;padding:1.5rem;margin-top:2rem;border-top:1px solid var(--line);font-family:var(--font-mono);font-size:.78rem;letter-spacing:.04em;color:var(--pencil)}.site-footer a{color:var(--pencil);text-decoration:none}.site-footer a:hover{color:var(--spruce);text-decoration:underline}body:has(.mkt-footer) .site-footer{display:none}.admin-home{gap:2.5rem}.admin-home,.admin-home>header{display:flex;flex-direction:column}.admin-home>header{gap:.5rem}.admin-insights{gap:1.5rem}.admin-insights,.admin-subsection{display:flex;flex-direction:column}.admin-subsection{gap:.6rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:.75rem;gap:.75rem}.kpi-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:.86rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}.kpi-table td,.kpi-table th{text-align:left;padding:.55rem .7rem;border-bottom:1px solid var(--line);color:var(--ink-2)}.kpi-table th{font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--pencil);background:var(--mist)}.kpi-table tbody tr:last-child td{border-bottom:none}.kpi-table .kpi-num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--spruce)}.tax-flag{font-family:var(--font-mono);font-size:.66rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;padding:.14rem .5rem;border-radius:4px;white-space:nowrap;border:1px solid transparent}.tax-flag.flag-nec{background:var(--attention-bg);color:var(--attention-text);border-color:var(--attention-border)}.tax-flag.flag-watch{background:var(--redeem-bg);color:var(--redeem-text);border-color:var(--redeem-border)}.points-chart{margin:0;display:flex;flex-direction:column;gap:.5rem}.points-chart-svg{width:100%;height:auto}.points-chart-axis{stroke:var(--line);stroke-width:1}.points-bar.bar-issued{fill:var(--stamp-green)}.points-bar.bar-redeemed{fill:var(--marigold)}.points-chart-label{font-family:var(--font-mono);font-size:11px;fill:var(--pencil)}.points-chart-legend{display:flex;gap:1.25rem;font-family:var(--font-mono);font-size:.74rem;color:var(--pencil)}.points-chart-legend>span{display:inline-flex;align-items:center;gap:.35rem}.points-swatch{display:inline-block;width:.7rem;height:.7rem;border-radius:.15rem}.points-swatch.bar-issued{background:var(--stamp-green)}.points-swatch.bar-redeemed{background:var(--marigold)}.admin-launch{display:flex;flex-direction:column;gap:.6rem}.launch-map{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem;align-items:start}@media (max-width:720px){.launch-map{grid-template-columns:1fr}}.launch-map-aside{gap:1rem}.launch-legend,.launch-map-aside{display:flex;flex-direction:column}.launch-legend{list-style:none;margin:0;padding:0;gap:.5rem;font-size:.85rem;color:var(--ink-2)}.launch-legend li{display:flex;align-items:flex-start;gap:.5rem}.launch-swatch{flex:0 0 auto;width:.85rem;height:.85rem;border-radius:.2rem;margin-top:.15rem}.launch-rationale{margin:0;font-size:.82rem;color:var(--pencil)}.launch-state-list{margin:0;font-family:var(--font-mono);font-size:.82rem;color:var(--ink-2)}.launch-state-list dt{font-weight:600;text-transform:uppercase;font-size:.66rem;letter-spacing:.1em;color:var(--pencil);margin-top:.5rem}.launch-state-list dd{display:flex;gap:.5rem;margin:.2rem 0 0}.launch-code{flex:0 0 1.6rem;font-weight:600;color:var(--spruce);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}html{scroll-behavior:auto}.reveal{animation:none!important;opacity:1!important;transform:none!important}}