.td{--bg:#170f33;--iv:#f6ecf2;--pk:#ff6f9c;--cy:#4fd8eb;color:var(--iv);background:var(--bg);font-family:Zen Kaku Gothic New,sans-serif;overflow-x:clip}.td :focus-visible{outline:3px solid var(--cy);outline-offset:2px}.td button,.td input{color:inherit;font-family:inherit}.td button{cursor:pointer}.td-head{text-align:center;padding:calc(48px + 1.6rem) clamp(1rem,5vw,4rem) 1.2rem}.td-kick{letter-spacing:.3em;color:var(--cy);font-size:.78rem}.td-head h1{letter-spacing:.04em;text-shadow:0 0 24px #ff6f9c80;margin-top:.4rem;font-family:Shippori Mincho B1,serif;font-size:clamp(2.6rem,11vw,7rem);font-weight:800;line-height:1.1}.td-head h1 span{color:var(--pk)}.td-star{letter-spacing:.1em;margin-top:.8rem;font-size:.9rem;font-weight:700}.td-quote{color:#cdb8e8;margin-top:.2rem;font-family:Shippori Mincho B1,serif;font-size:.9rem;font-weight:600}.td-stage{max-width:62rem;margin:0 auto;padding:.6rem clamp(.6rem,3vw,1.6rem) 2rem}.td-sky{border:2px solid var(--iv);background:#000;position:relative;overflow:hidden}.td-city{width:100%;height:auto;display:block}.td-clock{color:#fff;text-shadow:0 0 10px #00000080;letter-spacing:.05em;pointer-events:none;font-family:Shippori Mincho B1,serif;font-size:clamp(1.4rem,5vw,2.4rem);font-weight:800;position:absolute;top:.5rem;left:.8rem}.td-city .td-win{cursor:default}.td-city .td-win rect{fill:#1d1540;stroke:#3a2a6a;stroke-width:2px;transition:fill .5s}.td-city .td-win.is-lit{cursor:pointer}.td-city .td-win.is-lit rect{fill:#ffd27a;stroke:#fff2c8;filter:drop-shadow(0 0 8px #ffd27a);animation:2.4s ease-in-out infinite td-glow}.td-city .td-win.is-solved rect{fill:var(--pk);stroke:#fff;filter:drop-shadow(0 0 10px var(--pk));animation:none}.td-city .td-win.is-cur rect{stroke:var(--cy);stroke-width:4px}.td-city .td-win text{text-anchor:middle;fill:#5a3a00;pointer-events:none;font-family:Shippori Mincho B1,serif;font-size:15px;font-weight:800}.td-city .td-win.is-solved text{fill:#fff}@keyframes td-glow{50%{filter:drop-shadow(0 0 14px #ffe6a8)}}.td-city .td-win:focus-visible rect{stroke:var(--cy);stroke-width:4px}.td-city .td-win:focus-visible{outline:none}.td-time{grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem 1.2rem;margin-top:.8rem;font-size:.8rem;font-weight:700;display:grid}.td-play{background:var(--pk);color:#1a0f2e;border:0;border-radius:99px;padding:.5rem 1.2rem;font-size:.82rem;font-weight:700}.td-play[aria-pressed=true]{background:var(--cy)}.td-time label{grid-template-columns:auto 1fr;align-items:center;gap:.6rem;display:grid}.td-time input[type=range]{width:100%;accent-color:var(--pk)}.td-lit b{color:var(--pk);font-family:Shippori Mincho B1,serif;font-size:1.2rem}.td-pager-wrap{grid-template-columns:17rem minmax(0,1fr);align-items:start;gap:1.2rem;margin-top:1.2rem;display:grid}.td-pager{background:linear-gradient(160deg,#2c2450,#1a1236);border:2px solid #5a4a8a;border-radius:1.2rem 1.2rem 1.6rem 1.6rem;padding:.9rem;box-shadow:0 10px 24px #00000080}.td-brand{letter-spacing:.3em;color:#9a8ac8;text-align:center;font-size:.6rem}.td-lcd{color:#1d2a14;background:#b9c9a0;border:3px solid #0e0a1e;border-radius:.3rem;min-height:5rem;margin-top:.4rem;padding:.6rem .7rem;font-family:IBM Plex Mono,monospace;box-shadow:inset 0 0 10px #00000040}.td-lcd.is-ring{animation:.25s 6 td-ring}@keyframes td-ring{50%{background:#d6e6bd}}.td-lcd-h{font-size:.7rem;font-weight:700}.td-lcd-n{letter-spacing:.1em;word-spacing:.3em;word-break:break-all;margin-top:.3rem;font-size:1.2rem;font-weight:700;line-height:1.4}.td-ans{background:#0e0a1e;border-radius:.3rem;margin-top:.6rem;padding:.4rem .7rem}.td-ans-l{letter-spacing:.2em;color:#9a8ac8;font-size:.6rem}.td-ans-t{min-height:1.8rem;color:var(--pk);letter-spacing:.1em;font-family:Shippori Mincho B1,serif;font-size:1.3rem;font-weight:800}.td-ans.is-bad{animation:.3s td-shake}@keyframes td-shake{25%{translate:-6px}75%{translate:6px}}.td-btns{grid-template-columns:1fr 1fr 1fr;gap:.4rem;margin-top:.6rem;display:grid}.td-btns button{background:#3a2e66;border:2px solid #6a5aa8;border-radius:.5rem;padding:.5rem .2rem;font-size:.74rem;font-weight:700}.td-btns button:hover:not(:disabled){border-color:var(--cy)}.td-btns .td-send{background:var(--pk);color:#1a0f2e;border-color:#fff}.td-btns button:disabled{opacity:.4;cursor:default}.td-hintline{min-height:1.2rem;color:var(--cy);margin-top:.4rem;font-size:.7rem}.td-table-wrap{min-width:0}.td-table-h{color:#cdb8e8;font-size:.74rem;line-height:1.6}.td-table{grid-template-columns:2.2rem repeat(5,minmax(0,1fr));gap:3px;max-width:26rem;margin-top:.4rem;display:grid}.td-table .h{color:var(--cy);place-items:center;font-family:IBM Plex Mono,monospace;font-size:.64rem;display:grid}.td-table button{background:#2c2450;border:1px solid #5a4a8a;border-radius:.3rem;min-height:2.1rem;padding:.25rem 0;font-family:Shippori Mincho B1,serif;font-size:1.05rem;font-weight:800;line-height:1.1}.td-table button small{color:#9a8ac8;font-family:IBM Plex Mono,monospace;font-size:.5rem;font-weight:400;display:block}.td-table button:hover:not(:disabled){border-color:var(--pk);background:#3a2e66}.td-table button:disabled{opacity:.3;cursor:default}.td-table .hit{box-shadow:0 0 0 2px var(--cy)}.td-table .empty{visibility:hidden}.td-ep{border:2px solid var(--pk);background:#0e0a1e;grid-template-columns:minmax(0,18rem) 1fr;align-items:center;gap:1.2rem;margin-top:1.4rem;padding:.8rem;display:grid}.td-ep[hidden]{display:none}.td-ep img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.td-ep.is-in{animation:.6s ease-out td-in}@keyframes td-in{0%{opacity:0;transform:translateY(14px)}}.td-ep-no{letter-spacing:.3em;color:var(--cy);font-size:.78rem}.td-ep-t{margin-top:.3rem;font-family:Shippori Mincho B1,serif;font-size:clamp(1.3rem,4vw,2.2rem);font-weight:800;line-height:1.3}.td-ep-s{color:#cdb8e8;margin-top:.5rem;font-size:.82rem;line-height:1.8}.td-end{border-top:2px solid var(--pk);border-bottom:2px solid var(--pk);background:#000;height:22rem;position:relative;overflow:hidden}.td-end[hidden]{display:none}.td-roll{text-align:center;color:#fff;letter-spacing:.15em;gap:2.4rem;font-family:Shippori Mincho B1,serif;font-size:clamp(1rem,3.4vw,1.6rem);font-weight:800;display:grid;position:absolute;top:100%;left:0;right:0}.td-roll p:first-child{color:var(--pk);font-size:1.4em}.td-sec{border-top:2px solid var(--pk);padding:clamp(2.4rem,6vh,4rem) clamp(1rem,5vw,4rem)}.td-sec-2{background:#1f1442}.td-wrap{max-width:62rem;margin-inline:auto}.td-k{letter-spacing:.14em;background:var(--pk);color:#1a0f2e;padding:.05rem .9rem;font-size:.72rem;font-weight:700;display:inline-block}.td-h2{margin-top:.5rem;font-family:Shippori Mincho B1,serif;font-size:clamp(1.5rem,4.4vw,2.6rem);font-weight:800;line-height:1.3}.td-plain{grid-template-columns:repeat(auto-fill,minmax(9.5rem,1fr));gap:.7rem;margin-top:1rem;list-style:none;display:grid}.td-plain li{border:1px solid #5a4a8a;gap:.15rem;padding:.4rem;display:grid}.td-plain img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.td-plain b{margin-top:.3rem;font-family:Shippori Mincho B1,serif;font-size:.82rem;font-weight:800;line-height:1.4}.td-plain small{color:#c8b8e8;font-size:.64rem;line-height:1.5}.td-two{grid-template-columns:1fr minmax(18rem,26rem);align-items:start;gap:clamp(1.6rem,5vw,4rem);display:grid}.td-text{color:#eadff8;max-width:30rem;margin-top:.8rem;font-size:.9rem;line-height:2}.td-small{color:#c8b8e8;margin-top:.8rem;font-size:.74rem}.td-menu{border-top:2px solid var(--cy);margin-top:.8rem;list-style:none}.td-menu li{border-bottom:1px solid #5a4a8a;grid-template-columns:1fr auto;align-items:baseline;gap:1rem;padding:.7rem 0;display:grid}.td-menu b{font-family:Shippori Mincho B1,serif;font-weight:800;display:block}.td-menu small{color:#c8b8e8;font-size:.68rem}.td-menu em{color:var(--cy);white-space:nowrap;font-style:normal;font-weight:700}.td-sns{flex-wrap:wrap;gap:.5rem;margin-top:1.2rem;list-style:none;display:flex}.td-sns a{color:#1a0f2e;background:var(--pk);border-radius:99px;padding:.6rem 1.6rem;font-weight:700;text-decoration:none;display:inline-block}.td-sns a:hover{background:var(--cy)}.td-foot{color:#c8b8e8;border-top:2px solid var(--pk);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,5vw,4rem);font-size:.7rem;display:flex}.td-foot a{color:var(--pk)}@media (width<=820px){.td-pager-wrap,.td-two,.td-ep,.td-time{grid-template-columns:1fr}.td-pager{max-width:20rem;margin-inline:auto}}@media (prefers-reduced-motion:reduce){.td-city .td-win.is-lit rect,.td-lcd.is-ring,.td-ans.is-bad,.td-ep.is-in{animation:none}}
