.ht{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;max-width:620px;margin:0 auto;--tw: clamp(50px, 15.5vw, 74px)}.ht-bar{display:flex;align-items:center;gap:6px;min-height:44px}.ht-name{flex:1 1 auto;min-width:0;display:flex;align-items:center;flex-wrap:wrap;gap:0 8px}.ht-label{font-weight:700;color:var(--ink);font-size:.95rem;line-height:1.25}.ht-today{min-height:36px;padding:4px 2px;font:inherit;font-size:.9rem;font-weight:700;color:var(--ink);background:none;border:0;text-decoration:underline;text-underline-offset:3px;cursor:pointer;white-space:nowrap}.ht-scores-btn{flex:none;min-height:44px;padding:4px 12px;font-size:.92rem}.ht-gear{flex:none;min-height:44px;min-width:44px;padding:0;font-size:1.2rem}.ht-chips{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.ht-chip{display:grid;justify-items:center;gap:0;padding:4px 2px;border-radius:12px;background:var(--bg-2);border:2px solid transparent;line-height:1.15;min-width:0}.ht-chip-name{font-size:.82rem;color:var(--ink-2);font-weight:600;max-width:100%;overflow-wrap:anywhere;text-align:center}.ht-chip-total{font-family:var(--font-display);font-size:1.25rem;color:var(--ink);font-variant-numeric:tabular-nums}.ht-chip-hand{font-size:.78rem;color:var(--coral);font-weight:700;min-height:1.1em;font-variant-numeric:tabular-nums}.ht-chip.p0{background:color-mix(in srgb,var(--sun) 22%,var(--bg-2))}.ht-chip.is-turn{border-color:var(--ink)}.ht-table{position:relative;border-radius:16px;background:var(--bg-2);border:1px solid var(--line);overflow:hidden;isolation:isolate;height:calc(var(--tw) * 1.4 * 2 + 64px);min-height:230px;--cy: calc(50% + 14px) }.ht-seat{position:absolute;display:grid;justify-items:center;gap:2px;color:var(--ink-2);font-size:.82rem;font-weight:600;z-index:2;padding:4px 6px;border-radius:10px;border:2px solid transparent;line-height:1.15}.ht-seat.is-turn{border-color:var(--ink);color:var(--ink);background:var(--cell)}.ht-seat-name{font-weight:700;color:var(--ink)}.ht-seat.s1{left:4px;top:var(--cy);transform:translateY(-50%)}.ht-seat.s2{left:50%;top:4px;transform:translate(-50%);grid-template-columns:auto auto;column-gap:8px;align-items:center}.ht-seat.s2 .ht-seat-pts{grid-column:1 / -1}.ht-seat.s3{right:4px;top:var(--cy);transform:translateY(-50%)}.ht-backs{display:flex;height:18px}.ht-backs i{width:12px;height:18px;margin-left:-8px;border-radius:2px;background:repeating-linear-gradient(45deg,#ff9f5a 0 3px,#ffbf7a 3px 6px);border:1px solid #c97b3a;box-sizing:border-box}.ht-backs i:first-child{margin-left:0}.ht-seat-pts{font-size:.76rem;font-variant-numeric:tabular-nums}.ht-slot{position:absolute;width:var(--tw);height:calc(var(--tw) * 1.4);z-index:3}.ht-slot.s0{left:calc(50% - var(--tw) / 2);top:calc(var(--cy) - 8px);z-index:4}.ht-slot.s2{left:calc(50% - var(--tw) / 2);top:calc(var(--cy) - var(--tw) * 1.4 + 8px);z-index:2}.ht-slot.s1{left:calc(50% - var(--tw) * 1.62);top:calc(var(--cy) - var(--tw) * .7)}.ht-slot.s3{left:calc(50% + var(--tw) * .62);top:calc(var(--cy) - var(--tw) * .7)}.ht-slot .ht-card{position:absolute;inset:0;width:100%;height:100%;animation:ht-in calc(.22s * var(--motion)) ease-out}.ht-slot.s0 .ht-card{--from: translateY(40px)}.ht-slot.s1 .ht-card{--from: translateX(-40px)}.ht-slot.s2 .ht-card{--from: translateY(-40px)}.ht-slot.s3 .ht-card{--from: translateX(40px)}@keyframes ht-in{0%{transform:var(--from);opacity:0}}.ht-slot .ht-card.is-winner{box-shadow:0 0 0 3px var(--sun),0 0 0 5px var(--ink),0 6px 14px #00000040}.ht-centre{position:absolute;left:50%;top:var(--cy);transform:translate(-50%,-50%);z-index:5;max-width:calc(100% - 24px);text-align:center;background:var(--cell);color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:4px 12px;font-weight:700;font-size:.9rem;box-shadow:0 2px 6px #0000001a;pointer-events:none}.ht-centre[hidden],.ht-centre:empty{display:none}.ht-card{width:var(--hw, 56px);height:calc(var(--hw, 56px) * 1.4);border-radius:calc(var(--hw, 56px) * .12);background:#fffdf8;border:1px solid #cdbd9f;box-shadow:0 1px 3px #0000002e;box-sizing:border-box;color:#1e1a16;font-weight:800;font-family:var(--font-display);overflow:hidden;user-select:none;-webkit-user-select:none}.ht-card.is-red{color:#d2362a}.ht-card .c{position:absolute;left:3px;top:1px;font-size:calc(var(--cw-f, var(--hw, 56px)) * .36);line-height:1.02;display:grid;justify-items:center;letter-spacing:-.03em}.ht-card .c small{font-size:.8em;line-height:1}.ht-card .p{position:absolute;right:4px;bottom:3px;font-size:calc(var(--cw-f, var(--hw, 56px)) * .5);line-height:1}.ht-slot .ht-card{--cw-f: var(--tw);border-radius:calc(var(--tw) * .12)}.ht-hand{position:relative;height:100px;touch-action:manipulation;margin-top:6px}.ht-hand .ht-card{position:absolute;top:14px;cursor:pointer;transform-origin:50% 120%;transition:left calc(.18s * var(--motion)) ease,transform calc(.16s * var(--motion)) ease,filter calc(.16s * var(--motion)) ease}.ht-hand .ht-card.is-legal{box-shadow:0 0 0 2px var(--sun),0 4px 10px #3c281440}.ht-hand .ht-card.is-dim{filter:saturate(.5) brightness(.9);cursor:default}.ht-hand .ht-card.is-dim:before{content:"";position:absolute;inset:0;background:#543e2838;pointer-events:none}.ht-hand .ht-card.is-picked{box-shadow:0 0 0 3px var(--coral),0 0 0 5px var(--ink),0 8px 14px #00000040}.ht-hand .ht-card.is-new:after{content:"";position:absolute;left:6px;top:calc(var(--hw, 56px) * .82);width:10px;height:10px;border-radius:50%;background:var(--sky, #56b4e9);box-shadow:0 0 0 2px #fffdf8;z-index:1}.ht-hand .ht-card.is-focus{outline:3px dashed var(--ink);outline-offset:2px}.ht-hand .ht-card.is-hint{animation:ht-hint calc(.8s * var(--motion)) ease-in-out 3}.ht-hand .ht-card.is-shake{animation:sk-shake calc(.3s * var(--motion)) ease-in-out}@keyframes ht-hint{50%{box-shadow:0 0 0 4px var(--coral),0 0 0 6px var(--ink)}}.ht-msg{margin:0;min-height:1.5em;color:var(--ink-2);font-size:.92rem;line-height:1.35;text-align:center}.ht-actions{display:flex;gap:8px}.ht-actions .suvi-btn{min-height:48px;flex:1 1 0;padding:8px 6px;font-size:.98rem}.ht-actions .ht-pass[hidden],.ht.is-over .ht-hand,.ht.is-over .ht-actions{display:none}.ht-after{display:grid;gap:6px;text-align:center}.ht-after[hidden]{display:none}.ht-done-title{margin:0;font-family:var(--font-display);font-weight:800;font-size:1.1rem;color:var(--ink)}.ht-done-body{margin:0;color:var(--ink-2)}.ht-after-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.ht-after-row .suvi-btn{min-height:48px;flex:1 1 140px}.ht-table-scores{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;margin:4px 0 8px}.ht-table-scores th,.ht-table-scores td{padding:6px 8px;text-align:right;border-bottom:1px solid var(--line)}.ht-table-scores th:first-child,.ht-table-scores td:first-child{text-align:left}.ht-table-scores th{font-size:.82rem;color:var(--ink-2);font-weight:600}.ht-table-scores.is-history td,.ht-table-scores.is-history th{text-align:center;padding:5px 4px}.ht-table-scores tr.is-total td{border-top:2px solid var(--ink-2)}.ht-moon{margin:0 0 6px;font-weight:700;color:var(--ink)}.ht-place{margin:0;color:var(--ink-2)}.ht-note{margin:-4px 0 6px;font-size:.85rem;color:var(--ink-2)}.ht-result .big{font-family:var(--font-display)}:root[data-look=dusk] .ht-card{background:#f4ead6}:root[data-look=dusk] .ht-table{background:#2a1f18}:root[data-look=dusk] .ht-seat,:root[data-look=dusk] .ht-seat-name{color:#f4ead6}:root[data-palette=colorblind] .ht-card.s1{color:#b84e00}:root[data-palette=colorblind] .ht-card.s2{color:#005a96}:root[data-text-size=large] .ht-chip-name{font-size:calc(.82rem * 16 / 19)}:root[data-text-size=large] .ht-chip-total{font-size:calc(1.25rem * 16 / 19)}:root[data-text-size=large] .ht-seat{font-size:calc(.82rem * 16 / 19)}:root[data-text-size=large] .ht-centre{font-size:calc(.9rem * 16 / 19)}:root[data-text-size=large] .ht-scores-btn{padding:4px 8px}
