/* AURADON // METAL NEXUS — global visual system */
:root{
  --navy-990:#020711;
  --navy-950:#04101d;
  --navy-900:#07182a;
  --navy-850:#0a2035;
  --navy-800:#0e2a42;
  --metal-1:#e8f0f4;
  --metal-2:#9eabb4;
  --metal-3:#53626d;
  --line:rgba(177,199,211,.22);
  --line-strong:rgba(208,225,233,.42);
  --text:#f5fafc;
  --muted:#aebfc9;
  --soft:#728895;
  --neon:#a8ff12;
  --neon-soft:#d5ff78;
  --neon-deep:#4f8e00;
  --danger:#ff6678;
  --success:#a8ff12;
  --warning:#d7e35f;
  --glass:rgba(5,18,31,.84);
  --glass-strong:rgba(3,12,22,.96);
  --shadow:0 24px 70px rgba(0,0,0,.42);
  --shadow-neon:0 0 28px rgba(168,255,18,.12);
  --radius-xl:26px;
  --radius-lg:18px;
  --radius-md:12px;
  --radius-sm:9px;
  --max:1180px;
  --max-wide:1320px;
  --ease:180ms ease;
}
*{box-sizing:border-box}
html{min-width:320px;background:var(--navy-990);scroll-behavior:smooth}
/* Authentication-aware visibility: hidden elements must remain hidden even when component CSS defines display. */
[hidden]{display:none!important}
html.auth-pending [data-auth-login],html.auth-pending [data-auth-register]{display:none!important}
body{margin:0;min-width:320px;min-height:100vh;color:var(--text);font-family:Roboto,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.6;background:
 linear-gradient(180deg,rgba(2,7,17,.78),rgba(2,7,17,.97)),
 radial-gradient(circle at 78% 12%,rgba(168,255,18,.08),transparent 28%),
 url("./site-background.jpg") center/cover fixed;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:
 linear-gradient(115deg,transparent 0 48%,rgba(255,255,255,.025) 49%,transparent 50%),
 radial-gradient(circle at 12% 90%,rgba(26,113,170,.15),transparent 30%)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 70%)}
img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}a{color:inherit}button,a,input,select,textarea{touch-action:manipulation}
button,a{pointer-events:auto}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--neon);outline-offset:3px}
.shell,.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}.container{max-width:var(--max)}main{position:relative}
/* Header */
.site-header,.player-header,body>header{position:sticky;top:0;z-index:1000;background:linear-gradient(180deg,rgba(4,16,29,.97),rgba(3,12,22,.91));border-bottom:1px solid rgba(168,255,18,.18);box-shadow:0 12px 35px rgba(0,0,0,.24);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.site-header::after,.player-header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,rgba(168,255,18,.55),transparent);pointer-events:none}
.header-inner,.player-header-inner{min-height:74px;display:flex;align-items:center;gap:18px;position:relative}.brand,.player-brand{display:inline-flex;align-items:center;flex:0 0 auto;text-decoration:none;position:relative;z-index:2}.brand img,.player-brand img{display:block;width:138px;max-height:56px;object-fit:contain;filter:drop-shadow(0 4px 14px rgba(168,255,18,.08))}
.nav,.player-nav{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-left:auto;min-width:0}.nav a,.player-nav>a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 12px;border:1px solid transparent;border-radius:9px;text-decoration:none;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:color var(--ease),background var(--ease),border-color var(--ease),transform var(--ease);position:relative;z-index:2}.nav a:hover,.nav a[aria-current="page"],.player-nav>a:hover,.player-nav>a[aria-current="page"]{color:#fff;background:rgba(168,255,18,.055);border-color:rgba(168,255,18,.22);text-shadow:0 0 12px rgba(168,255,18,.16)}
.nav-toggle{display:none;position:relative;z-index:220;width:42px;height:42px;padding:8px;border:1px solid var(--line-strong);border-radius:10px;background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.03));color:#fff;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.16),0 8px 20px rgba(0,0,0,.18)}.nav-toggle span{display:block;width:18px;height:2px;margin:4px auto;border-radius:2px;background:var(--neon);box-shadow:0 0 8px rgba(168,255,18,.25)}
/* Independent account control */
.account-menu-host{position:relative;z-index:220;flex:0 0 auto}.account-menu{position:relative}.account-avatar{width:44px;height:44px;padding:0;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(209,225,232,.58);background:linear-gradient(145deg,#1c3445,#071521);color:#fff;font-weight:900;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.2),0 0 0 3px rgba(168,255,18,.06),0 10px 26px rgba(0,0,0,.3);transition:border-color var(--ease),box-shadow var(--ease),transform var(--ease)}.account-avatar:hover{border-color:var(--neon);box-shadow:inset 0 1px rgba(255,255,255,.25),0 0 0 3px rgba(168,255,18,.1),0 0 24px rgba(168,255,18,.12)}
.account-dropdown{position:absolute;right:0;top:calc(100% + 11px);width:min(310px,calc(100vw - 20px));padding:10px;border:1px solid var(--line-strong);border-radius:15px;background:linear-gradient(145deg,rgba(13,34,50,.99),rgba(3,12,22,.99));box-shadow:var(--shadow),var(--shadow-neon);z-index:2000}.account-dropdown[hidden]{display:none}.account-dropdown a,.account-dropdown button{width:100%;display:flex;align-items:center;min-height:44px;padding:10px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);text-decoration:none;text-align:left;cursor:pointer}.account-dropdown a:hover,.account-dropdown button:hover{color:#fff;background:rgba(168,255,18,.06);border-color:rgba(168,255,18,.16)}.account-user{display:flex;align-items:center;gap:11px;padding:8px}.account-user-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#213c4d,#0a1b29);border:1px solid var(--line-strong);font-weight:900}.account-user strong{display:block;font-size:13px}.account-user small{display:block;color:var(--soft);font-size:11px;margin-top:1px}.account-divider{height:1px;background:linear-gradient(90deg,transparent,var(--line-strong),transparent);margin:6px 2px}.account-logout{color:#ff9eaa!important}
/* Common metal surfaces */
.panel,.card,.group,.faculty-category,.access-card,.page-wrap .card,.section,.floor,.ficha-card,.player-panel{position:relative;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(13,38,57,.91),rgba(3,15,27,.94));box-shadow:inset 0 1px rgba(255,255,255,.08),0 16px 45px rgba(0,0,0,.24)}
.panel::before,.card::before,.group::before,.faculty-category::before,.access-card::before,.section::before,.floor::before,.ficha-card::before,.player-panel::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,rgba(255,255,255,.05),transparent 22%,transparent 78%,rgba(168,255,18,.025));}
.eyebrow,.kicker{margin:0 0 9px;color:var(--neon);font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.section-title{margin:0;color:#fff;font-size:clamp(24px,4vw,34px)}
h1,h2,h3,h4{color:#fff}p{color:var(--muted)}
/* Buttons — single medium standard */
button,.button,.btn,.ficha-button,.player-button{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:118px;min-height:42px;padding:9px 16px;border:1px solid rgba(202,220,228,.42);border-radius:10px;background:linear-gradient(145deg,rgba(35,61,77,.96),rgba(7,22,35,.98));color:#f7fbfd;text-decoration:none;font-weight:800;font-size:11px;line-height:1.15;letter-spacing:.03em;cursor:pointer;box-shadow:inset 0 1px rgba(255,255,255,.16),0 8px 22px rgba(0,0,0,.18);transition:transform var(--ease),border-color var(--ease),box-shadow var(--ease),color var(--ease),background var(--ease);position:relative;z-index:2;isolation:isolate}
button::before,.button::before,.btn::before,.ficha-button::before,.player-button::before{content:"";position:absolute;inset:1px;border-radius:8px;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.08),transparent 42%,rgba(168,255,18,.05));z-index:-1}
button:hover,.button:hover,.btn:hover,.ficha-button:hover,.player-button:hover{transform:translateY(-1px);border-color:rgba(168,255,18,.72);color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.18),0 0 0 2px rgba(168,255,18,.05),0 12px 28px rgba(0,0,0,.25)}
button:active,.button:active,.btn:active,.ficha-button:active,.player-button:active{transform:translateY(0)}button:disabled,.button[aria-disabled="true"],.btn:disabled,.ficha-button:disabled,.player-button:disabled{opacity:.5;cursor:not-allowed;transform:none;filter:saturate(.65)}
.button.primary,.ficha-button.primary,.player-button.primary{border-color:rgba(168,255,18,.62);background:linear-gradient(145deg,rgba(35,63,45,.98),rgba(7,25,30,.98));color:#f8fff0;box-shadow:inset 0 1px rgba(255,255,255,.18),0 0 24px rgba(168,255,18,.09)}
.button.secondary,.btn.secondary,.ficha-button.secondary,.player-button.secondary{background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(4,15,26,.95));border-color:rgba(174,197,208,.3)}
.button.danger,.btn.danger,.ficha-button.danger,.player-button.danger{border-color:rgba(255,102,120,.48);color:#ffdce0;background:linear-gradient(145deg,rgba(74,25,35,.85),rgba(20,10,17,.98))}
.actions,.ficha-actions,.player-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.actions{margin-top:24px}
/* Forms */
.field{min-width:0}.field>label,.field label,.power-slot>label{display:block;margin:0 0 7px;color:#dce8ed;font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.field input,.field textarea,.field select,input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="date"],textarea,select{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid rgba(166,190,201,.28);border-radius:10px;background:linear-gradient(145deg,rgba(12,35,51,.96),rgba(3,14,25,.98));color:#f5fafc;box-shadow:inset 0 1px rgba(255,255,255,.05),0 5px 16px rgba(0,0,0,.12);transition:border-color var(--ease),box-shadow var(--ease),background var(--ease)}.field textarea,textarea{min-height:120px;resize:vertical}.field select,select{color-scheme:dark}.field select option,select option{background:#071827;color:#fff}.field input::placeholder,.field textarea::placeholder,textarea::placeholder{color:#6f8490}.field input:focus,.field textarea:focus,.field select:focus,input:focus,textarea:focus,select:focus{border-color:rgba(168,255,18,.65);box-shadow:0 0 0 3px rgba(168,255,18,.08),inset 0 1px rgba(255,255,255,.08)}.help,.meta,.description{color:var(--soft);font-size:10px}.notice,.warning,.note{padding:13px 14px;border-radius:11px;border:1px solid rgba(168,255,18,.16);background:rgba(168,255,18,.035);color:var(--muted)}
/* Landing */
.hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:48px;align-items:center;min-height:clamp(570px,78vh,780px);padding:70px 0}.hero h1{max-width:760px;margin:0;color:#fff;font-size:clamp(43px,6.2vw,78px);line-height:.98;letter-spacing:-.045em}.hero h1 em{font-style:normal;color:var(--neon);text-shadow:0 0 24px rgba(168,255,18,.12)}.hero-copy{max-width:700px;margin:24px 0 0;color:var(--muted);font-size:clamp(15px,1.45vw,18px);line-height:1.8}.hero-crest{display:grid;place-items:center;min-height:360px;position:relative}.hero-crest::before{content:"";position:absolute;width:min(380px,75vw);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(168,255,18,.09),transparent 64%);box-shadow:0 0 90px rgba(168,255,18,.08);pointer-events:none}.hero-crest img{position:relative;width:min(310px,65vw);filter:drop-shadow(0 30px 38px rgba(0,0,0,.5)) drop-shadow(0 0 24px rgba(168,255,18,.08))}.dashboard{border-top:1px solid rgba(174,197,208,.12);padding:54px 0 70px}.section-header{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}.section-header>p{margin:0;color:var(--soft)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.panel{padding:22px}.panel-title{margin:0;font-size:18px}.panel-subtitle{margin:4px 0 18px;color:var(--soft);font-size:11px}.today{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025)}.today-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,rgba(168,255,18,.12),rgba(255,255,255,.03));border:1px solid rgba(168,255,18,.22);font-size:23px}.today strong{display:block;color:#fff}.today p{margin:3px 0 0;font-size:11px}.forecast{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.forecast-day{display:grid;gap:4px;justify-items:center;padding:10px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.018)}.forecast-day span,.forecast-day small{color:var(--soft);font-size:9px}.forecast-day b{font-size:18px}.calendar-list{display:grid;gap:8px}.calendar-item{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.02)}.calendar-date{display:grid;place-items:center;padding:7px;border:1px solid rgba(168,255,18,.2);border-radius:9px;color:var(--neon);font-size:16px;font-weight:900;line-height:1}.calendar-date small{font-size:8px;color:var(--soft);text-transform:uppercase}.calendar-item strong{font-size:11px}.calendar-item p{margin:2px 0 0;color:var(--soft);font-size:9px}.empty{padding:18px;text-align:center;color:var(--soft);border:1px dashed var(--line);border-radius:11px}
/* Generic content */
.explore-page main{width:min(var(--max),calc(100% - 40px));margin:0 auto}.explore-page .hero{display:block;min-height:0;padding:58px 0 32px}.explore-page .hero h1{font-size:clamp(38px,5vw,60px)}.school-title,.city-title{margin:12px 0 26px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius-lg);background:linear-gradient(145deg,rgba(15,45,65,.9),rgba(3,16,28,.95));box-shadow:inset 0 1px rgba(255,255,255,.08)}.school-title h2,.city-title h2{margin:0;color:#fff;font-size:clamp(24px,4vw,34px)}.floor,.section{margin:18px 0;padding:22px}.floor-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:14px}.floor-heading h2,.floor-heading h3,.section-title{margin:0;color:#fff}.cards,.grid,.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.explore-page .card{padding:17px}.explore-page .card h3,.explore-page .card h4{margin-top:0}.info-grid,.intro-grid,.subject-grid,.club-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.info-card,.subject-card,.club-card{padding:18px}.periods{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.period-btn{min-height:42px;padding:9px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.025);color:var(--muted);font-weight:800;cursor:pointer}.period-btn.active{border-color:rgba(168,255,18,.55);background:rgba(168,255,18,.08);color:#fff;box-shadow:0 0 18px rgba(168,255,18,.06)}.period-panel{display:none;margin-top:14px;padding:17px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.02)}.period-panel.active{display:block}.period-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.age{padding:5px 8px;border:1px solid rgba(168,255,18,.26);border-radius:999px;color:var(--neon);font-size:9px;font-weight:800}.badges{display:flex;flex-wrap:wrap;gap:7px}.badge,.pill{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border-radius:999px;border:1px solid var(--line-strong);background:rgba(255,255,255,.04);color:var(--muted);font-size:9px;font-weight:800}.back{display:inline-flex;align-items:center;min-height:42px;margin-top:20px;padding:9px 14px;border:1px solid var(--line-strong);border-radius:10px;text-decoration:none;color:var(--muted);font-size:10px;font-weight:800}
/* Admin */
body.admin-body{min-height:100vh}.admin-body .shell{width:min(var(--max-wide),calc(100% - 40px))}.top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0}.top .brand{display:flex;align-items:center;gap:10px}.top .brand img{width:130px}.top .brand span{padding:5px 8px;border:1px solid rgba(168,255,18,.24);border-radius:999px;color:var(--neon);font-size:8px;font-weight:900;letter-spacing:.12em}.view{display:none}.view.active{display:block}.menu{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px;padding:8px;border:1px solid var(--line);border-radius:14px;background:rgba(4,15,26,.86)}.menu button{min-width:108px;min-height:40px;padding:8px 11px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-size:10px;font-weight:800;cursor:pointer}.menu button:hover,.menu button.active{color:#fff;background:rgba(168,255,18,.055);border-color:rgba(168,255,18,.18)}.page{display:none}.page.active{display:block}.card{padding:22px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.formgrid>.full{grid-column:1/-1}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.stat{padding:15px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.025)}.stat strong{display:block;font-size:24px}.stat span{color:var(--soft);font-size:9px;text-transform:uppercase}.list{display:grid;gap:9px;margin-top:14px}.item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.025)}.preview{min-height:110px;display:grid;place-items:center;border:1px dashed var(--line-strong);border-radius:12px;background:rgba(255,255,255,.02);overflow:hidden}.preview img{max-height:180px;object-fit:contain}.switch{min-width:52px;min-height:30px;border-radius:999px!important}.access-card,.page-wrap{width:min(620px,calc(100% - 40px));margin:50px auto}.access-card{padding:34px;text-align:center}.access-card .logo{width:min(190px,72%);margin:0 auto 18px}.page-wrap .card{margin-top:20px}.site-footer,.site-disclaimer-footer{width:min(var(--max),calc(100% - 40px));margin:0 auto;padding:30px 0 42px;color:var(--soft);font-size:10px}.site-footer img{width:115px;margin-bottom:10px}.site-footer p{margin:6px 0;color:var(--soft)}.site-footer a{color:var(--muted)}
@media(max-width:900px){.cards,.grid,.steps,.info-grid,.intro-grid,.subject-grid,.club-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.periods{grid-template-columns:repeat(3,minmax(0,1fr))}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.formgrid{grid-template-columns:1fr}.formgrid>.full{grid-column:auto}.menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.menu button{width:100%}}
@media(max-width:760px){body{background-attachment:scroll}.shell,.container{width:min(var(--max),calc(100% - 28px))}.header-inner,.player-header-inner{min-height:66px;gap:9px}.brand img,.player-brand img{width:106px}.nav-toggle{display:block;margin-left:auto}.nav,.player-nav{position:absolute;left:0;right:0;top:calc(100% + 8px);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:9px;border:1px solid var(--line-strong);border-radius:14px;background:linear-gradient(145deg,rgba(9,31,47,.99),rgba(3,12,22,.99));box-shadow:var(--shadow),0 0 25px rgba(168,255,18,.05);opacity:0;visibility:hidden;transform:translateY(-7px);transition:opacity var(--ease),transform var(--ease),visibility var(--ease);z-index:1900}.nav.nav-open,.player-nav.nav-open{opacity:1;visibility:visible;transform:none}.nav a,.player-nav>a{min-height:42px;padding:9px 7px;background:rgba(255,255,255,.025);font-size:9px}.account-menu-host{margin-left:0}.account-dropdown{right:0;top:calc(100% + 9px);width:min(300px,calc(100vw - 18px))}.hero{grid-template-columns:1fr;min-height:auto;padding:54px 0 48px}.hero-crest{min-height:235px;order:-1}.hero-crest img{width:min(200px,55vw)}.hero h1{font-size:clamp(39px,12vw,58px)}.hero-copy{font-size:14px}.dashboard-grid{grid-template-columns:1fr}.section-header{display:block}.section-header>p{margin-top:5px}.explore-page main{width:calc(100% - 28px)}.explore-page .hero{padding-top:40px}.floor,.section{padding:16px}.cards,.grid,.steps,.info-grid,.intro-grid,.subject-grid,.club-grid{grid-template-columns:1fr}.periods{grid-template-columns:repeat(2,minmax(0,1fr))}.floor-heading,.period-head{display:block}.menu{grid-template-columns:1fr 1fr}.access-card,.page-wrap{width:calc(100% - 28px);margin:28px auto}.access-card{padding:24px 18px}.top{padding:16px 0}.site-footer,.site-disclaimer-footer{width:calc(100% - 28px)}.actions,.ficha-actions,.player-actions{gap:8px}.actions>* ,.ficha-actions>* ,.player-actions>*{flex:0 1 auto}.button,.btn,.ficha-button,.player-button{min-height:42px;min-width:118px}}
@media(max-width:480px){.shell,.container{width:calc(100% - 24px)}.brand img,.player-brand img{width:98px}.account-avatar{width:41px;height:41px}.nav-toggle{width:41px;height:41px}.hero{padding-top:40px}.hero h1{font-size:clamp(34px,11.5vw,49px)}.hero-copy{font-size:13px}.panel{padding:17px}.forecast{grid-template-columns:repeat(2,1fr)}.account-dropdown{right:-4px}.ficha-button,.player-button,.button,.btn{min-width:112px;padding-inline:13px}.site-footer{padding-bottom:30px}}
@media(max-width:380px){.shell,.container{width:calc(100% - 20px)}.header-inner,.player-header-inner{min-height:62px;gap:7px}.brand img,.player-brand img{width:92px}.account-avatar,.nav-toggle{width:39px;height:39px;min-width:39px}.nav-toggle{padding:7px}.nav,.player-nav{grid-template-columns:1fr;left:0;right:0}.hero h1{font-size:33px}.hero-copy{font-size:12.5px}.panel{padding:15px}.button,.btn,.ficha-button,.player-button{min-height:40px;min-width:108px;padding:8px 11px;font-size:10px}.actions,.ficha-actions,.player-actions{gap:7px}}
/* Interactive controls that are intentionally compact and must not inherit the 118px button floor. */
.account-avatar,.nav-toggle,.period-btn,.mobile-menu-toggle,.mobile-menu-close,.switch{min-width:0}

/* Firebase loading indicator */
#dbSyncLoading{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:20px;background:rgba(2,7,17,.78);backdrop-filter:blur(7px);transition:opacity 160ms ease,visibility 160ms ease}
#dbSyncLoading.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.db-sync-card{width:min(360px,100%);padding:22px;text-align:center;border:1px solid var(--line-strong);border-radius:16px;background:linear-gradient(145deg,rgba(10,31,49,.98),rgba(3,13,24,.99));box-shadow:var(--shadow),0 0 30px rgba(168,255,18,.05)}
.db-sync-card strong{display:block;color:#fff;font-size:15px}.db-sync-card span{display:block;margin-top:5px;color:var(--muted);font-size:11px}.db-sync-spinner{width:30px;height:30px;margin:0 auto 12px;border:2px solid rgba(255,255,255,.12);border-top-color:var(--neon);border-radius:50%;animation:dbspin .8s linear infinite}@keyframes dbspin{to{transform:rotate(360deg)}}
body,button,input,select,textarea{font-family:Roboto,"Segoe UI",Arial,sans-serif}

/* Global footer sizing */
.site-footer,.site-disclaimer-footer,.footer,.admin-footer{font-size:12px!important;line-height:1.55;}
.site-footer p,.site-disclaimer-footer p,.footer p,.admin-footer p{font-size:12px!important;}

/* Prevent public-page flash before the Firebase maintenance state is known. */
html.maintenance-check-pending body{visibility:hidden;}

/* Compact footer: a clear separator without creating a second oversized section. */
.site-footer,.site-disclaimer-footer,.footer,.admin-footer{
  border-top:1px solid rgba(168,255,18,.18);
  width:min(var(--max),calc(100% - 40px));
  margin:24px auto 0;
  padding:14px 0 16px!important;
  font-size:12px!important;
  line-height:1.45!important;
}
.site-footer p,.site-disclaimer-footer p,.footer p,.admin-footer p{font-size:12px!important;line-height:1.45!important;margin:4px 0!important;}
@media(max-width:760px){.site-footer,.site-disclaimer-footer,.footer,.admin-footer{width:calc(100% - 28px);margin-top:18px;padding:12px 0 14px!important;}}
html.maintenance-check-pending::after{content:"Verificando acesso…";position:fixed;inset:0;z-index:99999;display:grid;place-items:center;color:var(--muted);font:700 11px/1 Roboto,"Segoe UI",sans-serif;letter-spacing:.12em;text-transform:uppercase;background:rgba(2,7,17,.72);backdrop-filter:blur(4px);pointer-events:none;}
