.my-character-dialog { width:min(760px,calc(100vw - 24px)); max-height:90dvh; overflow:auto; }
.my-character-card { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; min-width:0; width:100%; box-sizing:border-box; max-height:none; overflow:visible; }
.my-character-card > * { min-width:0; max-width:100%; }
.my-character-card input:not([type="checkbox"]), .my-character-card select { min-width:0; max-width:100%; width:100%; min-height:44px; padding:8px; box-sizing:border-box; border:1px solid var(--line-soft); border-radius:8px; background:#07100d; color:var(--text); font-size:16px; }
.my-character-card > label { display:grid; gap:8px; }
.my-character-card .character-check { display:flex; align-items:start; gap:10px; }
.character-check input { flex:0 0 auto; min-width:24px; min-height:24px; }
.character-calibration-view { position:relative; width:100%; line-height:0; overflow:hidden; }
#myCharacterCanvas { display:block; width:100%; height:auto; transform:none!important; animation:none!important; }
.character-region-overlay { position:absolute; inset:0; pointer-events:none; }
.character-region-overlay i { position:absolute; box-sizing:border-box; border:2px solid #157eab; }
.character-region-overlay [data-character-region="mouth"] { border-color:#b25165; }
.character-region-overlay [data-character-region="face"] { border-style:dashed; }
[data-character-state="previewing"] .character-region-overlay { visibility:hidden; }
#myCharacterRegions { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
#myCharacterRegions fieldset { min-width:0; display:grid; grid-template-columns:1fr 1fr; gap:8px; border:1px solid #d2d9dc; border-radius:8px; }
#myCharacterRegions label { display:grid; font-size:12px; gap:4px; }
#myCharacterRegions input { width:100%; min-width:0; min-height:44px; box-sizing:border-box; }
.character-actions { display:flex; flex-wrap:wrap; gap:8px; }
.character-actions button { min-height:44px; padding:10px 14px; }
body[data-local-character="true"] .character-image, body[data-local-character="true"] [data-character-layer],
body[data-local-character="true"] .character-stage, body[data-local-character="true"] .character-rig { transform:none!important; animation:none!important; transition:none!important; }
body[data-local-character="true"] [data-character-layer="base"] { object-fit:contain!important; object-position:50% 50%!important; }
.character-performance-canvas { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; transform:none!important; animation:none!important; transition:none!important; pointer-events:none; }
@media(max-width:480px) { #myCharacterRegions { grid-template-columns:1fr; } .my-character-dialog { padding:12px; } }
