.character-switch{position:absolute;left:auto;right:18px;top:auto;bottom:85px;display:flex;align-items:center;gap:8px;background:#fffdf3f2;border:2px solid var(--ink);padding:6px 10px;box-shadow:2px 2px 0 #26373530;font-size:15px}.character-switch canvas{width:24px;height:32px;image-rendering:pixelated}.character-switch small{font-family:Galmuri;font-size:12px;color:#526451}.character-picker{width:min(650px,calc(100% - 32px));max-width:650px;padding:28px 30px 26px;border:3px solid #33423d;box-shadow:inset 0 0 0 3px #f7f8ef,inset 0 0 0 5px #b8c0b0,6px 6px 0 #17292240;max-height:calc(100dvh - 28px);overflow:auto}.character-picker::backdrop{background:#243d3678;backdrop-filter:blur(3px)}.picker-top{display:flex;align-items:center;justify-content:space-between}.picker-top span{font-family:Galmuri;font-size:12px;letter-spacing:1px;color:#536652}.picker-top button{width:32px;height:32px;font-size:24px}.character-picker h2{font-family:Galmuri;font-weight:700;font-size:24px;margin:12px 0 8px;text-align:center;line-height:1.6}.picker-description{font-size:15px;text-align:center;margin:0 0 24px;color:#536652;line-height:1.8}.character-options{display:grid;grid-template-columns:1fr 1fr;gap:18px}.character-option{position:relative;display:flex;flex-direction:column;align-items:center;border:2px solid #99ad94;background:#eef4df;box-shadow:3px 3px 0 #cbd4c2;padding:19px 12px 16px;transition:transform .15s,box-shadow .15s}.character-option.blue{background:#edf1f8;border-color:#91a8c2;box-shadow:3px 3px 0 #c8d2de}.character-option:hover{transform:translateY(-3px);box-shadow:4px 6px 0 #c3d3b6}.character-option[aria-pressed=true]{border-color:#3e6c48;box-shadow:inset 0 0 0 2px #3e6c48,3px 3px 0 #c3d3b6}.character-option.blue[aria-pressed=true]{border-color:#426890;box-shadow:inset 0 0 0 2px #426890,3px 3px 0 #c8d2de}.character-option canvas{width:144px;height:192px;image-rendering:pixelated;display:block;margin-bottom:13px}.character-option strong{font-family:Galmuri;font-size:24px;font-weight:700;line-height:1.5}.character-option .character-english{font-family:Galmuri;font-size:12px;color:#526451;line-height:1.8;margin-top:3px}.character-option .character-quote{font-size:15px;line-height:1.8;margin-top:14px}.character-option .pick-status{position:absolute;right:9px;top:7px;min-height:19px;font-family:Galmuri;font-size:12px;color:#356148}.character-option.blue .pick-status{color:#426890}.picker-start{font-size:15px;margin-top:24px;padding:14px;background:#356148;border:2px solid #294e3b;box-shadow:3px 3px 0 #becbb4;width:100%;color:white}.picker-footnote{font-family:Galmuri;font-size:12px;color:#536652;text-align:center;margin:15px 0 0}.dialogue canvas{width:48px;height:64px}
@media(max-width:900px){.character-switch{top:139px;bottom:auto;left:10px;right:auto;border-width:1px;padding:4px 8px;font-size:12px;font-family:Galmuri}.character-switch canvas{width:24px;height:32px}.character-switch small{font-size:12px}.character-picker{padding:21px 18px}.character-options{gap:12px}.character-option{padding:16px 7px 14px}.character-option canvas{width:96px;height:128px;margin:10px 0}.character-option .character-english{font-size:12px}.character-option .character-quote{font-family:Galmuri;font-size:12px}.picker-description{margin-bottom:18px}.picker-start{margin-top:21px}}
@media(max-width:360px){.character-switch{top:117px}.character-picker{padding:18px 12px}.character-picker h2{font-size:24px}.character-options{gap:9px}.character-option canvas{width:96px;height:128px}.character-option .character-english{font-size:12px;letter-spacing:-.5px}.character-option .character-quote{font-size:12px}.picker-footnote{font-size:12px}}
@media(prefers-reduced-motion:reduce){.character-option{transition:none}}
