@font-face{font-family:"JT Serif";src:url(./noto-serif-jp-400-Ok9XIQ9B.woff2) format("woff2");font-weight:400;font-display:block}@font-face{font-family:"JT Serif";src:url(./noto-serif-jp-600-D3zYLz77.woff2) format("woff2");font-weight:600;font-display:block}@font-face{font-family:JT Mono;src:url(./ibm-plex-mono-400-CLlpg2HG.woff2) format("woff2");font-weight:400;font-display:block}@font-face{font-family:JT Mono;src:url(./ibm-plex-mono-500-ClD5_-Lx.woff2) format("woff2");font-weight:500;font-display:block}:root{--paper: #ecebe7;--card: #fbfbf9;--ink: #141414;--ink-2: #55544f;--ink-3: #96958f;--hair: #c4c3be;--serif: "JT Serif", "Hiragino Mincho ProN", "Yu Mincho", serif;--mono: "JT Mono", ui-monospace, "SFMono-Regular", Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--paper);color:var(--ink);font-family:var(--mono);-webkit-font-smoothing:antialiased}#stage{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 90% at 50% 45%,#ffffff8c,#fff0 60%),var(--paper);touch-action:none;cursor:grab}#stage.dragging{cursor:grabbing}#stage canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}#hud{pointer-events:none}#cards{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.plate{background:#fbfbf9f0;border:1px solid var(--ink);box-shadow:0 1px 1px #1414140d,0 18px 30px -20px #1414144d}#title{position:fixed;left:24px;top:22px;max-width:300px;padding:12px 15px 13px;pointer-events:none;opacity:0;transition:opacity .8s ease .2s}#title h1{margin:0;display:flex;align-items:baseline;gap:12px;font-weight:400}#title .ja{font-family:var(--serif);font-weight:600;font-size:30px;letter-spacing:.04em}#title .en{font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase}#title p{margin:8px 0 0;font-size:11px;line-height:1.55;color:var(--ink-2)}#legend{position:fixed;left:24px;bottom:22px;padding:10px 14px;display:grid;gap:6px;font-size:10px;letter-spacing:.08em;color:var(--ink-2);pointer-events:none;opacity:0;transition:opacity .8s ease .4s}#legend div{display:flex;align-items:center;gap:10px}.sw{display:inline-block;width:28px;height:0;border-top:1.25px solid var(--ink);position:relative}.sw-pair:after{content:"";position:absolute;left:50%;top:-4.5px;width:7px;height:7px;margin-left:-4px;border:1px solid var(--ink);border-radius:50%;background:var(--card)}.sw-field{border-top:1px dashed var(--ink-2)}.sw-note:before{content:"";position:absolute;left:-2px;top:-3px;width:5px;height:5px;border-radius:50%;background:var(--ink)}#stats{position:fixed;right:24px;bottom:22px;padding:9px 14px;display:flex;gap:18px;font-size:10px;letter-spacing:.1em;color:var(--ink-2);text-transform:uppercase;pointer-events:none;opacity:0;transition:opacity .8s ease .6s}#stats b{color:var(--ink);font-weight:500;font-variant-numeric:tabular-nums}#stats .keys{color:var(--ink-3);text-transform:none;letter-spacing:.04em}#mode{position:fixed;right:24px;top:22px;display:flex;padding:0;font:500 10px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);cursor:pointer;opacity:0;transition:opacity .8s ease .6s}#mode span{padding:8px 11px}#mode span+span{border-left:1px solid var(--ink)}#mode[aria-pressed=false] .auto,#mode[aria-pressed=true] .hand{background:var(--ink);color:var(--card)}#mode:focus-visible{outline:1px solid var(--ink);outline-offset:2px}body.ready #title,body.ready #mode,body.ready #legend,body.ready #stats{opacity:1}.card{position:absolute;left:0;top:0;width:212px;padding:11px 13px 12px;background:var(--card);border:1px solid var(--ink);box-shadow:0 1px 1px #1414140f,0 6px 12px -6px #14141433,0 26px 40px -22px #14141452;will-change:transform,clip-path;clip-path:inset(0 100% 0 0);transition:clip-path .45s cubic-bezier(.7,0,.2,1)}.card.from-right{clip-path:inset(0 0 0 100%)}.card.open{clip-path:inset(0 0 0 0)}body.manual .card.open{pointer-events:auto}.card-x{display:none;position:relative;flex:none;width:22px;height:22px;margin:-6px -8px -6px -2px;padding:0;border:0;background:none;color:var(--ink-2);cursor:pointer}.card-x:before,.card-x:after{content:"";position:absolute;left:50%;top:50%;width:10px;height:1.2px;margin:-.6px 0 0 -5px;background:currentColor;transform:rotate(45deg)}.card-x:after{transform:rotate(-45deg)}.card-x:hover{color:var(--ink)}body.manual .card-x{display:block}.card-head{display:flex;align-items:center;gap:8px;font-size:9px;letter-spacing:.14em;color:var(--ink-2);text-transform:uppercase}.card-head .rule{flex:1;height:0;border-top:1px solid var(--hair)}.card-head .field b{font-family:var(--serif);font-weight:600;font-size:11px;color:var(--ink);letter-spacing:.04em;margin-right:5px}.card-word{display:flex;gap:2px;margin:7px 0 2px;font-family:var(--serif);font-weight:600;font-size:40px;line-height:1.1;perspective:400px}.card-word .k{display:inline-block;transform-origin:50% 50% -.5em;backface-visibility:hidden}.card-word .k.turn{animation:turn .62s cubic-bezier(.55,0,.25,1)}@keyframes turn{0%{transform:rotateX(0);opacity:1}49%{transform:rotateX(-90deg);opacity:.2}51%{transform:rotateX(90deg);opacity:.2}to{transform:rotateX(0);opacity:1}}.card-read{display:flex;align-items:baseline;gap:10px;font-size:11px}.card-read .kana{font-family:var(--serif);font-size:13px}.card-read .ro{color:var(--ink-2);letter-spacing:.06em}.card-gloss{margin-top:4px;font-size:14px;font-weight:500;letter-spacing:.01em;min-height:1.2em}.card-parts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px;padding-top:8px;border-top:1px solid var(--hair);font-size:10px;color:var(--ink-2)}.card-parts div{display:flex;gap:6px;align-items:baseline;min-width:0}.card-parts b{font-family:var(--serif);font-weight:600;font-size:13px;color:var(--ink)}.card-parts span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-parts .hot span{color:var(--ink)}.card-hist{margin-top:7px;font-size:9.5px;color:var(--ink-3);letter-spacing:.03em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:1.3em}.card-hist b{font-family:var(--serif);font-weight:400;font-size:11px;color:var(--ink-2)}@media (min-width: 641px) and (max-width: 759px){#stats .keys{display:none}}@media (max-width: 640px){#title{left:12px;top:12px;max-width:240px;padding:9px 12px}#title .ja{font-size:24px}#title p{display:none}#legend{left:12px;bottom:12px;padding:8px 10px}#stats{right:12px;bottom:12px;padding:8px 10px;flex-direction:column;gap:3px;text-align:right}#stats .keys{display:none}#mode{right:12px;top:12px}#mode span{padding:7px 9px}.card{width:176px;padding:9px 10px 10px}.card-word{font-size:32px}.card-hist{display:none}}@media (max-width: 359px){#mode .auto{display:none}#mode span+span{border-left:0}}
