/* The walk-around (/check/): one stop per screen, thumb-zone answers, a live house map, and a results reveal.
   Uses the site tokens from app.css (--ink, --lime, --paper, --head, --body). */
.wk{--wk-ink:#0C0D0B;--wk-ink2:#161814;--wk-ink3:#24271F;--wk-paper:#F2F2EC;--wk-on2:#C8CBC0;--wk-muted:#8C9085;--wk-lime:#D4FF3A;--wk-lime-dim:rgba(212,255,58,.16);
  --wk-head:var(--head,"Archivo",system-ui,sans-serif);--wk-body:var(--body,"Instrument Sans",system-ui,sans-serif);
  background:var(--wk-ink);color:var(--wk-paper);font:16px/1.45 var(--wk-body);min-height:calc(100svh - 64px);display:flex;flex-direction:column}
.wk *{box-sizing:border-box}
.wk button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}
.wk button:focus-visible,.wk a:focus-visible,.wk label:focus-within{outline:3px solid var(--wk-lime);outline-offset:2px}
.wk-app{flex:1;width:100%;max-width:520px;margin:0 auto;display:flex;flex-direction:column;padding:12px max(16px,env(safe-area-inset-right,0px)) calc(14px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
/* immersive mode while walking: the site header, footer and tab bar step aside */
body.wk-on .sn,body.wk-on .sf-foot,body.wk-on .ab,body.wk-on .sn-menu{display:none!important}
body.wk-on{background:#0C0D0B}
body.wk-on .wk{min-height:100svh;min-height:100dvh}
body.wk-on .wk-app{height:100svh;height:100dvh;padding-top:calc(10px + env(safe-area-inset-top,0px))}
.wk-top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:40px}
.wk-x{display:inline-flex;align-items:center;gap:6px;color:var(--wk-on2);font-size:14px;font-weight:600;text-decoration:none;padding:8px 0}
.wk-tally{white-space:nowrap;font:600 11px/1 var(--wk-body);letter-spacing:.06em;text-transform:uppercase;color:var(--wk-on2);display:flex;gap:12px;font-variant-numeric:tabular-nums}
.wk-tally b{color:var(--wk-paper);font-size:13px}.wk-tally .g b{color:var(--wk-lime)}
.wk-bar{height:4px;background:var(--wk-ink3);border-radius:4px;overflow:hidden;margin:6px 0 4px}
.wk-bar span{display:block;height:100%;background:var(--wk-lime);transition:width .5s cubic-bezier(.2,.8,.2,1)}
.wk-scr{flex:1;min-height:0;display:flex;flex-direction:column;animation:wk-in .35s cubic-bezier(.2,.8,.2,1)}
.wk-scr.out{animation:wk-out .18s ease-in forwards}
@keyframes wk-in{from{opacity:0;transform:translateX(28px)}}
@keyframes wk-out{to{opacity:0;transform:translateX(-28px)}}
.wk-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:14px;padding-top:6px}
.wk-eye{font:700 12px/1.2 var(--wk-body);letter-spacing:.12em;text-transform:uppercase;color:var(--wk-lime)}
.wk h1,.wk h2{font-family:var(--wk-head);font-weight:900;font-stretch:112%;text-transform:uppercase;line-height:.95;margin:0;text-wrap:balance;letter-spacing:-.01em;color:var(--wk-paper)}
.wk h1{font-size:clamp(38px,11vw,54px)}.wk h2{font-size:clamp(28px,8.4vw,38px)}
.wk-hl{background:linear-gradient(transparent 12%,var(--wk-lime) 12%,var(--wk-lime) 88%,transparent 88%);color:var(--wk-ink);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.wk p{margin:0}
.wk-lead{color:var(--wk-on2);font-size:17px;max-width:36ch}
.wk-walk{display:flex;gap:10px;align-items:flex-start;color:var(--wk-on2);font-size:15px}
.wk-walk svg{flex:none;margin-top:2px}
.wk-look{background:var(--wk-ink2);border:1px solid var(--wk-ink3);border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.wk-look small{font:700 11px/1 var(--wk-body);letter-spacing:.12em;text-transform:uppercase;color:var(--wk-muted)}
.wk-look p{font-size:17px;font-weight:600;line-height:1.3}
.wk-close{display:block;width:100%;height:auto;border-radius:12px;background:var(--wk-paper)}
.wk-mini{display:flex;gap:8px;padding-top:10px}
.wk-chip{border:1px solid var(--wk-ink3)!important;background:transparent!important;font:600 14px/1.2 var(--wk-body)!important;flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:12px;border:1px solid var(--wk-ink3);color:var(--wk-on2);font-weight:600;font-size:14px;cursor:pointer}
.wk-chip:active{background:var(--wk-ink3)}
.wk-chip.has{border-color:var(--wk-lime)!important;color:var(--wk-lime)}
.wk-thumbs{display:flex;gap:6px;flex-wrap:wrap}
.wk-thumbs img{width:48px;height:48px;object-fit:cover;border-radius:8px}
/* house map */
.wk-house svg{display:block;width:100%;height:auto}
.wk-house.small svg{max-height:86px;margin:0 auto}
.wk-stop h2{font-size:clamp(24px,7vw,30px)}
.wk-stop .wk-walk{font-size:14px}
.wk-stop.wk-scroll{gap:10px}
.wk-hs{transform-box:fill-box;transform-origin:center}
.wk-hs .ring{fill:var(--wk-ink);stroke:var(--wk-muted);stroke-width:1.5}
.wk-hs text{font:700 9px var(--wk-body);fill:var(--wk-muted);text-anchor:middle;dominant-baseline:central}
.wk-hs.cur .ring{stroke:var(--wk-lime);stroke-width:2.5}.wk-hs.cur text{fill:var(--wk-lime)}
.wk-hs .pulse{fill:none;stroke:var(--wk-lime);stroke-width:2;opacity:0}
.wk-hs.cur .pulse{animation:wk-pulse 1.6s ease-out infinite}
@keyframes wk-pulse{0%{opacity:.9;r:9}100%{opacity:0;r:22}}
.wk-hs .blob{fill:var(--wk-lime);opacity:0;transform-box:fill-box;transform-origin:left center;transform:scaleX(0)}
.wk-hs.gap .ring{fill:var(--wk-lime);stroke:var(--wk-lime)}.wk-hs.gap text{fill:var(--wk-ink)}
.wk-hs.gap .blob{opacity:.45;transform:scaleX(1);transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .2s}
.wk-hs.ok .ring{fill:var(--wk-paper);stroke:var(--wk-paper)}.wk-hs.ok text{fill:var(--wk-ink)}
.wk-hs.na{opacity:.35}.wk-hs.na .ring{stroke-dasharray:2 3}
.wk-hs.unsure .ring{stroke:var(--wk-on2);stroke-dasharray:3 2}
.wk-hs.pop{animation:wk-pop .45s cubic-bezier(.3,1.6,.5,1)}
@keyframes wk-pop{40%{transform:scale(1.5)}}
/* answers */
.wk-ans{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:10px}
.wk-a{font-family:var(--wk-body)!important;font-weight:700!important;min-height:60px;border-radius:16px;padding:10px 14px;text-align:left;display:flex;flex-direction:column;justify-content:center;gap:2px;font-weight:700;font-size:17px;border:2px solid var(--wk-ink3)!important;background:var(--wk-ink2)!important;transition:transform .1s}
.wk-a:active{transform:scale(.97)}
.wk-a small{font-weight:500!important;font-size:12.5px;color:var(--wk-on2)}
.wk-a.gap{grid-column:1/-1;background:var(--wk-lime)!important;color:var(--wk-ink)!important;border-color:var(--wk-lime)!important;min-height:70px;font-size:19px}
.wk-a.gap small{color:#3A4410}
.wk-a.sel{outline:3px solid var(--wk-paper);outline-offset:2px}
.wk-row{display:flex;justify-content:space-between;align-items:center}
.wk-txt{color:var(--wk-on2)!important;font-size:14px;text-decoration:underline;text-underline-offset:3px;padding:10px 4px}
.wk-back{color:var(--wk-on2)!important;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:4px;padding:8px 0}
/* intro */
.wk-choices{display:flex;flex-direction:column;gap:10px}
.wk-choice{min-height:60px;border-radius:16px;border:2px solid var(--wk-ink3)!important;background:var(--wk-ink2)!important;padding:12px 16px;text-align:left;font-weight:700;font-size:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.wk-choice:active{transform:scale(.98)}
.wk-choice span{color:var(--wk-muted);font-weight:500;font-size:13px;text-align:right}
.wk-choice.on{border-color:var(--wk-lime)!important}
.wk-cta{min-height:60px;border-radius:16px;background:var(--wk-lime)!important;color:var(--wk-ink)!important;font:900 19px/1 var(--wk-head)!important;font-stretch:110%!important;text-transform:uppercase;letter-spacing:.02em;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;text-decoration:none;padding:0 16px;text-align:center}
.wk-cta:active{transform:scale(.98)}
.wk-cta.ghost{background:transparent!important;color:var(--wk-paper)!important;border:2px solid var(--wk-ink3)!important;font-size:16px!important;min-height:52px}
.wk-foot{padding-top:12px;display:flex;flex-direction:column;gap:6px}
.wk-ringrow{display:flex;align-items:center;gap:18px;padding:8px 0}
.wk-finger{width:17mm;height:17mm;min-width:56px;min-height:56px;border-radius:50%;border:3px solid var(--wk-lime);box-shadow:0 0 0 8px var(--wk-lime-dim);flex:none;animation:wk-breathe 2.4s ease-in-out infinite}
@keyframes wk-breathe{50%{box-shadow:0 0 0 14px var(--wk-lime-dim)}}
.wk-kit{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.wk-kit div{background:var(--wk-ink2);border-radius:14px;padding:12px;font-size:14px;color:var(--wk-on2)}
.wk-kit b{display:block;color:var(--wk-paper);font-size:15px}
/* toast + tips sheet (these sit outside .wk, so they carry their own tokens) */
.wk-toast,.wk-sheet,.wk-scrim{--wk-ink:#0C0D0B;--wk-paper:#F2F2EC;--wk-lime:#D4FF3A;--wk-head:var(--head,"Archivo",system-ui,sans-serif);--wk-body:var(--body,"Instrument Sans",system-ui,sans-serif)}
.wk-toast{position:fixed;left:50%;top:calc(env(safe-area-inset-top,0px) + 60px);transform:translate(-50%,-12px);background:var(--wk-paper);color:var(--wk-ink);font:800 15px/1 var(--wk-head);font-stretch:108%;text-transform:uppercase;letter-spacing:.03em;padding:12px 16px;border-radius:999px;opacity:0;pointer-events:none;transition:opacity .2s,transform .25s cubic-bezier(.3,1.5,.5,1);z-index:60;white-space:nowrap;max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis}
.wk-toast.show{opacity:1;transform:translate(-50%,0)}
.wk-toast.lime{background:var(--wk-lime)}
.wk-scrim{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:70;opacity:0;transition:opacity .2s}
.wk-scrim.show{opacity:1}
.wk-sheet{position:fixed;left:0;right:0;bottom:0;max-width:520px;margin:0 auto;max-height:84%;overflow-y:auto;background:var(--wk-paper);color:var(--wk-ink);border-radius:22px 22px 0 0;padding:10px max(20px,env(safe-area-inset-right,0px)) calc(24px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));z-index:71;transform:translateY(100%);transition:transform .3s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;gap:12px;font:16px/1.45 var(--wk-body)}
.wk-sheet.show{transform:none}
.wk-grab{width:40px;height:5px;border-radius:5px;background:#C8CBC0;margin:0 auto 6px}
.wk-sheet h3{font:900 24px/1 var(--wk-head);font-stretch:110%;text-transform:uppercase;margin:0}
.wk-sheet ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.wk-warn{background:#0C0D0B;color:#F2F2EC;border-radius:14px;padding:12px 14px;font-size:14px}
.wk-warn b{color:#D4FF3A;display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px}
.wk-sheet a{color:#0C0D0B;font-weight:700}
.wk-close-btn{min-height:52px;border-radius:14px;background:#0C0D0B;color:#F2F2EC;font-weight:700;border:0;font:700 16px var(--wk-body)}
/* reveal */
.wk-score{display:flex;align-items:baseline;gap:10px;font-family:var(--wk-head);font-weight:900;font-stretch:115%;line-height:.85}
.wk-score .big{font-size:96px;color:var(--wk-lime);font-variant-numeric:tabular-nums}
.wk-score .of{font-size:26px;color:var(--wk-on2);text-transform:uppercase}
.wk-list{display:flex;flex-direction:column;gap:8px}
.wk-item{display:flex;align-items:center;gap:12px;background:var(--wk-ink2);border-radius:14px;padding:12px 14px;animation:wk-rise .4s backwards} /* fix4: visible at rest; only the rise animates */
@keyframes wk-rise{from{transform:translateY(8px)}}
@media (prefers-reduced-motion:reduce){.wk-item{animation:none}}
.wk-item .n{width:28px;height:28px;border-radius:50%;background:var(--wk-lime);color:var(--wk-ink);font:800 13px/28px var(--wk-body);text-align:center;flex:none}
.wk-item.unsure .n{background:transparent;border:2px dashed var(--wk-on2);color:var(--wk-on2);line-height:24px}
.wk-item div{min-width:0;flex:1}.wk-item b{display:block;font-size:15px}.wk-item small{color:var(--wk-on2);font-size:13px}
.wk-tag{font:700 10px/1 var(--wk-body);letter-spacing:.1em;text-transform:uppercase;border:1px solid currentColor;border-radius:999px;padding:4px 7px;color:var(--wk-on2);flex:none}
.wk-offer{background:var(--wk-paper);color:var(--wk-ink);border-radius:20px;padding:18px;display:flex;flex-direction:column;gap:12px}
.wk-offer h3{font:900 26px/.95 var(--wk-head);font-stretch:112%;text-transform:uppercase;margin:0;color:var(--wk-ink)}
.wk-offer p{color:#4A4D45;font-size:15px}
.wk-offer .wk-eye{color:#4A4D45}
.wk-offer .wk-cta{background:var(--wk-ink)!important;color:var(--wk-lime)!important}
@media (prefers-reduced-motion:reduce){.wk *,.wk *::before,.wk-toast,.wk-sheet{animation:none!important;transition:none!important}}
.wk-steps{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px;color:var(--wk-on2);font-size:15px}.wk-steps b{color:var(--wk-paper)}

/* v3: one-question spot screens, thumb-zone answers, rewards */
.wk-big{display:block;width:100%;height:auto;border-radius:14px;background:#15160F;margin:6px 0 4px}
.wk-q{font-size:28px!important;line-height:1.1!important;margin:10px 0 6px!important}
.wk-yn{position:sticky;bottom:0;grid-template-columns:1fr 1fr 1fr!important;padding:10px 0 calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--wk-ink) 22%);z-index:3}
.wk-yn .wk-a{grid-column:auto!important;min-height:72px;font-size:21px!important;text-align:center;align-items:center}
.wk-yn .wk-a.ok{background:var(--wk-paper)!important;color:var(--wk-ink)!important;border-color:var(--wk-paper)!important}
.wk-cta .wk-sub{display:block;font:500 13px/1.2 var(--wk-body);text-transform:none;letter-spacing:0;opacity:.8}
.wk-foot .wk-cta.ghost{margin-top:10px}
.wk-house.jump{animation:wk-jump .5s cubic-bezier(.3,1.6,.5,1)}
@keyframes wk-jump{35%{transform:translateY(-8px) scale(1.03)}}
@media (prefers-reduced-motion:reduce){.wk-house.jump{animation:none!important}}
.wk-tip{margin:0 0 8px;font:500 15px/1.4 var(--wk-body);color:var(--wk-on2,#C8CBC0)}

/* v3g: bigger, longer, wrapping toasts that never take taps; tighter stop screen above Yes/No/Not sure */
.wk-toast{pointer-events:none;white-space:normal!important;max-width:calc(100vw - 32px);width:max-content;text-align:center;font-size:19px!important;line-height:1.15!important;padding:14px 20px!important;border-radius:18px!important;border:3px solid var(--wk-ink);box-shadow:0 8px 0 rgba(0,0,0,.45),0 0 0 3px var(--wk-paper);z-index:60}
.wk-toast.lime{box-shadow:0 8px 0 rgba(0,0,0,.45),0 0 0 3px var(--wk-lime)}
.wk-toast.show.wig{animation:wk-wig .6s cubic-bezier(.3,1.6,.5,1)}
@keyframes wk-wig{0%{transform:translate(-50%,-14px) scale(.9)}35%{transform:translate(-50%,0) scale(1.08) rotate(-3deg)}60%{transform:translate(-50%,0) rotate(2.5deg)}80%{transform:translate(-50%,0) rotate(-1deg)}100%{transform:translate(-50%,0)}}
@media (prefers-reduced-motion:reduce){.wk-toast.show.wig{animation:none!important}}
/* v3g: on stop screens the answer buttons follow the content instead of pinning to the bottom (no empty band) */
.wk-scroll.wk-stop{flex:0 1 auto}
.wk-yn{padding-top:6px!important}
/* ovn F: visible keyboard focus in the walk, seal mode and toast/sheet layers */
.wk button:focus-visible,.wk a:focus-visible,.wk input:focus-visible,.sl-ov button:focus-visible,.sl-ov a:focus-visible,.sl-ov input:focus-visible+.sl-box,.wk-sheet button:focus-visible,.wk-sheet a:focus-visible{outline:3px solid var(--wk-lime,#D4FF3A)!important;outline-offset:3px!important;box-shadow:0 0 0 6px #0C0D0B}
.wk-big,.wk-close{max-width:100%;height:auto}
.nh-s.pop{animation:wk-pop .45s cubic-bezier(.3,1.6,.5,1)}
