[data-theme=dark]{--tg-line: color-mix(in srgb, var(--text) 20%, transparent);--tg-frame: color-mix(in srgb, var(--text) 60%, transparent);--tg-empty: var(--surface);--tg-filled: color-mix(in srgb, var(--surface-2) 92%, var(--text));--tg-lock: color-mix(in srgb, var(--ink-gold) 14%, var(--surface-2))}[data-theme=light]{--tg-line: color-mix(in srgb, var(--text) 18%, transparent);--tg-frame: color-mix(in srgb, var(--text) 62%, transparent);--tg-empty: var(--surface-2);--tg-filled: color-mix(in srgb, var(--surface) 88%, var(--text));--tg-lock: color-mix(in srgb, var(--ink-gold) 16%, #FFFFFF)}.tango-wrap{display:grid;gap:clamp(1rem,3vw,1.5rem);justify-items:center;width:100%}.tango-board{--tcell: min(64px, 13.5vw);position:relative;display:grid;grid-template-columns:repeat(6,var(--tcell));grid-template-rows:repeat(6,var(--tcell));gap:0;background:var(--tg-frame);border:2.5px solid var(--tg-frame);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-raised);touch-action:manipulation}.tango-board[aria-busy=true]{pointer-events:none}.tcell{position:relative;width:var(--tcell);height:var(--tcell);display:grid;place-items:center;padding:0;border:1px solid var(--tg-line);background:var(--tg-empty);color:var(--text);transition:background .14s ease,box-shadow .12s ease;-webkit-tap-highlight-color:transparent}.tcell.filled{background:var(--tg-filled)}.tcell:focus-visible{outline:3px solid var(--accent);outline-offset:-3px;z-index:4;border-radius:3px}.tcell.locked{background:var(--tg-lock);cursor:default;box-shadow:inset 0 2px 5px var(--recess),inset 0 -1px 0 var(--highlight)}.tcell.locked:after{content:"";position:absolute;top:4px;left:4px;width:6px;height:6px;border-radius:50%;background:var(--ink-gold);opacity:.85}.tcell .tmark{display:grid;place-items:center;width:66%;height:66%;pointer-events:none}.tcell.locked .tmark{width:60%;height:60%}.glyph-sun{width:100%;height:100%;color:var(--text)}.glyph-sun .disc{fill:currentColor;stroke:none}.glyph-sun .rays{stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round}.glyph-moon{width:100%;height:100%;color:var(--text)}.glyph-moon .crescent{fill:currentColor;stroke:none}.tcell.has-sym .tmark{animation:t-pop .16s ease}@keyframes t-pop{0%{transform:scale(.6)}55%{transform:scale(1.12)}to{transform:scale(1)}}.tcell.invalid{box-shadow:inset 0 0 0 3px var(--danger);z-index:2}.tcell.invalid .glyph-sun,.tcell.invalid .glyph-moon{color:var(--danger)}.tcell.locked.invalid{box-shadow:inset 0 0 0 3px var(--danger),inset 0 2px 5px var(--recess)}.tcell.hint{box-shadow:inset 0 0 0 3px var(--accent);z-index:3;animation:t-hint 1.1s ease-in-out 2}@keyframes t-hint{0%,to{box-shadow:inset 0 0 0 3px var(--accent)}50%{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}}@media(hover:hover)and (pointer:fine){.tcell:not(.locked):hover{background:color-mix(in srgb,var(--accent) 8%,var(--tg-empty))}.tcell.filled:not(.locked):hover{background:color-mix(in srgb,var(--accent) 8%,var(--tg-filled))}}.tango-signs{position:absolute;inset:0;pointer-events:none;z-index:5}.tsign{position:absolute;left:calc(var(--tcell) * var(--mx));top:calc(var(--tcell) * var(--my));transform:translate(-50%,-50%);width:clamp(17px,3.6vw,21px);height:clamp(17px,3.6vw,21px);display:grid;place-items:center;border-radius:6px;background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:0 1px 2px var(--sh-1),inset 0 1px 0 var(--highlight)}.tsign svg{width:72%;height:72%;stroke:currentColor;stroke-width:2.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.tsign.bad{color:var(--danger);border-color:var(--danger);box-shadow:0 0 0 2px color-mix(in srgb,var(--danger) 38%,transparent)}.t-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.5rem 1rem;width:100%;max-width:480px;font-family:var(--font-mono);font-size:.76rem;letter-spacing:.03em;color:var(--muted);text-align:center}.t-status .t-pair{display:inline-flex;align-items:center;gap:.35rem}.t-status b{font-weight:500;color:var(--text);font-variant-numeric:tabular-nums}.t-status .ok{color:var(--correct)}.t-status .bad{color:var(--danger)}.t-status .t-sep{color:var(--ink-gold);opacity:.7}.t-controls{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:center;width:100%;max-width:540px}.t-btn{display:inline-flex;align-items:center;gap:.45rem;min-height:46px;padding:0 1rem;border-radius:11px;font-family:var(--font-ui);font-weight:600;font-size:.9rem;background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-raised);transition:box-shadow .16s ease,border-color .16s ease,color .16s ease}.t-btn .ico{width:17px;height:17px;color:var(--accent)}.t-btn:active{transform:translateY(1px);box-shadow:var(--shadow-pressed)}.t-btn[disabled]{opacity:.6;cursor:default}@media(hover:hover)and (pointer:fine){.t-btn:hover{box-shadow:var(--shadow-hover);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.t-btn:hover .ico{color:var(--accent)}}.t-mode{width:100%;max-width:540px;text-align:center;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.t-mode b{color:var(--ink-gold);font-weight:500}.t-today{font:inherit;color:var(--accent-hover);text-transform:uppercase;letter-spacing:.08em;margin-left:.5rem;min-height:36px;padding:0 .2rem;border-bottom:1px solid color-mix(in srgb,var(--accent) 40%,var(--border))}[data-theme=light] .t-today{color:var(--accent)}.t-today:hover,.t-today:focus-visible{color:var(--text)}.t-share{font-family:var(--font-mono);font-size:.92rem;line-height:1.5;letter-spacing:.01em;color:var(--text);white-space:pre-wrap;text-align:left;padding:.9rem 1.1rem;border-radius:10px;background:var(--bg);border:1px solid var(--border);box-shadow:inset 0 2px 6px var(--recess),inset 0 -1px 0 var(--highlight);max-width:320px;margin-inline:auto}.t-legend{display:grid;gap:.7rem}.t-legend .t-swatch{display:flex;align-items:center;gap:.7rem;font-size:.92rem;color:var(--text)}.t-legend .t-chip{width:38px;height:38px;flex:none;border-radius:9px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--border);box-shadow:var(--shadow-keycap)}.t-legend .t-chip svg{width:60%;height:60%}.t-legend .t-chip.is-sign svg{stroke:var(--text);stroke-width:2.6;fill:none;stroke-linecap:round;stroke-linejoin:round}.t-legend strong{color:var(--text);font-weight:600}.t-legend span.lab{color:var(--muted)}.t-legend span.lab b{color:var(--text);font-weight:600}.tango-solution{--tcell: min(52px, 12vw)}.tango-solution .tcell{cursor:default}.tango-solution-wrap{display:grid;justify-items:center;gap:.9rem}.tango-solution-cap{font-size:.9rem;color:var(--muted);max-width:56ch;text-align:center}.tango-solution-cap strong{color:var(--text);font-weight:600}@media(max-width:640px){.tango-board{--tcell: min(64px, 13.5vw, calc((100dvh - 320px) / 6))}}@media(prefers-reduced-motion:reduce){.tcell.has-sym .tmark,.tcell.hint{animation:none!important}}
