.character-entity-page{gap:14px;width:min(1080px,100% - 32px);display:grid}.character-entity-heading{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:16px;padding-bottom:10px;display:grid}.character-entity-title{align-items:baseline;gap:14px;display:flex}.character-entity-title h1{margin:0;font-family:Noto Sans SC,Microsoft YaHei,sans-serif;font-size:clamp(3.8rem,8vw,6.2rem);line-height:.95}.character-entity-pronunciation{gap:3px;display:grid}.character-entity-pronunciation strong{font-size:1.15rem}.character-entity-pronunciation span{max-width:520px;color:var(--muted);font-size:.82rem;line-height:1.45}.character-entity-badges{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.character-entity-badges span{border:1px solid var(--line);color:var(--muted);background:var(--surface);border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:700}.character-entity-badges .is-writing{color:var(--brand-dark);background:var(--brand-soft);border-color:#a8d5ca}.character-entity-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start;gap:12px;display:grid}.character-stroke-preview,.character-entity-words,.character-entity-facts{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:14px}.character-entity-section-heading{justify-content:space-between;align-items:end;gap:12px;margin-bottom:9px;display:flex}.character-entity-section-heading h2{margin:0;font-size:1rem}.character-entity-section-heading>span{color:var(--muted);font-size:.7rem}.character-stroke-stage{aspect-ratio:1;background:linear-gradient(90deg,#0000 calc(50% - .5px),#dce5e1 calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px)),linear-gradient(#0000 calc(50% - .5px),#dce5e1 calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px)),linear-gradient(45deg,#0000 calc(50% - .5px),#edf1ef calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px)),linear-gradient(-45deg,#0000 calc(50% - .5px),#edf1ef calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px)),#fff;border:1px solid #cdd8d3;border-radius:10px;width:min(420px,100%);margin:0 auto;overflow:hidden}.character-stroke-target,.character-stroke-target svg{width:100%!important;height:100%!important}.character-stroke-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:min(420px,100%);margin:8px auto 0;display:grid}.character-stroke-actions .button{text-align:center;justify-content:center;width:100%}.character-entity-source-note{width:min(620px,100%);color:var(--muted);margin:8px auto 0;font-size:.68rem;line-height:1.45}.character-entity-side{gap:10px;display:grid}.character-entity-facts dl{gap:8px;margin:0;display:grid}.character-entity-facts div{border-bottom:1px solid var(--line);padding-bottom:7px}.character-entity-facts div:last-child{border-bottom:0;padding-bottom:0}.character-entity-facts dt{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.65rem;font-weight:700}.character-entity-facts dd{margin:3px 0 0;font-size:.8rem;line-height:1.45}.character-entity-words ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.character-entity-words li a{color:var(--ink);background:#f8faf9;border-radius:8px;grid-template-columns:minmax(56px,auto) minmax(72px,auto) 1fr;gap:9px;padding:8px;text-decoration:none;display:grid}.character-entity-words li a:hover{background:var(--brand-soft)}.character-entity-words li strong{font-family:Noto Sans SC,Microsoft YaHei,sans-serif}.character-entity-words li span,.character-entity-words li small{color:var(--muted);font-size:.7rem}.character-entity-next{flex-wrap:wrap;gap:7px;display:flex}.character-entity-next a{border:1px solid var(--line);color:var(--brand-dark);border-radius:8px;padding:7px 10px;font-size:.72rem;font-weight:720;text-decoration:none}@media (max-width:820px){.character-entity-heading,.character-entity-grid{grid-template-columns:1fr}.character-entity-badges{justify-content:flex-start}}@media (max-width:620px){.character-entity-page{width:min(100% - 20px,1080px)}.character-entity-title{align-items:flex-start}.character-entity-title h1{font-size:4rem}.character-stroke-actions,.character-entity-words li a{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.character-stroke-actions .button{transition:none}}
