:root{
  --bg:#07101f;--panel:#0d1930;--panel2:#111f3b;--line:rgba(255,255,255,.09);
  --text:#f6f8ff;--muted:#92a3c3;--blue:#2f7df6;--cyan:#26d7ff;--gold:#ffc857;
  --danger:#ff5f70;--success:#3ddc97;--shadow:0 18px 60px rgba(0,0,0,.34);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:
radial-gradient(circle at 10% 10%,rgba(42,119,246,.15),transparent 30%),
radial-gradient(circle at 90% 0,rgba(255,193,76,.10),transparent 28%),var(--bg);
color:var(--text);font-family:Tahoma,Arial,sans-serif;min-height:100vh}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
img{max-width:100%}
.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr}
.sidebar{position:sticky;top:0;height:100vh;padding:24px 18px;border-left:1px solid var(--line);
background:rgba(5,13,27,.88);backdrop-filter:blur(18px);display:flex;flex-direction:column;z-index:30;overflow:hidden}
.brand{display:flex;align-items:center;gap:10px;padding:5px 8px 24px}
.brand img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(35,126,255,.26))}
.brand strong{display:block;font-size:22px;letter-spacing:.4px}
.brand small{display:block;color:var(--muted);font-size:11px;margin-top:5px}
.sidebar nav{display:flex;flex-direction:column;gap:7px;flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-left:4px;scrollbar-width:thin;scrollbar-color:rgba(112,151,216,.45) transparent}
.sidebar nav::-webkit-scrollbar{width:6px}.sidebar nav::-webkit-scrollbar-thumb{background:rgba(112,151,216,.38);border-radius:999px}.sidebar nav::-webkit-scrollbar-track{background:transparent}
.sidebar nav a{padding:13px 14px;border-radius:14px;color:#b7c6e4;transition:.2s;position:relative}
.sidebar nav a:hover,.sidebar nav a.active{background:linear-gradient(90deg,rgba(47,125,246,.22),rgba(38,215,255,.07));color:#fff;transform:translateX(-2px)}
.sidebar nav a.active:before{content:"";position:absolute;right:0;top:12px;bottom:12px;width:3px;border-radius:4px;background:linear-gradient(var(--cyan),var(--blue))}
.nav-label{font-size:11px;color:#61718f;padding:16px 14px 5px}
.nav-count{float:left;background:var(--danger);border-radius:999px;min-width:20px;text-align:center;font-size:10px;padding:3px 6px;color:#fff}
.sidebar-user{margin-top:12px;flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:12px;background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:16px}
.sidebar-user img{width:40px;height:40px;border-radius:13px;object-fit:cover;background:#08101f}
.sidebar-user div{min-width:0;flex:1}
.sidebar-user strong,.sidebar-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-user strong{font-size:12px}.sidebar-user small{color:var(--muted);font-size:10px;margin-top:3px}
.sidebar-user>a{font-size:21px;color:var(--danger)}
.main{min-width:0}
.topbar{height:92px;display:flex;align-items:center;padding:0 32px;border-bottom:1px solid var(--line);background:rgba(7,16,31,.7);backdrop-filter:blur(16px);position:sticky;top:0;z-index:20}
.topbar h1{font-size:22px;margin:0 0 5px}.topbar p{margin:0;color:var(--muted);font-size:11px}
.menu-btn{display:none;background:none;border:0;color:#fff;font-size:24px}
.avatar-mini{margin-right:auto}.avatar-mini img{width:44px;height:44px;object-fit:cover;border-radius:14px;border:1px solid var(--line)}
.content{padding:28px 32px;max-width:1500px;margin:auto}
.footer{text-align:center;color:#61718f;font-size:11px;padding:20px 10px 32px}
.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.card{background:linear-gradient(145deg,rgba(17,31,59,.93),rgba(11,23,45,.94));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;position:relative;overflow:hidden}
.card:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;background:rgba(47,125,246,.05);left:-70px;bottom:-90px;pointer-events:none}
.card-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.card-title h2,.card-title h3{margin:0;font-size:16px}.card-title span{color:var(--muted);font-size:11px}
.stat{display:flex;align-items:center;gap:14px}
.stat-icon{width:50px;height:50px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,rgba(47,125,246,.26),rgba(38,215,255,.08));font-size:22px}
.stat strong{display:block;font-size:24px}.stat small{display:block;color:var(--muted);margin-top:5px}
.hero{min-height:255px;background:linear-gradient(115deg,rgba(12,28,55,.98),rgba(18,43,84,.88))}
.hero h2{font-size:28px;margin:0 0 10px}.hero p{color:#b9c8e5;max-width:600px;line-height:2;margin:0 0 20px}
.btn{border:0;border-radius:14px;padding:12px 18px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s;color:#fff}
.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.btn-primary{background:linear-gradient(135deg,var(--blue),#5b5ff7);box-shadow:0 10px 25px rgba(47,125,246,.28)}
.btn-success{background:linear-gradient(135deg,#1fbf85,#37dca1)}
.btn-danger{background:linear-gradient(135deg,#e94c63,#ff7888)}
.btn-soft{background:rgba(255,255,255,.07);border:1px solid var(--line)}
.btn-gold{background:linear-gradient(135deg,#f0a922,#ffcf60);color:#1b1a13}
.btn-sm{padding:8px 11px;border-radius:10px;font-size:11px}
.timer-card{text-align:center;padding:30px}
.timer-head{display:flex;align-items:center;justify-content:space-between}.timer-head h2{margin:0;font-size:18px}
.hearts{font-size:22px;letter-spacing:4px;min-height:30px}.heart-off{filter:grayscale(1);opacity:.25}
.timer-display{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;font-size:clamp(38px,6vw,72px);font-weight:800;letter-spacing:2px;margin:28px 0 8px;text-shadow:0 0 30px rgba(38,215,255,.25)}
.timer-labels{direction:ltr;color:var(--muted);font-size:11px;word-spacing:35px;margin-bottom:24px}
.timer-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.timer-note{font-size:11px;color:#7f91b2;line-height:1.8;margin:18px auto 0;max-width:650px}
.timer-status{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.06);font-size:11px;color:var(--muted)}
.timer-status.running{color:var(--success);background:rgba(61,220,151,.1)}
.warning-box{display:none;margin-top:18px;padding:14px;border-radius:14px;background:rgba(255,95,112,.10);border:1px solid rgba(255,95,112,.22);color:#ffd8dd;line-height:1.8}
.warning-box.show{display:block}
.form-card{max-width:820px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}
label{font-size:12px;color:#b7c6e4}
input,select,textarea{width:100%;background:#081427;border:1px solid rgba(255,255,255,.11);border-radius:13px;padding:13px 14px;color:#fff;outline:0;transition:.2s}
input:focus,select:focus,textarea:focus{border-color:rgba(47,125,246,.75);box-shadow:0 0 0 3px rgba(47,125,246,.12)}
select option{background:#0b1730}textarea{resize:vertical;min-height:120px}
.help{font-size:10px;color:var(--muted);line-height:1.7}
.table-wrap{overflow:auto;border-radius:16px;border:1px solid var(--line)}
table{width:100%;border-collapse:collapse;min-width:720px;background:rgba(4,12,25,.25)}
th,td{text-align:right;padding:14px 13px;border-bottom:1px solid var(--line);font-size:12px;vertical-align:middle}
th{color:#8193b4;background:rgba(255,255,255,.03);font-weight:500}
tr:last-child td{border-bottom:0}tbody tr:hover{background:rgba(255,255,255,.025)}
.user-cell{display:flex;align-items:center;gap:10px}.user-cell img{width:42px;height:42px;border-radius:13px;object-fit:cover;background:#07101f}.user-cell strong{display:block}.user-cell small{color:var(--muted)}
.badge-icon{display:inline-grid;place-items:center;min-width:24px;height:24px;margin:1px;border-radius:8px;background:rgba(255,255,255,.055);font-size:15px}.badge-icon[title]{cursor:help}
.rank-number{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(255,255,255,.06);font-weight:700}
.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tabs a{padding:10px 15px;border-radius:12px;background:rgba(255,255,255,.05);color:#a8b7d3;font-size:12px}.tabs a.active{background:linear-gradient(135deg,var(--blue),#5b5ff7);color:#fff}
.pill{display:inline-flex;border-radius:999px;padding:6px 10px;font-size:10px}
.pill.green{background:rgba(61,220,151,.12);color:#66e8b2}.pill.red{background:rgba(255,95,112,.12);color:#ff8693}.pill.yellow{background:rgba(255,200,87,.12);color:#ffd474}.pill.blue{background:rgba(47,125,246,.13);color:#7db0ff}
.empty{text-align:center;padding:45px 20px;color:var(--muted)}.empty b{display:block;font-size:34px;margin-bottom:12px}
.flash{border-radius:14px;padding:13px 15px;margin-bottom:16px;border:1px solid}
.flash.success{background:rgba(61,220,151,.1);border-color:rgba(61,220,151,.2);color:#7dedbd}
.flash.error{background:rgba(255,95,112,.1);border-color:rgba(255,95,112,.2);color:#ff9da8}
.flash.info{background:rgba(47,125,246,.1);border-color:rgba(47,125,246,.2);color:#9bc0ff}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:28px;position:relative}
.auth-page:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 50% 20%,rgba(47,125,246,.18),transparent 40%);pointer-events:none}
.auth-brand{position:absolute;top:20px;right:24px;display:flex;align-items:center;gap:8px;font-weight:700;font-size:19px}.auth-brand img{width:50px;height:50px;object-fit:contain}
.auth-box{width:min(100%,480px);background:rgba(9,20,39,.86);backdrop-filter:blur(22px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:28px;padding:30px;position:relative}
.auth-box h1{margin:0 0 8px;font-size:25px}.auth-box>p{color:var(--muted);line-height:1.8;font-size:12px;margin:0 0 22px}
.auth-box .field{margin-bottom:14px}.auth-box .btn{width:100%;margin-top:6px}
.auth-switch{text-align:center;color:var(--muted);font-size:12px;margin-top:20px}.auth-switch a{color:#77aaff}
.profile-head{display:flex;align-items:center;gap:18px}.profile-head img{width:105px;height:105px;border-radius:28px;object-fit:cover;background:#08101f;border:1px solid var(--line)}.profile-head h2{margin:0 0 8px}.profile-head p{margin:0;color:var(--muted)}
.notification{padding:17px;border:1px solid var(--line);border-radius:17px;background:rgba(255,255,255,.025);margin-bottom:12px}.notification.unread{border-color:rgba(47,125,246,.38);background:rgba(47,125,246,.06)}.notification h3{margin:0 0 8px;font-size:14px}.notification p{margin:0;color:#b5c3dd;line-height:1.9;font-size:12px}.notification time{display:block;margin-top:9px;color:#637494;font-size:10px}
.action-row{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.kpi-row{display:flex;gap:15px;flex-wrap:wrap}.kpi-mini{flex:1;min-width:140px;padding:15px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}.kpi-mini strong{font-size:21px;display:block}.kpi-mini span{font-size:10px;color:var(--muted)}
.chart-bars{display:flex;align-items:flex-end;gap:8px;height:150px;padding-top:15px}.chart-bar{flex:1;min-width:12px;background:linear-gradient(to top,var(--blue),var(--cyan));border-radius:8px 8px 3px 3px;position:relative;opacity:.85}.chart-bar span{position:absolute;bottom:-24px;right:50%;transform:translateX(50%);font-size:9px;color:var(--muted)}
.install-shell{min-height:100vh;padding:30px;display:grid;place-items:center}.install-box{width:min(100%,850px)}.install-logo{width:95px;display:block;margin:0 auto 15px}.code-note{direction:ltr;text-align:left;background:#050c18;padding:12px;border-radius:12px;overflow:auto;color:#9fc0ef;font-family:monospace;font-size:11px}
@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){
  .app-shell{display:block}.sidebar{position:fixed;right:-290px;width:280px;border-left:1px solid var(--line);transition:.25s}.sidebar.open{right:0;box-shadow:-30px 0 80px rgba(0,0,0,.5)}
  .topbar{height:76px;padding:0 18px}.menu-btn{display:block;margin-left:12px}.content{padding:20px 15px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}
  .hero h2{font-size:23px}.profile-head{align-items:flex-start}
}
@media(max-width:520px){
  .auth-page{padding:78px 14px 20px}.auth-brand{right:15px}.auth-box{padding:23px 18px;border-radius:22px}
  .card{padding:17px;border-radius:19px}.timer-card{padding:22px 13px}.timer-display{font-size:40px}.timer-labels{word-spacing:12px}.grid{gap:14px}
  .topbar h1{font-size:18px}.profile-head{flex-direction:column}.stat strong{font-size:20px}.hero{min-height:290px}
}

/* Grade paper upload and review */
.upload-box{position:relative;display:flex;min-height:150px;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:22px;border:1.5px dashed rgba(47,125,246,.55);border-radius:18px;background:linear-gradient(145deg,rgba(47,125,246,.10),rgba(38,215,255,.035));text-align:center;cursor:pointer;transition:.2s}
.upload-box:hover{border-color:rgba(38,215,255,.8);transform:translateY(-1px);background:linear-gradient(145deg,rgba(47,125,246,.16),rgba(38,215,255,.06))}
.upload-box strong{font-size:13px;color:#eaf2ff}.upload-box small{font-size:10px;color:var(--muted);line-height:1.7}.upload-icon{font-size:32px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.25))}
.upload-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
.upload-preview{display:flex;align-items:center;gap:13px;margin-top:10px;padding:12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.03)}
.upload-preview[hidden]{display:none}.upload-preview img{width:92px;height:76px;border-radius:12px;object-fit:cover;background:#050c18;border:1px solid var(--line)}.upload-preview strong{display:block;max-width:390px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.upload-preview small{display:block;margin-top:6px;color:var(--muted);font-size:10px;line-height:1.7}
.grades-table{min-width:950px}.admin-grades-table{min-width:1180px}.description-cell{min-width:180px;max-width:310px;white-space:normal;line-height:1.8;color:#becae0}
.paper-link{display:inline-flex;flex-direction:column;align-items:center;gap:6px;color:#8fbbff;font-size:10px}.paper-thumb{width:70px;height:54px;object-fit:cover;border-radius:10px;border:1px solid rgba(255,255,255,.16);background:#050c18;transition:.2s}.paper-thumb-lg{width:105px;height:78px}.paper-link:hover .paper-thumb{transform:scale(1.04);border-color:rgba(38,215,255,.65);box-shadow:0 8px 25px rgba(0,0,0,.32)}
@media(max-width:520px){.upload-preview{align-items:flex-start}.upload-preview img{width:76px;height:68px}.upload-preview strong{max-width:180px}}

/* Medal and badge market */
.medal-market-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:220px;background:linear-gradient(120deg,rgba(13,34,70,.98),rgba(32,35,86,.9)),radial-gradient(circle at 15% 20%,rgba(255,200,87,.2),transparent 36%)}
.medal-market-hero h2{font-size:clamp(24px,3vw,36px);margin:8px 0 12px}.medal-market-hero p{max-width:690px;color:#b8c7e4;line-height:2;margin:0}.market-eyebrow{display:inline-flex;padding:7px 12px;border-radius:999px;background:rgba(255,200,87,.12);border:1px solid rgba(255,200,87,.22);color:#ffd473;font-size:11px}
.market-summary{display:grid;grid-template-columns:repeat(3,minmax(105px,1fr));gap:10px;min-width:min(100%,390px)}.market-summary div{padding:17px;text-align:center;border:1px solid var(--line);border-radius:18px;background:rgba(5,13,27,.42)}.market-summary strong{display:block;font-size:24px}.market-summary span{display:block;margin-top:5px;color:var(--muted);font-size:10px}
.market-section{margin-top:27px}.market-section-title{display:flex;align-items:center;justify-content:space-between;margin:0 3px 13px}.market-section-title h2{font-size:17px;margin:0 0 4px}.market-section-title p{margin:0;color:var(--muted);font-size:10px}
.medal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.medal-card{position:relative;min-height:275px;padding:20px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,rgba(17,31,59,.92),rgba(8,19,38,.96));overflow:hidden;transition:.22s}.medal-card:before{content:"";position:absolute;width:130px;height:130px;border-radius:50%;left:-45px;top:-55px;background:rgba(47,125,246,.08);filter:blur(2px)}.medal-card:hover{transform:translateY(-3px);border-color:rgba(47,125,246,.35)}.medal-card.unlocked{border-color:rgba(255,200,87,.32);box-shadow:0 15px 45px rgba(0,0,0,.22),inset 0 0 35px rgba(255,200,87,.035)}.medal-card.locked .medal-symbol{filter:grayscale(1);opacity:.45}.medal-card.locked h3,.medal-card.locked p{opacity:.7}
.medal-card-top{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.medal-symbol{width:66px;height:66px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(145deg,rgba(47,125,246,.22),rgba(38,215,255,.06));border:1px solid var(--line);font-size:34px;box-shadow:inset 0 1px rgba(255,255,255,.05)}.medal-card.unlocked .medal-symbol{background:linear-gradient(145deg,rgba(255,200,87,.25),rgba(47,125,246,.12));filter:drop-shadow(0 8px 18px rgba(255,200,87,.17))}.medal-state{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.055);color:#8193b4;font-size:9px}.medal-state.open{background:rgba(61,220,151,.11);color:#6ae8b5}
.medal-card h3{position:relative;margin:16px 0 8px;font-size:16px}.medal-card p{position:relative;min-height:58px;margin:0;color:#adbedc;font-size:11px;line-height:1.9}.medal-progress-text{position:relative;margin-top:16px;color:#dbe7fb;font-size:11px}.medal-progress{position:relative;height:8px;margin-top:10px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden}.medal-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--cyan),var(--gold));box-shadow:0 0 18px rgba(38,215,255,.3)}.medal-card small{display:block;margin-top:7px;color:var(--muted);font-size:9px}
.market-note{display:flex;align-items:center;gap:17px;margin-top:28px}.market-note h3{margin:0 0 7px}.market-note p{margin:0;color:#b4c3de;line-height:1.9;font-size:11px}.market-note .medal-symbol{flex:0 0 66px}
@media(max-width:1100px){.medal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.medal-market-hero{align-items:flex-start;flex-direction:column}.market-summary{width:100%}}
@media(max-width:620px){.medal-grid{grid-template-columns:1fr}.market-summary{grid-template-columns:1fr 1fr}.market-summary div:last-child{grid-column:1/-1}.medal-card{min-height:255px}.market-note{align-items:flex-start}}

/* Study groups */
.group-hero{min-height:220px;display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(120deg,rgba(12,31,62,.98),rgba(31,37,88,.92)),radial-gradient(circle at 15% 20%,rgba(38,215,255,.16),transparent 36%)}
.group-hero h2{font-size:clamp(25px,3vw,38px);margin:12px 0}.group-hero p{margin:0;color:#b8c8e5;line-height:2;max-width:720px}.group-hero-symbol{width:150px;height:150px;flex:0 0 150px;display:grid;place-items:center;border-radius:45px;background:linear-gradient(145deg,rgba(47,125,246,.32),rgba(38,215,255,.07));border:1px solid rgba(255,255,255,.12);font-size:65px;box-shadow:inset 0 1px rgba(255,255,255,.08),0 20px 55px rgba(0,0,0,.25)}
.group-rank-orb{width:126px;height:126px;flex:0 0 126px;display:grid;place-content:center;text-align:center;border-radius:50%;background:radial-gradient(circle at 35% 25%,rgba(38,215,255,.34),rgba(47,125,246,.20) 48%,rgba(7,16,31,.7));border:1px solid rgba(105,185,255,.35);box-shadow:0 18px 50px rgba(0,0,0,.3),inset 0 0 35px rgba(38,215,255,.08)}.group-rank-orb small{color:#a8c5ef;font-size:10px}.group-rank-orb strong{display:block;font-size:35px;margin-top:4px}
.pending-invite-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.pending-invite-row:last-child{border-bottom:0}.pending-invite-row strong,.pending-invite-row small{display:block}.pending-invite-row small{margin-top:4px;color:var(--muted);font-size:10px;direction:ltr;text-align:right}
.group-members-table{min-width:900px}.creator-label{display:inline-flex;margin-right:7px;padding:4px 8px;border-radius:999px;background:rgba(255,200,87,.13);border:1px solid rgba(255,200,87,.2);color:#ffd77e;font-size:9px;white-space:nowrap}.current-row{background:rgba(47,125,246,.09)!important}.group-danger{display:flex;align-items:center;justify-content:space-between;gap:20px;border-color:rgba(255,95,112,.18)}.group-danger h3{margin:0 0 7px}.group-danger p{margin:0;color:var(--muted);font-size:11px;line-height:1.8}.empty.compact{padding:15px}
.group-leader-summary{display:flex;align-items:center;gap:22px}.group-leader-summary>div:first-child{flex:1}.group-leader-summary span{font-size:10px;color:#8fb8f4}.group-leader-summary h2{margin:6px 0;font-size:25px}.group-leader-summary p{margin:0;color:var(--muted);font-size:11px}
.group-invite-card{display:flex;align-items:center;gap:16px;padding:17px;border:1px solid rgba(47,125,246,.30);border-radius:19px;background:linear-gradient(120deg,rgba(47,125,246,.11),rgba(38,215,255,.035));margin-bottom:12px}.group-invite-card:last-child{margin-bottom:0}.group-invite-icon{width:58px;height:58px;flex:0 0 58px;display:grid;place-items:center;border-radius:18px;background:rgba(47,125,246,.17);font-size:27px}.group-invite-copy{flex:1;min-width:0}.group-invite-copy h3{margin:0 0 7px;font-size:15px}.group-invite-copy p{margin:0;color:#bbc9e1;font-size:11px;line-height:1.9}.group-invite-copy time{display:block;margin-top:7px;color:#7284a5;font-size:9px}.group-invite-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.group-invite-actions form{margin:0}
.readonly-field{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid rgba(255,255,255,.11);border-radius:13px;background:#081427;color:#d9e5f9;font-size:12px}.readonly-field a{color:#7fb2ff;font-size:10px}

/* Distraction-free focus timer and Screen Wake Lock status */
.focus-brand{display:none;position:fixed;top:13px;left:17px;z-index:1005;width:64px;height:64px;padding:5px;border-radius:20px;background:rgba(7,16,31,.70);border:1px solid rgba(255,255,255,.12);box-shadow:0 16px 45px rgba(0,0,0,.35);backdrop-filter:blur(10px);pointer-events:none}.focus-brand img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 7px 13px rgba(47,125,246,.30))}
.wake-lock-status{width:max-content;max-width:100%;margin:13px auto 0;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.045);color:#8799ba;font-size:9px;line-height:1.5}.wake-lock-status[data-mode="active"]{background:rgba(61,220,151,.1);color:#72e9b8}.wake-lock-status[data-mode="warning"]{background:rgba(255,200,87,.1);color:#ffd477}.wake-lock-status[data-mode="unsupported"]{background:rgba(255,95,112,.08);color:#ff9aa6}
body.focus-mode{overflow:hidden}
body.focus-mode:before{content:"";position:fixed;inset:0;z-index:990;background:rgba(3,9,19,.47);backdrop-filter:blur(15px) saturate(.72) brightness(.58);-webkit-backdrop-filter:blur(15px) saturate(.72) brightness(.58)}
body.focus-mode .focus-brand{display:block}
body.focus-mode .menu-btn{display:none!important}
body.focus-mode .timer-card.focus-active{position:fixed;z-index:1000;top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 38px);overflow:auto;margin:0!important;padding:clamp(20px,4vw,36px);border-color:rgba(69,162,255,.42);box-shadow:0 30px 100px rgba(0,0,0,.62),0 0 0 1px rgba(38,215,255,.08),inset 0 0 55px rgba(47,125,246,.045)}
body.focus-mode .timer-card.focus-active:after{opacity:.45}

@media(max-width:820px){
  .group-hero{align-items:flex-start}.group-hero-symbol{width:105px;height:105px;flex-basis:105px;border-radius:31px;font-size:45px}.group-leader-summary{align-items:flex-start;flex-wrap:wrap}.group-leader-summary .group-rank-orb{margin-right:auto}.group-danger{align-items:flex-start;flex-direction:column}.group-invite-card{align-items:flex-start;flex-wrap:wrap}.group-invite-actions{width:100%;padding-right:74px}
}
@media(max-width:520px){
  .group-hero{flex-direction:column}.group-hero-symbol{display:none}.group-rank-orb{width:100px;height:100px;flex-basis:100px}.group-rank-orb strong{font-size:28px}.group-invite-actions{padding-right:0}.group-invite-actions form,.group-invite-actions .btn{flex:1}.group-invite-actions .btn{width:100%;padding:10px 12px}.focus-brand{width:54px;height:54px;left:10px;top:9px;border-radius:17px}body.focus-mode .timer-card.focus-active{width:calc(100vw - 18px);max-height:calc(100vh - 18px);padding:20px 12px}.wake-lock-status{white-space:normal;border-radius:14px}
}


/* Admin user controls */
.user-admin-tools{min-width:300px}.user-admin-tools>summary{list-style:none;cursor:pointer}.user-admin-tools>summary::-webkit-details-marker{display:none}.admin-tools-panel{margin-top:10px;width:min(760px,82vw);padding:14px;border:1px solid var(--line);border-radius:16px;background:#081427;box-shadow:0 18px 55px rgba(0,0,0,.35)}.admin-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-tool-box{padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025)}.admin-tool-box h4{margin:0 0 10px;font-size:13px}.compact-fields{display:grid;grid-template-columns:120px 1fr 1fr;gap:8px}.manual-badge-list{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.manual-badge-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:999px;background:rgba(255,200,87,.11);border:1px solid rgba(255,200,87,.18);font-size:10px}.manual-mark{display:inline-flex;margin-right:6px;padding:3px 7px;border-radius:999px;background:rgba(255,200,87,.12);color:#ffd477;font-size:9px}

/* Support center */
.support-layout{display:grid;grid-template-columns:minmax(250px,340px) minmax(0,1fr);gap:20px}.ticket-list{display:flex;flex-direction:column;gap:9px;max-height:650px;overflow:auto;padding-left:3px}.ticket-item{display:block;padding:14px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025);transition:.2s}.ticket-item:hover,.ticket-item.active{border-color:rgba(47,125,246,.42);background:rgba(47,125,246,.09)}.ticket-item strong,.ticket-item small{display:block}.ticket-item strong{font-size:12px;margin-bottom:7px}.ticket-item small{color:var(--muted);font-size:9px;line-height:1.7}.ticket-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:9px}.support-thread{display:flex;flex-direction:column;gap:12px;max-height:560px;overflow:auto;padding:5px 3px 12px}.support-message{width:min(82%,680px);padding:14px 16px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.04)}.support-message.mine{align-self:flex-start;background:rgba(47,125,246,.13);border-color:rgba(47,125,246,.26)}.support-message.other{align-self:flex-end;background:rgba(255,200,87,.08);border-color:rgba(255,200,87,.16)}.support-message header{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.support-message header strong{font-size:11px}.support-message header time{font-size:9px;color:var(--muted)}.support-message p{margin:0;white-space:pre-wrap;line-height:1.9;color:#d5e0f2;font-size:12px}.support-compose{margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}.ticket-status{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:9px}.ticket-status.open{background:rgba(47,125,246,.13);color:#8cb8ff}.ticket-status.answered{background:rgba(61,220,151,.12);color:#74e8b8}.ticket-status.closed{background:rgba(255,255,255,.07);color:#9baac4}.support-empty{min-height:300px;display:grid;place-items:center;text-align:center;color:var(--muted)}

@media(max-width:1000px){.support-layout{grid-template-columns:1fr}.ticket-list{max-height:320px}.admin-tools-grid{grid-template-columns:1fr}}
@media(max-width:620px){.compact-fields{grid-template-columns:1fr}.admin-tools-panel{width:calc(100vw - 50px)}.support-message{width:94%}}

/* ===== Theme toggle + light theme ===== */
.topbar-actions{margin-right:auto;display:flex;align-items:center;gap:12px}
.theme-toggle{border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--text);border-radius:14px;padding:10px 14px;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:.2s;box-shadow:inset 0 1px rgba(255,255,255,.04)}
.theme-toggle:hover{transform:translateY(-2px);background:rgba(255,255,255,.09)}
.theme-icon{font-size:16px}.theme-text{font-size:11px;color:var(--muted)}
body[data-theme="light"]{--bg:#eef4ff;--panel:#ffffff;--panel2:#f7faff;--line:rgba(25,56,114,.12);--text:#12213f;--muted:#607290;--blue:#2f69f6;--cyan:#15afd7;--gold:#d79a23;--danger:#d94a5f;--success:#23996a;--shadow:0 20px 60px rgba(36,66,122,.12);background:radial-gradient(circle at 8% 10%,rgba(47,105,246,.10),transparent 30%),radial-gradient(circle at 90% 0,rgba(255,198,87,.14),transparent 28%),var(--bg)}
body[data-theme="light"] .sidebar{background:rgba(250,252,255,.88);border-left-color:rgba(25,56,114,.11)}
body[data-theme="light"] .topbar{background:rgba(248,251,255,.84);border-bottom-color:rgba(25,56,114,.11)}
body[data-theme="light"] .card,
body[data-theme="light"] .medal-card,
body[data-theme="light"] .market-next-card{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(246,249,255,.98));border-color:rgba(25,56,114,.10)}
body[data-theme="light"] .hero{background:linear-gradient(115deg,rgba(255,255,255,.98),rgba(236,243,255,.95))}
body[data-theme="light"] input,
body[data-theme="light"] select,
body[data-theme="light"] textarea,
body[data-theme="light"] .readonly-field{background:#fff;color:#12213f;border-color:rgba(25,56,114,.14)}
body[data-theme="light"] table{background:rgba(255,255,255,.9)}
body[data-theme="light"] th{background:rgba(27,60,122,.04);color:#5a6f96}
body[data-theme="light"] tbody tr:hover{background:rgba(27,60,122,.03)}
body[data-theme="light"] .sidebar-user,
body[data-theme="light"] .theme-toggle,
body[data-theme="light"] .medal-state,
body[data-theme="light"] .timer-status{background:rgba(25,56,114,.04)}
body[data-theme="light"] .market-chip,
body[data-theme="light"] .tabs a{background:rgba(25,56,114,.06);color:#3d5277}
body[data-theme="light"] .sidebar nav a{color:#516786}
body[data-theme="light"] .sidebar nav a:hover,
body[data-theme="light"] .sidebar nav a.active{color:#0f1d39}
body[data-theme="light"] .market-category-bar{background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(244,248,255,.98))}
body[data-theme="light"] .market-stat-card,
body[data-theme="light"] .market-categories a{background:rgba(25,56,114,.05);border-color:rgba(25,56,114,.08)}
body[data-theme="light"] .medal-market-hero{background:linear-gradient(120deg,rgba(255,255,255,.98),rgba(237,244,255,.96)),radial-gradient(circle at 15% 20%,rgba(255,200,87,.18),transparent 36%)}
body[data-theme="light"] .medal-market-hero p,
body[data-theme="light"] .market-note p,
body[data-theme="light"] .medal-card p,
body[data-theme="light"] .market-section-title p{color:#5d7091}
body[data-theme="light"] .focus-brand{background:rgba(255,255,255,.75);border-color:rgba(25,56,114,.08)}
body[data-theme="light"] .flash.info{background:rgba(47,125,246,.07);color:#22437f;border-color:rgba(47,125,246,.15)}

/* ===== Medal market redesign ===== */
.market-hero-copy{display:flex;flex-direction:column;gap:10px;max-width:760px}
.market-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:min(100%,420px)}
.market-stat-card{padding:18px;border-radius:20px;background:rgba(255,255,255,.06);border:1px solid var(--line);display:flex;flex-direction:column;gap:6px;backdrop-filter:blur(6px)}
.market-stat-card strong{font-size:28px}.market-stat-card span{font-size:11px;color:var(--muted);line-height:1.9}
.market-chip-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}.market-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--line);font-size:11px;color:#c7d4ec}
.market-category-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:20px 22px}
.market-category-bar h3{margin:0 0 4px}.market-category-bar p{margin:0;color:var(--muted);font-size:11px}
.market-categories{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-start}.market-categories a{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.05);font-size:11px;color:var(--text)}
.market-categories a span{color:var(--gold)}.market-categories a b{min-width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:rgba(47,125,246,.14);font-size:10px}
.market-section{margin-top:24px}
.market-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.market-section-title h2{margin:0;font-size:18px}.market-section-title p{margin:6px 0 0;color:var(--muted);font-size:11px}.market-section-title.compact{margin-bottom:14px}.market-section-meta{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid var(--line);font-size:10px;color:var(--muted)}
.market-next-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.market-next-card{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:22px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(17,31,59,.92),rgba(8,19,38,.96));box-shadow:var(--shadow)}
.market-next-icon{width:64px;height:64px;flex:0 0 64px;border-radius:20px;display:grid;place-items:center;font-size:32px;background:linear-gradient(145deg,rgba(255,200,87,.22),rgba(47,125,246,.10));border:1px solid var(--line)}
.market-next-body{min-width:0;flex:1}.market-next-body h3{margin:0 0 8px;font-size:16px}.market-next-body p{margin:0;color:#b4c3de;font-size:11px;line-height:1.9}.market-next-body small{display:block;margin-top:7px;color:var(--muted);font-size:10px}
.medal-meta-line{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.medal-meta-line b{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(255,200,87,.12);border:1px solid rgba(255,200,87,.2);font-size:9px;color:#ffd473;font-weight:700}
.medal-card{display:flex;flex-direction:column}.medal-card .medal-progress{margin-top:auto}
@media(max-width:1200px){.market-next-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.market-category-bar{flex-direction:column;align-items:flex-start}.market-summary-grid{width:100%}.topbar-actions{margin-right:0;margin-left:auto}}
@media(max-width:820px){.topbar-actions .theme-text{display:none}.theme-toggle{padding:10px 12px}.market-next-grid{grid-template-columns:1fr}.market-next-card{flex-direction:row}.market-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.market-summary-grid{grid-template-columns:1fr}.market-categories a{width:100%;justify-content:space-between}.market-next-card{flex-direction:column}.market-next-icon{width:56px;height:56px;flex-basis:56px}.theme-toggle{min-width:44px;justify-content:center}.medal-card h3{font-size:15px}}

/* ===== Learnzora v8: motion and modern administration ===== */
body[data-page^="admin-"] .content{max-width:1600px}
body[data-page^="admin-"] .card{border-color:rgba(82,132,222,.15)}
body[data-page^="admin-"] .topbar h1:before{content:"⚡";display:inline-block;margin-left:8px;font-size:16px;filter:drop-shadow(0 0 10px rgba(38,215,255,.35))}
.admin-command-hero{min-height:260px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:34px;background:linear-gradient(120deg,rgba(16,38,78,.98),rgba(29,31,82,.94)),radial-gradient(circle at 12% 15%,rgba(38,215,255,.18),transparent 35%);isolation:isolate}
.admin-command-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.035),transparent 65%);transform:translateX(100%);animation:adminShine 7s ease-in-out infinite;pointer-events:none}
.admin-command-copy{max-width:780px;position:relative;z-index:2}.admin-command-copy h2{font-size:clamp(26px,3vw,40px);margin:12px 0}.admin-command-copy p{margin:0;color:#b9cae8;line-height:2;max-width:720px}.admin-command-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.admin-live-label{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(61,220,151,.10);border:1px solid rgba(61,220,151,.2);color:#78eabb;font-size:11px}.admin-live-label i{width:8px;height:8px;border-radius:50%;background:#3ddc97;box-shadow:0 0 0 0 rgba(61,220,151,.5);animation:adminPulse 2s infinite}
.admin-health-ring{--progress:0;position:relative;width:180px;height:180px;flex:0 0 180px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--cyan) calc(var(--progress)*1%),rgba(255,255,255,.07) 0);box-shadow:0 0 70px rgba(38,215,255,.12)}
.admin-health-ring:before{content:"";position:absolute;inset:13px;border-radius:50%;background:linear-gradient(145deg,#0d1c37,#101c38);border:1px solid rgba(255,255,255,.08)}
.admin-health-ring div{position:relative;text-align:center;z-index:1}.admin-health-ring strong{display:block;font-size:34px}.admin-health-ring span{display:block;color:#9bb1d2;font-size:11px;margin-top:5px}
.admin-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin-top:20px}.admin-stat-card{min-height:150px;display:flex;align-items:center;gap:14px;padding:20px;transition:.25s}.admin-stat-card:hover{transform:translateY(-5px);border-color:rgba(38,215,255,.25);box-shadow:0 22px 65px rgba(0,0,0,.32)}.admin-stat-icon{width:52px;height:52px;flex:0 0 52px;display:grid;place-items:center;border-radius:17px;background:linear-gradient(145deg,rgba(47,125,246,.25),rgba(38,215,255,.07));font-size:23px}.admin-stat-card strong{display:block;font-size:26px;white-space:nowrap}.admin-stat-card span{display:block;font-size:11px;color:#c4d1e7;margin-top:5px}.admin-stat-card small{display:block;font-size:9px;color:var(--muted);margin-top:7px;line-height:1.6}
.admin-main-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);gap:20px;margin-top:20px}.admin-chart-card{min-height:390px}.admin-total-pill{display:inline-flex;padding:7px 11px;border-radius:999px;background:rgba(47,125,246,.10);border:1px solid rgba(47,125,246,.18);font-size:10px!important;color:#9fc0ff!important}.admin-chart-bars{height:260px;display:flex;align-items:stretch;gap:12px;padding:18px 4px 4px}.admin-chart-column{flex:1;min-width:38px;display:grid;grid-template-rows:26px 1fr 22px;gap:7px;text-align:center}.admin-chart-value{font-size:9px;color:var(--muted);opacity:0;transition:.2s}.admin-chart-column:hover .admin-chart-value{opacity:1}.admin-chart-track{height:100%;position:relative;border-radius:14px;background:rgba(255,255,255,.035);overflow:hidden;border:1px solid rgba(255,255,255,.035)}.admin-chart-track i{position:absolute;right:0;left:0;bottom:0;height:var(--bar-height);border-radius:12px 12px 7px 7px;background:linear-gradient(to top,var(--blue),var(--cyan));box-shadow:0 0 24px rgba(38,215,255,.23);transform-origin:bottom;animation:adminBarGrow .85s cubic-bezier(.2,.75,.2,1) both;animation-delay:var(--delay)}.admin-chart-column>span{font-size:9px;color:var(--muted)}
.admin-quick-links{display:flex;flex-direction:column;gap:10px}.admin-quick-links a{display:grid;grid-template-columns:46px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:13px;border-radius:17px;background:rgba(255,255,255,.035);border:1px solid var(--line);transition:.22s}.admin-quick-links a:hover{transform:translateX(-4px);border-color:rgba(47,125,246,.35);background:rgba(47,125,246,.08)}.admin-quick-links a>b{width:46px;height:46px;display:grid;place-items:center;border-radius:15px;background:rgba(47,125,246,.12);font-size:20px}.admin-quick-links strong,.admin-quick-links small{display:block}.admin-quick-links strong{font-size:12px}.admin-quick-links small{font-size:9px;color:var(--muted);margin-top:5px}.admin-quick-links i{font-style:normal;color:var(--cyan);font-size:20px}
.admin-activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px}.admin-activity-card{min-height:390px}.admin-mini-list{display:flex;flex-direction:column;gap:8px}.admin-mini-list>a{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px;border-radius:15px;border:1px solid transparent;transition:.2s}.admin-mini-list>a:hover{background:rgba(255,255,255,.035);border-color:var(--line);transform:translateX(-3px)}.admin-mini-list img,.admin-list-icon{width:44px;height:44px;border-radius:14px;object-fit:cover;background:rgba(47,125,246,.12);display:grid;place-items:center}.admin-mini-list strong,.admin-mini-list small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-mini-list strong{font-size:11px}.admin-mini-list small{font-size:9px;color:var(--muted);margin-top:5px}.admin-mini-list time{font-size:9px;color:var(--muted)}
.admin-leader-card{margin-top:20px}.admin-users-card>.card-title{padding-bottom:4px}.admin-filter-bar{grid-template-columns:minmax(220px,1.5fr) minmax(150px,.7fr) auto;align-items:end;margin-bottom:20px;padding:16px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.025)}.admin-filter-bar .btn{height:45px}.admin-users-card tbody tr{transition:.2s}.admin-users-card tbody tr:hover{transform:scale(1.002);background:rgba(47,125,246,.045)}
body[data-page^="admin-"] .table-wrap{box-shadow:inset 0 1px rgba(255,255,255,.02)}body[data-page^="admin-"] th{letter-spacing:.1px}body[data-page^="admin-"] .admin-tools-panel{backdrop-filter:blur(18px)}
.motion-ready .reveal-item{opacity:0;transform:translateY(20px) scale(.985);transition:opacity .55s ease,transform .65s cubic-bezier(.2,.75,.2,1)}.motion-ready .reveal-item.is-visible{opacity:1;transform:none}.flash.flash-hide{opacity:0;transform:translateY(-8px);transition:.35s;pointer-events:none}
@keyframes adminPulse{0%{box-shadow:0 0 0 0 rgba(61,220,151,.45)}70%{box-shadow:0 0 0 10px rgba(61,220,151,0)}100%{box-shadow:0 0 0 0 rgba(61,220,151,0)}}
@keyframes adminShine{0%,55%{transform:translateX(100%)}75%,100%{transform:translateX(-100%)}}
@keyframes adminBarGrow{from{transform:scaleY(0);opacity:.2}to{transform:scaleY(1);opacity:1}}
body[data-theme="light"][data-page^="admin-"] .admin-command-hero{background:linear-gradient(120deg,rgba(255,255,255,.98),rgba(232,240,255,.98)),radial-gradient(circle at 12% 15%,rgba(38,215,255,.16),transparent 35%)}body[data-theme="light"] .admin-command-copy p{color:#5d7091}body[data-theme="light"] .admin-health-ring:before{background:linear-gradient(145deg,#fff,#edf3ff);border-color:rgba(25,56,114,.09)}body[data-theme="light"] .admin-health-ring span{color:#607290}body[data-theme="light"] .admin-stat-card span{color:#435b82}body[data-theme="light"] .admin-chart-track{background:rgba(25,56,114,.04);border-color:rgba(25,56,114,.05)}body[data-theme="light"] .admin-quick-links a,body[data-theme="light"] .admin-filter-bar{background:rgba(25,56,114,.035)}body[data-theme="light"] .admin-tools-panel{background:rgba(255,255,255,.96);box-shadow:0 18px 55px rgba(36,66,122,.18)}body[data-theme="light"] .support-message p{color:#273a5c}
@media(max-width:1450px){.admin-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.admin-main-grid{grid-template-columns:1fr}.admin-activity-grid{grid-template-columns:1fr 1fr}.admin-command-hero{align-items:flex-start}.admin-health-ring{width:150px;height:150px;flex-basis:150px}}
@media(max-width:820px){.admin-command-hero{flex-direction:column;padding:25px}.admin-health-ring{align-self:center}.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-activity-grid{grid-template-columns:1fr}.admin-filter-bar{grid-template-columns:1fr}.admin-chart-bars{gap:7px}.admin-chart-column{min-width:28px}.admin-chart-value{display:none}}
@media(max-width:520px){.admin-stat-grid{grid-template-columns:1fr}.admin-stat-card{min-height:120px}.admin-command-actions .btn{width:100%}.admin-health-ring{width:138px;height:138px;flex-basis:138px}.admin-chart-card{padding:16px}.admin-chart-bars{height:220px}.admin-mini-list>a{grid-template-columns:42px minmax(0,1fr) auto}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.motion-ready .reveal-item{opacity:1;transform:none}}

/* ===== Synthetic/demo accounts admin ===== */
.demo-account-label{display:inline-flex;align-items:center;margin-right:6px;padding:3px 7px;border-radius:999px;background:rgba(255,200,87,.13);border:1px solid rgba(255,200,87,.24);color:#ffd473;font-size:8px;font-weight:700;vertical-align:middle;white-space:nowrap}
body[data-theme="light"] .demo-account-label{color:#8a5b00;background:rgba(215,154,35,.12);border-color:rgba(215,154,35,.24)}
.demo-public-note{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:13px 16px;border-radius:16px;background:rgba(255,200,87,.08);border:1px solid rgba(255,200,87,.17);color:#d8e3f5}
.demo-public-note span{font-size:21px}.demo-public-note p{margin:0;font-size:11px;line-height:1.9}
body[data-theme="light"] .demo-public-note{color:#526785;background:rgba(215,154,35,.08);border-color:rgba(215,154,35,.15)}
.demo-users-callout{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;background:linear-gradient(120deg,rgba(47,125,246,.12),rgba(255,200,87,.07))}
.demo-users-callout strong{font-size:15px}.demo-users-callout p{margin:7px 0 0;color:var(--muted);font-size:11px;line-height:1.8}
.demo-admin-hero{display:flex;align-items:center;justify-content:space-between;gap:26px;min-height:210px;background:linear-gradient(120deg,rgba(18,45,86,.98),rgba(30,30,75,.94)),radial-gradient(circle at 20% 20%,rgba(255,200,87,.17),transparent 38%)}
.demo-admin-hero h2{font-size:clamp(23px,3vw,34px);margin:10px 0}.demo-admin-hero p{max-width:720px;margin:0;color:#b9c9e4;line-height:2;font-size:12px}
.demo-admin-kpis{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px}.demo-admin-kpis div{padding:16px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid var(--line);min-width:130px}.demo-admin-kpis strong,.demo-admin-kpis span{display:block}.demo-admin-kpis strong{font-size:22px}.demo-admin-kpis span{margin-top:6px;color:var(--muted);font-size:10px;line-height:1.7}
.demo-grade-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.demo-grade-card{display:flex;flex-direction:column;gap:7px;padding:17px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid var(--line);transition:.2s}.demo-grade-card:hover{transform:translateY(-3px);border-color:rgba(47,125,246,.36)}.demo-grade-card.complete{box-shadow:inset 3px 0 rgba(61,220,151,.55)}.demo-grade-card.incomplete{box-shadow:inset 3px 0 rgba(255,95,112,.58)}.demo-grade-card div{display:flex;align-items:center;justify-content:space-between;gap:10px}.demo-grade-card div strong{font-size:12px}.demo-grade-card div span{font-size:9px;color:var(--muted)}.demo-grade-card>b{font-size:16px;direction:ltr;text-align:right}.demo-grade-card small{font-size:9px;color:var(--muted)}
body[data-theme="light"] .demo-admin-hero{background:linear-gradient(120deg,rgba(255,255,255,.98),rgba(236,243,255,.98)),radial-gradient(circle at 20% 20%,rgba(255,200,87,.15),transparent 38%)}
body[data-theme="light"] .demo-admin-hero p{color:#607290}body[data-theme="light"] .demo-admin-kpis div,body[data-theme="light"] .demo-grade-card{background:rgba(25,56,114,.04)}
@media(max-width:1100px){.demo-admin-hero{align-items:flex-start;flex-direction:column}.demo-admin-kpis{width:100%}.demo-grade-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.demo-admin-kpis{grid-template-columns:1fr}.demo-grade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.demo-users-callout{align-items:flex-start;flex-direction:column}.demo-users-callout .btn{width:100%}}
@media(max-width:480px){.demo-grade-grid{grid-template-columns:1fr}.demo-public-note{align-items:flex-start}}

/* Timer reliability feedback — v13 */
.timer-actions .btn.is-loading{position:relative;pointer-events:none;opacity:.82}
.timer-actions .btn.is-loading:before{content:"";width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:timer-spin .7s linear infinite}
.warning-box[data-kind="error"]{background:rgba(255,95,112,.10);border-color:rgba(255,95,112,.24);color:#ffd8dd}
.warning-box[data-kind="success"]{background:rgba(61,220,151,.10);border-color:rgba(61,220,151,.24);color:#c8ffe7}
.warning-box[data-kind="info"]{background:rgba(47,125,246,.10);border-color:rgba(47,125,246,.22);color:#d9e8ff}
@keyframes timer-spin{to{transform:rotate(360deg)}}
body[data-theme="light"] .warning-box[data-kind="error"]{color:#8c2436}
body[data-theme="light"] .warning-box[data-kind="success"]{color:#176c4b}
body[data-theme="light"] .warning-box[data-kind="info"]{color:#244b91}

/* Jalali birthday selector — v14 */
.jalali-date-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:10px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025);transition:.2s}
.jalali-date-grid:focus-within,.jalali-date-grid.is-complete{border-color:rgba(47,125,246,.45);box-shadow:0 0 0 3px rgba(47,125,246,.08)}
.jalali-date-grid select{min-width:0;text-align:center;text-align-last:center}
.jalali-current-value{display:block;margin-top:7px;color:var(--cyan)}
body[data-theme="light"] .jalali-date-grid{background:rgba(25,56,114,.025)}
@media(max-width:520px){.jalali-date-grid{grid-template-columns:1fr}.jalali-date-grid select{text-align:right;text-align-last:auto}}
