.character-nav,.character-main,.character-footer{max-width:1180px;margin:auto;padding:24px}.character-nav{display:flex;justify-content:space-between;align-items:center}.character-main h1{font-size:clamp(36px,6vw,66px);line-height:1.04;letter-spacing:-2px;margin:24px 0}.character-main h1 em{font-family:Georgia,serif;font-weight:400}.character-intro{max-width:760px;line-height:1.7;font-size:18px;color:#54575a}.character-layout{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px;align-items:start}.character-panel{background:#fff;border:1px solid #dedee3;border-radius:16px;padding:28px;min-width:0}.character-panel h2{font-size:25px;line-height:1.2;margin:12px 0}.character-panel p{line-height:1.6}.character-panel label{display:block;font-size:14px;font-weight:600;margin:18px 0 8px}.character-panel input:not([type=checkbox]),.character-panel textarea{display:block;width:100%;box-sizing:border-box;font:15px/1.5 system-ui;border:1px solid #bbbfc7;border-radius:8px;background:#fff;color:#24242b;padding:12px;margin-top:7px}.character-panel textarea{resize:vertical}.character-panel label span,.character-small{font-size:13px;color:#606570;font-weight:400}.character-consent{display:flex!important;align-items:start;gap:10px;line-height:1.6}.character-consent input{margin-top:6px;flex-shrink:0}.character-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}.character-actions button,.character-import{border:1px solid #d2d5dc;background:#fff;border-radius:7px;padding:10px 14px;font:14px system-ui;cursor:pointer}.character-actions .button{padding:13px 18px}.character-actions .button-dark{background:#212431;color:white}.character-actions .button-primary{background:#e8edaf;color:#24242b}.character-actions button:disabled{opacity:.5;cursor:default}.character-actions .character-import{margin:0}.character-import input{max-width:190px}#character-preview{max-width:100%;max-height:300px;object-fit:contain;border-radius:10px;margin-top:16px}#character-output{background:#f7f8fa}.character-status{padding:14px 18px;background:#edf2da;border-radius:8px;margin:20px 0}.character-status.error{background:#ffe9e5}.character-footer{font-size:14px}.character-panel a,.character-footer a{color:#3a4e87}.character-panel [hidden],.character-main [hidden]{display:none!important}@media(max-width:760px){.character-layout{grid-template-columns:1fr}.character-main,.character-nav,.character-footer{padding:18px}.character-panel{padding:21px}.character-main h1{letter-spacing:-1px}}
