.app:has(.graph-panel){max-width:1120px}.app:has(.logo.hero) .topbar .logo{visibility:hidden}.logo{align-items:center;gap:8px;margin:0;line-height:1;display:inline-flex}.logo-mark{flex:none;width:auto;height:26px}.logo-word{letter-spacing:-.03em;font-size:1.15rem;font-weight:800}.logo-van{color:var(--accent)}.logo.hero{gap:14px;margin:4px 0 12px}.logo.hero .logo-mark{height:64px}.logo.hero .logo-word{font-size:2.8rem}.logo-card{fill:var(--surface);stroke:var(--pos2);stroke-width:2.5px}.logo-bubble{fill:var(--accent)}.logo-one{fill:#fff;stroke:#fff;stroke-width:1px;stroke-linejoin:round}.player-list{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.player-list li{align-items:center;gap:10px;display:flex}.player-list input{flex:1}.segmented{border:1px solid var(--border);border-radius:10px;display:inline-flex;overflow:hidden}.segmented button{background:0 0;border:0;border-radius:0;padding:8px 18px}.segmented button+button{border-left:1px solid var(--border)}.segmented button.active{background:var(--accent);color:var(--accent-text);font-weight:600}.mode-options{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;display:grid}.mode-option{text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;line-height:1.35;display:flex}.mode-option span{color:var(--muted);font-size:.9rem}.settings .setting{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.settings .setting+.setting{margin-top:12px}.setting-label{min-width:96px;font-weight:600}.pack-options{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}@media (width<=600px){.pack-options{grid-template-columns:repeat(2,1fr)}}.pack-option{padding:10px 12px}.pack-option span{font-size:.82rem}.mode-option.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 30%, transparent)}.scoreboard{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:14px;display:flex}.scoreboard .round{font-size:1.1rem;font-weight:700}.scoreboard .of{color:var(--muted);font-weight:500}.scoreboard ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.scoreboard li{background:var(--surface);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;display:flex}.scoreboard li .swatch{background:var(--owner)}.scoreboard li.current{border-color:var(--owner);box-shadow:0 0 0 2px color-mix(in srgb, var(--owner) 30%, transparent);font-weight:600}.scoreboard .score{font-variant-numeric:tabular-nums;text-align:right;min-width:1.5ch;font-weight:700}.scoreboard .locked{color:var(--pos2);font-weight:700}.scoreboard .note{color:var(--muted);white-space:nowrap;font-size:.85rem;font-weight:500}.board{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}@media (width<=600px){.board{grid-template-columns:repeat(2,1fr)}.card{aspect-ratio:2;padding:8px}}.board.dense{gap:10px}.board.dense .card{aspect-ratio:16/9;padding:8px}.board.dense .card .word{font-size:clamp(.9rem,2.6vw,1.15rem)}.card{aspect-ratio:4/3;background:var(--surface);border:2px solid var(--tag-color);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:10px;transition:transform .2s,opacity .2s;display:flex;position:relative}.card .word{text-transform:uppercase;letter-spacing:.04em;text-align:center;word-break:break-word;font-size:clamp(1rem,3.2vw,1.35rem);font-weight:700}.card .badge{background:var(--tag-color);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;padding:2px 8px;font-size:.85rem;font-weight:700;position:absolute;top:8px;right:8px}.card.tag-pos2{--tag-color:var(--pos2)}.card.tag-pos1{--tag-color:var(--pos1)}.card.tag-zero{--tag-color:var(--zero)}.card.tag-neg1{--tag-color:var(--neg2)}.card.tag-green{--tag-color:var(--pos2);background:color-mix(in srgb, var(--pos2) 16%, var(--surface))}.card.tag-grey{--tag-color:var(--zero)}.card.tag-pos1 .badge{color:#1c1b18}.card.tag-zero .badge{color:var(--text)}.card.highlight{opacity:1;box-shadow:0 0 0 3px var(--owner), var(--shadow);animation:.4s pop;transform:scale(1.04)}.card .pickers{justify-content:center;gap:5px;display:flex;position:absolute;bottom:8px;left:0;right:0}.card .pickers .swatch{border:2px solid var(--surface);width:14px;height:14px;box-shadow:0 0 0 1px #00000026}@keyframes pop{0%{transform:scale(.96)}60%{transform:scale(1.08)}to{transform:scale(1.04)}}.board.thinking .card{animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.6}}.action-panel{min-height:120px}.turn-label{align-items:center;gap:8px;margin-bottom:10px;font-size:1.05rem;display:flex}.clue-echo{text-transform:uppercase;letter-spacing:.05em}.turn-label .progress{color:var(--muted);white-space:nowrap;margin-left:auto;font-size:.9rem}.failed .actions{margin-top:4px}.clue-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.clue-input{text-transform:uppercase;flex:160px;font-size:1.1rem}.clue-input::placeholder{text-transform:none}.stepper{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-items:center;display:inline-flex;overflow:hidden}.stepper button{border:0;border-radius:0;width:40px;height:40px;padding:0;font-size:1.2rem}.stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:2.2ch;font-size:1.2rem;font-weight:700}.thinking-label{color:var(--muted);align-items:center;gap:10px;padding:20px 0;font-size:1.05rem;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.turn-result+.turn-result{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.turn-result.best .score-lines .total{text-decoration:underline;-webkit-text-decoration-color:var(--pos2);text-decoration-color:var(--pos2);text-underline-offset:4px}.picks{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 12px;display:flex}.pick{background:var(--surface-2);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:6px 12px;font-size:.95rem}.pick b{margin-left:4px}.pick.target{background:var(--surface);border:2px solid var(--pos2)}.pick.target b{color:var(--pos2)}.score-lines{font-variant-numeric:tabular-nums;grid-template-columns:1fr auto;gap:4px 16px;max-width:420px;margin:0 0 12px;display:grid}.score-lines dt{color:var(--muted)}.score-lines dd{text-align:right;margin:0;font-weight:600}.score-lines .formula{opacity:.8;margin-left:4px;font-size:.8rem}.score-lines .total-label{color:var(--text);border-top:1px solid var(--border);padding-top:6px;font-weight:600}.score-lines .total{border-top:1px solid var(--border);padding-top:4px;font-size:1.25rem;font-weight:800}.why{margin-bottom:14px}.why summary,.log summary{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none}.ranking{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.ranking li{font-variant-numeric:tabular-nums;grid-template-columns:minmax(70px,110px) 1fr 40px 36px 56px;align-items:center;gap:10px;font-size:.9rem;display:grid}.ranking .ranking-head{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem}.rank-tag,.rank-bonus{text-align:right;white-space:nowrap}.rank-bonus{font-weight:600}.rank-bonus.muted{color:var(--muted);font-weight:400}.ranking li.picked{font-weight:700}.rank-word{text-transform:uppercase;letter-spacing:.04em;text-overflow:ellipsis;overflow:hidden}.bar{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:10px;overflow:hidden}.bar span{background:var(--accent);border-radius:999px;height:100%;display:block}.ranking li:not(.picked) .bar span{opacity:.4}.ranking li.target{font-weight:700}.ranking li.target .bar span{background:var(--pos2);opacity:1}.pct{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}@media (width<=480px){.ranking li{grid-template-columns:minmax(60px,90px) 1fr 40px 32px 52px;gap:6px;font-size:.85rem}}.log{margin:4px 0 12px;font-size:.9rem}.log ol{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.log li{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:6px;padding:6px 0;display:flex}.log-meta{color:var(--muted);font-variant-numeric:tabular-nums}.pick-inline{text-transform:uppercase;letter-spacing:.03em;font-size:.8rem}.log-points{font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;margin-left:auto;display:inline-flex}.log-breakdown{color:var(--muted);font-size:.8rem}.footer{justify-content:flex-end;display:flex}.standings{gap:8px;margin:0 0 20px;padding:0;list-style:none;display:grid}.standings li{background:var(--surface);border:1px solid var(--border);border-radius:12px;align-items:center;gap:12px;padding:12px 16px;font-size:1.1rem;display:flex}.standings li.winner{border-color:var(--pos2);box-shadow:0 0 0 2px color-mix(in srgb, var(--pos2) 30%, transparent)}.standings .rank{text-align:right;width:2ch;color:var(--muted);font-weight:800}.standings .name{flex:1;font-weight:600}.standings .score{font-variant-numeric:tabular-nums;font-weight:800}.actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.graph-panel{padding:8px}.graph-scroll{border-radius:10px;overflow-x:auto}.graph-svg{-webkit-user-select:none;user-select:none;width:100%;min-width:720px;height:auto;margin:0 auto;display:block}.graph-dot{fill:var(--border)}.wash-start{stop-color:var(--accent);stop-opacity:.08}.wash-mid{stop-color:var(--surface);stop-opacity:0}.wash-end{stop-color:var(--gold);stop-opacity:.12}.gedge{stroke:var(--edge);stroke-width:2px;stroke-linecap:round}.lane{fill:none;stroke-width:4.5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:.7s ease-out forwards lane-draw}.lane.glow{stroke-width:11px;opacity:.32}@keyframes lane-draw{to{stroke-dashoffset:0}}.gnode .pop{transform-box:fill-box;transform-origin:50%}.gnode.fresh .pop{animation:.52s cubic-bezier(.3,1.6,.5,1) node-pop}@keyframes node-pop{0%{transform:scale(.6)}to{transform:scale(1)}}.gnode .pill{fill:var(--surface);stroke:var(--border);stroke-width:2px;filter:drop-shadow(0 1px 2px #00000024)}.gnode.kind-green .pill{stroke:var(--pos2)}.gnode.kind-red .pill{stroke:var(--neg2)}.gnode.kind-start .pill{fill:var(--accent);stroke:none}.gnode.kind-end .pill{fill:var(--gold);stroke:none}.gnode .badge rect{stroke:var(--surface);stroke-width:1.5px}.gnode .badge.pos rect{fill:var(--pos2)}.gnode .badge.neg rect{fill:var(--neg2)}.gnode .badge text{fill:#fff;text-anchor:middle;dominant-baseline:central;font-variant-numeric:tabular-nums;font-size:10.5px;font-weight:800}.gnode .label{fill:var(--text);letter-spacing:.06em;text-anchor:middle;dominant-baseline:central;pointer-events:none;font-size:13px;font-weight:700}.gnode.kind-start .label{fill:var(--accent-text);letter-spacing:.12em}.gnode.kind-end .label{fill:#1c1b18}.gnode .caption,.gnode .float{stroke:var(--surface);stroke-width:4px;stroke-linejoin:round;paint-order:stroke}.gnode .caption{letter-spacing:.16em;text-anchor:middle;fill:var(--accent);font-size:10px;font-weight:800}.gnode.kind-end .caption{fill:var(--gold)}.gnode .halo{fill:var(--gold);opacity:.18;transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out infinite halo}@keyframes halo{50%{opacity:.06;transform:scale(1.12)}}.owner-dot{stroke:var(--surface);stroke-width:1.5px}.gnode .float{text-anchor:middle;opacity:0;pointer-events:none;font-size:16px;font-weight:800;animation:1.8s ease-out forwards float-up}.gnode .float.pos{fill:var(--pos2)}.gnode .float.neg{fill:var(--neg2)}.gnode.kind-end .float{fill:var(--gold)}@keyframes float-up{0%{opacity:0;transform:translateY(8px)}20%{opacity:1}to{opacity:0;transform:translateY(-30px)}}@media (prefers-reduced-motion:reduce){.lane,.gnode.fresh .pop,.gnode .halo{animation:none}.lane{stroke-dashoffset:0}.gnode .float{display:none}}.graph-legend{color:var(--muted);flex-wrap:wrap;gap:6px 18px;padding:8px 8px 2px;font-size:.85rem;display:flex}.graph-legend .swipe-hint{display:none}@media (width<=760px){.graph-legend .swipe-hint{display:inline-flex}}.graph-legend span{align-items:center;gap:6px;display:inline-flex}.key{border:1.5px solid var(--border);background:var(--surface);vertical-align:middle;border-radius:999px;flex:none;width:14px;height:10px;display:inline-block}.key.green{border:2px solid var(--pos2)}.key.red{border:2px solid var(--neg2)}.key.end{background:var(--gold);border-color:var(--gold)}.key.start{background:var(--accent);border-color:var(--accent)}.walk+.walk{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.walk .turn-label{margin-bottom:4px}.walk-total{font-variant-numeric:tabular-nums;margin-left:auto;font-size:1.1rem}.walks+.failed,.walks+button{margin-top:14px}.pick.step{align-items:baseline;gap:2px;animation:.3s ease-out chip-in;display:inline-flex}@keyframes chip-in{0%{opacity:0;transform:translateY(4px)}}.pick.step.kind-green{background:var(--surface);border:2px solid var(--pos2)}.pick.step.kind-green b{color:var(--pos2)}.pick.step.kind-red{background:var(--surface);border:2px solid var(--neg2)}.pick.step.kind-red b{color:var(--neg2)}.pick.step.kind-end{background:var(--gold);border-color:var(--gold);color:#1c1b18;font-weight:700}.stop-reason{color:var(--muted);font-size:.9rem}.spinner.small{border-width:2px;width:14px;height:14px}.step-ranking+.step-ranking{margin-top:12px}.step-title{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:10px;font-size:.8rem}.ranking.compact{margin-top:6px}.ranking.compact li{grid-template-columns:minmax(110px,160px) 1fr 40px}.ranking.compact .rank-word{align-items:center;gap:6px;display:inline-flex}.back{margin:0 0 8px -8px}.home-options{gap:12px;display:grid}.home-option{padding:16px 18px}.home-option b{font-size:1.15rem}.field{flex-direction:column;gap:6px;margin-top:14px;font-weight:600;display:flex}.field:first-child{margin-top:0}.field input{font-size:1.05rem;font-weight:400}.code-input{text-transform:uppercase;letter-spacing:.3em;max-width:10ch;font-weight:700}.room-bar{flex-wrap:wrap;align-items:center;gap:10px;margin:-4px 0 12px;font-size:.9rem;display:flex}.room-chip{letter-spacing:.08em;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:3px 10px;font-weight:700}.room-who{color:var(--muted)}.room-status{color:var(--warn-text);background:var(--warn);border-radius:999px;padding:2px 8px}.room-footer{gap:8px}.invite{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;display:flex}.invite-label{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.85rem}.room-code{letter-spacing:.18em;color:var(--accent);font-size:clamp(2.6rem,9vw,4rem);font-weight:800;line-height:1.1}.invite-url{word-break:break-all;margin:6px 0 0;font-family:ui-monospace,Cascadia Mono,Consolas,monospace;font-size:.9rem}.qr{border:1px solid var(--border);background:#fff;border-radius:12px;flex:none;width:200px;height:200px;padding:6px}.qr.placeholder{background:var(--surface-2)}.lobby h2 .of{color:var(--muted);font-size:.9em;font-weight:500}.lobby-players{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lobby-players li{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:6px 0;display:flex}.lobby-players li:last-child{border-bottom:0}.lobby-players .name{flex:1;font-weight:600}.lobby-players .name em{color:var(--muted);font-style:normal;font-weight:400}.lobby-players li.offline .name{color:var(--muted)}.presence{color:var(--muted);font-size:.8rem}.presence.on:before,.presence.off:before{content:"";background:var(--pos2);border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.presence.off:before{background:var(--border)}.next-round{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.next-round .locked-in,.next-round .waiting-for,.next-round .hint{margin:0}.next-round .locked-in,.waiting .locked-in{color:var(--pos2);margin:0 0 8px;font-weight:700}.waiting-for{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0;font-size:1.05rem;display:flex}.waiting-name{align-items:center;gap:5px;font-weight:600;display:inline-flex}.reading{white-space:nowrap;text-transform:none;letter-spacing:0;border-radius:999px;padding:1px 9px;font-size:.82rem;font-weight:700;display:inline-block}.reading.hot{color:#fff;background:#e8590c}.reading.warm{color:#1c1b18;background:#fcc419}.reading.cool{color:#1c1b18;background:#a5d8ff}.reading.cold{color:#fff;background:#1c7ed6}.readings .legend{margin:0 0 12px;line-height:1.9}.lanes,.secret-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.lane{border-left:4px solid var(--owner);flex-direction:column;gap:6px;padding:4px 0 4px 12px;display:flex}.lane-name{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.lane-name .swatch{background:var(--owner)}.found-tag{color:var(--pos2);font-size:.85rem;font-weight:600}.lane-chips{flex-wrap:wrap;gap:6px;display:flex}.trail-chip{background:var(--surface-2);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.03em;border-radius:999px;align-items:center;gap:6px;padding:3px 4px 3px 10px;font-size:.85rem;display:inline-flex}.trail-chip.guess{text-transform:none;letter-spacing:0;padding-right:10px}.trail-chip.guess .clue-echo{text-transform:uppercase;letter-spacing:.03em}.hot-board .card{font:inherit;color:inherit}.hot-board .card.choosable{cursor:pointer}.hot-board .card.choosable:hover{transform:translateY(-2px)}.hot-board .card.selected{box-shadow:0 0 0 3px var(--owner), var(--shadow);transform:scale(1.03)}.hot-board .card.found{--tag-color:var(--owner);background:color-mix(in srgb, var(--owner) 12%, var(--surface))}.hot-board .card.found .word{opacity:.75;text-decoration:line-through;text-decoration-thickness:2px}.hot-board .card.unfound{--tag-color:var(--owner);border-style:dashed}.hot-board .owner-badge{background:var(--owner);color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 16px);overflow:hidden}.hot-board .misses{justify-content:center;gap:4px;font-size:.95rem;font-weight:800;display:flex;position:absolute;bottom:6px;left:0;right:0}.round-results{gap:8px;margin:0 0 14px;padding:0;list-style:none;display:grid}.round-results li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.secrets{border-top:1px solid var(--border);margin:4px 0 16px;padding-top:12px}.secrets h3{margin:0 0 10px;font-size:1.05rem}.secrets .why{margin:0}.round-log-scroll{overflow-x:auto}.round-log table{border-collapse:collapse;width:100%;font-size:.9rem}.round-log th,.round-log td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 10px}.round-log thead th{font-weight:600}.round-log tbody th{color:var(--muted);font-weight:500}.round-log td{vertical-align:top}.round-log td span{display:block}.round-log td .hint,.round-log td .pos{font-size:.8rem}.ranking.hot-ranking li{grid-template-columns:minmax(80px,140px) 1fr 40px 16px}.ranking.hot-ranking li.target .bar span{background:var(--owner)}.ranking.hot-ranking .rank-tag{color:var(--owner)}.gameover+.round-log{margin-top:16px}.stars{color:var(--border);gap:6px;margin:0 0 8px;font-size:2.6rem;line-height:1;display:flex}.stars .on{color:var(--gold)}.stars-hint{margin:-8px 0 20px}.daily-head{margin:8px 0 14px}.eyebrow{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;margin:0 0 4px;font-size:.85rem;font-weight:700}.daily .board{margin-bottom:16px}.yesterday{border-top:1px solid var(--border);margin-top:14px;padding-top:10px}.daily-result .daily-score{text-align:center;margin-bottom:12px}.daily-result .daily-score .lede{margin:4px auto 0}.daily-points{color:var(--muted);margin:0;font-size:1.1rem}.daily-points b{color:var(--text);letter-spacing:-.02em;font-size:2.4rem}.daily-result>.actions{justify-content:center;margin:8px 0 4px}.daily-result>.hint[role=status]{text-align:center}.daily-result .reveal{margin-top:16px}.daily-more{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;display:flex}.top-clues h2{font-size:1.25rem}.top-list{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.top-list li{border:1px solid var(--border);background:var(--surface-2);border-radius:10px;grid-template-columns:2.2ch 1fr auto auto 4.5ch;align-items:center;gap:10px;padding:8px 12px;display:grid}.top-list li.mine{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 25%, transparent)}.top-list .rank{text-align:right;color:var(--muted);font-weight:800}.top-list .clue-echo{overflow-wrap:anywhere;font-weight:700}.top-list .for,.top-list .players{color:var(--muted);font-size:.85rem}.top-list .score{text-align:right;font-variant-numeric:tabular-nums;font-weight:800}@media (width<=480px){.top-list li{grid-template-columns:2.2ch 1fr auto 4.5ch}.top-list .players{display:none}}.daily-card{border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent) 7%, var(--surface));border-radius:12px;flex-direction:column;gap:4px;margin-bottom:14px;padding:14px 16px;display:flex}.daily-card b{font-size:1.05rem}.daily-card .hint{margin:0}.daily-card .actions{margin-top:6px}.home-option:disabled b,.home-option:disabled span{opacity:.7}.top-clue{flex-direction:column;min-width:0;display:flex}.top-clue .by{color:var(--muted);font-size:.8rem}.nickname-line{text-align:center}.link-button{color:var(--accent);font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.nickname-form{border:1px dashed var(--border);border-radius:12px;margin:16px 0 4px;padding:12px 14px}.nickname-row{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.nickname-row input{flex:1;min-width:160px}.daily-head .banner{margin:4px 0 10px}.archive .daily-head .button{margin-top:4px}.archive-list{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.archive-row{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;grid-template-columns:4ch 1fr auto auto;align-items:center;gap:12px;padding:10px 14px;text-decoration:none;display:grid}.archive-row:hover{border-color:var(--accent)}.archive-row .num{color:var(--muted);font-weight:800}.archive-row .plays{color:var(--muted);font-size:.85rem}.archive-row .you{text-align:right;font-variant-numeric:tabular-nums;min-width:9ch}.archive-row .you.play{color:var(--accent);font-weight:600}.archive-row .stars-text{color:var(--gold);letter-spacing:.05em}@media (width<=480px){.archive-row{grid-template-columns:4ch 1fr auto}.archive-row .plays{display:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f1ea;--surface:#fff;--surface-2:#f8f6f1;--text:#1c1b18;--muted:#6b6960;--border:#dedad0;--accent:#2f6fed;--accent-text:#fff;--pos2:#1f9d55;--pos1:#7fc98f;--neg2:#d9432f;--zero:color-mix(in srgb, var(--text) 30%, var(--surface));--warn:#fff3cd;--warn-text:#664d03;--gold:#e0a100;--edge:color-mix(in srgb, var(--text) 16%, transparent);--shadow:0 1px 2px #0000000f, 0 6px 20px #0000000f;--radius:14px;font-family:Segoe UI,system-ui,-apple-system,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#15161a;--surface:#1f2126;--surface-2:#262930;--text:#ecebe6;--muted:#9a9890;--border:#33363e;--warn:#3d3320;--warn-text:#ffe08a;--gold:#f2b634;--shadow:0 1px 2px #0006, 0 8px 24px #00000059}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;line-height:1.45}.app{max-width:860px;margin:0 auto;padding:16px 16px 48px}.topbar{justify-content:space-between;align-items:center;margin:-6px 0 6px;display:flex}.theme-toggle{color:var(--muted);align-items:center;gap:6px;display:inline-flex}.theme-toggle:hover{color:var(--text)}h1,h2{margin:0 0 8px;line-height:1.2}.title{letter-spacing:-.02em;font-size:2.2rem}.lede{color:var(--muted);max-width:60ch;margin:0 0 20px}.hint{color:var(--muted);margin:8px 0 0;font-size:.9rem}.error{color:var(--neg2);margin:8px 0 0;font-weight:600}code{background:var(--surface-2);border-radius:5px;padding:1px 5px;font-size:.9em}.tag-pos{color:var(--pos2)}.tag-neg{color:var(--neg2)}.pos{color:var(--pos2)}.neg{color:var(--neg2)}button{font:inherit;cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:8px 14px;transition:transform 80ms,background .12s}button:hover:not(:disabled){transform:translateY(-1px)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--accent);color:var(--accent-text);border-color:#0000;font-weight:600}button.big{border-radius:12px;padding:14px 28px;font-size:1.1rem}button.ghost{background:0 0}button.small{padding:6px 10px;font-size:.85rem}input{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;min-width:0;padding:9px 12px}input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:16px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.swatch{border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.banner{background:var(--surface-2);border:1px solid var(--border);color:var(--muted);border-radius:10px;margin-bottom:14px;padding:8px 12px;font-size:.9rem}.banner.warn{background:var(--warn);color:var(--warn-text)}a{color:var(--accent)}a.button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:10px 18px;font-weight:600;text-decoration:none;transition:transform 80ms;display:inline-flex}a.button:hover{transform:translateY(-1px)}a.button.primary{background:var(--accent);color:var(--accent-text);border-color:#0000}.topbar-start{align-items:center;gap:14px;display:flex}.all-games{color:var(--muted);font-size:.9rem;text-decoration:none}.all-games:hover{color:var(--text)}.site-logo{width:auto;height:26px;display:block}.hub-topbar{justify-content:flex-end}.hub-hero{margin:28px 0 24px}.hub-logo{margin:0 0 10px;line-height:0}.hub-logo svg{width:auto;max-width:100%;height:76px}.hub-hero .lede strong{color:var(--text)}.game-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.game-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;gap:10px;padding:20px;display:flex}.game-card h2{letter-spacing:-.02em;margin:0;font-size:1.5rem}.game-card p{color:var(--muted);margin:0}.game-card .game-progress{color:var(--text);font-size:.9rem;font-weight:600}.game-art{border-radius:10px;justify-content:center;align-items:center;height:112px;margin-bottom:4px;display:flex}.game-art svg{width:auto;height:72px}.cluevan-art{background:color-mix(in srgb, var(--accent) 12%, var(--surface))}.talkmaar-art{background:color-mix(in srgb, #4f9fd6 18%, var(--surface))}.game-actions{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:6px;display:flex}@media (width<=600px){.hub-hero{margin:16px 0 18px}.hub-logo svg{height:58px}}.site-footer{border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:center;gap:16px;margin-top:40px;padding-top:16px;font-size:.85rem;display:flex}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--text)}button.danger{background:var(--neg2);color:#fff;border-color:#0000;font-weight:600}.legal{max-width:68ch}.legal h2{margin-top:24px;font-size:1.15rem}.legal p,.legal li{line-height:1.6}.legal li+li{margin-top:6px}select{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px 8px}.admin-head{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:12px;display:flex}.admin-head .title{margin:0 auto 0 0}.app:has(.admin){max-width:1200px}.stat-tiles{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px;display:grid}.stat-tile{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.stat-value{font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:800}.stat-label{color:var(--muted);font-size:.8rem}.admin-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-bottom:16px;display:grid}.admin-grid .panel{margin-bottom:0}.admin h2{font-size:1.1rem}.table-wrap{overflow-x:auto}.admin-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.88rem}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px}.admin-table th{color:var(--muted);font-weight:600}.admin-table td.wrap{white-space:normal}.admin-table tr.muted td:not(:last-child){color:var(--muted);text-decoration:line-through}.admin-login{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.admin-login input{flex:1;min-width:220px}.admin-clue{text-transform:uppercase;letter-spacing:.05em;font-weight:600}.row-actions{gap:6px;display:flex}
