.nim{max-width:640px;margin:0 auto;padding:1rem;min-height:100dvh;display:flex;flex-direction:column;position:relative}.back{text-decoration:none;color:var(--muted);font-size:.9rem}.sound-toggle{position:absolute;top:1rem;right:1rem;z-index:1;background:var(--panel);color:var(--text);width:2.2rem;height:2.2rem;border-radius:50%;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;padding:0}.sound-toggle[aria-pressed=true]{opacity:.5}.scores{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin:.6rem 0}.score{background:var(--panel);border-radius:10px;padding:.3rem .7rem;font-size:.85rem;text-align:center;min-width:4.5rem}.score.you{outline:2px solid var(--accent)}.score .pen{display:block;font-size:1.2rem;font-weight:700;font-variant-numeric:tabular-nums}.status{text-align:center;min-height:1.5em;font-weight:600;margin:.4rem 0}.board{display:flex;flex-direction:column;gap:.4rem;margin:.4rem 0}.row{display:flex;gap:.35rem;align-items:center;justify-content:center;padding:.3rem;border-radius:10px;background:#ffffff08}.slot{width:2.9rem;height:3.7rem;border-radius:8px;border:1px dashed rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;flex:0 0 auto}.slot.end{border-style:solid;border-color:#e5737399;background:#e573732e}.end-mark{font-size:1.1rem;opacity:.55}.row.choosable{outline:2px dashed var(--accent);cursor:pointer}.row.choosable:hover{background:#4fc3f71f}.card{position:relative;width:2.8rem;height:3.6rem;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;font-variant-numeric:tabular-nums;color:#04121b;background:#cfd8dc;flex:0 0 auto}.card .bull{position:absolute;top:2px;right:4px;font-size:.65rem;color:#7a1f1f;font-weight:700}.card.b2{background:#ffe082}.card.b3{background:#ffcc80}.card.b5{background:#ef9a9a}.card.b7{background:#e57373;color:#fff}.reveal{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;min-height:3.4rem;margin:.4rem 0}.reveal .play{display:flex;flex-direction:column;align-items:center;gap:.2rem;font-size:.7rem;color:var(--muted)}.coach-tip{background:#ffd54f14;border:1px solid rgba(255,213,79,.35);border-radius:10px;padding:.5rem .8rem;margin:.4rem 0;font-size:.8rem;line-height:1.45}.coach-tip[hidden]{display:none}.coach-tip .coach-title{font-weight:700;color:#ffd54f;margin-bottom:.2rem}.coach-tip p{margin:.15rem 0;color:var(--text)}.card.hint{outline:2px solid #ffd54f;box-shadow:0 0 10px #ffd54f8c}.card .coach-star{position:absolute;top:2px;left:4px;font-size:.65rem;color:#b8860b}.row.hint{outline:2px solid #ffd54f}.hand-wrap{margin-top:auto;padding-top:.6rem}.hand{display:flex;flex-wrap:wrap;gap:.4rem;justify-content:center;min-height:3.6rem}.hand .card{cursor:default;transition:transform .08s ease}.hand.active .card{cursor:pointer}.hand.active .card:hover{transform:translateY(-6px)}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;gap:1rem;text-align:center;padding:1.5rem;background:#0c1118eb;border-radius:12px}.overlay>:first-child{margin-top:auto}.overlay>:last-child{margin-bottom:auto}.overlay[hidden]{display:none}.overlay-msg{color:var(--text);line-height:1.6}.rankings{display:flex;flex-direction:column;gap:.3rem;margin-top:.7rem;min-width:min(15rem,80vw)}.rank-row{display:flex;align-items:center;gap:.6rem;background:var(--panel);border-radius:8px;padding:.3rem .7rem;font-size:.9rem;text-align:left}.rank-row.you{outline:2px solid var(--accent)}.rank-pos{width:1.4rem;text-align:center;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}.rank-name{flex:1}.rank-pen{font-weight:700;font-variant-numeric:tabular-nums}.analysis{margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--panel);min-width:min(18rem,82vw);text-align:left}.analysis-head{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.4rem}.analysis-headline{margin:0 0 .7rem;font-size:1rem}.style-bars{display:flex;flex-direction:column;gap:.3rem}.style-row{display:flex;align-items:center;gap:.6rem;font-size:.85rem}.style-name{width:6.5rem;flex:none;color:var(--muted)}.style-row.top .style-name{color:var(--text);font-weight:700}.style-bar{flex:1;height:.7rem;background:var(--panel);border-radius:999px;overflow:hidden}.style-fill{display:block;height:100%;border-radius:999px;background:var(--muted)}.style-row.top .style-fill{background:var(--accent)}.style-pct{width:2.6rem;flex:none;text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.style-row.top .style-pct{color:var(--text);font-weight:700}.style-trends{margin:.9rem 0 0;padding-left:1.1rem;display:flex;flex-direction:column;gap:.35rem;font-size:.85rem;line-height:1.45}.analysis-sub{margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--panel);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:.5rem}.skill-meter{display:flex;align-items:center;gap:.6rem;font-size:.85rem}.skill-tag{width:3.4rem;flex:none;font-weight:700;color:var(--text)}.skill-fill{background:var(--accent-2)}.skill-note{flex:none;color:var(--muted);font-variant-numeric:tabular-nums}.skill-sub{margin:.3rem 0 0;font-size:.75rem;color:var(--muted)}.improve-headline{margin:0 0 .5rem;font-size:.9rem;font-weight:600}.improve-tips{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.improve-tips li{background:#ffd54f14;border:1px solid rgba(255,213,79,.3);border-radius:8px;padding:.45rem .65rem;font-size:.82rem;line-height:1.45}.difficulty[hidden]{display:none}.diff-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.4rem}.diff-btns{display:flex;gap:.4rem;justify-content:center}.diff-list{display:flex;flex-direction:column;gap:.4rem;max-height:40vh;overflow-y:auto}.diff-row{display:flex;flex-direction:column;gap:.35rem;padding-bottom:.5rem;border-bottom:1px solid var(--panel)}.diff-row:last-child{border-bottom:none;padding-bottom:0}.diff-row-top{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.diff-name{font-size:.85rem;color:var(--muted);min-width:4rem;text-align:left}.pers-select{flex:1;background:var(--panel);color:var(--text);border:1px solid var(--panel);border-radius:8px;padding:.35em .5em;font-size:.85rem}.diff-row .diff-btns{gap:.3rem}.diff-row .diff-btn{padding:.4em .7em;font-size:.85rem}.diff-btn{background:var(--panel);color:var(--text);padding:.5em 1em}.diff-btn.active{background:var(--accent);color:#04121b}.diff-tag{text-align:center;font-size:.75rem;color:var(--muted);min-height:1em}.opponents[hidden]{display:none}.opp-stepper{display:flex;align-items:center;justify-content:center;gap:.9rem}.opp-btn{background:var(--panel);color:var(--text);width:2.2rem;height:2.2rem;border-radius:50%;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center}.opp-btn:disabled{opacity:.35}.opp-count{min-width:1.5rem;text-align:center;font-size:1.3rem;font-weight:700;font-variant-numeric:tabular-nums}
