:root{--bg:#14181f;--panel:#1f2530;--line:#36404f;--text:#eef1f5;--muted:#a3adbb;--accent:#ffd166;--card-w:3.4rem;--card-h:4.8rem;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (width>=900px) and (height>=860px){:root{--card-w:4.6rem;--card-h:6.4rem}}*{box-sizing:border-box}body{background:var(--bg);min-height:100dvh;color:var(--text);margin:0}button{font:inherit;color:inherit;background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:.5rem;padding:.6rem 1rem}button:disabled{cursor:default;color:var(--muted)}button.primary{background:var(--accent);border-color:var(--accent);color:#1b1b1b;font-weight:600}.screen{flex-direction:column;gap:1rem;max-width:34rem;margin:0 auto;padding:2rem 1rem;display:flex}.screen h1{text-align:center}.notice{color:var(--muted);text-align:center}.rules-list{flex-direction:column;gap:.75rem;padding:0;list-style:none;display:flex}.rules-list li{align-items:center;gap:.75rem;display:flex}.table{flex-direction:column;gap:.5rem;max-width:64rem;min-height:100dvh;margin:0 auto;padding:.5rem;display:flex}.bar{flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.bar .name{margin-right:auto;font-weight:600}.bar button{padding:.35rem .6rem}.field,.hand,.centre{background:var(--panel);border:1px solid var(--line);border-radius:.6rem;padding:.5rem}.field{flex:1}.progress{color:var(--muted);margin:0 0 .4rem;font-size:.8rem}.row{min-height:var(--card-h);flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.empty{color:var(--muted);font-size:.85rem}.centre{min-height:calc(var(--card-h) + 1rem);flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.centre p{margin:0}.turn{font-weight:600}.prompt{flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;display:flex}.slot{background:0 0;border:2px solid #0000;border-radius:.6rem;padding:0}.slot:disabled{color:inherit}.slot.target,.slot.selected{border-color:var(--accent)}.card{width:var(--card-w);height:var(--card-h);border:1px solid #ffffff40;border-radius:.5rem;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;font-size:.7rem;font-weight:600;display:flex;position:relative}.card .symbol{font-size:1.5rem}.card .count{font-size:.8rem;position:absolute;top:.15rem;right:.3rem}.card .tip{z-index:2;border:1px solid var(--line);width:max-content;max-width:13rem;color:var(--text);text-align:left;pointer-events:none;visibility:hidden;background:#0c0f14;border-radius:.4rem;padding:.4rem .6rem;font-size:.75rem;font-weight:400;line-height:1.3;position:absolute;bottom:calc(100% + .4rem);left:0}.card .tip.below{top:calc(100% + .4rem);bottom:auto}.card:hover .tip,.slot:focus-visible .card .tip{visibility:visible}.note{color:var(--muted);font-size:.85rem}.table-notice{z-index:3;--glow:90 169 240;border:2px solid rgb(var(--glow));width:max-content;max-width:calc(100vw - 2rem);box-shadow:0 0 1.5rem rgb(var(--glow) / 45%);pointer-events:none;background:#0c0f14;border-radius:.8rem;align-items:center;gap:.75rem;padding:.6rem 1rem;font-size:1.1rem;font-weight:700;display:flex;position:fixed;top:16%;left:50%;translate:-50%}.table-notice.kind-destroyed{--glow:255 107 87}.table-notice.kind-discarded,.table-notice.kind-revealed{--glow:176 132 255}.table-notice.kind-destroyed .card,.table-notice.kind-discarded .card{filter:grayscale(.6)}.table-notice p{margin:0}.pending{display:inline-flex}.card.back{width:calc(var(--card-w) * .45);height:calc(var(--card-h) * .45);background:repeating-linear-gradient(45deg,#2f3a4c,#2f3a4c 4px,#3a475c 4px 8px)}.card-water{background:#1d5fa8}.card-fire{background:#b3321f}.card-forest{background:#24753f}.card-night{background:#47307a}.card-light{color:#1b1b1b;background:#c9a227}.card-unknown{background:#555}.backs{gap:.15rem;display:flex}.log{color:var(--muted);min-height:4.4em;margin:0;padding:0;font-size:.8rem;list-style:none}.overlay{background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.panel{background:var(--panel);border:1px solid var(--line);border-radius:.8rem;flex-direction:column;gap:.75rem;width:100%;max-width:26rem;padding:1rem;display:flex}.panel h2,.panel p{margin:0}.panel .actions{flex-wrap:wrap;gap:.5rem;display:flex}@media (prefers-reduced-motion:no-preference){.card{transition:transform .12s}.slot:not(:disabled):hover .card{transform:translateY(-4px)}.table-notice{animation:.26s cubic-bezier(.2,1.4,.4,1) notice-in,1s ease-in-out .26s 3 alternate notice-glow}.table-notice .card{animation:.6s ease-out splash}.table-notice.kind-destroyed .card,.table-notice.kind-discarded .card{animation:.7s ease-in forwards knocked}.pending.hit{animation:.45s .15s shake}}@keyframes notice-in{0%{opacity:0;scale:.6}}@keyframes notice-glow{to{box-shadow:0 0 2.5rem rgb(var(--glow) / 90%)}}@keyframes knocked{30%{transform:scale(1.25)}to{transform:rotate(14deg)translateY(.3rem)}}@keyframes splash{0%{transform:translateY(-1.5rem)rotate(-20deg)scale(1.4)}}@keyframes shake{20%{transform:translate(-6px)rotate(-3deg)}40%{transform:translate(6px)rotate(3deg)}60%{transform:translate(-4px)rotate(-2deg)}80%{transform:translate(4px)rotate(2deg)}}.field-label{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.9rem;display:flex}input{font:inherit;color:var(--text);background:var(--panel);border:1px solid var(--line);border-radius:.5rem;padding:.6rem .8rem}.join{align-items:flex-end;gap:.5rem;display:flex}.join .field-label{flex:1}.join input{text-transform:uppercase;letter-spacing:.2em}.notice.error{color:#ff9d8a}.room-code{text-align:center;letter-spacing:.3em;margin:0;font-size:2.4rem;font-weight:700}.banner{color:var(--accent);text-align:center;background:#4a3b12;border-radius:.5rem;margin:0;padding:.4rem .6rem;font-size:.9rem}
