:root{--ink: #2c2a33;--cream: #fbf4ee;--grass: #6ea63e;--grass-deep: #3f6b2b;--sky: #bfe3f2;--panel: rgba(28, 34, 24, .82);--panel-line: rgba(255, 255, 255, .14);--accent: #f2c14e;--pixel-font: "Press Start 2P", ui-monospace, Menlo, monospace;--dialog-font: "Pixelify Sans", "Press Start 2P", ui-monospace, Menlo, monospace;font-family:Poppins,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:#a9dcef;color:var(--cream);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:none}#app{position:fixed;inset:0}#scene{display:block;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges}.loading{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:18px;background:linear-gradient(#bfe6f4,#dff0d0);color:#3f6b2b;font-weight:500;letter-spacing:.03em;z-index:40;transition:opacity .6s ease}.loading.gone{opacity:0;pointer-events:none}.loading-blade{width:14px;height:46px;border-radius:40% 40% 6px 6px;background:linear-gradient(#8bbf5a,#4f8231);transform-origin:50% 100%;animation:sway 1.5s ease-in-out infinite}@keyframes sway{0%,to{transform:rotate(-16deg)}50%{transform:rotate(16deg)}}.hud{position:absolute;inset:0;pointer-events:none;z-index:20;font-size:13px}.topbar{position:absolute;top:0;left:0;right:0;z-index:25;pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 22px;padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right));background:#fbf4eecc;backdrop-filter:blur(12px);border-bottom:1px solid rgba(44,42,51,.1);color:var(--ink);text-shadow:none}.topbar .brand{display:flex;align-items:center;gap:10px;min-width:0;font-size:15px;font-weight:600;white-space:nowrap}.topbar .brand img{width:25px;height:25px;object-fit:contain}.topbar .brand .home{display:inline-flex;align-items:center;gap:9px;color:var(--ink);text-decoration:none}.topbar .brand .home:hover{color:#6ea63e}.topbar .brand .home .tld{background:linear-gradient(90deg,#947cf4,#fb3854,#feaa39);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.topbar .brand .sep{color:#8b8590;font-weight:300}.topbar .brand .crumb{font-size:15px;font-weight:600;background:linear-gradient(90deg,#947cf4,#fb3854 55%,#feaa39);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.topbar .tag{flex:0 1 auto;min-width:0;font-size:12.5px;font-weight:300;color:#2c2a33bf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hud .hint{position:absolute;left:18px;bottom:16px;max-width:60vw;line-height:1.55;color:#ffffffe6;text-shadow:0 1px 3px rgba(0,0,0,.5);transition:opacity .8s ease}.hud .hint kbd{display:inline-block;min-width:1.3em;padding:1px 6px;margin:0 1px;border-radius:5px;background:#ffffff29;border:1px solid rgba(255,255,255,.28);border-bottom-width:2px;font-weight:600;font-size:11px;text-align:center}.hud .hint.fade{opacity:.18}.topbar .tools{display:flex;gap:8px;flex:none}.topbar .tools button,.topbar .tools a{display:inline-flex;align-items:center;gap:6px;font:inherit;font-size:12px;font-weight:500;color:var(--ink);background:#fff9;border:1px solid rgba(44,42,51,.14);border-radius:999px;padding:7px 13px;cursor:pointer;white-space:nowrap;transition:transform .12s ease,background .2s ease}.topbar .tools button:hover,.topbar .tools a:hover{background:#ffffffe6;transform:translateY(-1px)}.topbar .tools button.on{background:var(--accent);color:#402c00;border-color:transparent}.stick{position:absolute;inset:0;z-index:15;pointer-events:none}.stick-base{position:absolute;right:max(22px,env(safe-area-inset-right));bottom:max(26px,env(safe-area-inset-bottom));width:116px;height:116px;border-radius:50%;background:#ffffff17;border:1px solid rgba(255,255,255,.22);display:grid;place-content:center;opacity:.4;transition:opacity .18s ease}.stick-base.live{opacity:1}.stick-nub{width:50px;height:50px;border-radius:50%;background:#ffffff8c;border:1px solid rgba(255,255,255,.5)}.meet-cue-box,.meet-cue-in,.meet-sheet,.meet-frame,.meet-portrait{--n: 8px;clip-path:polygon(0 var(--n),var(--n) var(--n),var(--n) 0,calc(100% - var(--n)) 0,calc(100% - var(--n)) var(--n),100% var(--n),100% calc(100% - var(--n)),calc(100% - var(--n)) calc(100% - var(--n)),calc(100% - var(--n)) 100%,var(--n) 100%,var(--n) calc(100% - var(--n)),0 calc(100% - var(--n)))}.meet-cue{position:absolute;z-index:18;display:grid;justify-items:center;transform:translate(-50%,calc(-100% - 8px));cursor:pointer;pointer-events:auto;animation:cue-bob .75s steps(2,end) infinite alternate;filter:drop-shadow(0 5px 0 rgba(20,26,14,.35))}.meet-cue-box{--n: 9px;display:block;background:#241f1a;padding:3px}.meet-cue-in{--n: 6px;display:inline-flex;align-items:center;gap:13px;padding:11px 16px;background:linear-gradient(#20281af7,#181f14f7);color:#fff;font-family:var(--pixel-font);font-size:13px;letter-spacing:1px;text-transform:uppercase;white-space:nowrap}.meet-cue kbd{display:inline-block;padding:8px 9px 10px;background:var(--accent);color:#402c00;font-family:inherit;font-size:13px;text-align:center;box-shadow:inset 0 -4px #402c0059}.meet-cue-tail{width:24px;height:12px;background:#241f1a;clip-path:polygon(0 0,100% 0,100% 50%,75% 50%,75% 100%,25% 100%,25% 50%,0 50%)}.meet-cue[hidden],.meet-btn[hidden],#meet-root.touch .meet-cue kbd{display:none}#meet-root.touch .meet-cue-in{font-size:10px;padding:9px 12px}@keyframes cue-bob{0%{transform:translate(-50%,calc(-100% - 8px))}to{transform:translate(-50%,calc(-100% - 16px))}}.meet-btn{position:absolute;z-index:22;left:max(24px,env(safe-area-inset-left));bottom:max(30px,env(safe-area-inset-bottom));width:64px;height:64px;border-radius:50%;border:2px solid rgba(255,255,255,.55);background:var(--accent);color:#402c00;font-family:var(--pixel-font);font-size:13px;cursor:pointer;box-shadow:0 4px #141a0e59;animation:cue-pop .16s steps(3,end)}.meet-btn:active{transform:translateY(2px);box-shadow:0 2px #141a0e59}.hud.stowed .hint{opacity:0;pointer-events:none;transition:opacity .18s ease-out}@keyframes cue-pop{0%{transform:scale(.9)}to{transform:scale(1)}}.talk{position:absolute;inset:auto 0 0;z-index:34;display:grid;justify-items:center;padding:0 16px max(16px,env(safe-area-inset-bottom));pointer-events:auto;background:linear-gradient(to top,#0e120aa8,#0e120a47 55%,#0e120a00);animation:talk-rise .26s steps(4,end) both}.talk[hidden]{display:none}@keyframes talk-rise{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.talk-box{--n: 9px;--accent: #f2c14e;position:relative;width:min(900px,100%);padding:3px;background:#241f1a;clip-path:polygon(0 var(--n),var(--n) var(--n),var(--n) 0,calc(100% - var(--n)) 0,calc(100% - var(--n)) var(--n),100% var(--n),100% calc(100% - var(--n)),calc(100% - var(--n)) calc(100% - var(--n)),calc(100% - var(--n)) 100%,var(--n) 100%,var(--n) calc(100% - var(--n)),0 calc(100% - var(--n)));font-family:var(--dialog-font);cursor:pointer}.talk-box:before{content:"";position:absolute;inset:3px;background:linear-gradient(#20281af7,#181f14f7);clip-path:inherit}.talk-who,.talk-text,.talk-choices{position:relative}.talk-who{display:flex;align-items:baseline;gap:10px;padding:13px 18px 0}.talk-name{color:var(--accent);font-family:var(--pixel-font);font-size:13px;letter-spacing:1px;text-transform:uppercase}.talk-sub{color:#ffffff73;font-size:14px;letter-spacing:.4px}.talk-text{margin:0;padding:9px 18px 0;min-height:2.9em;color:#eef3e4;font-size:20px;line-height:1.5;letter-spacing:.3px;text-wrap:pretty}.talk-choices{display:grid;gap:4px;margin:0;padding:4px 12px 12px;list-style:none}.talk-choice{display:flex;align-items:center;gap:11px;width:100%;padding:9px 10px;border:0;background:transparent;color:#fffc;font:inherit;font-size:17.5px;line-height:1.4;text-align:left;cursor:pointer;animation:talk-choice-in .14s steps(2,end) both;animation-delay:calc(var(--i, 0) * .05s)}@keyframes talk-choice-in{0%{transform:translate(-6px);opacity:0}to{transform:translate(0);opacity:1}}.talk-key{flex:none;width:22px;padding:4px 0 5px;background:#ffffff17;color:#ffffff80;font-family:var(--pixel-font);font-size:10px;text-align:center}.talk-choice:hover,.talk-choice:focus-visible,.talk-choice.selected{background:#ffffff12;color:#fff;outline:none}.talk-choice.selected{box-shadow:inset 3px 0 0 var(--accent)}.talk-choice:hover .talk-key,.talk-choice:focus-visible .talk-key,.talk-choice.selected .talk-key{background:var(--accent);color:#2a2013}.talk-choice:active{transform:translateY(1px)}.talk-choices li.exit{margin-top:3px;padding-top:5px;border-top:1px solid rgba(255,255,255,.09)}.talk-choice.exit{color:#ffffff7a}.talk-choice.exit .talk-key{background:transparent;box-shadow:inset 0 0 0 1px #ffffff2e}.talk-choice.exit:hover,.talk-choice.exit.selected{color:#fff}.talk-choice.exit:hover .talk-key,.talk-choice.exit.selected .talk-key{background:var(--accent);box-shadow:none}@media(max-width:620px){.talk{padding:0 8px max(8px,env(safe-area-inset-bottom))}.talk-who{padding:10px 13px 0}.talk-name{font-size:11px}.talk-sub{font-size:12.5px}.talk-text{padding:7px 13px 0;min-height:3.6em;font-size:15.5px;line-height:1.45}.talk-choices{padding:4px 8px 9px}.talk-choice{gap:9px;padding:11px 8px;font-size:14.5px}}@media(max-height:460px)and (orientation:landscape){.talk-choices{grid-template-columns:1fr 1fr;column-gap:10px}.talk-choices li.exit{grid-column:1 / -1}.talk-text{min-height:2.2em;font-size:14.5px}.talk-choice{padding:7px 8px;font-size:13.5px}.talk-who{padding-top:9px}}@media(prefers-reduced-motion:reduce){.talk,.talk-choice{animation:none}}@media(max-width:720px){.topbar{padding:8px 14px;gap:10px}.topbar .tag{display:none}.topbar .tools button,.topbar .tools a{padding:8px 11px}.topbar .tools button .label,.topbar .tools a .label{display:none}.topbar .brand{overflow:hidden}.topbar .brand .crumb{overflow:hidden;text-overflow:ellipsis;min-width:0}}@media(max-width:640px){.hud .hint{max-width:74vw;font-size:12px}}
