.character-photo{margin:24px 0;padding:20px 0;border-block:1px solid #d7dce1;color:#142b3d;letter-spacing:0;min-width:0}.character-photo h3{font-family:Georgia,serif;font-size:24px;margin:0 0 10px}.character-photo h4{font-size:17px;margin:16px 0 10px}.character-photo p{font-size:13px;line-height:1.65;margin:10px 0}.character-command,.character-photo button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;font-size:13px;line-height:1.4;font-weight:700;border:1px solid #c5ced6;background:white;border-radius:6px;cursor:pointer;text-align:center}.character-photo button:disabled{opacity:.55;cursor:default}.character-photo .character-command{background:#153347;color:#fff;border-color:#153347}.character-command input[type=file]{position:absolute;width:1px;height:1px;clip-path:inset(50%)}.character-command:focus-within{outline:3px solid #a986cd;outline-offset:3px}.character-photo-grid{display:grid;grid-template-columns:minmax(0,160px) minmax(0,1fr);gap:16px;margin:16px 0}.character-source{position:relative;align-self:start;line-height:0;overflow:hidden}.character-source img{width:100%;height:auto;display:block}.character-crop{position:absolute;border:2px solid white;outline:1px solid #163747;box-shadow:0 0 0 1000px #0006;pointer-events:none}.character-photo-actions{display:flex;flex-direction:column;align-items:start;gap:8px;min-width:0}.character-photo .character-consent{display:flex;align-items:start;gap:8px;font-size:12px;line-height:1.55;margin-top:8px}.character-consent input{flex:0 0 18px;width:18px;height:18px;margin-top:2px}.character-crop-controls{display:grid;gap:10px;margin:16px 0}.character-crop-controls label{font-size:13px;display:grid;gap:5px}.character-crop-controls input{width:100%}.character-traits dl{display:grid;gap:8px}.character-traits dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:10px;font-size:13px;line-height:1.5}.character-traits dt{font-weight:700}.character-traits label{display:grid;gap:8px;margin:16px 0;font-size:13px}.character-traits textarea{padding:10px;border:1px solid #bbc8d0;width:100%;resize:vertical;min-height:70px;background:white;color:#142b3d}.character-approved img{display:block;width:100%;max-height:330px;object-fit:contain;margin:20px auto 10px}.character-approved>div{display:flex;flex-wrap:wrap;gap:10px}.character-error{color:#9b294b;font-weight:700}.character-privacy{color:#586978}.character-spinner{animation:character-turn 1s linear infinite}@keyframes character-turn{to{transform:rotate(1turn)}}@media(max-width:480px){.character-photo-grid{grid-template-columns:minmax(0,1fr)}.character-source{max-width:220px;margin-inline:auto}.character-photo-actions{align-items:stretch}.character-traits dl>div{grid-template-columns:80px minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.character-spinner{animation:none}}.character-traits-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.character-traits-fields input{width:100%;min-width:0;min-height:44px;border:1px solid #bbc8d0;border-radius:4px;padding:8px;font-size:16px;color:#123047;background:#fff}.character-traits textarea{font-size:16px;line-height:1.5}.character-photo-help{margin:8px 0 14px}.character-photo-help summary{min-height:44px;padding:10px 0;cursor:pointer;font-size:13px;font-weight:700}.character-photo-help summary:focus-visible{outline:3px solid #a986cd;outline-offset:3px}.character-photo-help p{color:#586978}.character-preparing{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px}.character-preparing p{display:flex;align-items:center;gap:8px}.character-preparing svg{flex-shrink:0}@media (max-width:480px){.character-traits-fields{grid-template-columns:minmax(0,1fr)}}