:root{--gold:var(--accent);--gold-soft:var(--theme-soft);--green:var(--peace)}
.wardrobe-layout>*,.profile-two>*,.wardrobe-editor,.edit-grid>*,.result-player>*{min-width:0}
.edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.avatar-stage{position:relative;display:grid;place-items:center;min-height:430px;border:1px solid rgba(var(--theme-rgb),.16);border-radius:28px;background:radial-gradient(ellipse at 50% 40%,rgba(var(--theme-rgb),.1),transparent 65%),linear-gradient(145deg,#161820,#0b0c11);overflow:hidden}
.avatar-stage svg{display:block;height:580px;max-height:72vh;width:100%;max-width:370px;filter:drop-shadow(0 10px 24px #0008)}
.profile-two{display:grid;grid-template-columns:minmax(270px,1fr) 1fr;gap:30px;align-items:center;background:none!important;border:0!important;overflow:visible!important}
.profile-two .profile-identity{position:static!important;padding:24px}.profile-identity h2{font-size:clamp(30px,4vw,54px)}.profile-identity .button{margin:10px 0;width:100%}
.profile-stats{grid-template-columns:repeat(5,1fr)!important}.profile-stats strong{font-size:24px!important}.faction-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.faction-stats>div{display:grid;gap:8px;padding:20px;border:1px solid rgba(var(--theme-rgb),.2);border-radius:18px;background:linear-gradient(140deg,rgba(var(--theme-rgb),.08),#111116)}.faction-stats strong{color:var(--accent);font-size:27px}.faction-stats small{color:var(--muted)}
.wardrobe-layout{display:grid;grid-template-columns:minmax(270px,.85fr) minmax(380px,1.15fr);gap:28px;align-items:start}.wardrobe-layout>.avatar-stage{position:sticky;top:86px}.wardrobe-editor{padding:24px;border:1px solid #ffffff10;border-radius:24px;background:#111116}.edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.edit-select{display:grid;gap:8px;font-size:13px;color:var(--muted);margin:12px 0}.edit-select select,form input:not([type=checkbox]):not([type=radio]),form select,form textarea{border:1px solid #ffffff1a;border-radius:10px;background:#0b0c11;color:#f2e3c3;padding:12px;width:100%;font:inherit}
.palette{border:0;padding:0;display:flex;gap:9px;flex-wrap:wrap;margin:24px 0}.palette legend{font-size:13px;color:var(--muted);padding:0 0 12px}.palette label{position:relative;display:block;width:30px;height:30px;border-radius:50%;cursor:pointer}.palette input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}.palette span{display:block;pointer-events:none;width:100%;height:100%;border-radius:50%;background:var(--swatch);border:2px solid #ffffff33}.palette input:checked+span{outline:2px solid var(--accent);outline-offset:3px}.palette input:focus-visible+span{outline:3px solid white;outline-offset:3px}
.slot-tabs{display:flex;gap:8px;overflow:auto;padding-bottom:12px;scrollbar-width:thin}.slot-tabs button{white-space:nowrap;padding:10px 14px;border:1px solid #ffffff12;border-radius:9px;background:#171922;color:var(--muted);cursor:pointer}.slot-tabs button.selected{color:var(--theme-pale);border-color:var(--accent);background:rgba(var(--theme-rgb),.12)}
.items-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.item-card{display:flex;flex-direction:column;align-items:center;position:relative;border:1px solid #ffffff13;border-radius:14px;background:#0e1016;color:#ece4d6;padding:8px;cursor:pointer;text-align:center;overflow:hidden}.item-card.equipped{border-color:var(--accent);background:rgba(var(--theme-rgb),.08)}.item-card img{display:block;width:100%;height:130px;object-fit:contain;pointer-events:none}.item-card strong{font-size:12px;line-height:1.45}.item-card small{color:var(--accent);font-size:11px;margin-top:6px}.item-none{display:grid;place-items:center;height:130px;font-size:35px}.item-lock{font-size:10px;margin-top:5px}.editor-save{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}.editor-save button{flex:1}
.result-player{border:1px solid #ffffff1c;border-radius:15px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:15px;padding:18px;margin:20px 0}.result-player legend{padding:0 10px;font-weight:600}.result-player label{display:grid;gap:8px;font-size:12px}.result-player .check-label{display:flex;align-items:center;gap:8px}.result-player .check-label input{width:18px;height:18px}.result-player label:first-of-type{grid-column:1/-1}.qr-output{display:grid;gap:15px;justify-items:center;padding:20px}.qr-output img{border:14px solid white;border-radius:12px;max-width:100%;height:auto}.admin-tools{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding:24px 0}.admin-tools label{display:grid;gap:8px;margin:14px 0}.audit-list p,.result-history>div{display:flex;gap:12px;flex-wrap:wrap;padding:15px 0;border-bottom:1px solid #ffffff10}.audit-list time{font-size:11px;color:var(--muted)}.audit-list span{font-size:12px;word-break:break-word}.onboarding{padding:0;list-style:none;counter-reset:steps}.onboarding li{counter-increment:steps;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px;border-bottom:1px solid #ffffff12}.onboarding li::before{content:counter(steps);color:var(--accent)}.onboarding li.done::before{content:'✓'}.onboarding li.done{color:var(--muted)}.ticket strong{display:block;font-size:42px;font-variant-numeric:tabular-nums;margin:15px 0}
.achievements{display:flex;flex-wrap:wrap;gap:12px}.achievement{display:flex;gap:12px;padding:16px;background:linear-gradient(145deg,#20212a,#111116);border:1px solid rgba(var(--theme-rgb),.18);border-radius:14px}.achievement span{color:var(--accent);font-size:22px}.achievement strong{font-size:13px;align-self:center}
body[data-client=site] #app{max-width:1160px;padding:0 24px;margin:auto}body[data-client=site] #view{max-width:1080px;padding-top:45px}body[data-client=site] .app-header{max-width:1120px}.site-toplinks{display:flex;gap:24px;align-items:center;font-size:13px}.site-toplinks a:hover{color:var(--accent)}.site-home{font-size:13px;color:var(--muted)}
@media(max-width:850px){.wardrobe-layout{grid-template-columns:1fr}.wardrobe-layout>.avatar-stage{position:relative;top:auto;min-height:340px}.avatar-stage svg{height:450px;max-height:55vh}.profile-two{grid-template-columns:1fr}.profile-two .profile-identity{padding:6px 0}.faction-stats{grid-template-columns:1fr 1fr}.profile-stats{grid-template-columns:repeat(3,1fr)!important}.admin-tools{grid-template-columns:1fr}.site-toplinks{display:none}.wardrobe-editor{padding:18px}.items-grid{grid-template-columns:repeat(3,1fr)}.item-card img{height:110px}.edit-grid{gap:10px}.result-player{grid-template-columns:1fr 1fr}.result-player .check-label{grid-column:1/-1}body[data-client=site] #app{padding:0 16px}}
@media(prefers-reduced-motion:no-preference){.avatar-stage svg{animation:avatar-entry .4s ease-out}@keyframes avatar-entry{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:850px){.wardrobe-layout,.profile-two{grid-template-columns:minmax(0,1fr)}.edit-grid,.result-player{grid-template-columns:repeat(2,minmax(0,1fr))}.items-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.editor-save button{flex:1 1 140px}.palette{min-inline-size:0}}
.game-day{border-color:rgba(var(--theme-rgb),.4);background:radial-gradient(ellipse at 90% 0,rgba(var(--theme-rgb),.14),transparent),#14151b}.game-day h2,.game-day p{margin:12px 0}.game-day>strong{display:block;font-size:38px;font-variant-numeric:tabular-nums;margin:16px 0}.season-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.training-dice p{margin:14px 0}.training-die{display:grid;place-items:center;font:65px Georgia,serif;color:var(--dice-color,#ddba75);width:150px;height:150px;margin:30px auto;background:linear-gradient(145deg,#282b36,#101116);clip-path:polygon(50% 0,94% 26%,94% 75%,50% 100%,6% 75%,6% 26%);border:1px solid currentColor;filter:drop-shadow(0 8px 20px #0008)}.training-die[data-skin=dark]{--dice-color:#db5366}.training-die[data-skin=maniac]{--dice-color:#bac2ce}.training-die[data-skin=obsidian]{--dice-color:#7f75ab}.training-die[data-skin=seasonal]{--dice-color:#d99452}.training-die.crit{--dice-color:#58bd8c}.training-die.fumble{--dice-color:#db5366}.cast-votes p{padding:12px 0;border-bottom:1px solid #ffffff10}.match-recap h2{margin:14px 0}.brand>img{width:76px;height:60px;object-fit:contain}
@media(min-width:851px){body[data-client=site] .bottom-nav{display:none}body[data-client=site] #app{padding-bottom:80px}}body[data-client=site] #app{padding-bottom:calc(120px + var(--safe-bottom))}
/* Player profile: a portrait gallery with the same saved appearance everywhere. */
.profile-two{gap:0;border:1px solid rgba(var(--theme-rgb),.16)!important;border-radius:28px;background:radial-gradient(ellipse at 22% 42%,rgba(var(--theme-rgb),.10),transparent 48%),linear-gradient(135deg,#14151b,#0c0d12)!important;overflow:hidden!important;position:relative;isolation:isolate;grid-template-columns:1fr 1fr}.profile-two .avatar-stage{min-height:660px;border:0;border-radius:0;background:none;padding:30px 12px 25px;overflow:visible}.avatar-stage .avatar-render{height:640px;max-height:none;max-width:420px;filter:drop-shadow(0 25px 25px #0009);position:relative;z-index:2}.profile-two .avatar-stage:after{content:'';position:absolute;left:14%;right:14%;bottom:35px;height:25px;border-radius:50%;background:#0008;filter:blur(12px)}.profile-orbit{position:absolute;width:80%;max-width:390px;aspect-ratio:1;border:1px solid rgba(var(--theme-rgb),.12);border-radius:50%;top:15%;box-shadow:0 0 0 25px rgba(var(--theme-rgb),.02),0 0 0 55px rgba(var(--theme-rgb),.02)}.profile-stage-label{position:absolute;left:30px;top:27px;font-size:8px;letter-spacing:.18em;color:var(--accent);opacity:.65}.profile-two .profile-identity{padding:45px 42px 45px 12px!important;background:none;margin:0;text-align:left}.profile-identity h2{font:500 clamp(36px,4.3vw,65px)/1.08 Georgia,serif!important;letter-spacing:-.035em;margin:18px 0 25px!important}.profile-identity .eyebrow{font-size:9px;letter-spacing:.16em;color:var(--accent)}.profile-badges{display:flex;flex-wrap:wrap;gap:7px}.profile-badges span{border:1px solid #ffffff17;border-radius:100px;padding:8px 12px;font-size:10px;color:#c5bbc9;background:#ffffff03}.profile-xp{margin:28px 0}.profile-xp>div{display:flex;justify-content:space-between;gap:12px;font-size:10px;margin-bottom:10px;color:#97909e}.profile-xp b{font-weight:500;color:var(--theme-pale)}.profile-xp progress{height:4px;width:100%;display:block;border:0;border-radius:5px;background:#ffffff09}.profile-xp progress::-webkit-progress-bar{background:#ffffff09;border-radius:5px}.profile-xp progress::-webkit-progress-value{background:var(--accent);border-radius:5px}.profile-xp progress::-moz-progress-bar{background:var(--accent);border-radius:5px}.profile-motto{font-size:14px!important;line-height:1.8!important;max-width:370px;margin:20px 0 25px;color:#b2a9b8!important}.profile-actions{display:grid;gap:9px;max-width:330px}.profile-actions .button{width:100%;margin:0;min-height:48px;font-size:12px}.profile-stats{margin:18px 0 28px;gap:10px!important}.profile-stats>div{padding:23px 14px!important;background:#101116;border:1px solid #ffffff0d;border-radius:16px}.profile-stats strong{font:500 35px/1.2 Georgia,serif!important;color:var(--theme-pale)!important}.profile-stats span{font-size:9px;letter-spacing:.03em;margin-top:8px}.podium-art{max-width:180px!important;height:260px!important}.podium-0 .podium-art{height:290px!important}.player-avatar{width:46px!important;height:51px!important;border-radius:12px!important;background:#17171e!important;border-color:rgba(var(--theme-rgb),.25)!important}.podium-name{font-size:14px}.wardrobe-layout>.avatar-stage{min-height:665px;background:radial-gradient(ellipse at 50% 35%,rgba(var(--theme-rgb),.10),transparent 66%),linear-gradient(145deg,#15171e,#0b0c11)}
@media(max-width:850px){.profile-two{grid-template-columns:minmax(0,1fr)!important}.profile-two .avatar-stage{min-height:510px;padding:30px 0 5px}.avatar-stage .avatar-render{height:495px!important;max-height:none;max-width:370px}.profile-two .profile-identity{padding:15px 26px 30px!important}.profile-identity h2{font-size:40px!important;margin:13px 0 18px!important}.profile-xp{margin:20px 0}.profile-motto{font-size:13px!important;margin:18px 0}.profile-actions{max-width:none;grid-template-columns:1fr}.profile-stats{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:6px!important}.profile-stats>div{padding:17px 3px!important;border-radius:10px}.profile-stats strong{font-size:23px!important}.profile-stats span{font-size:8px;letter-spacing:0}.podium-art{height:195px!important}.podium-0 .podium-art{height:223px!important}.wardrobe-layout>.avatar-stage{min-height:530px}.wardrobe-layout>.avatar-stage .avatar-render{height:505px!important}}
@media(max-width:360px){.profile-identity h2{font-size:35px!important}.profile-two .profile-identity{padding:15px 20px 25px!important}.profile-stats strong{font-size:20px!important}.profile-stats span{font-size:7px}}
/* Club announcements: same profile control on the website and Mini App. */
.notification-settings label{display:flex;align-items:flex-start;gap:14px;cursor:pointer;padding:6px 0}
.notification-settings input{width:22px;height:22px;flex:0 0 22px;margin-top:2px;accent-color:var(--gold,#ddba75)}
.notification-settings label span{display:grid;gap:6px}
.notification-settings small{color:var(--muted,#aaa4ad);line-height:1.55;max-width:56ch}

.admin-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.admin-tabs a{padding:12px 16px;border:1px solid #ffffff24;border-radius:12px;color:var(--muted)}.admin-tabs a[aria-current=page]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent)}.result-player .result-rating{grid-column:1/-1}
.training-die3d{position:relative;width:100%;max-width:410px;height:300px;margin:8px auto;background:radial-gradient(ellipse at 50% 60%,rgba(221,186,117,.07),transparent 64%)}
.training-die3d canvas{display:block;width:100%;height:100%;cursor:pointer;outline-offset:4px;touch-action:manipulation}
.training-die3d.dice-critical-success{filter:drop-shadow(0 0 16px #ddba7555)}
.training-die3d.dice-critical-failure{filter:drop-shadow(0 0 16px #db536655)}
.training-dice #training-result{min-height:1.8em}
.share-card-dialog{width:min(520px,calc(100vw - 24px));max-height:90dvh;overflow:auto;padding:22px;border:1px solid #ddba7544;border-radius:20px;background:#121318;color:#f2e3c3}
.share-card-dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}
.share-card-dialog h2{margin:0 0 14px}.share-card-dialog img{display:block;width:auto;max-width:100%;max-height:55dvh;border-radius:12px;margin:0 auto 18px}
.share-card-dialog .button-row{display:flex;flex-wrap:wrap;gap:10px}.share-card-dialog .button-row>*{flex:1;min-width:140px}.share-card-dialog .share-close{display:block;margin:14px 0 0 auto;background:transparent;border:0;color:inherit;padding:10px;cursor:pointer}
.telegram-login-widget{min-height:54px;margin:24px 0}
