:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--night:#0b0e2a;--dusk:#171c4f;--moon:#f6f2e4;--moon-soft:#c9cbec;--amber:#ffb703;--amber-soft:#ffe08a;--ink:#1a1440;--brick:#b3261e;--rose:#ffa59c;--leaf:#7be0a8;--accent:#ffe08a;--hairline:#ffffff29;--field:#ffffff14;--field-hover:#ffffff24;--field-line:#ffffff61;--btn-line:#ffffff80;--quiet:#ffffff1f;--panel:linear-gradient(180deg, #ffffff1a, #ffffff0b);--panel-line:#ffffff29;--panel-shadow:inset 0 1px 0 #ffffff24, 0 24px 60px -30px #0009;--bubble:#ffe08a24;--bubble-line:#ffe08a59;--menu:#1c2158;--autofill:#272c6c;--focus-strong:#fff;--lamp-edge:0 solid transparent;--display:"Fraunces Variable", "Iowan Old Style", Georgia, serif;--body:"Atkinson Hyperlegible", system-ui, sans-serif;--lamp:clamp(220px, 46vmin, 380px)}*{box-sizing:border-box;margin:0}html,body,#root{height:100%}html{background:var(--night)}body{color:var(--moon);font-family:var(--body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:22px;line-height:1.4}.card a,.notice,.linkbox,.profile,.door,.caption-buddy,.panel-glass{background:var(--panel);border:1px solid var(--panel-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:var(--panel-shadow)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.card a,.notice,.linkbox,.profile,.door,.caption-buddy,.panel-glass{background:var(--menu)}}.screen{min-height:100dvh;padding:max(1.5rem, env(safe-area-inset-top)) 1.5rem max(2rem, env(safe-area-inset-bottom));text-align:center;grid-template-rows:auto 1fr auto;gap:1.5rem;display:grid}.brand{font-family:var(--display);letter-spacing:.02em;color:var(--accent);font-size:1.05rem;font-weight:600}.greeting{font-family:var(--display);font-variation-settings:"SOFT" 100, "WONK" 0;letter-spacing:-.015em;min-height:1.1em;margin-top:.4rem;font-size:clamp(2.2rem,6.5vmin,3.6rem);font-weight:600;line-height:1.1}.lamp-area{place-content:center;justify-items:center;gap:2.25rem;display:grid}.lamp{width:var(--lamp);height:var(--lamp);border:var(--lamp-edge);background:radial-gradient(circle at 38% 32%, #fff6d2 0%, #ffd34d 34%, var(--amber) 62%, #f39200 100%);color:var(--ink);font-family:var(--display);cursor:pointer;touch-action:manipulation;border-radius:50%;place-items:center;padding:1.5rem;font-size:clamp(1.6rem,5vmin,2.4rem);font-weight:600;line-height:1.1;transition:transform .18s,filter .3s;animation:3.6s ease-in-out infinite breathe;display:grid;position:relative;box-shadow:0 0 44px 8px #ffc43c8c,0 0 130px 36px #ffb70342}.lamp:hover{filter:brightness(1.06)}.lamp:active{transform:scale(.97)}.lamp:focus-visible{outline:6px solid var(--focus-strong);outline-offset:10px}.lamp-label{z-index:1;max-width:8ch;position:relative}.lamp-rings{pointer-events:none;border-radius:50%;position:absolute;inset:0}.lamp-rings:before,.lamp-rings:after{content:"";opacity:0;border:3px solid #ffe08ad9;border-radius:50%;position:absolute;inset:0}.screen[data-phase=calling] .lamp,.screen[data-phase=thinking] .lamp{animation:1.6s ease-in-out infinite breathe}.screen[data-phase=listening] .lamp{animation:none;box-shadow:0 0 0 18px #ffe08a47,0 0 0 38px #ffe08a1f,0 0 150px 50px #ffb70366}.screen[data-phase=talking] .lamp{animation:none;box-shadow:0 0 60px 14px #ffd25acc,0 0 170px 56px #ffb70366}.screen[data-phase=talking] .lamp-rings:before{animation:2.2s ease-out infinite ring}.screen[data-phase=talking] .lamp-rings:after{animation:2.2s ease-out 1.1s infinite ring}@keyframes breathe{0%,to{box-shadow:0 0 44px 8px #ffc43c80,0 0 130px 36px #ffb70338}50%{box-shadow:0 0 62px 14px #ffd25acc,0 0 170px 56px #ffb70361}}@keyframes ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.5)}}.hint{max-width:24ch;color:var(--moon-soft);font-size:1.15rem}.problem{max-width:26ch;color:var(--brick);border:3px solid var(--brick);background:#fff;border-radius:18px;padding:1rem 1.25rem;font-size:1.25rem;font-weight:700}.captions{text-align:left;align-content:end;gap:.9rem;max-width:34ch;min-height:9rem;margin-inline:auto;display:grid}.caption-buddy{background:var(--bubble);border-color:var(--bubble-line);border-radius:22px 22px 22px 8px;flex-direction:column;justify-content:flex-end;max-height:7.8em;padding:1rem 1.25rem;font-size:clamp(1.5rem,4.4vmin,2.1rem);font-weight:700;line-height:1.3;display:flex;overflow:hidden}.caption-user{color:var(--moon-soft);padding-inline:1.25rem;font-size:1.15rem}.caption-who{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin-right:.4em;font-size:.8em;font-weight:700}@media (orientation:landscape) and (width>=820px){.screen{text-align:left;grid-template-rows:auto 1fr;grid-template-columns:1fr 1fr;column-gap:3rem;padding-inline:3rem}.top{grid-column:1/-1}.captions{align-content:center;max-width:30ch;margin-inline:0}}.page{max-width:64rem;padding:max(1.5rem, env(safe-area-inset-top)) 1.25rem 3rem;text-align:left;margin-inline:auto}.page h1{font-family:var(--display);font-variation-settings:"SOFT" 100, "WONK" 0;letter-spacing:-.015em;margin:.5rem 0 .75rem;font-weight:600;line-height:1.1}.page h2{font-family:var(--display);margin:1.75rem 0 .5rem;font-weight:600}.page h3{color:var(--accent);margin:1rem 0 .25rem;font-weight:700}.page p{margin:.5rem 0}.page a{color:var(--accent);text-underline-offset:3px}.lede{color:var(--moon-soft)}.small{color:var(--moon-soft);font-size:.85em}.back{margin-bottom:.5rem;font-weight:700;text-decoration:none;display:inline-block}.centered{text-align:center}.narrow{max-width:36rem}.plain{margin:.5rem 0;padding:0;list-style:none}.plain li{border-bottom:1px solid var(--hairline);padding:.5rem 0}.elder-page{font-size:1.3rem}.elder-page h1{font-size:clamp(2rem,6vmin,3rem)}.elder-page h2{font-size:1.5rem}.elder-page .emergency{color:var(--ink);border:3px solid var(--brick);background:#fff;border-radius:18px;padding:1rem 1.25rem}.elder-page .emergency h2{margin-top:.25rem}.elder-page .emergency a{color:var(--ink);font-weight:700}.elder-page .emergency .plain li{border-bottom-color:#d8dbe6}.elder-nav{flex-wrap:wrap;justify-content:center;align-items:center;gap:2rem;font-size:1.1rem;display:flex}.elder-nav a{color:var(--moon);padding:.75rem .5rem;font-weight:700}.elder-nav .speed{gap:.5rem;display:inline-flex}.btn{font:inherit;color:var(--moon);background:var(--field);border:2px solid var(--btn-line);cursor:pointer;touch-action:manipulation;border-radius:999px;padding:.6em 1.2em;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .22s,background-color .18s,border-color .18s;display:inline-block}.page a.btn{color:var(--moon)}.btn:hover{background:var(--field-hover);border-color:var(--accent)}.btn:active{transform:scale(.98)}.btn.primary,.page a.btn.primary{color:var(--ink);background:linear-gradient(180deg, #ffe07a 0%, var(--amber) 60%, #ffa41c 100%);border-color:#0000;box-shadow:0 0 0 1px #ffe08a80,0 10px 34px -6px #ffb7038c}.btn.primary:hover{background:linear-gradient(#ffe890 0%,#ffc021 60%,#ffab2e 100%);box-shadow:0 0 0 1px #ffe08acc,0 14px 46px -4px #ffb703cc}.btn.danger,.page a.btn.danger{background:var(--brick);color:#fff;border-color:#ffffff59}.btn.danger:hover{background:#c8322a}.btn.quiet{background:var(--quiet);border-color:#0000;font-weight:700}.btn.small{padding:.4em .9em;font-size:.95em}.btn.big{padding:.7em 1.6em;font-size:1.3rem}.btn:disabled{opacity:.45;cursor:default}.btn:focus-visible,.link:focus-visible,.page a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.tabs button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.btn.primary:focus-visible{outline-color:var(--focus-strong)}.link{font:inherit;color:var(--accent);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.memory-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.memory-row .confirm{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.portal{font-size:1.05rem}.portal h1{font-size:2.4rem}.portal h2{font-size:1.45rem}.portal-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.portal-nav{align-items:center;gap:1.25rem;display:flex}.notice{border-color:#ffe08a59;border-radius:16px;padding:.9rem 1.1rem}.portal .problem{max-width:none;font-size:1rem}.empty{text-align:center;color:var(--moon-soft);padding:2rem 0}.cards{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.card a{color:var(--moon);border-radius:22px;padding:1.2rem 1.35rem;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:block}.card a:hover{border-color:#ffe08a8c;transform:translateY(-3px);box-shadow:inset 0 1px #ffffff2e,0 24px 70px -28px #ffb70373}.card h2{color:var(--moon);flex-wrap:wrap;align-items:center;gap:.6rem;margin:0 0 .25rem;display:flex}.card p{color:var(--moon-soft)}.badge{letter-spacing:.04em;text-transform:uppercase;background:var(--brick);color:#fff;font-size:.7rem;font-weight:700;font-family:var(--body);border-radius:999px;padding:.2em .6em}.form{gap:1rem;margin:1rem 0;display:grid}.form label{gap:.35rem;font-weight:700;display:grid}.form small{color:var(--moon-soft);font-weight:400}input,textarea,select{font:inherit;color:var(--moon);background:var(--field);border:2px solid var(--field-line);box-sizing:border-box;border-radius:12px;width:100%;padding:.55em .75em}input::placeholder,textarea::placeholder{color:#c9cbecbf}input:hover,textarea:hover,select:hover{border-color:var(--btn-line)}input:focus,textarea:focus,select:focus{border-color:var(--accent);background:var(--field-hover)}select option{background:var(--menu);color:var(--moon)}:-webkit-any(input:-webkit-autofill,textarea:-webkit-autofill,select:-webkit-autofill){-webkit-text-fill-color:var(--moon);box-shadow:0 0 0 100px var(--autofill) inset;caret-color:var(--moon)}:is(input:autofill,textarea:autofill,select:autofill){-webkit-text-fill-color:var(--moon);box-shadow:0 0 0 100px var(--autofill) inset;caret-color:var(--moon)}.row3{grid-template-columns:1fr 1fr 1fr;gap:.6rem;display:grid}.inline-form{flex-wrap:wrap;gap:.6rem;margin:.75rem 0;display:flex}.inline-form input{flex:14rem}.inline-form select{flex:0 12rem;width:auto}.switch{margin-top:1.5rem}.steps{counter-reset:step;color:var(--moon-soft);flex-wrap:wrap;gap:.5rem 1.25rem;padding:0;font-size:.9rem;list-style:none;display:flex}.steps li:before{counter-increment:step;content:counter(step) ". "}.steps li.current{color:var(--accent);font-weight:700}.steps li.done{text-decoration:line-through}.wizard-nav{justify-content:space-between;gap:1rem;margin-top:1.5rem;display:flex}.wizard-nav .primary{margin-left:auto}.tabs{border-bottom:1px solid var(--hairline);flex-wrap:wrap;gap:.25rem;margin:1rem 0;display:flex}.tabs button{font:inherit;cursor:pointer;color:var(--moon-soft);background:0 0;border:0;border-bottom:4px solid #0000;border-radius:8px 8px 0 0;padding:.6rem .8rem;font-weight:700;position:relative}.tabs button:hover{color:var(--moon);background:#ffffff0f}.tabs button.current{color:var(--moon);border-bottom-color:var(--amber)}.tabs .dot{background:var(--rose);vertical-align:middle;border-radius:50%;width:.6em;height:.6em;margin-left:.4em;display:inline-block}.panel{padding:.5rem 0 1rem}.linkbox{border-radius:20px;justify-items:start;gap:.5rem;padding:1.1rem;display:grid}.linkbox a{word-break:break-all}.linkbox canvas,.linkbox img{background:#fff;border-radius:10px;padding:6px}.consent-row{grid-template-columns:1fr auto auto;align-items:center;gap:1rem;display:grid}.consent-row .yes{color:var(--leaf);font-weight:700}.consent-row .no{color:var(--moon-soft)}.calls .call-head{flex-wrap:wrap;gap:.25rem;display:flex}.mood{font-style:italic}.moodstrip{align-items:flex-end;gap:4px;height:90px;margin:1rem 0;display:flex}.moodstrip span{background:#ffffff4d;border-radius:4px 4px 0 0;flex:1}.moodstrip span.up{background:var(--leaf)}.moodstrip span.down{background:var(--rose)}.alerts .alert{border-left:6px solid #ffffff59;padding-left:1rem}.alerts .alert.high{border-left-color:var(--rose)}.alerts .alert.medium{border-left-color:var(--amber)}.alerts blockquote{color:var(--moon-soft);margin:.4rem 0;font-style:italic}.profile{white-space:pre-wrap;font-family:var(--body);border-radius:14px;padding:1rem;font-size:.9rem}@media (width<=640px){.row3,.consent-row{grid-template-columns:1fr}.memory-row{flex-direction:column;align-items:flex-start}}.feedback{justify-items:center;gap:.75rem;display:grid}.feedback p{font-size:1.4rem;font-weight:700}input[type=range]{width:100%;accent-color:var(--amber);background:0 0;border:0;padding:0}.reminder-offer{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;font-size:1.1rem;display:flex}.check{align-items:center;gap:.6rem;display:flex}.check input{width:1.4rem;height:1.4rem;accent-color:var(--amber)}table.list{border-collapse:collapse;width:100%;margin:1rem 0;font-size:.95rem}table.list th,table.list td{text-align:left;border-bottom:1px solid var(--hairline);vertical-align:top;padding:.55rem .6rem}table.list th{text-transform:uppercase;letter-spacing:.05em;color:var(--accent);font-size:.8rem}table.list tbody tr:hover{background:#ffffff0d}.meter{background:var(--quiet);border-radius:999px;max-width:24rem;height:1.4rem;margin:1rem 0;overflow:hidden}.meter span{background:linear-gradient(90deg, #ffe07a, var(--amber));height:100%;transition:width 80ms linear;display:block}.ok{color:var(--leaf);font-weight:700}.close-account{border-top:1px solid var(--hairline);max-width:36rem;margin-top:4rem;padding-top:1.5rem}.transcript{max-height:28rem;margin:1rem 0;overflow:auto}.transcript .call-head{justify-content:space-between;margin-bottom:.5rem;display:flex}.transcript p{margin:.4rem 0}.line-buddy{color:var(--accent)}.signup{padding-top:max(2rem, env(safe-area-inset-top))}.signup h1{margin:1.25rem 0 .5rem;font-size:clamp(1.9rem,6vmin,2.7rem)}.signup h1:focus{outline:none}.signup .form{gap:1.25rem}.signup input{border-width:3px;border-color:var(--btn-line);border-radius:16px;padding:.6em .7em;font-size:1.5rem}.signup input:focus{border-color:var(--amber)}.signup input.code{letter-spacing:.3em;text-align:center;font-variant-numeric:tabular-nums;max-width:12ch;font-size:2.2rem}.signup .btn.big{text-align:center;width:100%;min-height:64px}.signup .link{justify-self:start;padding:.4rem 0;font-size:1.1rem}.signup .problem{max-width:none}.signup small{font-size:1.05rem}.choices{justify-items:center;gap:.9rem;margin-top:1.5rem;display:grid}.doors{gap:1rem;margin:1.5rem 0;display:grid}.door{border-radius:24px;gap:.35rem;padding:1.5rem 1.6rem;text-decoration:none;transition:transform .18s,box-shadow .2s,border-color .2s;display:grid}.page a.door{color:var(--moon)}.door strong{font-family:var(--display);color:var(--accent);font-size:1.8rem;font-weight:600;line-height:1.15}.door span{color:var(--moon-soft);font-size:1.15rem}.door:hover{border-color:#ffe08a99;transform:translateY(-3px);box-shadow:inset 0 1px #ffffff2e,0 24px 70px -28px #ffb70380}.door:focus-visible{outline:4px solid var(--accent);outline-offset:4px}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--night:#f3f6f2;--moon:#14213d;--moon-soft:#3b4660;--accent:#14213d;--rose:#a3201a;--leaf:#1f6f50;--hairline:#c9d3cc;--field:#fff;--field-hover:#e9efea;--field-line:#7d8f84;--btn-line:#14213d;--quiet:#dde6df;--panel:#fff;--panel-line:#dde6df;--panel-shadow:none;--bubble:#dde6df;--bubble-line:transparent;--menu:#fff;--autofill:#fff8dc;--focus-strong:#14213d;--lamp-edge:6px solid #14213d}:root[data-theme=light] .sky{display:none}.circle-call{justify-items:center;gap:.35rem;margin-top:1rem;display:grid}.btn.circle-btn{background:var(--brick);color:#fff;border:3px solid #ffffffd9;min-height:64px;padding:.65em 1.6em;font-size:1.25rem;box-shadow:0 8px 30px -10px #b3261ecc}.btn.circle-btn:hover{background:#c8322a;border-color:#fff}.circle-hint{color:var(--moon-soft);max-width:30ch;font-size:1rem}@media (orientation:landscape) and (width>=820px){.top.has-circle{justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.top.has-circle .circle-call{text-align:right;justify-items:end;margin-top:.4rem}}.emergency-screen{text-align:center;grid-template-rows:auto 1fr}.emergency-screen .top{grid-column:1/-1}.emergency-body{grid-column:1/-1;place-content:center;justify-items:center;gap:1.75rem;display:grid}.emergency-body .greeting{max-width:18ch}.emergency-line{max-width:28ch;color:var(--moon);font-size:1.4rem}.emergency-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.emergency-actions .btn.big,.emergency-body>.btn.big{min-width:12rem;min-height:72px;font-size:1.5rem}.btn.big.cancel-btn{min-width:min(80vw,22rem);min-height:120px;color:var(--ink);background:#fff;border-width:4px;font-size:2.2rem}.btn.big.cancel-btn:hover{border-color:var(--amber);background:#fff}.emergency-screen[data-status=connected] .greeting{color:var(--leaf)}.circle-app{max-width:40rem}.circle-app h1{font-size:clamp(1.9rem,7vw,2.6rem)}.incoming{justify-items:stretch;gap:1rem;margin:1rem 0;display:grid}.incoming .who{font-family:var(--display);font-size:clamp(2rem,8vw,2.8rem);font-weight:600;line-height:1.1}.answer-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.answer-row .btn{text-align:center;min-height:72px;font-size:1.35rem}.btn.answer{color:#fff;background:#1f8a4c;border-color:#fff9}.btn.answer:hover{background:#23a058}.status-pill{background:var(--quiet);border-radius:999px;justify-self:start;padding:.2em .8em;font-weight:700;display:inline-block}.status-pill.ringing{background:var(--brick);color:#fff}.status-pill.connected{color:#fff;background:#1f8a4c}.call-911{color:var(--ink);border:3px solid var(--brick);background:#fff;border-radius:16px;padding:.9rem 1.1rem}.call-911 a{color:var(--ink);font-weight:700}.map{aspect-ratio:4/3;border:1px solid var(--panel-line);background:#dfe6e0;border-radius:18px;width:100%;position:relative;overflow:hidden}.map img{-webkit-user-select:none;user-select:none;width:256px;max-width:none;height:256px;position:absolute}.map .pin{background:var(--brick);border:3px solid #fff;border-radius:50%;width:22px;height:22px;margin:-11px 0 0 -11px;position:absolute;box-shadow:0 2px 8px #00000080}.map .accuracy{background:#b3261e26;border:2px solid #b3261e99;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.map .home-pin{font-size:1.6rem;position:absolute;transform:translate(-50%,-100%)}.map-credit{color:#333;background:#fffc;border-radius:4px;padding:0 4px;font-size:.65rem;position:absolute;bottom:2px;right:4px}.map-links{flex-wrap:wrap;gap:.6rem;margin:.5rem 0;display:flex}.setup-steps{gap:.9rem;padding:0;list-style:none;display:grid}.setup-steps li{border-radius:16px;padding:.9rem 1.1rem}.setup-steps .done{color:var(--leaf);font-weight:700}.member-status{font-size:.85em}.member-status.joined{color:var(--leaf);font-weight:700}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.screen[data-phase=talking] .lamp{box-shadow:0 0 0 18px #ffe08a66,0 0 0 38px #ffe08a33,0 0 170px 56px #ffb70366}}.circle-offer{justify-items:center;gap:1rem;display:grid}.circle-offer p{font-size:1.6rem;font-weight:700}.games-hub .game-cards{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr));gap:1rem;margin:1.5rem 0;padding:0;list-style:none;display:grid}.games-hub .door{height:100%}.door .carry-on{color:var(--leaf);font-weight:700}.game-screen{min-height:100dvh;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1.5rem, env(safe-area-inset-bottom));grid-template-rows:auto auto 1fr;grid-template-columns:1fr;gap:1rem 2rem;display:grid}.game-head{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.game-head h1{font-family:var(--display);flex:1;margin:0;font-size:clamp(1.8rem,5vmin,2.6rem);font-weight:600}.game-head .back{color:var(--accent);font-size:1.15rem;font-weight:700;text-decoration:none}.game-board{place-items:center;display:grid}.game-side{align-content:start;gap:1rem;display:grid}.game-status p{font-family:var(--display);font-size:clamp(1.4rem,4vmin,2rem);font-weight:600;line-height:1.2}.game-captions{gap:.6rem;display:grid}.game-captions .caption-buddy{max-height:6.5em;font-size:clamp(1.15rem,3vmin,1.5rem)}.game-controls{gap:.8rem;display:grid}.control-row{flex-wrap:wrap;gap:.6rem;display:flex}.control-row .btn{min-height:56px}.game-hint{color:var(--leaf);font-size:1.3rem;font-weight:700}@media (orientation:landscape) and (width>=820px){.game-screen{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,auto) minmax(18rem,1fr);padding-inline:2rem}.game-head{grid-column:1/-1}.game-board{align-self:start}}.mini-lamp{font:inherit;color:var(--moon);background:var(--field);border:2px solid var(--btn-line);cursor:pointer;touch-action:manipulation;border-radius:999px;align-items:center;gap:.6rem;min-height:60px;padding:.35rem 1.1rem .35rem .4rem;font-size:1.1rem;font-weight:700;display:inline-flex}.mini-lamp-disc{background:radial-gradient(circle at 38% 32%, #fff6d2 0%, #ffd34d 34%, var(--amber) 62%, #f39200 100%);border-radius:50%;width:46px;height:46px;box-shadow:0 0 18px 4px #ffc43c73}.game-screen[data-phase=talking] .mini-lamp-disc{box-shadow:0 0 26px 8px #ffd25ad9}.game-screen[data-phase=listening] .mini-lamp-disc{box-shadow:0 0 0 6px #ffe08a59,0 0 22px 6px #ffb70373}.mini-lamp:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.chess-board{--sq:min(11.2vw, 9.5vh, 84px);grid-template-columns:repeat(8, var(--sq));grid-template-rows:repeat(8, var(--sq));-webkit-user-select:none;user-select:none;border:6px solid #4a2f1d;border-radius:10px;display:grid;box-shadow:0 20px 50px -20px #000000b3}@media (orientation:landscape) and (width>=820px){.chess-board{--sq:min(10.5vh, 6.6vw, 92px)}}.chess-board .sq{cursor:pointer;touch-action:manipulation;font:inherit;border:0;place-items:center;margin:0;padding:0;display:grid;position:relative}.chess-board .sq.light{background:#f1dfbd}.chess-board .sq.dark{background:#b07d55}.chess-board .sq.last.light{background:#f3e889}.chess-board .sq.last.dark{background:#c9b24e}.chess-board .sq.selected{box-shadow:inset 0 0 0 5px var(--amber)}.chess-board .sq.hinted{box-shadow:inset 0 0 0 5px #2fa865}.chess-board .sq.target:after{content:"";background:#1a144073;border-radius:50%;width:34%;height:34%}.chess-board .sq.target-capture:after{content:"";border:5px solid #1a144080;border-radius:50%;position:absolute;inset:6%}.chess-board .sq:focus-visible{outline-offset:-4px;z-index:1;outline:4px solid #1a1440}.chess-board .piece{font-size:calc(var(--sq) * .78);z-index:1;font-family:Segoe UI Symbol,"Noto Sans Symbols 2",DejaVu Sans,serif;line-height:1;position:relative}.chess-board .piece.white{color:#fffaf0;-webkit-text-stroke:1.6px #2b1d12;text-shadow:0 2px 2px #00000059}.chess-board .piece.black{color:#1d1530;-webkit-text-stroke:.6px #000;text-shadow:0 1px 1px #ffffff40}.chess-board .coord{color:#2b1d12b3;font-size:.7rem;font-weight:700;font-family:var(--body);position:absolute}.chess-board .coord.rank{top:2px;left:4px}.chess-board .coord.file{bottom:1px;right:4px}.checkers-board{--sq:min(11.2vw, 9.5vh, 84px);grid-template-columns:repeat(8, var(--sq));grid-template-rows:repeat(8, var(--sq));-webkit-user-select:none;user-select:none;border:6px solid #3b2a1a;border-radius:10px;display:grid;box-shadow:0 20px 50px -20px #000000b3}@media (orientation:landscape) and (width>=820px){.checkers-board{--sq:min(10.5vh, 6.6vw, 92px)}}.checkers-board .cq{font:inherit;border:0;place-items:center;margin:0;padding:0;display:grid;position:relative}.checkers-board .cq.light{background:#efe2c8}.checkers-board .cq.dark{cursor:pointer;touch-action:manipulation;background:#3f6b4e}.checkers-board .cq.last{background:#5f8a5a}.checkers-board .cq.selected{box-shadow:inset 0 0 0 5px var(--amber)}.checkers-board .cq.hinted{box-shadow:inset 0 0 0 5px #9be7b5}.checkers-board .cq.target:after{content:"";background:#ffe08ad9;border-radius:50%;width:34%;height:34%}.checkers-board .cq:focus-visible{outline-offset:-4px;z-index:1;outline:4px solid #fff}.checkers-board .disc{width:78%;height:78%;font-size:calc(var(--sq) * .42);border-radius:50%;place-items:center;line-height:1;display:grid}.checkers-board .disc.red{color:#ffe08a;background:radial-gradient(circle at 35% 30%,#e8665d,#b3261e 60%,#7a1712);border:3px solid #f6d7cf;box-shadow:0 3px 6px #00000073}.checkers-board .disc.cream{color:#7a1712;background:radial-gradient(circle at 35% 30%,#fffdf5,#efe2c8 60%,#cdb98f);border:3px solid #5b4630;box-shadow:0 3px 6px #00000073}.checkers-board .cq.movable .disc.red{outline-offset:2px;outline:2px dashed #ffe08a99}.checkers-board .num{color:#ffffffd9;font-size:.75rem;font-weight:700;position:absolute;top:2px;left:4px}.words{justify-items:center;gap:1.25rem;width:min(94vw,38rem);display:grid}.word-grid{gap:.45rem;display:grid}.word-row{grid-template-columns:repeat(5, var(--tile));--tile:min(14vw, 8.5vh, 76px);gap:.45rem;display:grid}.tile{width:var(--tile);height:var(--tile);font-family:var(--body);font-weight:700;font-size:calc(var(--tile) * .55);border:3px solid var(--field-line);color:var(--moon);background:var(--field);text-transform:uppercase;border-radius:10px;place-items:center;display:grid;position:relative}.tile.typed{border-color:var(--moon)}.tile.right{color:#fff;background:#2f8f4e;border-color:#2f8f4e}.tile.near{color:#1a1440;background:#d9a20b;border-color:#d9a20b}.tile.no{color:#fff;background:#4b4f6b;border-color:#4b4f6b}.tile .mark{font-size:calc(var(--tile) * .24);line-height:1;position:absolute;top:1px;right:5px}.keyboard{gap:.4rem;width:100%;display:grid}.key-row{justify-content:center;gap:.35rem;display:flex}.key{min-width:0;max-width:3.6rem;min-height:62px;font:inherit;color:var(--moon);background:var(--quiet);cursor:pointer;touch-action:manipulation;border:2px solid #0000;border-radius:10px;flex:1 1 0;font-size:1.25rem;font-weight:700}.key.wide{flex-grow:1.6;max-width:5.5rem;font-size:1.05rem}.key.right{color:#fff;background:#2f8f4e}.key.near{color:#1a1440;background:#d9a20b}.key.no{color:#ffffff8c;background:#2a2e45}.key:focus-visible{outline:3px solid var(--accent);outline-offset:2px}:root{--card-w:min(12.4vw, 7.4vh, 92px);--card-h:calc(var(--card-w) * 1.4)}@media (orientation:landscape) and (width>=820px){:root{--card-w:min(7.6vw, 9.2vh, 96px)}}.card-face,.card-slot{width:var(--card-w);height:var(--card-h);border-radius:calc(var(--card-w) * .1);font:inherit;touch-action:manipulation;flex:none;margin:0;padding:0;display:block;position:relative}.card-face{cursor:pointer;background:#fffdf7;border:2px solid #c9c2b0;box-shadow:0 2px 6px #00000059}.card-face.red{color:#c62828}.card-face.black{color:#16161d}.card-face.down{background:repeating-linear-gradient(45deg,#2b3a8c 0 6px,#24317a 6px 12px);border:3px solid #fffdf7}.card-face.down:after{content:"";background:radial-gradient(circle, #ffd34d, var(--amber) 60%, transparent 62%);opacity:.85;border-radius:50%;position:absolute;inset:30%}.card-face .corner{font-weight:700;font-size:calc(var(--card-w) * .32);justify-items:center;line-height:1;display:grid;position:absolute;top:3px;left:5px}.card-face .corner-suit{font-size:.8em}.card-face .pip{font-size:calc(var(--card-w) * .52);line-height:1;position:absolute;bottom:4px;right:6px}.card-face.selected{outline:5px solid var(--amber);outline-offset:1px;z-index:2}.card-face.hinted,.card-slot.hinted{outline-offset:1px;outline:5px solid #2fa865}.card-slot{color:#ffffff8c;font-size:calc(var(--card-w) * .45);cursor:pointer;background:#ffffff0f;border:3px dashed #ffffff59;place-items:center;display:grid}:root[data-theme=light] .card-slot{color:#66746c;border-color:#9aa8a0}.card-face:focus-visible,.card-slot:focus-visible{outline:4px solid var(--accent);outline-offset:2px}.klondike{--gap:calc(var(--card-w) * .12);gap:1rem;display:grid}.k-top,.k-columns{gap:var(--gap);display:flex}.k-gap{width:var(--card-w);flex:none}.k-col{width:var(--card-w);min-height:var(--card-h);border-radius:10px;flex-direction:column;display:flex}.k-col>*+*{margin-top:calc(var(--card-h) * -.72)}.k-col.tight>*+*{margin-top:calc(var(--card-h) * -.8)}.k-col>.card-face.down+.card-face.down{margin-top:calc(var(--card-h) * -.86)}.k-col.target{box-shadow:0 0 0 4px #2fa865cc}.mj-wrap{width:min(94vw,60rem)}@media (orientation:landscape) and (width>=820px){.mj-wrap{width:min(60vw,64rem)}}.mj-board{width:100%;position:relative}.mj-tile{cursor:pointer;touch-action:manipulation;font-family:var(--body);color:#1a1440;background:linear-gradient(160deg,#fffef6,#f1e9d2);border:2px solid #b9a77f;border-radius:10%;grid-template-rows:1fr auto;place-items:center;padding:4% 2% 6%;line-height:1;display:grid;position:absolute;box-shadow:4px 5px #c9b48a,5px 7px 8px #00000073}.mj-tile .mj-big{font-size:.5em;font-weight:700}.mj-tile .mj-small{text-transform:uppercase;letter-spacing:.03em;font-size:.17em;font-weight:700}.mj-tile.dot{color:#1f4fa3}.mj-tile.bam{color:#1f7a45}.mj-tile.crak{color:#b3261e}.mj-tile.wind{color:#1a1440}.mj-tile.red{color:#c62828}.mj-tile.green{color:#1f7a45}.mj-tile.white{color:#4a6fa5}.mj-tile.flower{color:#c2185b}.mj-tile.season{color:#b26a00}.mj-tile.joker{color:#6a1b9a;background:linear-gradient(160deg,#fff6fb,#f3e1f1)}.mj-tile.blocked{filter:brightness(.72)saturate(.8)}.mj-tile.selected{outline:5px solid var(--amber);outline-offset:1px}.mj-tile.hinted{outline-offset:1px;outline:5px solid #2fa865}.mj-tile:focus-visible{outline:4px solid var(--accent);outline-offset:2px}.gin{justify-items:start;gap:1.1rem;display:grid}.gin-row,.gin-hand{flex-wrap:wrap;gap:.35rem;display:flex}.gin-row .card-face{--card-w:calc(min(12.4vw, 7.4vh, 92px) * .62);width:var(--card-w);height:calc(var(--card-w) * 1.4)}.gin-piles{align-items:center;gap:1rem;display:flex}.gin-score{font-family:var(--display);margin-left:.5rem;font-size:1.4rem;font-weight:600;display:grid}.gin-score small{font-family:var(--body);color:var(--moon-soft);font-size:.9rem;font-weight:400}.gin-meld{background:#2fa86540;border-radius:12px;gap:.2rem;padding:.25rem;display:flex;box-shadow:inset 0 0 0 2px #2fa865b3}.amj{gap:.9rem;width:min(94vw,62rem);display:grid}@media (orientation:landscape) and (width>=820px){.amj{width:min(62vw,64rem)}}.amj-tile{width:var(--tw);height:calc(var(--tw) * 1.3);font-size:var(--tw);--tw:min(6.4vw, 58px);position:relative;box-shadow:2px 3px #c9b48a,3px 4px 6px #0006}.amj-tile.small{--tw:min(4.2vw, 36px)}.amj-rack{flex-wrap:wrap;gap:.3rem;display:flex}.amj-rack .amj-tile.selected{transform:translateY(-10px)}.amj-others{gap:.5rem;display:grid}.amj-seat{background:#ffffff0d;border-radius:12px;gap:.25rem;padding:.4rem .6rem;display:grid}.amj-seat.turn{box-shadow:inset 0 0 0 2px var(--amber)}.amj-exposed{flex-wrap:wrap;gap:.5rem;min-height:.5rem;display:flex}.amj-group{gap:2px;display:inline-flex}.amj-centre{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.amj-last{align-items:center;gap:.5rem;font-weight:700;display:inline-flex}.amj-near h3{color:var(--accent);margin:.25rem 0}
