.media-editor{margin:1.5rem 0;padding:clamp(1rem,2.5vw,1.75rem);border:1px solid var(--border,#383044);border-radius:18px;background:var(--panel,#241e2f)}
.media-editor-heading{max-width:780px;margin-bottom:1.4rem}.media-editor-heading h2{margin:.25rem 0 .7rem}.media-editor-heading>p:last-child{color:var(--muted,#aaa3b5);line-height:1.65}
.media-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.media-upload-card{min-width:0;overflow:hidden;border:1px solid var(--border,#383044);border-radius:14px;background:var(--bg,#1c1824)}
.media-preview{display:grid;place-items:center;margin:0;overflow:hidden;min-height:150px;background:linear-gradient(135deg,#272339,#40304f)}.media-preview img{display:block;width:100%;height:100%;object-fit:cover}.media-preview-square{aspect-ratio:1/1;max-height:240px}.media-preview-square img{object-fit:contain}.media-preview-banner{aspect-ratio:16/6;max-height:240px}.media-empty{display:grid;gap:.4rem;text-align:center;color:#d1bee8;padding:1.5rem}.media-empty[hidden]{display:none}.media-empty small{font-size:.75rem;color:var(--muted,#aaa3b5)}
.media-upload-fields{padding:1rem}.media-upload-fields h3{margin:0 0 1rem}.media-upload-fields label{display:block;margin-bottom:.5rem;font-weight:600}.media-upload-fields input[type=file]{box-sizing:border-box;width:100%;min-width:0;padding:.65rem;font-size:.85rem;border:1px solid var(--border,#383044);border-radius:9px}.media-upload-fields input[type=file]::file-selector-button{padding:.5rem .65rem;margin-right:.65rem;border:0;border-radius:6px;background:#b89af8;color:#21192f;font-weight:650;cursor:pointer}.media-upload-fields input[type=file]:focus-visible{outline:2px solid #b89af8;outline-offset:3px}
.media-file-hint{font-size:.77rem;line-height:1.5}.media-file-name{font-size:.82rem;overflow-wrap:anywhere;color:var(--muted,#aaa3b5)}.media-upload-actions{display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}.media-status{min-height:1.4em;font-size:.82rem;line-height:1.5;color:#b3dbca;overflow-wrap:anywhere}.media-status-error{color:#f2a7b2}.media-upload-card .error:empty{display:none}
@media(max-width:720px){.media-editor-grid{grid-template-columns:minmax(0,1fr)}.media-preview-square{max-height:210px;aspect-ratio:16/9}.media-upload-actions>button{flex:1 1 auto}.media-editor{margin:1rem 0}}
.account-avatar-image{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.account-menu-emblem,.profile-dot,.self-card-button{overflow:hidden}.account-menu-emblem>.account-avatar-image{width:100%;height:100%}.self-card-button>.account-avatar-image{position:absolute;inset:0}.self-card-button{position:relative}
.card-cover{position:relative;overflow:hidden}.tournament-card-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.card-cover>.badge{position:relative;z-index:1}.tournament-card-logo{position:absolute;right:1rem;bottom:1rem;width:64px;height:64px;object-fit:contain;border-radius:12px;background:#17131dd9;padding:.4rem}.t-cover{position:relative;isolation:isolate;overflow:hidden}.tournament-cover-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.t-cover:has(.tournament-cover-image)::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#17131df2,#17131d99)}.tournament-cover-logo{display:block;width:88px;height:88px;object-fit:contain;border-radius:14px;padding:.5rem;background:#17131dcc;margin-bottom:1rem}#profile-upload{scroll-margin-top:110px}
.media-preview canvas{display:block;width:100%;height:100%;object-fit:contain}.media-preview:has(.media-crop-canvas){background:repeating-conic-gradient(#211d2b 0% 25%,#342b40 0% 50%) 50%/18px 18px}.media-crop-canvas{touch-action:none;cursor:grab;outline-offset:-4px}.media-crop-canvas:active{cursor:grabbing}.media-crop-canvas:focus-visible{outline:3px solid #b89af8}.media-crop-controls:empty{display:none}.media-crop-help{font-size:.84rem;line-height:1.6;color:var(--muted,#aaa3b5)}.media-crop-controls label{display:flex;justify-content:space-between;gap:1rem;font-size:.82rem;margin:1rem 0 .2rem}.media-crop-controls output{font-variant-numeric:tabular-nums;color:var(--muted,#aaa3b5)}.media-crop-controls input[type=range]{display:block;width:100%;min-width:0;padding:0;accent-color:#b89af8}.media-crop-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}.media-crop-ready{font-size:.84rem;line-height:1.6;color:#b3dbca}.media-slot-avatar .media-preview-square,.media-slot-logo .media-preview-square{aspect-ratio:1/1}.media-slot-banner .media-preview-banner{aspect-ratio:8/3}@media(max-width:720px){.media-crop-actions button{flex:1 1 auto}.media-slot-avatar .media-preview-square,.media-slot-logo .media-preview-square{max-height:260px;aspect-ratio:1/1}}
