.trainer-avatar-card { min-width:0; }
.trainer-avatar-card [hidden] { display:none !important; }
.trainer-avatar-card .avatar-allowance { display:inline-block; margin:0 0 16px; padding:6px 10px; border-radius:8px; background:#fff0e5; color:#923500; font-size:13px; font-weight:700; }
.trainer-avatar-card .avatar-upload { position:relative; overflow:hidden; min-height:52px; color:#983700; border:1.5px dashed #ce7945; background:#fff8f3; }
.trainer-avatar-card .avatar-upload input { inset:0; width:100%; height:100%; padding:0; cursor:pointer; }
.trainer-avatar-card .avatar-upload:focus-within { outline:3px solid #eea977; outline-offset:3px; }
.trainer-avatar-card .avatar-help { margin:8px 0 16px; font-size:13px; line-height:1.6; color:#626975; }
.avatar-preview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:16px 0 20px; }
.avatar-preview-grid figure { min-width:0; margin:0; }
.avatar-preview-frame { display:grid; place-items:center; aspect-ratio:1; overflow:hidden; border-radius:18px; border:1px solid #e6e0d9; background:#f7f4ef; }
.avatar-preview-frame>img,.avatar-preview-frame>canvas { display:block; width:100%; height:100%; max-width:100%; object-fit:contain; }
.avatar-preview-frame>span { color:#72716c; font-size:13px; padding:12px; text-align:center; }
.avatar-preview-grid figcaption { text-align:center; margin-top:8px; font-size:13px; color:#4c5260; }
.avatar-style-fieldset { min-width:0; border:0; margin:0; padding:0; }
.avatar-style-fieldset legend { font-size:14px; font-weight:700; color:#262a32; }
.trainer-avatar-card .avatar-styles { grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; }
.trainer-avatar-card .avatar-styles span { min-height:48px; padding:8px 3px; font-size:13px; color:#3e424a; word-break:keep-all; }
.trainer-avatar-card .avatar-styles input:focus-visible+span { outline:3px solid #eea977; outline-offset:2px; }
.trainer-avatar-card .avatar-consent { align-items:flex-start; font-size:13px; line-height:1.6; color:#4c5260; }
.trainer-avatar-card .avatar-consent input { flex:0 0 22px; width:22px; height:22px; margin:0; accent-color:#c64f08; }
.trainer-avatar-card #generateTrainerAvatar { background:#c64f08; color:#fff; margin-bottom:10px; min-height:50px; font-size:15px; }
.trainer-avatar-card #saveTrainerAvatar { background:#fff; color:#973703; border:1px solid #d48352; min-height:50px; font-size:15px; }
.trainer-avatar-card button:disabled { opacity:.5; cursor:not-allowed; }
.trainer-avatar-card .trainer-form-status { color:#444d59; line-height:1.65; font-size:14px; margin-top:12px; overflow-wrap:anywhere; }
.avatar-progress { margin:10px 0 16px; }
.avatar-progress progress { display:block; width:100%; height:8px; accent-color:#c64f08; }
.avatar-progress p { color:#66594f; font-size:13px; line-height:1.6; }
#avatarSignIn { display:inline-block; padding:12px 0; color:#9c3c08; text-decoration:underline; font-weight:700; }
