:root{--bg: #f3e7d8;--bg-deep: #e6d6c1;--fg: #3a2a20;--muted: #6f5d4d;--accent: #466f18;--card: #fdfcf9;--card-fg: #1c1a17;--card-muted: #726b5f;--line: #cfc8ba;--no: #fb913b;--yes: #93c24a;--yes-ink: #466f18;--no-ink: #b03a0a;--font: Lato, "Fira Sans", system-ui, sans-serif;--display: "Playfair Display", Georgia, serif;--ui: Inter, system-ui, sans-serif;color:var(--fg);background:var(--bg);font-family:var(--font);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);overflow:hidden;overscroll-behavior:none}button,a{-webkit-tap-highlight-color:transparent}.home{height:100%;overflow:auto;padding:1.1rem 1.15rem 2.4rem}.topbar,.home-head{display:flex;align-items:center;justify-content:space-between;gap:.8rem}.logo{display:grid;padding:.15rem .4rem .2rem .1rem;border-radius:12px;background:color-mix(in srgb,var(--bg) 90%,transparent);grid-template-columns:auto auto;column-gap:.45rem;align-items:center;color:inherit;text-decoration:none;font:500 1.45rem/1 var(--font);letter-spacing:-.03em}.logo svg{grid-row:1 / span 2;width:2.15rem;height:2.15rem;overflow:visible}.logo small,.motto{grid-column:2;margin-top:.22rem;font:500 .62rem/1 var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.lede{max-width:38rem;margin:1.4rem 0 1.5rem;font-family:var(--display);font-weight:400;font-size:clamp(1.7rem,3.4vw,2.55rem);line-height:1.12;letter-spacing:-.02em}.lede em{font-style:italic;color:var(--accent)}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:68rem}.demo-card{display:flex;flex-direction:column;min-height:22rem;padding:.85rem .85rem 1rem;background:var(--card);color:var(--card-fg);text-decoration:none;border-radius:16px;box-shadow:0 1px 2px #00000024,0 14px 32px #3a2a2029;position:relative}.demo-card .shot{height:9.2rem;border-radius:10px;background:#e9e4da center/cover no-repeat;margin-bottom:.85rem}.kicker{margin:0;font:600 .68rem/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.demo-card h2{margin:.35rem 0 .4rem;font-family:var(--display);font-weight:400;font-size:1.7rem;letter-spacing:-.02em}.demo-card p{margin:0;color:var(--card-muted);font-family:var(--ui);font-size:.92rem;line-height:1.45}.demo-card .go{margin-top:auto;padding-top:.9rem;font:700 .72rem/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--fg)}.credit{max-width:40rem;margin-top:1.8rem;color:var(--muted);font-family:var(--ui);font-size:.82rem;line-height:1.5}.credit a{color:var(--fg)}.stage{position:relative;height:100%;height:100dvh;background:var(--bg);overflow:hidden;touch-action:none;user-select:none}.stage canvas{display:block;touch-action:none}.chrome{position:absolute;z-index:2;top:0;left:0;right:0;display:flex;justify-content:space-between;gap:1rem;padding:max(.55rem,env(safe-area-inset-top)) .85rem 0;pointer-events:none}.chrome a,.chrome button,.hintbar button,.shuffle{pointer-events:auto}.chrome-title{text-align:right;min-width:0;max-width:min(18rem,62vw);padding:.35rem .6rem .45rem;border-radius:12px;background:color-mix(in srgb,var(--bg) 90%,transparent)}.chrome-title strong{display:block;font-family:var(--display);font-weight:400;font-size:1.25rem;letter-spacing:-.02em}.chrome-title span{display:block;margin-top:.15rem;color:var(--muted);font:500 .68rem/1.35 var(--ui);letter-spacing:.04em}.hintbar{position:absolute;z-index:2;left:0;right:0;bottom:0;display:flex;justify-content:space-between;align-items:flex-end;gap:.8rem;padding:.7rem .9rem max(.75rem,env(safe-area-inset-bottom));pointer-events:none}.hintbar p{margin:0;max-width:min(28rem,70vw);padding:.4rem .7rem;border-radius:999px;background:color-mix(in srgb,var(--bg) 92%,transparent);color:var(--fg);font:500 .78rem/1.4 var(--ui)}.ghost,.shuffle{border:1px solid rgba(58,42,32,.28);background:#fdfcf9e0;color:var(--fg);border-radius:999px;padding:.55rem .9rem;font:700 .68rem/1 var(--ui);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.shuffle{position:absolute;z-index:3;left:50%;top:46%;transform:translate(-50%,-50%);padding:.8rem 1.1rem;box-shadow:0 12px 30px #3a2a202e}.stamp{position:absolute;z-index:2;top:18%;padding:.22em .55em;border:3px solid currentColor;border-radius:.28em;background:#fdfcf9eb;color:var(--no-ink);font:700 1.15rem/1 var(--ui);letter-spacing:.12em;text-transform:uppercase;pointer-events:none;opacity:0;box-shadow:0 8px 20px #00000029}.stamp.no{left:max(1rem,8vw);rotate:-8deg;color:var(--no-ink)}.stamp.yes{right:max(1rem,8vw);rotate:8deg;color:var(--yes-ink)}.peek{position:absolute;z-index:2;left:50%;bottom:18%;transform:translate(-50%);text-align:center;pointer-events:none;opacity:0}.peek span{display:block;font:600 .68rem/1 var(--ui);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.peek strong{display:block;margin-top:.15rem;font:italic 600 2.4rem/1 var(--display);color:var(--accent)}.loading{height:100%;display:grid;place-items:center;font-family:var(--display);font-size:1.4rem;color:var(--muted)}.piles{position:absolute;z-index:2;left:0;right:0;top:42%;display:flex;justify-content:space-between;padding:0 4vw;pointer-events:none}.piles span{font:700 .72rem/1 var(--ui);letter-spacing:.14em;text-transform:uppercase;color:var(--no-ink);padding:.28rem .45rem;border:2px solid currentColor;border-radius:.3rem;background:#fdfcf9e6;rotate:-8deg}.piles span.yes{color:var(--yes-ink);rotate:8deg}@media(max-width:860px){.grid{grid-template-columns:1fr;max-width:28rem}.demo-card{min-height:0}.chrome{align-items:flex-start}.chrome-title strong{font-size:1.05rem}.stamp{font-size:.85rem;top:16%}}
