.vh{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.kcard{touch-action:pan-y;will-change:transform;gap:28px;display:grid}.kcard>*{min-width:0}.hero{--ink:var(--on-tint);--muted:#4f4a60;--line-ghost:#211d2e1f;--p0:#d9503a;--p1:#2f78b8;--p2:#2f9467;--p3:#7f55d6;--p4:#b57a14;background:var(--tint);color:var(--on-tint);border-radius:28px;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;column-gap:8px;padding:14px 16px 16px;display:grid}.hero>*{min-width:0}.hero h1{display:contents}.meta{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:4px 10px;margin:0;font-size:13px;font-weight:600;display:flex}.chip{color:var(--on-tint);background:#ffffffa8;border-radius:999px;padding:2px 10px;text-decoration:none;position:relative}a.chip:after{content:"";position:absolute;inset:-10px -4px}.art{aspect-ratio:1;width:100%;height:auto;display:block}.glyph{font:500 clamp(96px, 30vw, 128px)/1 var(--jp);text-align:center;grid-area:2/2}.write{aspect-ratio:1;cursor:pointer;touch-action:manipulation;background:0 0;border:0;border-radius:18px;grid-area:2/2;place-self:center;width:clamp(104px,31vw,132px);padding:0}.write .strokes{stroke-width:6.5px;pointer-events:none;width:100%;height:100%}.hero.writing .glyph{visibility:hidden}.strokes .ghost path{stroke:var(--line-ghost);stroke-dasharray:none;stroke-dashoffset:0;animation:none}.meaning{font:600 clamp(30px, 8.5vw, 40px)/1.08 var(--display);letter-spacing:-.025em;text-transform:capitalize;grid-column:1/-1}.also{color:var(--muted);grid-column:1/-1;margin:2px 0 0;font-size:15px;line-height:1.3}.story{background:#ffffff8c;border-radius:20px;grid-column:1/-1;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;margin-top:12px;padding:12px 14px;display:grid}.story img{cursor:pointer;transform-origin:50% 90%;width:56px;height:auto;display:block}.story img.wiggle{animation:.5s cubic-bezier(.16,1,.3,1) wiggle}@keyframes wiggle{30%{transform:rotate(-8deg)}65%{transform:rotate(6deg)}}.mnemonic{margin:0;font-size:18px;font-weight:500;line-height:1.35}.details{align-content:start;gap:12px;display:grid}.read>div,.build,.evolution{border-radius:22px;padding:16px}.read>div{background:var(--surface);box-shadow:0 0 0 1px var(--line)}.build,.evolution{background:var(--wash)}.words-block{padding:8px 4px}.details h2{font:600 14px var(--body);letter-spacing:0;color:var(--muted);margin:0 0 10px}.read{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.read h2{margin-bottom:8px}.readings{gap:8px;margin:0;padding:0;list-style:none;display:grid}.readings li{display:grid}.readings b{font:500 20px/1.2 var(--jp)}.readings span{color:var(--muted);font-size:15px;font-weight:600}.more{color:var(--muted);margin-top:2px;font-size:14px;font-weight:700}.build-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.stroke-btn{background:var(--surface);color:var(--ink);cursor:pointer;font:600 13px var(--body);touch-action:manipulation;border:0;border-radius:18px;justify-items:center;gap:2px;padding:8px;display:grid}.stroke-btn:active{transform:var(--press)}.strokes{fill:none;width:116px;height:116px;stroke:var(--ink);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;display:block}.strokes .guide{stroke:var(--muted);stroke-opacity:.3;stroke-width:.6px;stroke-dasharray:2 2}.strokes .p0{stroke:var(--p0)}.strokes .p1{stroke:var(--p1)}.strokes .p2{stroke:var(--p2)}.strokes .p3{stroke:var(--p3)}.strokes .p4{stroke:var(--p4)}.strokes.play>path:not(.guide){stroke-dasharray:1;stroke-dashoffset:1px;animation:.42s ease-in-out forwards draw;animation-delay:calc(var(--i) * .45s)}@keyframes draw{to{stroke-dashoffset:0}}.parts{flex:130px;gap:6px;margin:0;padding:0;font-weight:600;list-style:none;display:grid}.parts li{align-items:center;gap:10px;display:flex}.part-chip{font:500 26px/1 var(--jp)}.part-chip.p0{color:var(--p0)}.part-chip.p1{color:var(--p1)}.part-chip.p2{color:var(--p2)}.part-chip.p3{color:var(--p3)}.part-chip.p4{color:var(--p4)}.words{gap:10px;margin:0;padding:0;list-style:none;display:grid}.words li{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:0 10px;display:grid}.words b{font:500 21px/1.3 var(--jp)}.words .gloss{color:var(--muted);grid-column:1/-1;font-size:15px}.evolution{align-content:start;margin:0}.evolution ol{gap:8px;margin:0;padding:0;list-style:none;display:flex}.evolution li{text-align:center;min-width:0;max-width:110px;color:var(--muted);white-space:nowrap;flex:1 1 0;font-size:12px;font-weight:700}.evolution img{aspect-ratio:1;width:100%;height:auto;filter:var(--glyph-filter);display:block}.evolution .modern{aspect-ratio:1;width:100%;font:500 clamp(34px, 11vw, 54px)/1 var(--jp);color:var(--ink);place-items:center;display:grid}.evolution figcaption{color:var(--muted);margin-top:6px;font-size:14px}.pager{justify-content:space-between;gap:12px;margin:16px 0 0;display:flex}.pager .btn{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:15px;overflow:hidden}.swipe-hint{text-align:center;margin:10px 0 0;font-size:14px;display:none}@media (pointer:coarse){.swipe-hint{display:block}}@media (width>=720px){.kcard{grid-template-columns:clamp(320px,44%,420px) minmax(0,1fr);align-items:start;gap:clamp(28px,5vw,48px)}.hero{padding:18px 20px 20px;position:sticky;top:84px}.glyph{font-size:clamp(96px,11vw,124px)}.write{width:clamp(104px,12vw,132px)}}.kcard.enter-left{animation:.24s ease-out enter-left}.kcard.enter-right{animation:.24s ease-out enter-right}@keyframes enter-left{0%{opacity:0;transform:translate(60px)}}@keyframes enter-right{0%{opacity:0;transform:translate(-60px)}}
