*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#000000;--sb:#050507;--card:#0c0c10;--card2:#15151a;--bd:#1f1f26;
  --t1:#ededf0;--t2:#74747c;--t3:#4a4a52;
  --ac:#ededf0;--ac2:rgba(237,237,240,.06);
  --gr:#4ade80;--rd:#f87171;--yw:#fbbf24;
  /* === GLOWS (off-white discreto, neon só funcional) === */
  --gl-ac-s:0 0 6px rgba(237,237,240,.12);
  --gl-ac-m:0 0 8px rgba(237,237,240,.18);
  --gl-ac-l:0 0 10px rgba(237,237,240,.22), 0 0 18px rgba(237,237,240,.1);
  --gl-gr-s:0 0 6px rgba(74,222,128,.18);
  --gl-gr-m:0 0 8px rgba(74,222,128,.25);
  --gl-gr-l:0 0 10px rgba(74,222,128,.28), 0 0 18px rgba(74,222,128,.14);
  --gl-rd-s:0 0 6px rgba(248,113,113,.16);
  --gl-rd-m:0 0 8px rgba(248,113,113,.22);
  --gl-rd-l:0 0 10px rgba(248,113,113,.26), 0 0 18px rgba(248,113,113,.12);
  --gl-yw-s:0 0 6px rgba(251,191,36,.14);
  --gl-yw-m:0 0 8px rgba(251,191,36,.22);
}
/* Primary buttons (white bg + black text): SVG icons herdam a cor do texto */
.btn-add svg,.lf-btn svg,.btn.btn-p svg,.bsm.p svg,.tab.act svg,.calc-yr-tab.act svg{stroke:currentColor!important}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg);color:var(--t1);font-size:13px;height:100vh;overflow:hidden}
#login-wrap{display:flex;align-items:center;justify-content:center;width:100%;height:100vh;padding:20px;background:radial-gradient(ellipse at top,#0a0a0d 0%,var(--bg) 60%)}
.login-card{background:var(--sb);border:1px solid var(--bd);border-radius:14px;padding:30px;width:100%;max-width:380px;box-shadow:0 20px 60px rgba(0,0,0,.4)}
.login-head{display:flex;flex-direction:column;align-items:center;margin-bottom:20px}
.login-mark{width:134px;height:134px;background:transparent;border:none;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;overflow:hidden}
.login-mark-anim{width:auto;height:auto;flex-direction:column;gap:10px;margin-bottom:18px;overflow:visible}
.login-mark-anim .splash-letter{font-size:42px;letter-spacing:.05em;text-shadow:0 0 12px rgba(237,237,240,.22), 0 0 24px rgba(237,237,240,.1)}
.login-mark-anim .splash-underline{height:1px;width:0;background:#ededf0;opacity:0;animation:loginLine .8s cubic-bezier(.2,.7,.3,1) 1.1s forwards;box-shadow:0 0 8px rgba(237,237,240,.35)}
@keyframes loginLine{0%{width:0;opacity:0}40%{opacity:1}100%{width:140px;opacity:1}}
.login-title{font-size:18px;font-weight:700;margin-bottom:4px}
.login-sub{font-size:12px;color:var(--t2)}
.tabs{display:flex;gap:4px;background:var(--card);padding:4px;border-radius:9px;margin-bottom:18px}
.tab{flex:1;padding:7px;font-size:12px;color:var(--t2);background:none;border:none;cursor:pointer;border-radius:7px;font-weight:500}
.tab.act{background:var(--ac);color:#000}
.lf-group{margin-bottom:12px}
.lf-label{font-size:11px;color:var(--t2);margin-bottom:5px;text-transform:uppercase;letter-spacing:.05em;font-weight:500}
.lf-input,.lf-select,.lf-textarea{width:100%;background:var(--card);border:1px solid var(--bd);border-radius:8px;color:var(--t1);padding:9px 11px;font-size:13px;outline:none;font-family:inherit}
.lf-input:focus,.lf-select:focus,.lf-textarea:focus{border-color:var(--ac)}
.lf-textarea{resize:vertical;min-height:60px}
.lf-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235f5f80' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}
.lf-select option{background:#1a1a22}
.lf-btn{width:100%;background:var(--ac);color:#000;border:none;border-radius:8px;padding:11px;font-size:13px;font-weight:600;cursor:pointer;margin-top:6px}
.lf-btn:hover{opacity:.9}
.lf-btn:disabled{opacity:.5;cursor:wait}
.lf-error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:9px 11px;border-radius:7px;font-size:11px;margin-bottom:12px;display:none;line-height:1.5}
.lf-error.show{display:block}
.lf-success{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:#86efac;padding:9px 11px;border-radius:7px;font-size:11px;margin-bottom:12px;display:none;line-height:1.5}
.lf-success.show{display:block}
.lf-hint{margin-top:14px;padding-top:14px;border-top:1px solid var(--bd);font-size:11px;color:var(--t2);text-align:center;line-height:1.5}
.lf-legal{margin-top:14px;text-align:center;font-size:10.5px;color:var(--t3);display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap}
.lf-legal a{color:var(--t2);text-decoration:none;transition:color .15s}
.lf-legal a:hover{color:var(--ac);text-decoration:underline}
.lf-legal span{opacity:.5}

.pf-danger-zone{margin-top:24px;padding:16px;border:1px solid var(--rd);border-radius:8px;background:rgba(239,68,68,.03)}
.pf-dz-title{font-size:11.5px;font-weight:700;color:var(--rd);text-transform:uppercase;letter-spacing:.6px;margin-bottom:8px}
.pf-dz-desc{font-size:11.5px;color:var(--t2);margin-bottom:14px;line-height:1.55}
.pf-dz-btn{background:transparent;color:var(--rd);border:1px solid var(--rd);width:100%}
.pf-dz-btn:hover{background:var(--rd);color:#fff}

.lf-terms{margin:4px 0 10px}
.lf-terms-lbl{display:flex;align-items:flex-start;gap:9px;cursor:pointer;font-size:11.5px;color:var(--t2);line-height:1.5}
.lf-terms-chk{flex-shrink:0;margin-top:2px;width:14px;height:14px;accent-color:var(--ac);cursor:pointer}
.lf-terms-lbl a{color:var(--ac);text-decoration:underline;text-underline-offset:2px}
.lf-terms-lbl a:hover{opacity:.8}
#app-wrap{display:none;width:100%;height:100vh;overflow:hidden}
#app-wrap.show{display:flex}
.sb{width:230px;min-width:230px;background:var(--sb);border-right:1px solid var(--bd);display:flex;flex-direction:column;overflow:hidden}
.sb-top{padding:13px;border-bottom:1px solid var(--bd);display:flex;align-items:center}
.logo{display:flex;align-items:center;gap:9px;font-weight:600;font-size:12px;line-height:1.25}
.logo-mark{width:32px;height:32px;background:transparent;border:none;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}
.logo-axis{padding:4px 0;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.logo-axis-text{font-size:18px;font-weight:600;letter-spacing:.18em;color:var(--t1);text-shadow:0 0 10px rgba(237,237,240,.18)}
.logo-axis-line{height:1px;width:48px;background:#ededf0;box-shadow:0 0 6px rgba(237,237,240,.4)}
.sbox-wrap{padding:9px 13px;border-bottom:1px solid var(--bd)}
.sbox{display:flex;align-items:center;gap:6px;background:var(--card);border:1px solid var(--bd);border-radius:7px;padding:6px 9px}
.sbox input{background:none;border:none;outline:none;color:var(--t2);font-size:11.5px;width:100%}
.sb-nav{flex:1;overflow-y:auto;padding:4px 0}
.ns{font-size:9.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--t2);padding:10px 13px 3px;display:flex;align-items:center;gap:6px}
.ns .admin-tag{background:rgba(245,158,11,.15);color:var(--yw);padding:1px 5px;border-radius:3px;font-size:8.5px;font-weight:600}
.ni{display:flex;align-items:center;gap:9px;padding:7px 13px;font-size:12px;color:var(--t2);cursor:pointer;border-left:2px solid transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ni:hover{background:var(--card);color:var(--t3)}
.ni.act{background:var(--ac2);color:var(--t1);border-left-color:var(--ac)}
.ni svg{flex-shrink:0;opacity:.65}.ni.act svg{opacity:1}
.dot{width:7px;height:7px;border-radius:2px;flex-shrink:0}
.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}
.tbar{display:flex;align-items:center;padding:0 20px;height:46px;border-bottom:1px solid var(--bd);gap:4px;font-size:12.5px;color:var(--t2);flex-shrink:0}
.tbar-sep{color:var(--bd);margin:0 1px}
.tbar-r{margin-left:auto;display:flex;align-items:center;gap:10px;position:relative}
.av{width:27px;height:27px;border-radius:50%;background:linear-gradient(135deg,#5b6fff,#7c5bff);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;color:#fff;cursor:pointer}
.av.admin{background:linear-gradient(135deg,#f59e0b,#ef4444)}
.user-drop{position:absolute;right:0;top:38px;background:#1c1c26;border:1px solid var(--bd);border-radius:10px;min-width:240px;z-index:100;box-shadow:0 12px 32px rgba(0,0,0,.5);padding:6px}
.ud-info{padding:11px 13px}
.ud-name{font-size:13px;font-weight:600;margin-bottom:2px}
.ud-email{font-size:11px;color:var(--t2)}
.ud-role-line{margin-top:7px;font-size:11px;color:var(--t3)}
.ud-sep{height:1px;background:var(--bd);margin:5px 0}
.ud-btn{width:100%;display:flex;align-items:center;gap:9px;padding:8px 13px;background:none;border:none;color:var(--t3);font-size:12.5px;cursor:pointer;border-radius:6px;text-align:left}
.ud-btn:hover{background:var(--bd);color:var(--t1)}
.ud-btn.danger:hover{color:var(--rd)}
.cnt{flex:1;overflow-y:auto;padding:22px}
::-webkit-scrollbar{width:3px}::-webkit-scrollbar-thumb{background:var(--bd);border-radius:2px}::-webkit-scrollbar-track{background:transparent}
.page{display:none}.page.act{display:block}
.ph{margin-bottom:18px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.ph-l .pt{font-size:19px;font-weight:700;margin-bottom:2px;display:flex;align-items:center;gap:8px}
.ph-l .ps{font-size:12px;color:var(--t2)}
.admin-pill{font-size:9.5px;padding:2px 7px;border-radius:4px;font-weight:600;background:rgba(245,158,11,.15);color:var(--yw);text-transform:uppercase;letter-spacing:.04em}
.back-crumb{font-size:11.5px;color:var(--t2);cursor:pointer;display:flex;align-items:center;gap:4px;margin-bottom:6px;width:fit-content}
.back-crumb:hover{color:var(--t3)}
.btn-add{display:flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;background:var(--ac);border:none;color:#000;font-size:12px;font-weight:500;cursor:pointer;flex-shrink:0}
.btn-add:hover{opacity:.88}
.read-only-pill{font-size:10.5px;color:var(--t2);background:var(--card2);padding:4px 9px;border-radius:5px;border:1px solid var(--bd)}
.card{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:17px}
.ct{font-size:12.5px;font-weight:600;margin-bottom:14px}
.flist{background:var(--card);border:1px solid var(--bd);border-radius:10px;overflow:visible}
.fempty{padding:36px;text-align:center;color:var(--t2);font-size:12.5px;line-height:1.6}
.fitem{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(37,37,48,.5)}
.fitem:last-child{border-bottom:none}
.fitem:hover{background:var(--card2)}
.fic{width:34px;height:34px;background:var(--card2);border:1px solid var(--bd);border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fname{flex:1;font-size:13px;color:var(--t1);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fname.link{cursor:pointer}.fname.link:hover{color:var(--ac)}
.fdate{font-size:11px;color:var(--t2);flex-shrink:0;margin-right:8px;min-width:150px;text-align:right}
.fmenu-wrap{position:relative;flex-shrink:0}
.fmenu-btn{width:26px;height:26px;border-radius:5px;border:none;background:transparent;color:var(--t2);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:1}
.fmenu-btn:hover{background:var(--bd);color:var(--t1)}
.fmenu-drop{position:fixed;background:#1a1a24;border:1px solid var(--bd);border-radius:10px;padding:5px;min-width:155px;z-index:500;box-shadow:0 10px 32px rgba(0,0,0,.7)}
.fmi{display:flex;align-items:center;gap:8px;padding:7px 10px;font-size:12px;color:var(--t3);cursor:pointer;border-radius:5px}
.fmi:hover{background:var(--bd);color:var(--t1)}
.fmi.del:hover{color:var(--rd)}
.add-form{background:var(--card2);border:1px dashed rgba(91,111,255,.4);border-radius:9px;padding:13px;margin-bottom:12px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.add-form input{flex:1;min-width:160px;background:var(--card);border:1px solid var(--bd);border-radius:7px;color:var(--t1);padding:7px 11px;font-size:12.5px;outline:none}
.add-form input:focus{border-color:var(--ac)}
.bsm{padding:6px 13px;border-radius:7px;border:1px solid var(--bd);background:var(--card);color:var(--t3);font-size:12px;cursor:pointer}
.bsm:hover{border-color:var(--ac);color:var(--t1)}
.bsm.p{background:var(--ac);border-color:var(--ac);color:#000}.bsm.p:hover{opacity:.88}
.bsm.danger{border-color:var(--rd);color:var(--rd)}.bsm.danger:hover{background:rgba(239,68,68,.08)}
.filters{display:flex;gap:9px;margin-bottom:16px;flex-wrap:wrap;align-items:center}
select.fl{appearance:none;background:var(--card);border:1px solid var(--bd);border-radius:7px;color:var(--t1);padding:7px 26px 7px 11px;font-size:11.5px;outline:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%235f5f80' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;min-width:130px}
.fl-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;background:var(--card);border:1px solid var(--bd);border-radius:7px;color:var(--t2);cursor:pointer;padding:0;transition:border-color .15s,color .15s}
.fl-icon-btn:hover{border-color:var(--ac);color:var(--ac)}
.ro-yr-hdr{font-size:11.5px;color:var(--t3);text-transform:uppercase;letter-spacing:.6px;margin:14px 0 6px;font-weight:600}
.ro-yr-hdr:first-child{margin-top:4px}
.ro-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--bd);border-radius:7px;background:var(--card2);margin-bottom:5px}
.ro-name{flex:1;font-size:12.5px;color:var(--t1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ro-btns{display:flex;gap:5px;flex-shrink:0}
.ro-btn{width:28px;height:28px;background:var(--card);border:1px solid var(--bd);border-radius:6px;color:var(--t1);font-size:13px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:border-color .15s,color .15s,background .15s}
.ro-btn:hover:not(:disabled){border-color:var(--ac);color:var(--ac)}
.ro-btn:disabled{opacity:.35;cursor:not-allowed}
.btn-report{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--bd);color:var(--t3);padding:4px 10px;border-radius:6px;font-size:11px;cursor:pointer;font-weight:500;transition:border-color .15s,color .15s}
.btn-report:hover{border-color:var(--rd);color:var(--rd)}
.btn-bookmark{margin-left:auto;display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--bd);color:var(--t3);padding:4px 10px;border-radius:6px;font-size:11px;cursor:pointer;font-weight:500;transition:border-color .15s,color .15s}
.btn-bookmark:hover{border-color:var(--ac);color:var(--ac)}
.report-cats{display:flex;flex-direction:column;gap:7px;margin-top:6px}
.report-cat{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--bd);border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s;background:var(--card2)}
.report-cat:hover{border-color:var(--ac)}
.report-cat input[type=radio]{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:1.5px solid var(--bd);border-radius:50%;background:var(--card);cursor:pointer;position:relative;flex-shrink:0;margin:0}
.report-cat:hover input[type=radio]{border-color:var(--ac)}
.report-cat input[type=radio]:checked{border-color:var(--ac);background:var(--ac)}
.report-cat input[type=radio]:checked::after{content:'';position:absolute;top:3px;left:3px;width:6px;height:6px;border-radius:50%;background:#fff}
.report-cat span{font-size:12.5px;color:var(--t1)}
.report-cat:has(input:checked){border-color:var(--ac);background:rgba(91,111,255,.08)}
.report-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--rd);color:#fff;font-size:10.5px;font-weight:700;margin-left:6px}
.rep-card{padding:16px;margin-bottom:12px}
.rep-hdr{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}
.rep-cat{display:inline-flex;align-items:center;padding:3px 9px;border-radius:6px;color:#fff;font-size:10.5px;font-weight:600}
.rep-stat{display:inline-flex;align-items:center;padding:3px 9px;border-radius:6px;font-size:10.5px;font-weight:600}
.rep-stat-p{background:rgba(245,158,11,.15);color:var(--yw)}
.rep-stat-r{background:rgba(34,197,94,.15);color:var(--gr)}
.rep-stat-d{background:rgba(150,150,170,.15);color:var(--t3)}
.rep-meta{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}
.rep-q{font-size:12.5px;color:var(--t1);line-height:1.55;padding:10px 12px;background:var(--card2);border-radius:6px;border-left:3px solid var(--bd);margin-bottom:10px}
.rep-comment{font-size:12px;color:var(--t2);padding:8px 12px;background:rgba(91,111,255,.05);border-radius:6px;margin-bottom:10px;border-left:3px solid var(--ac)}
.rep-comment strong{color:var(--t1);font-weight:600}
.rep-act{display:flex;gap:8px;flex-wrap:wrap}
select.fl option{background:#1a1a22}
select.fl:disabled{opacity:.4;cursor:not-allowed}
.qcard{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:22px;position:relative}
.q-meta{display:flex;gap:7px;margin-bottom:13px;flex-wrap:wrap;align-items:center}
.tag{font-size:10.5px;padding:3px 8px;border-radius:5px;border:1px solid var(--bd);color:var(--t2);background:var(--card2)}
.tag-ac{border-color:rgba(91,111,255,.3);color:#8899ff;background:rgba(91,111,255,.08)}
.q-admin-acts{margin-left:auto;display:flex;gap:5px}
.q-num{font-size:11px;color:var(--t2);margin-bottom:6px}
.q-txt{font-size:13px;line-height:1.72;color:var(--t1);margin-bottom:17px;white-space:pre-wrap}
.alts{display:flex;flex-direction:column;gap:7px}
.alt{display:flex;align-items:flex-start;gap:11px;padding:10px 13px;border:1px solid var(--bd);border-radius:9px;cursor:pointer;font-size:12.5px;line-height:1.52;color:var(--t3);white-space:pre-wrap;position:relative}
.alt-cut{flex-shrink:0;width:22px;height:22px;background:transparent;border:none;color:var(--t2);opacity:.3;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;border-radius:5px;margin-top:-1px;transition:opacity .15s,color .15s,background .15s}
.alt:hover .alt-cut{opacity:.7}
.alt-cut:hover{opacity:1!important;color:var(--ac);background:var(--bd)}
.alt.crossed{opacity:.5}
.alt.crossed .alt-txt{text-decoration:line-through;text-decoration-color:var(--rd);text-decoration-thickness:1.5px}
.alt.crossed .alt-cut{opacity:1;color:var(--rd)}
.alt-txt{flex:1;min-width:0}
.alt:hover{border-color:rgba(91,111,255,.4);background:rgba(91,111,255,.04);color:var(--t1)}
.alt.sel{border-color:var(--ac);background:var(--ac2);color:var(--t1)}
.alt.ok{border-color:var(--gr);background:rgba(34,197,94,.09);color:var(--t1)}
.alt.bad{border-color:var(--rd);background:rgba(239,68,68,.09);color:var(--t1)}
.alt-b{width:21px;height:21px;border-radius:50%;border:1.5px solid var(--bd);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex-shrink:0;margin-top:1px;color:var(--t2)}
.alt.sel .alt-b{background:var(--ac);border-color:var(--ac);color:#000}
.alt.ok .alt-b{background:var(--gr);border-color:var(--gr);color:#04200e}
.alt.bad .alt-b{background:var(--rd);border-color:var(--rd);color:#1f0404}
.q-act{display:flex;justify-content:space-between;align-items:center;margin-top:17px;flex-wrap:wrap;gap:8px}
.btn{padding:7px 15px;border-radius:7px;border:1px solid var(--bd);background:var(--card2);color:var(--t3);font-size:12px;cursor:pointer}
.btn:hover{border-color:var(--ac);color:var(--t1)}
.btn:disabled{opacity:.35;cursor:default}
.btn-p{background:var(--ac);border-color:var(--ac);color:#000}.btn-p:hover{opacity:.88}
.bg{display:flex;gap:7px}
.sgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:18px}
.scard{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:15px}
.sl{font-size:10.5px;color:var(--t2);margin-bottom:6px}
.sv{font-size:26px;font-weight:700;line-height:1}
.sv.gr{color:var(--gr)}.sv.rd{color:var(--rd)}.sv.ac{color:var(--ac)}.sv.yw{color:var(--yw)}
.ssub{font-size:10.5px;color:var(--t2);margin-top:3px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.br-row{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.br-lbl{font-size:11.5px;color:var(--t2);width:160px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.br-track{flex:1;height:5px;background:var(--card2);border-radius:3px;overflow:hidden}
.br-fill{height:100%;border-radius:3px;background:var(--ac)}.br-fill.gr{background:var(--gr)}.br-fill.yw{background:var(--yw)}
.br-pct{font-size:11px;color:var(--t3);width:36px;text-align:right;flex-shrink:0}
.htbl{width:100%;border-collapse:collapse}
.htbl th{font-size:10.5px;color:var(--t2);text-align:left;padding:8px 10px;border-bottom:1px solid var(--bd);font-weight:500;text-transform:uppercase;letter-spacing:.05em}
.htbl td{font-size:11.5px;padding:11px 10px;border-bottom:1px solid rgba(37,37,48,.5);color:var(--t3)}
.htbl tr:last-child td{border-bottom:none}
.user-cell{display:flex;align-items:center;gap:9px}
.user-cell .av{cursor:default;width:28px;height:28px;font-size:10px}
.un-name{color:var(--t1);font-weight:500}
.un-email{font-size:10.5px;color:var(--t2)}
.turma-warn-badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:500;color:var(--yw);background:rgba(245,158,11,.10);border:1px solid rgba(245,158,11,.28);padding:5px 10px;border-radius:7px;cursor:pointer;user-select:none;transition:all .15s}
.turma-warn-badge svg{flex-shrink:0;opacity:.95}
.turma-warn-badge:hover{background:rgba(245,158,11,.18);color:#fbbf24;border-color:rgba(245,158,11,.45)}
.badge{display:inline-block;font-size:10.5px;padding:2px 7px;border-radius:4px;font-weight:500}
.badge.gr{background:rgba(34,197,94,.1);color:var(--gr)}.badge.rd{background:rgba(239,68,68,.1);color:var(--rd)}.badge.yw{background:rgba(245,158,11,.1);color:var(--yw)}.badge.bl{background:rgba(91,111,255,.12);color:#8899ff}
.act-btns{display:flex;gap:6px}
.act-btn{padding:5px 9px;border-radius:5px;border:1px solid var(--bd);background:var(--card2);color:var(--t3);font-size:10.5px;cursor:pointer}
.act-btn:hover{border-color:var(--ac);color:var(--t1)}
.act-btn.del:hover{border-color:var(--rd);color:var(--rd)}
.act-btn.promote:hover{border-color:var(--yw);color:var(--yw)}
.tlbl{font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--t2);text-align:center;margin-bottom:14px}
.tdisp{font-size:68px;font-weight:200;letter-spacing:5px;font-variant-numeric:tabular-nums;text-align:center;line-height:1;margin-bottom:24px}
.tdisp.run{color:var(--ac)}.tdisp.pau{color:var(--yw)}
.tcfg{display:flex;justify-content:center;gap:8px;margin-bottom:18px}
.tig{display:flex;flex-direction:column;align-items:center;gap:4px}
.tig label{font-size:9.5px;color:var(--t2);text-transform:uppercase}
.tig input{width:58px;background:var(--card2);border:1px solid var(--bd);border-radius:7px;color:var(--t1);padding:6px;font-size:13px;text-align:center;outline:none;font-variant-numeric:tabular-nums}
.tcolon{font-size:22px;color:var(--t2);margin-top:17px}
.tctrl{display:flex;gap:9px;justify-content:center;margin-bottom:18px}
.tbtn{padding:8px 22px;border-radius:8px;border:1px solid var(--bd);background:var(--card2);color:var(--t1);font-size:12px;cursor:pointer;min-width:95px}
.tbtn:hover{border-color:var(--ac)}
.tbtn.start{background:var(--ac);border-color:var(--ac);color:#000}.tbtn.start:hover{opacity:.88}
.tbtn.stop{background:rgba(239,68,68,.08);border-color:var(--rd);color:var(--rd)}
.srow{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid rgba(37,37,48,.5);font-size:11.5px}
.srow:last-child{border-bottom:none}
.chart-svg text{font-family:inherit;font-size:9.5px;fill:var(--t2)}
.loader{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--t2);font-size:13px}
.spinner{width:18px;height:18px;border:2px solid var(--bd);border-top-color:var(--ac);border-radius:50%;animation:spin .8s linear infinite;margin-right:9px}
@keyframes spin{to{transform:rotate(360deg)}}
.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);z-index:1000;display:none;align-items:center;justify-content:center;padding:20px}
.modal-overlay.show{display:flex}
.modal{background:var(--card);border:1px solid var(--bd);border-radius:12px;padding:24px;max-width:580px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.modal-title{font-size:16px;font-weight:600;margin-bottom:4px}
.modal-sub{font-size:12px;color:var(--t2);margin-bottom:18px}
.mf{margin-bottom:12px}
.mf label{font-size:11px;color:var(--t2);margin-bottom:5px;display:block;text-transform:uppercase;letter-spacing:.04em;font-weight:500}
.mf-row{display:flex;gap:9px}
.mf-row .mf{flex:1}
.modal-acts{display:flex;gap:8px;justify-content:flex-end;margin-top:18px;padding-top:14px;border-top:1px solid var(--bd)}
.vfd-row{display:flex;align-items:center;gap:14px;padding:10px 13px;border:1px solid var(--bd);border-radius:9px;margin-bottom:7px;font-size:12.5px;line-height:1.52;color:var(--t3);white-space:pre-wrap}
.vfd-row.ok{border-color:var(--gr);background:rgba(34,197,94,.09);color:var(--t1)}
.vfd-row.bad{border-color:var(--rd);background:rgba(239,68,68,.09);color:var(--t1)}
.vfd-stmt{flex:1;min-width:0}
.vfd-radios{display:flex;gap:10px;flex-shrink:0}
.vfd-radios label{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:11.5px;color:var(--t2);user-select:none}
.vfd-radios label input[type=radio]{appearance:none;-webkit-appearance:none;width:15px;height:15px;border:1.5px solid var(--bd);border-radius:50%;background:var(--card2);cursor:pointer;position:relative;margin:0;transition:border-color .15s}
.vfd-radios label input[type=radio]:hover{border-color:var(--ac)}
.vfd-radios label input[type=radio]:checked{border-color:var(--ac);background:var(--card2)}
.vfd-radios label input[type=radio]:checked::after{content:'';position:absolute;inset:3px;border-radius:50%;background:var(--ac)}
.vfd-radios label input[type=radio]:disabled{opacity:.55;cursor:default}
.vfd-radios label.disabled{cursor:default;opacity:.85}
.vfd-res{font-size:11px;color:var(--t2);flex-shrink:0;min-width:90px;text-align:right}
.vfd-res b{color:var(--t1)}
.vfd-edit-row{display:flex;gap:8px;margin-bottom:7px;align-items:center}
.vfd-edit-row input.vfd-edit-input{flex:1;background:var(--card2);border:1px solid var(--bd);border-radius:7px;color:var(--t1);padding:7px 10px;font-size:12.5px;outline:none}
.vfd-edit-row input.vfd-edit-input:focus{border-color:var(--ac)}
.vfd-edit-vf{display:flex;gap:6px;flex-shrink:0}
.vfd-edit-vf label{display:flex;align-items:center;gap:3px;cursor:pointer;font-size:11px;color:var(--t2);padding:4px 7px;border:1px solid var(--bd);border-radius:6px}
.vfd-edit-vf label.sel{border-color:var(--gr);background:rgba(34,197,94,.09);color:var(--t1)}
.alt-opt{display:flex;align-items:center;gap:9px;margin-bottom:8px}
.alt-opt-letter{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--bd);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--t2);flex-shrink:0;cursor:pointer}
.alt-opt-letter.ok{background:var(--gr);border-color:var(--gr);color:#04200e}
.alt-rm{background:none;border:none;color:var(--t3);cursor:pointer;font-size:18px;padding:0 6px;line-height:1;flex-shrink:0;transition:color .15s}
.alt-rm:hover{color:var(--rd)}
.alt-add{margin-top:6px;background:transparent;border:1px dashed var(--bd);color:var(--t2);padding:7px 14px;border-radius:7px;font-size:11.5px;cursor:pointer;font-weight:500;transition:border-color .15s,color .15s}
.alt-add:hover{border-color:var(--ac);color:var(--ac)}
.alt-opt textarea{flex:1;background:var(--card2);border:1px solid var(--bd);border-radius:7px;color:var(--t1);padding:7px 10px;font-size:12.5px;outline:none;resize:vertical;min-height:38px;font-family:inherit}
.alt-opt textarea:focus{border-color:var(--ac)}
.correct-hint{font-size:11px;color:var(--t2);margin-bottom:8px}
/* Upload drop zone */
.drop-zone{border:2px dashed var(--bd);border-radius:10px;padding:28px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:12px;background:var(--card2)}
.drop-zone:hover,.drop-zone.drag-over{border-color:var(--ac);background:rgba(91,111,255,.05)}
.drop-zone svg{opacity:.4;margin-bottom:8px}
.drop-zone-txt{font-size:12.5px;color:var(--t2);line-height:1.6}
.drop-zone-txt strong{color:var(--ac);cursor:pointer}
.upload-prog{background:var(--card2);border:1px solid var(--bd);border-radius:9px;padding:13px;margin-bottom:12px}
.prog-name{font-size:12.5px;color:var(--t1);margin-bottom:8px;display:flex;align-items:center;gap:8px}
.prog-bar-wrap{height:4px;background:var(--bd);border-radius:2px;overflow:hidden}
.prog-bar-fill{height:100%;background:var(--ac);border-radius:2px;transition:width .3s}
.prog-status{font-size:11px;color:var(--t2);margin-top:5px}

/* ===== CARDS DE DISCIPLINA ===== */
.subj-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.subj-card{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:18px;cursor:pointer;position:relative;transition:transform .18s,box-shadow .18s,border-color .18s;overflow:hidden}
.subj-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--g,linear-gradient(90deg,var(--ac),var(--ac)));border-radius:14px 14px 0 0;filter:saturate(.55) brightness(.92);opacity:.82}
.subj-card::after{content:'';position:absolute;top:-60px;right:-60px;width:140px;height:140px;background:radial-gradient(circle,var(--c,var(--ac)) 0%,transparent 70%);opacity:.06;pointer-events:none;transition:opacity .2s}
.subj-card:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(0,0,0,.35);border-color:var(--c,var(--ac))}
.subj-card:hover::after{opacity:.12}
.subj-card-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.subj-icon{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;background:rgba(255,255,255,.06)}
.subj-card-info{flex:1;min-width:0}
.subj-card-name{font-size:13.5px;font-weight:600;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}
.subj-card-meta{font-size:11px;color:var(--t2)}
.subj-prog-wrap{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.subj-prog-bar{flex:1;height:4px;background:var(--card2);border-radius:2px;overflow:hidden}
.subj-prog-fill{height:100%;border-radius:2px;background:var(--c,var(--ac));transition:width .6s}
.subj-prog-pct{font-size:10.5px;color:var(--t2);width:28px;text-align:right;flex-shrink:0}
.subj-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:10px;border-top:1px solid rgba(37,37,48,.5)}
.subj-card-arrow{font-size:14px;color:var(--c,var(--ac));opacity:0;transform:translateX(-4px);transition:opacity .18s,transform .18s}
.subj-card:hover .subj-card-arrow{opacity:1;transform:translateX(0)}
/* ===== ITEMS DENTRO DE DISCIPLINA ===== */
.items-section-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--t2);margin-bottom:10px;font-weight:500}
.items-folder-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:10px}
.item-folder-card{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:14px;cursor:pointer;position:relative;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.item-folder-card:hover{transform:translateY(-2px);border-color:var(--ac);box-shadow:0 4px 16px rgba(0,0,0,.3)}
.item-folder-card.drop-target{border-style:dashed;border-color:var(--gr);background:rgba(34,197,94,.04)}
.item-file-row[draggable=true]{cursor:grab}
.item-file-row[draggable=true]:active{cursor:grabbing}
/* === CALCULADORA === */
.calc-year-tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}
.calc-yr-tab{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:var(--card);border:1px solid var(--bd);border-radius:9px;color:var(--t2);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .15s}
.calc-yr-tab .dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.calc-yr-tab:hover{border-color:var(--ac);color:var(--t1)}
.calc-yr-tab.act{background:var(--ac);border-color:var(--ac);color:#000;box-shadow:0 4px 16px rgba(237,237,240,.18)}
.calc-yr-tab.act .dot{background:#fff!important}

.calc-banner{position:relative;background:linear-gradient(135deg,var(--card),var(--card2));border:1px solid var(--bd);border-radius:14px;padding:22px 24px;margin-bottom:18px;overflow:hidden;transition:border-color .3s,box-shadow .3s}
.calc-banner.good{border-color:rgba(34,197,94,.3);box-shadow:0 0 14px rgba(34,197,94,.08)}
.calc-banner.bad{border-color:rgba(239,68,68,.3);box-shadow:0 0 14px rgba(239,68,68,.08)}
.calc-banner-glow{position:absolute;inset:0;pointer-events:none;transition:background .3s;background:radial-gradient(circle at 80% 50%, transparent, transparent)}
.calc-banner.good .calc-banner-glow{background:radial-gradient(circle at 80% 50%, rgba(34,197,94,.1), transparent 60%)}
.calc-banner.bad .calc-banner-glow{background:radial-gradient(circle at 80% 50%, rgba(239,68,68,.08), transparent 60%)}
.calc-banner.good .calc-final-val{text-shadow:0 0 10px rgba(34,197,94,.35)}
.calc-banner.bad .calc-final-val{text-shadow:0 0 10px rgba(239,68,68,.3)}
.calc-banner.good .calc-progress-fill{box-shadow:0 0 5px rgba(34,197,94,.4)}
.calc-banner.bad .calc-progress-fill{box-shadow:0 0 5px rgba(239,68,68,.35)}
.calc-banner.empty{border-color:rgba(221,221,240,.3);box-shadow:0 0 22px rgba(221,221,240,.1)}
.calc-banner.empty .calc-banner-glow{background:radial-gradient(circle at 80% 50%, rgba(221,221,240,.16), transparent 60%)}
.calc-banner.empty .calc-final-val{color:#f5f5ff!important;text-shadow:0 0 8px rgba(221,221,240,.35);opacity:.8}
.calc-banner.empty .calc-progress-fill{box-shadow:0 0 10px rgba(221,221,240,.7),0 0 18px rgba(221,221,240,.3)}
.calc-banner-content{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.calc-banner-left{flex:1;min-width:200px}
.calc-banner-label{font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--t3);font-weight:600;margin-bottom:4px}
.calc-banner-sub{font-size:12px;color:var(--t2);margin-bottom:10px}
.calc-progress{width:100%;max-width:340px;height:6px;background:rgba(255,255,255,.05);border-radius:3px;overflow:hidden}
.calc-progress-fill{height:100%;border-radius:3px;transition:width .3s ease,background .3s}
.calc-banner-right{display:flex;align-items:baseline;gap:5px}
.calc-final-val{font-size:42px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1;transition:color .25s}
.calc-final-out{font-size:14px;color:var(--t3);font-weight:500}

.calc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.calc-card{position:relative;background:var(--card);border:1px solid var(--bd);border-radius:11px;padding:16px;display:flex;flex-direction:column;gap:11px;transition:border-color .25s,box-shadow .25s;overflow:hidden}
.calc-card:hover{border-color:var(--c);box-shadow:0 4px 18px rgba(0,0,0,.25)}
.calc-card.good{border-color:rgba(34,197,94,.22)}
.calc-card.good:hover{border-color:rgba(34,197,94,.4);box-shadow:0 0 14px rgba(34,197,94,.1)}
.calc-card.bad{border-color:rgba(239,68,68,.2)}
.calc-card.bad:hover{border-color:rgba(239,68,68,.38);box-shadow:0 0 14px rgba(239,68,68,.08)}
.calc-card.empty{border-color:rgba(221,221,240,.28)}
.calc-card.empty:hover{border-color:rgba(221,221,240,.5);box-shadow:0 0 18px rgba(221,221,240,.14)}
.calc-card.empty .calc-card-accent{box-shadow:0 0 10px rgba(221,221,240,.7),0 0 16px rgba(221,221,240,.35);background:#f5f5ff;opacity:.95}
.calc-card.empty .calc-card-avg{color:#f5f5ff!important;text-shadow:0 0 6px rgba(221,221,240,.3);opacity:.8}
.calc-card.empty .calc-card-progress-fill{box-shadow:0 0 8px rgba(221,221,240,.6),0 0 14px rgba(221,221,240,.3)}
.calc-card-accent{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--c);opacity:.7;transition:opacity .25s,box-shadow .25s}
.calc-card:hover .calc-card-accent{opacity:1}
.calc-card.good .calc-card-accent{box-shadow:0 0 5px rgba(34,197,94,.35)}
.calc-card.bad .calc-card-accent{box-shadow:0 0 5px rgba(239,68,68,.3)}
.calc-card.good .calc-card-avg{text-shadow:0 0 8px rgba(34,197,94,.3)}
.calc-card.bad .calc-card-avg{text-shadow:0 0 8px rgba(239,68,68,.25)}
.calc-card.good .calc-card-progress-fill{box-shadow:0 0 4px rgba(34,197,94,.4)}
.calc-card.bad .calc-card-progress-fill{box-shadow:0 0 4px rgba(239,68,68,.35)}
.calc-card-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-left:6px}
.calc-card-title-wrap{flex:1;min-width:0}
.calc-card-title{font-size:13.5px;font-weight:600;color:var(--t1);line-height:1.25;margin-bottom:2px}
.calc-card-meta{font-size:10.5px;color:var(--t3);font-weight:500}
.calc-card-avg{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums;flex-shrink:0;line-height:1;transition:color .25s}
.calc-card-progress{height:3px;background:rgba(255,255,255,.04);border-radius:2px;overflow:hidden;margin-left:6px}
.calc-card-progress-fill{height:100%;border-radius:2px;transition:width .3s ease,background .25s}
.calc-fields{display:flex;flex-direction:column;gap:5px;padding-left:6px}
.calc-field{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:4px 0}
.calc-field label{font-size:11.5px;color:var(--t2);flex:1;line-height:1.3}
.calc-field input{width:64px;padding:6px 9px;background:var(--card2);border:1px solid var(--bd);border-radius:6px;color:var(--t1);font-size:12.5px;text-align:center;font-variant-numeric:tabular-nums;font-weight:600;outline:none;transition:border-color .15s,background .15s}
.calc-field input:hover{border-color:var(--t3)}
.calc-field input:focus{border-color:var(--ac);background:var(--card)}
.calc-field input::-webkit-outer-spin-button,.calc-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.calc-field input[type=number]{-moz-appearance:textfield}
.calc-field input::placeholder{color:var(--t3);font-weight:400}

@media (max-width:600px){
  .calc-final-val{font-size:34px}
  .calc-banner{padding:18px}
  .calc-grid{grid-template-columns:1fr}
}
.item-folder-ico{width:44px;height:44px;background:rgba(91,111,255,.1);border-radius:10px;display:flex;align-items:center;justify-content:center}
.item-folder-name{font-size:12px;font-weight:500;color:var(--t1);line-height:1.3;word-break:break-word}
.item-file-row{cursor:pointer;transition:background .15s}
.item-file-row:hover{background:var(--card2)}
.item-file-badge{font-size:9.5px;font-weight:700;padding:3px 7px;border-radius:5px;letter-spacing:.04em;flex-shrink:0}


/* ===== DRAG & DROP ===== */
.subj-card.dragging{opacity:.4;transform:scale(.97);border-style:dashed}
.subj-card.drag-over{border-color:var(--ac);background:var(--ac2);transform:scale(1.02)}
.drag-handle{position:absolute;top:10px;left:10px;color:var(--t2);cursor:grab;opacity:0;transition:opacity .15s;z-index:3;padding:4px 5px;border-radius:5px;background:rgba(0,0,0,.35)}
.drag-handle:hover{background:var(--bd);color:var(--t1)}
.subj-card:hover .drag-handle{opacity:1}
.subj-card.dragging .drag-handle{cursor:grabbing}
.drag-hint{font-size:10.5px;color:var(--t2);display:flex;align-items:center;gap:5px;margin-bottom:10px}

/* ===== AVATAR DE PERFIL ===== */
.av-img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.av-wrap{position:relative;display:inline-block;cursor:pointer}
.av-edit-btn{position:absolute;bottom:-2px;right:-2px;width:16px;height:16px;background:var(--ac);border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg)}
.pf-avatar-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid var(--bd)}
.pf-avatar-circle{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,#5b6fff,#7c5bff);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff;cursor:pointer;position:relative;overflow:hidden;border:3px solid var(--bd);transition:border-color .2s}
.pf-avatar-circle:hover{border-color:var(--ac)}
.pf-avatar-circle.admin-av{background:linear-gradient(135deg,#f59e0b,#ef4444)}
.pf-avatar-overlay{position:absolute;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;border-radius:50%}
.pf-avatar-circle:hover .pf-avatar-overlay{opacity:1}
.pf-avatar-hint{font-size:11px;color:var(--t2);text-align:center}


/* ===== MODAL DE CONFIRMAÇÃO CUSTOMIZADO ===== */
.confirm-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.65);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(3px)}
.confirm-box{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:26px;max-width:400px;width:100%;box-shadow:0 24px 60px rgba(0,0,0,.6);animation:confirmPop .18s ease}
@keyframes confirmPop{from{transform:scale(.92);opacity:0}to{transform:scale(1);opacity:1}}
.confirm-icon{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.confirm-icon.danger{background:rgba(239,68,68,.12)}
.confirm-icon.warn{background:rgba(245,158,11,.12)}
.confirm-icon.info{background:rgba(91,111,255,.12)}
.confirm-icon.success{background:rgba(34,197,94,.12)}
.confirm-title{font-size:15px;font-weight:700;margin-bottom:6px;color:var(--t1)}
.confirm-msg{font-size:12.5px;color:var(--t2);line-height:1.65;margin-bottom:18px}
.confirm-nask{display:flex;align-items:center;gap:9px;margin-bottom:18px;cursor:pointer;user-select:none;padding:4px 2px;border-radius:6px;transition:background .15s}
.confirm-nask:hover{background:rgba(255,255,255,.03)}
.confirm-nask input[type=checkbox]{appearance:none;-webkit-appearance:none;width:16px;height:16px;background:var(--card2);border:1.5px solid var(--bd);border-radius:4px;cursor:pointer;position:relative;flex-shrink:0;margin:0;transition:border-color .15s,background .15s}
.confirm-nask:hover input[type=checkbox]{border-color:var(--ac)}
.confirm-nask input[type=checkbox]:checked{background:var(--ac);border-color:var(--ac)}
.confirm-nask input[type=checkbox]:checked::after{content:'';position:absolute;left:4px;top:0;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.confirm-nask span{font-size:11.5px;color:var(--t2)}
.confirm-actions{display:flex;gap:9px;justify-content:flex-end}
.confirm-btn-cancel{padding:8px 18px;border-radius:8px;border:1px solid var(--bd);background:var(--card2);color:var(--t3);font-size:12.5px;cursor:pointer;font-weight:500}
.confirm-btn-cancel:hover{border-color:var(--t3);color:var(--t1)}
.confirm-btn-ok{padding:8px 18px;border-radius:8px;border:none;font-size:12.5px;cursor:pointer;font-weight:600}
.confirm-btn-ok.danger{background:var(--rd);color:#fff}
.confirm-btn-ok.danger:hover{opacity:.88}
.confirm-btn-ok.warn{background:var(--yw);color:#000}
.confirm-btn-ok.info{background:var(--ac);color:#000}
.confirm-btn-ok.info:hover,.confirm-btn-ok.warn:hover{opacity:.88}
.kb-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--bd)}
.kb-row:last-child{border-bottom:none}
.kb-keys{display:inline-flex;align-items:center;gap:5px;flex-shrink:0}
.kb-desc{color:var(--t2);font-size:13px;text-align:right}
kbd{display:inline-block;padding:3px 8px;background:var(--card2);border:1px solid var(--bd);border-bottom-width:2px;border-radius:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;color:var(--t1);font-weight:600;min-width:18px;text-align:center}


/* ===== USUÁRIO BANIDO ===== */
.badge.banned{background:rgba(239,68,68,.15);color:var(--rd);border:1px solid rgba(239,68,68,.3)}
.banned-row td{opacity:.55}
.banned-row .un-name::after{content:' · BANIDO';font-size:9px;color:var(--rd);font-weight:700;letter-spacing:.06em;margin-left:4px}

/* ===== BREADCRUMB INTERATIVO ===== */
.tbar-home{cursor:pointer;display:flex;align-items:center;gap:7px;color:var(--t2);transition:color .15s;padding:3px 0}
.tbar-home:hover{color:var(--t1)}
.tbar-home img{width:18px;height:18px;object-fit:contain;mix-blend-mode:screen;opacity:.7;transition:opacity .15s}
.tbar-home:hover img{opacity:1}
.tbc-link{cursor:pointer;color:var(--t2)!important;transition:color .15s;border-radius:4px;padding:2px 4px;margin:0 -4px}
.tbc-link:hover{color:var(--ac)!important;background:var(--ac2)}
.tbc-current{color:var(--t1)!important;font-weight:500}
.tbar-sep{color:var(--bd);margin:0 2px;user-select:none}

/* ===== QUESTÃO DISCURSIVA ===== */
.disc-gabarito{
  background:var(--card2);border:1px solid var(--bd);border-radius:10px;
  padding:16px 18px;margin-top:14px;
  border-left:3px solid var(--ac);
  animation:fadeIn .25s ease;
}
@keyframes fadeIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.disc-gabarito-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ac);font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:6px}
.disc-gabarito-text{font-size:13px;color:var(--t1);line-height:1.75;white-space:pre-wrap}
.btn-ver-gab{display:flex;align-items:center;gap:8px;padding:10px 18px;border-radius:8px;border:1px solid var(--ac);background:var(--ac2);color:var(--ac);font-size:12.5px;cursor:pointer;font-weight:600;transition:all .15s;width:fit-content;margin-top:14px}
.btn-ver-gab:hover{background:var(--ac);color:#000}
.qtype-disc{background:rgba(248,209,25,.1);color:#f8d119;border:1px solid rgba(248,209,25,.25)}

/* ===== MODAL PROMPT CUSTOMIZADO ===== */
.prompt-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.65);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(3px)}
.prompt-box{background:var(--card);border:1px solid var(--bd);border-radius:14px;padding:26px;max-width:420px;width:100%;box-shadow:0 24px 60px rgba(0,0,0,.6);animation:confirmPop .18s ease}
.prompt-title{font-size:15px;font-weight:700;margin-bottom:14px;color:var(--t1);display:flex;align-items:center;gap:9px}
.prompt-input{width:100%;background:var(--card2);border:1px solid var(--bd);border-radius:8px;color:var(--t1);padding:10px 13px;font-size:13.5px;outline:none;font-family:inherit;transition:border-color .15s;margin-bottom:16px}
.prompt-input:focus{border-color:var(--ac)}
.prompt-actions{display:flex;gap:9px;justify-content:flex-end}

/* ===== DROPDOWN DISCIPLINA ===== */
.fmenu-drop{background:#1a1a24!important;border:1px solid var(--bd)!important;border-radius:10px!important;padding:5px!important;min-width:150px!important;box-shadow:0 10px 32px rgba(0,0,0,.6)!important}
.fmi{border-radius:7px!important;padding:8px 12px!important;font-size:12.5px!important;gap:9px!important}
.fmi:hover{background:rgba(91,111,255,.1)!important;color:var(--t1)!important}
.fmi.del:hover{background:rgba(239,68,68,.08)!important;color:var(--rd)!important}

/* ===== EMOJI PICKER ===== */
.emoji-picker-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1500;background:rgba(0,0,0,.2)}
.emoji-picker{position:fixed;background:#16161f;border:1px solid var(--bd);border-radius:14px;padding:14px;box-shadow:0 16px 48px rgba(0,0,0,.7);z-index:1501;width:340px}
.emoji-picker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.emoji-picker-title{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--t2);font-weight:600}
.emoji-picker-close{background:none;border:none;color:var(--t2);cursor:pointer;font-size:18px;padding:0;line-height:1}
.emoji-picker-close:hover{color:var(--t1)}
.emoji-search{width:100%;background:var(--card2);border:1px solid var(--bd);border-radius:8px;color:var(--t1);padding:7px 11px;font-size:12.5px;outline:none;margin-bottom:10px}
.emoji-search:focus{border-color:var(--ac)}
.emoji-cats{display:flex;gap:4px;margin-bottom:10px;overflow-x:auto;padding-bottom:2px}
.emoji-cat-btn{background:none;border:1px solid var(--bd);border-radius:6px;color:var(--t2);font-size:16px;cursor:pointer;padding:4px 8px;white-space:nowrap;transition:all .12s}
.emoji-cat-btn:hover,.emoji-cat-btn.act{background:var(--ac2);border-color:var(--ac);color:var(--ac)}
.emoji-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:3px;max-height:220px;overflow-y:auto}
.emoji-btn{width:100%;aspect-ratio:1;border:none;background:none;font-size:20px;cursor:pointer;border-radius:7px;display:flex;align-items:center;justify-content:center;transition:background .1s;line-height:1}
.emoji-btn:hover{background:var(--bd)}
.emoji-btn.selected{background:var(--ac2);outline:2px solid var(--ac);outline-offset:-2px}
.emoji-edit-btn{position:absolute;bottom:10px;right:10px;width:24px;height:24px;background:rgba(0,0,0,.65);border:1px solid rgba(255,255,255,.15);border-radius:7px;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .15s;font-size:13px;z-index:2;color:rgba(255,255,255,.8)}
.subj-card:hover .emoji-edit-btn{opacity:1}
.emoji-edit-btn:hover{background:var(--ac);border-color:var(--ac);color:#000}

/* ===== PERFIL LEMBRADO NA TELA DE LOGIN ===== */
#remembered-profile:not(:empty){margin-bottom:14px}
.rp-card{display:flex;align-items:center;gap:11px;background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:10px 12px;cursor:pointer;transition:border-color .15s,background .15s;position:relative}
.rp-card:hover{border-color:var(--ac);background:var(--ac2)}
.rp-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#5b6fff,#7c5bff);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;flex-shrink:0;overflow:hidden}
.rp-avatar img{width:100%;height:100%;object-fit:cover}
.rp-info{flex:1;min-width:0}
.rp-name{font-size:13px;font-weight:600;color:var(--t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-email{font-size:11.5px;color:var(--t2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rp-remove{width:24px;height:24px;border:none;background:transparent;color:var(--t2);font-size:18px;line-height:1;cursor:pointer;border-radius:6px;flex-shrink:0}
.rp-remove:hover{background:var(--bd);color:var(--rd)}
.rp-hint{font-size:10.5px;color:var(--t2);text-align:center;margin-top:7px}

/* ===== RECUPERAR SENHA ===== */
.forgot-link{color:var(--ac);font-size:11.5px;cursor:pointer}
.forgot-link:hover{text-decoration:underline}
.rec-title{font-size:16px;font-weight:700;margin-bottom:4px}
.rec-sub{font-size:12px;color:var(--t2);margin-bottom:16px;line-height:1.5}

/* ===== IMAGEM DA QUESTÃO ===== */
.q-image{display:block;max-width:100%;max-height:420px;border-radius:8px;border:1px solid var(--bd);margin:0 0 16px}

/* ===== EDITOR DE QUESTÃO DE COLUNAS ===== */
.col-pair-row{display:grid;grid-template-columns:1fr auto 1fr auto;gap:8px;align-items:center;margin-bottom:7px}
.col-pair-a,.col-pair-b{background:var(--card2);border:1px solid var(--bd);border-radius:7px;color:var(--t1);padding:8px 10px;font-size:12.5px;outline:none;font-family:inherit;width:100%;min-width:0}
.col-pair-a:focus,.col-pair-b:focus{border-color:var(--ac)}
.col-pair-sep{color:var(--t2);text-align:center;font-size:15px;user-select:none}

/* ===== QUESTÃO DE ASSOCIAÇÃO ===== */
.assoc-edit-row{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.assoc-rom{flex-shrink:0;min-width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--ac2);color:var(--ac);border:1px solid var(--bd);border-radius:7px;font-weight:700;font-size:11.5px;padding:0 4px}
.assoc-edit-input{flex:1;min-width:0;background:var(--card2);border:1px solid var(--bd);border-radius:7px;color:var(--t1);padding:8px 10px;font-size:12.5px;outline:none;font-family:inherit}
.assoc-edit-input:focus{border-color:var(--ac)}
.assoc-slot-sel{flex-shrink:0;width:84px;min-width:84px}
.assoc-x{flex-shrink:0;background:none;border:none;color:var(--rd);cursor:pointer;font-size:18px;padding:0 4px;line-height:1}
.assoc-itens{display:flex;flex-direction:column;gap:7px;margin-bottom:4px}
.assoc-item{display:flex;align-items:flex-start;gap:9px;font-size:12.5px;line-height:1.55;color:var(--t1)}
.assoc-slots-q{display:flex;flex-direction:column;gap:8px}
.assoc-slot{display:flex;align-items:center;gap:11px;padding:10px 13px;border:1px solid var(--bd);border-radius:9px;flex-wrap:wrap}
.assoc-slot-txt{flex:1;min-width:140px;font-size:12.5px;line-height:1.5;color:var(--t3)}
.assoc-slot .assoc-sel{flex-shrink:0;width:92px;min-width:92px}
.assoc-slot-res{flex-shrink:0;font-size:11px;color:var(--t2)}
.assoc-slot.ok{border-color:var(--gr);background:rgba(34,197,94,.09)}
.assoc-slot.bad{border-color:var(--rd);background:rgba(239,68,68,.09)}

/* ===== RELÓGIO FLUTUANTE ===== */
#floating-clock{position:fixed;bottom:24px;right:24px;background:#16161f;border:1px solid var(--bd);border-radius:14px;padding:9px 12px;display:flex;align-items:center;gap:9px;z-index:1900;box-shadow:0 12px 32px rgba(0,0,0,.55);user-select:none}
#floating-clock.dragging{opacity:.85;box-shadow:0 16px 40px rgba(0,0,0,.7)}
.fc-handle{color:var(--t2);cursor:grab;font-size:14px;letter-spacing:-3px;line-height:1;padding:0 2px}
#floating-clock.dragging .fc-handle{cursor:grabbing}
.fc-disp{font-size:17px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--t1);min-width:78px;text-align:center}
.fc-btn{background:transparent;border:none;color:var(--t2);cursor:pointer;font-size:13px;padding:5px 7px;border-radius:6px;line-height:1}
.fc-btn:hover{background:var(--bd);color:var(--t1)}

/* ===== STEPPER NUMÉRICO (Horas/Minutos do timer) ===== */
.num-stepper{display:inline-flex;align-items:stretch;background:var(--card2);border:1px solid var(--bd);border-radius:8px;overflow:hidden}
.num-stepper input{width:48px;border:none;background:transparent;color:var(--t1);text-align:center;font-size:14px;font-weight:600;outline:none;padding:7px 0;font-variant-numeric:tabular-nums;font-family:inherit}
.num-stepper .num-btn{background:transparent;border:none;color:var(--t2);cursor:pointer;font-size:15px;width:26px;font-weight:700;line-height:1;display:flex;align-items:center;justify-content:center}
.num-stepper .num-btn:hover{background:var(--bd);color:var(--ac)}
.num-stepper .num-btn:active{background:var(--ac2)}
.num-stepper input::-webkit-inner-spin-button,
.num-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.num-stepper input[type=number]{-moz-appearance:textfield}

/* ===== EDITOR V/F (afirmativas) ===== */
.vf-stmt-row{display:flex;align-items:center;gap:8px;margin-bottom:7px}
.vf-stmt-num{flex-shrink:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--ac2);color:var(--ac);border:1px solid var(--bd);border-radius:7px;font-weight:700;font-size:12px}
.vf-stmt-input{flex:1;min-width:0;background:var(--card2);border:1px solid var(--bd);border-radius:7px;color:var(--t1);padding:8px 10px;font-size:12.5px;outline:none;font-family:inherit}
.vf-stmt-input:focus{border-color:var(--ac)}

/* ===== RESPONSIVIDADE MOBILE ===== */
.sb-toggle{display:none;background:none;border:none;color:var(--t2);cursor:pointer;padding:5px;border-radius:6px;align-items:center;justify-content:center}
.sb-toggle:hover{background:var(--card);color:var(--t1)}
.sb-backdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:150}
@media (max-width:768px){
  .sb-toggle{display:flex}
  .sb-backdrop.show{display:block}
  .sb{position:fixed;left:0;top:0;bottom:0;z-index:200;transform:translateX(-100%);transition:transform .25s ease;box-shadow:4px 0 24px rgba(0,0,0,.5)}
  .sb.open{transform:translateX(0)}
  .tbar-home{display:none}
  .tbar{padding:0 12px}
  .cnt{padding:14px}
  .sgrid{grid-template-columns:repeat(2,1fr)}
  .two{grid-template-columns:1fr}
  .modal{padding:18px}
  .mf-row{flex-direction:column}
  .login-card{padding:24px}
}

/* ================================================================
 * NEON THEME — glows aplicados pelo site inteiro com 3 intensidades
 * ================================================================ */

/* --- LOGIN / AUTH --- */
.lf-btn{box-shadow:var(--gl-ac-m);transition:box-shadow .2s,filter .15s}
.lf-btn:hover{box-shadow:var(--gl-ac-l);filter:brightness(1.05)}
.tab.act{box-shadow:var(--gl-ac-s)}

/* Inputs com glow no focus */
.lf-input:focus,.lf-select:focus,.lf-textarea:focus,select.fl:focus,
input[type=text]:focus,input[type=email]:focus,input[type=password]:focus,
input[type=number]:focus,textarea:focus{box-shadow:var(--gl-ac-s)}

/* --- SIDEBAR / NAV --- */
.ni.act{box-shadow:inset 3px 0 0 var(--ac), var(--gl-ac-s)}
.ni-dot,.dot{box-shadow:0 0 8px currentColor}
#admin-section .dot{box-shadow:0 0 8px var(--yw)}

/* --- BOTÕES PRIMÁRIOS --- */
.btn.btn-p,.bsm.p,.btn-add{box-shadow:var(--gl-ac-m);transition:box-shadow .2s,filter .15s,transform .1s}
.btn.btn-p:hover,.bsm.p:hover,.btn-add:hover{box-shadow:var(--gl-ac-l);filter:brightness(1.05)}
.btn.btn-p:active,.bsm.p:active,.btn-add:active{transform:translateY(1px)}

/* Botões danger (excluir) com glow vermelho subtle */
.confirm-btn-ok.danger,.bsm.danger{box-shadow:var(--gl-rd-s);transition:box-shadow .2s}
.confirm-btn-ok.danger:hover,.bsm.danger:hover{box-shadow:var(--gl-rd-m)}
.confirm-btn-ok.warn{box-shadow:var(--gl-yw-s)}

/* --- TAGS --- */
.tag.tag-ac{box-shadow:var(--gl-ac-s)}

/* --- QUESTÕES: alternativas selecionadas / corretas / erradas --- */
.alt.sel{box-shadow:var(--gl-ac-m)}
.alt.ok{box-shadow:var(--gl-gr-m)}
.alt.bad{box-shadow:var(--gl-rd-m)}
.alt-opt-letter.ok{box-shadow:var(--gl-gr-s)}

/* Verdict (Correto/Incorreto) — text-shadow no número/letra */

/* --- DRAG-DROP TARGETS --- */
.item-folder-card.drop-target{box-shadow:var(--gl-gr-s)}

/* --- ADMIN PILL (badge no header de páginas) --- */
.admin-pill,.admin-tag{box-shadow:var(--gl-yw-s)}

/* --- DESEMPENHO: barras de progresso por matéria --- */
.br-fill.gr{box-shadow:var(--gl-gr-s)}
.br-fill.yw{box-shadow:var(--gl-yw-s)}
.br-fill{box-shadow:var(--gl-rd-s)}

/* --- REPORTS: badges de status --- */
.rep-stat-r{box-shadow:var(--gl-gr-s)}
.rep-stat-p{box-shadow:var(--gl-yw-s)}
.report-badge{box-shadow:var(--gl-rd-m)}

/* --- BOTÃO REPORTAR no hover --- */
.btn-report:hover{box-shadow:var(--gl-rd-s)}

/* --- CRONÔMETRO: botões de iniciar --- */
.tbtn.start{box-shadow:var(--gl-ac-s);transition:box-shadow .2s}
.tbtn.start:hover{box-shadow:var(--gl-ac-m)}

/* --- FLOATING CLOCK --- */
#floating-clock{box-shadow:0 8px 32px rgba(0,0,0,.5), var(--gl-ac-s)}

/* --- AVATAR ADMIN ring --- */
.av-admin,.admin-av{box-shadow:var(--gl-yw-s)}

/* --- MODAIS — sombra mais rica --- */
.modal{box-shadow:0 20px 60px rgba(0,0,0,.5), 0 0 30px rgba(91,111,255,.06)}
.confirm-modal{box-shadow:0 20px 60px rgba(0,0,0,.5), 0 0 24px rgba(91,111,255,.05)}

/* --- LOGIN CARD: aura azul --- */
.login-card{box-shadow:0 20px 60px rgba(0,0,0,.4), 0 0 36px rgba(91,111,255,.08)}

/* --- SUBJECT CARDS no hover --- */
.subj-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.3), 0 0 18px rgba(91,111,255,.18)}

/* --- ITEM FOLDER CARDS no hover (já existia, fortalecendo) --- */
.item-folder-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.3), 0 0 16px rgba(91,111,255,.15)}

/* --- "Ver Gabarito" / outros action buttons quando estiverem em q-act --- */
.q-act .btn:not([disabled]):hover{box-shadow:var(--gl-ac-s)}



/* === LINE CHART (admin: atividade últimos 7 dias) === */
.chart-card{position:relative}
.chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:6px;flex-wrap:wrap}
.chart-big-val{font-size:28px;font-weight:700;color:var(--t1);font-variant-numeric:tabular-nums;line-height:1;margin-top:4px;display:flex;align-items:baseline;gap:6px}
.chart-unit{font-size:12.5px;color:var(--t2);font-weight:500}
.chart-trend{text-align:right;flex-shrink:0}
.chart-trend-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:8px;font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums}
.chart-trend-pill.up{background:rgba(34,197,94,.12);color:var(--gr);box-shadow:var(--gl-gr-s)}
.chart-trend-pill.down{background:rgba(239,68,68,.12);color:var(--rd);box-shadow:var(--gl-rd-s)}
.chart-trend-sub{font-size:10.5px;color:var(--t2);margin-top:4px}


/* === ONLINE INDICATOR + USER DETAIL MODAL === */
.online-dot{display:inline-block;width:8px;height:8px;background:var(--gr);border-radius:50%;box-shadow:0 0 6px rgba(34,197,94,.6);animation:onlinePulse 2s infinite;flex-shrink:0}
@keyframes onlinePulse{0%,100%{opacity:1}50%{opacity:.5}}
.online-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--gr);font-weight:600}
.av-online{position:relative}
.av-online::after{content:"";position:absolute;bottom:-1px;right:-1px;width:11px;height:11px;background:var(--gr);border:2px solid var(--card);border-radius:50%;box-shadow:0 0 8px rgba(34,197,94,.7)}

.user-cell:hover .un-name{color:var(--ac)}

.ud-header{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--bd);margin-bottom:16px}
.ud-h-name{font-size:17px;font-weight:700;color:var(--t1);line-height:1.2;margin-bottom:3px}
.ud-h-email{font-size:12px;color:var(--t2);margin-bottom:7px}
.ud-h-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

.ud-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
.ud-stat-card{background:var(--card2);border:1px solid var(--bd);border-radius:9px;padding:12px}
.ud-stat-lbl{font-size:10.5px;color:var(--t3);text-transform:uppercase;letter-spacing:.6px;font-weight:600;margin-bottom:6px}
.ud-stat-val{font-size:22px;font-weight:700;color:var(--t1);font-variant-numeric:tabular-nums;line-height:1}
.ud-stat-val.good{color:var(--gr);text-shadow:0 0 8px rgba(34,197,94,.3)}
.ud-stat-val.mid{color:var(--yw)}
.ud-stat-val.bad{color:var(--rd);text-shadow:0 0 8px rgba(239,68,68,.25)}
.ud-stat-sub{font-size:10.5px;color:var(--t3);margin-top:4px}

.ud-section{margin-bottom:18px}
.ud-section:last-child{margin-bottom:0}
.ud-section-title{font-size:12px;font-weight:600;color:var(--t1);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}

/* === ACTIVITY HEATMAP (GitHub-style) === */
.heat-grid{display:grid;grid-template-rows:repeat(7,1fr);grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:8px;background:#101015;border:1px solid var(--bd);border-radius:8px;direction:ltr}
.heat-cell{aspect-ratio:1;border-radius:3px;background:#252533;border:1px solid #2e2e3c;transition:transform .1s,box-shadow .1s;cursor:default;min-width:8px;min-height:8px}
.heat-cell:hover{transform:scale(1.4);z-index:2;position:relative;border-color:#3a3a4a}
.heat-0{background:#252533;border-color:#2e2e3c}
.heat-1{background:rgba(91,111,255,.35)}
.heat-2{background:rgba(91,111,255,.55);box-shadow:0 0 4px rgba(91,111,255,.25)}
.heat-3{background:rgba(91,111,255,.75);box-shadow:0 0 5px rgba(91,111,255,.4)}
.heat-4{background:var(--ac);box-shadow:0 0 6px rgba(91,111,255,.6)}
.heat-legend{display:flex;align-items:center;gap:6px;margin-top:9px;font-size:10.5px;color:var(--t3);justify-content:flex-end}
.heat-legend .heat-cell{width:11px;height:11px;aspect-ratio:initial}

@media (max-width:600px){
  .ud-stats{grid-template-columns:1fr}
}


/* === DASHBOARD ADMIN — denso === */
.dash-row{display:grid;gap:13px;margin-top:13px}
.dash-row.two{grid-template-columns:1fr 1fr}
.dash-row.dash-83{grid-template-columns:2.3fr 1fr}
@media(max-width:900px){.dash-row.dash-83,.dash-row.two{grid-template-columns:1fr}}

/* Live atividade card */
.live-card{display:flex;flex-direction:column}
.live-row{display:flex;align-items:center;gap:10px;margin:10px 0 14px}
.live-dot{width:10px;height:10px;border-radius:50%;background:var(--gr);box-shadow:0 0 10px rgba(34,197,94,.7);animation:onlinePulse 2s infinite;flex-shrink:0}
.live-num{font-size:30px;font-weight:700;color:var(--gr);text-shadow:0 0 10px rgba(34,197,94,.3);font-variant-numeric:tabular-nums;line-height:1}
.live-lbl{font-size:11.5px;color:var(--t2);line-height:1.3;flex:1}
.live-mini{display:flex;gap:12px;border-top:1px solid var(--bd);padding-top:12px;margin-top:auto}
.live-mini-item{flex:1;text-align:center}
.live-mini-val{font-size:20px;font-weight:700;color:var(--t1);font-variant-numeric:tabular-nums;line-height:1;margin-bottom:4px}
.live-mini-lbl{font-size:10px;color:var(--t3);line-height:1.25}

/* Donut tipos de questão */
.donut-wrap{display:flex;align-items:center;gap:18px;margin-top:6px}
.donut-legend{display:flex;flex-direction:column;gap:6px;flex:1}
.donut-leg-item{display:flex;align-items:center;gap:8px;font-size:11.5px}
.donut-leg-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}
.donut-leg-lbl{flex:1;color:var(--t2)}
.donut-leg-val{color:var(--t1);font-weight:600;font-variant-numeric:tabular-nums}
.donut-leg-item.dim{opacity:.35}
.donut-leg-item.dim .donut-leg-dot{box-shadow:none}
.donut-stack{display:flex;flex-direction:column;height:100%}
.donut-section{flex:1;display:flex;flex-direction:column;justify-content:center;min-height:0}
.donut-section-2{border-top:1px solid var(--bd);padding-top:14px;margin-top:14px}

/* Top alunos ativos */
.top-user-row{display:flex;align-items:center;gap:10px;padding:8px;border-radius:7px;cursor:pointer;transition:background .15s}
.top-user-row:hover{background:var(--card2)}
.top-user-rank{width:22px;height:22px;border-radius:50%;background:var(--card2);color:var(--t3);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.top-user-row:nth-child(1) .top-user-rank{background:rgba(245,158,11,.2);color:var(--yw);box-shadow:var(--gl-yw-s)}
.top-user-row:nth-child(2) .top-user-rank{background:rgba(150,150,170,.18);color:#c0c0d0}
.top-user-row:nth-child(3) .top-user-rank{background:rgba(180,120,80,.18);color:#cd7f32}
.top-user-info{flex:1;min-width:0}
.top-user-name{font-size:12.5px;font-weight:600;color:var(--t1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.top-user-meta{font-size:10.5px;color:var(--t3)}
.top-user-pct{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;flex-shrink:0}
.top-user-pct.good{color:var(--gr);text-shadow:0 0 6px rgba(34,197,94,.3)}
.top-user-pct.mid{color:var(--yw)}
.top-user-pct.bad{color:var(--rd)}


/* === EDITOR DA CALCULADORA (admin) === */
.calc-ed-row{display:flex;align-items:center;gap:10px;padding:11px 12px;background:var(--card2);border:1px solid var(--bd);border-radius:8px;margin-bottom:6px;cursor:pointer;transition:border-color .15s}
.calc-ed-row:hover{border-color:var(--ac)}
.calc-ed-name{font-size:13px;font-weight:600;color:var(--t1)}
.calc-ed-meta{font-size:10.5px;color:var(--t3);margin-top:2px}
.calc-ed-form{display:flex;flex-direction:column;gap:9px}
.calc-ed-field{display:flex;flex-direction:column;gap:4px}
.calc-ed-field label{font-size:11px;color:var(--t3);font-weight:500}
.calc-ed-field input[type=text]{padding:7px 10px;background:var(--card2);border:1px solid var(--bd);border-radius:6px;color:var(--t1);font-size:12.5px;outline:none}
.calc-ed-field input[type=text]:focus{border-color:var(--ac);box-shadow:var(--gl-ac-s)}
.calc-ed-section-title{font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:var(--t3);font-weight:700;margin:14px 0 4px}
.calc-ed-w-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;background:var(--card2);border:1px solid var(--bd);border-radius:6px}
.calc-ed-w-row label{font-size:11.5px;color:var(--t2);flex:1}
.calc-ed-w-row input[type=number]{width:80px;padding:5px 8px;background:var(--card);border:1px solid var(--bd);border-radius:5px;color:var(--t1);text-align:center;font-variant-numeric:tabular-nums;outline:none;font-size:12px}
.calc-ed-w-row input[type=number]:focus{border-color:var(--ac);box-shadow:var(--gl-ac-s)}


/* === MEDALHAS / CONQUISTAS === */
#medal-toast-host{position:fixed;bottom:20px;right:20px;z-index:5000;display:flex;flex-direction:column;gap:10px;pointer-events:none}
.medal-toast{background:linear-gradient(135deg,var(--card),var(--card2));border:1.5px solid var(--mc);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:14px;min-width:280px;max-width:380px;box-shadow:0 8px 32px rgba(0,0,0,.5), 0 0 24px var(--mc);opacity:0;transform:translateX(20px) scale(.96);transition:opacity .3s,transform .3s;pointer-events:auto}
.medal-toast.show{opacity:1;transform:translateX(0) scale(1)}
.mt-ico{font-size:36px;flex-shrink:0;text-shadow:0 0 10px var(--mc);animation:medalGlow 2s ease-in-out infinite}
@keyframes medalGlow{0%,100%{text-shadow:0 0 8px var(--mc)}50%{text-shadow:0 0 18px var(--mc), 0 0 30px var(--mc)}}
.mt-lbl{font-size:10.5px;color:var(--mc);text-transform:uppercase;letter-spacing:.6px;font-weight:700}
.mt-name{font-size:14px;color:var(--t1);font-weight:700;margin-top:2px}
.mt-desc{font-size:11px;color:var(--t2);margin-top:3px;line-height:1.4}

/* Grid de medalhas no perfil */
.medals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-top:8px}
.medal-card{background:var(--card2);border:1px solid var(--bd);border-radius:10px;padding:12px 8px;text-align:center;position:relative;transition:transform .15s,border-color .15s,box-shadow .15s;cursor:default}
.medal-card.unlocked{border-color:var(--mc)}
.medal-card.unlocked:hover{transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.3),0 0 12px var(--mc)}
.medal-card.locked{opacity:.35;filter:grayscale(.8)}
.medal-card-ico{font-size:30px;line-height:1;margin-bottom:6px;transition:text-shadow .25s}
.medal-card.unlocked .medal-card-ico{text-shadow:0 0 10px var(--mc)}
.medal-card-name{font-size:11.5px;font-weight:600;color:var(--t1);line-height:1.25;margin-bottom:3px}
.medal-card-desc{font-size:10px;color:var(--t3);line-height:1.3}
.medal-cat-title{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--t3);font-weight:700;margin:14px 0 6px}
.medal-cat-title:first-child{margin-top:4px}
.medal-summary{display:flex;align-items:center;gap:14px;padding:14px;background:var(--card2);border:1px solid var(--bd);border-radius:10px;margin-bottom:14px}
.medal-summary-num{font-size:28px;font-weight:700;color:var(--ac);text-shadow:0 0 10px rgba(91,111,255,.4);font-variant-numeric:tabular-nums;line-height:1}
.medal-summary-txt{flex:1;font-size:12px;color:var(--t2);line-height:1.4}
.medal-pill{display:inline-flex;align-items:center;gap:9px;padding:7px 14px 7px 10px;background:var(--card);border:1px solid var(--bd);border-radius:9px;color:var(--t1);font-weight:500;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .1s;flex-shrink:0}
.medal-pill:hover{border-color:var(--ac);box-shadow:var(--gl-ac-s);transform:translateY(-1px)}
.medal-pill .mp-ico{font-size:20px;line-height:1;filter:drop-shadow(0 0 4px rgba(255,255,255,.2))}
.medal-pill .mp-txt{display:flex;flex-direction:column;align-items:flex-start;gap:1px;line-height:1}
.medal-pill #medal-pill-count{font-size:13px;font-weight:700;color:var(--t1);font-variant-numeric:tabular-nums}
.medal-pill .mp-sub{font-size:9.5px;color:var(--t3);text-transform:uppercase;letter-spacing:.5px;font-weight:600}


/* === PÁGINA INÍCIO === */
.home-hero{margin-bottom:22px}
.home-greeting{font-size:26px;font-weight:700;color:var(--t1);line-height:1.2;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.home-wave{display:inline-block;animation:wave 2.5s ease-in-out infinite;transform-origin:70% 70%}
@keyframes wave{0%,60%,100%{transform:rotate(0)}10%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}30%{transform:rotate(14deg)}40%{transform:rotate(-4deg)}50%{transform:rotate(10deg)}}
.home-subtitle{font-size:13px;color:var(--t2);margin-top:6px;text-transform:capitalize}

.home-shortcuts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}
.home-shortcut{display:flex;align-items:center;gap:12px;padding:14px;background:var(--card2);border:1px solid var(--bd);border-radius:10px;cursor:pointer;text-decoration:none;color:inherit;transition:border-color .15s,transform .1s,box-shadow .15s}
.home-shortcut:hover{border-color:var(--ac);transform:translateY(-2px);box-shadow:0 4px 14px rgba(0,0,0,.3)}
.home-shortcut-ico{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}
.home-shortcut-name{font-size:13px;font-weight:600;color:var(--t1);line-height:1.25;margin-bottom:2px}
.home-shortcut-desc{font-size:11px;color:var(--t3);line-height:1.3}

.home-row{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}
@media(max-width:900px){.home-row{grid-template-columns:1fr}}

.home-next-medal{display:flex;align-items:center;gap:14px;padding:14px;background:var(--card2);border:1px solid var(--bd);border-radius:10px;transition:border-color .15s,box-shadow .15s}
.home-next-medal:hover{border-color:var(--ac);box-shadow:var(--gl-ac-s)}
.home-next-medal-ico{font-size:36px;line-height:1;filter:grayscale(.5) opacity(.8)}
.home-next-medal-name{font-size:14px;font-weight:700;color:var(--t1);margin-bottom:3px}
.home-next-medal-desc{font-size:11.5px;color:var(--t2);line-height:1.4}


/* Questões recentes na Home */
.recent-q-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:9px;margin-top:8px}
.recent-q-item{padding:11px 12px;background:var(--card2);border:1px solid var(--bd);border-radius:9px;cursor:pointer;transition:border-color .15s,transform .1s,box-shadow .15s}
.recent-q-item:hover{border-color:var(--ac);transform:translateY(-1px);box-shadow:var(--gl-ac-s)}
.recent-q-card{transition:border-color .15s,transform .1s,box-shadow .15s}
.recent-q-card:hover{border-color:var(--ac);transform:translateY(-1px);box-shadow:var(--gl-ac-s)}
.recent-q-card .rq-preview{font-size:13px;-webkit-line-clamp:3}
.rq-tags{display:flex;align-items:center;gap:5px;margin-bottom:6px;flex-wrap:wrap}
.rq-preview{font-size:11.5px;color:var(--t2);line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.rq-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--t3);margin-left:auto;flex-shrink:0}
.rq-dot.ok{background:var(--gr);box-shadow:0 0 5px rgba(74,222,128,.5)}
.rq-dot.bad{background:var(--rd);box-shadow:0 0 5px rgba(248,113,113,.5)}



/* === SPLASH SCREEN — reveal do AXIS === */
#splash-overlay{position:fixed;inset:0;background:#000;z-index:99999;display:flex;align-items:center;justify-content:center;animation:splashOut .55s cubic-bezier(.6,0,.3,1) 2s forwards;will-change:opacity}
.splash-wrap{display:flex;flex-direction:column;align-items:center;gap:14px}
.splash-axis{display:flex;align-items:center;gap:6px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-weight:600;letter-spacing:.04em}
.splash-letter{font-size:64px;color:#ededf0;opacity:0;transform:translateY(14px);display:inline-block;animation:splashLetter .55s cubic-bezier(.2,.7,.3,1) forwards;text-shadow:0 0 14px rgba(237,237,240,.25), 0 0 28px rgba(237,237,240,.12)}
.splash-letter:nth-child(1){animation-delay:.15s}
.splash-letter:nth-child(2){animation-delay:.38s}
.splash-letter:nth-child(3){animation-delay:.61s}
.splash-letter:nth-child(4){animation-delay:.84s}
.splash-underline{height:1px;width:0;background:#ededf0;opacity:0;animation:splashLine .8s cubic-bezier(.2,.7,.3,1) 1.25s forwards;box-shadow:0 0 8px rgba(237,237,240,.4)}
@keyframes splashLetter{to{opacity:1;transform:translateY(0)}}
@keyframes splashLine{0%{width:0;opacity:0}40%{opacity:1}100%{width:240px;opacity:1}}
@keyframes splashOut{to{opacity:0;visibility:hidden}}
@media (max-width:600px){.splash-letter{font-size:46px}@keyframes splashLine{0%{width:0;opacity:0}40%{opacity:1}100%{width:180px;opacity:1}}}


/* Barra de progresso para próxima medalha na Home */
.next-medal-progress{margin-top:12px}
.nmp-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px;font-size:11px}
.nmp-label{color:var(--t2)}
.nmp-pct{color:var(--ac);font-weight:700;font-variant-numeric:tabular-nums}
.nmp-bar{height:5px;background:var(--card2);border-radius:3px;overflow:hidden;border:1px solid var(--bd)}
.nmp-bar-fill{height:100%;background:var(--ac);border-radius:2px;transition:width .35s ease;box-shadow:var(--gl-ac-s)}



/* === TRIAL BADGE + PAYWALL === */
.trial-pill .mp-ico{font-size:18px}
.trial-pill #trial-pill-count{color:var(--yw)}
.trial-pill.trial-pill-empty #trial-pill-count{color:var(--rd)}
.trial-pill.trial-pill-empty{border-color:var(--rd);box-shadow:var(--gl-rd-s)}
.trial-pill.trial-pill-empty .mp-ico{filter:drop-shadow(0 0 6px rgba(248,113,113,.6))}

.paywall-hero{text-align:center;padding:14px 0 22px;border-bottom:1px solid var(--bd);margin-bottom:20px}
.paywall-ico{font-size:46px;margin-bottom:10px}
.paywall-title{font-size:18px;font-weight:700;color:var(--t1);margin-bottom:6px}
.paywall-sub{font-size:12.5px;color:var(--t2);max-width:480px;margin:0 auto;line-height:1.5}

.paywall-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.paywall-plan{position:relative;background:var(--card2);border:1px solid var(--bd);border-radius:11px;padding:18px 14px 14px;text-align:center;display:flex;flex-direction:column}
.paywall-plan.highlight{border-color:var(--ac);box-shadow:var(--gl-ac-m)}
.paywall-badge{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:var(--ac);color:#000;font-size:10px;font-weight:700;padding:4px 12px;border-radius:6px;letter-spacing:.6px;text-transform:uppercase;white-space:nowrap;box-shadow:0 4px 12px rgba(0,0,0,.5),0 0 0 1px var(--bg);z-index:2}
.paywall-plan-name{font-size:13px;color:var(--t2);text-transform:uppercase;letter-spacing:.6px;font-weight:600;margin-bottom:8px}
.paywall-plan-price{display:flex;align-items:baseline;justify-content:center;gap:5px;margin-bottom:3px}
.ppp-big{font-size:30px;font-weight:700;color:var(--t1);font-variant-numeric:tabular-nums;line-height:1}
.ppp-sub{font-size:11px;color:var(--t3)}
.paywall-plan-permonth{font-size:11.5px;color:var(--t3);margin-bottom:6px}
.paywall-plan-save{font-size:10.5px;font-weight:600;color:var(--gr);background:rgba(74,222,128,.1);padding:2px 8px;border-radius:5px;display:inline-block;margin-bottom:10px}
.paywall-plan-desc{font-size:11px;color:var(--t2);line-height:1.4;margin-bottom:14px;flex:1}
.paywall-plan-btn{width:100%;font-size:12px;padding:9px}
.paywall-foot{margin-top:18px;padding-top:14px;border-top:1px solid var(--bd);text-align:center;font-size:11px;color:var(--t3)}

/* Paywall method toggle (one_time vs recurring) */
.paywall-method-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}
.paywall-method-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 10px;background:var(--card2);border:1.5px solid var(--bd);border-radius:10px;cursor:pointer;transition:all .15s ease;color:var(--t2)}
.paywall-method-btn:hover{border-color:var(--t2);color:var(--t1)}
.paywall-method-btn.active{border-color:var(--ac);background:rgba(237,237,240,.04);color:var(--t1);box-shadow:var(--gl-ac-s)}
.paywall-method-btn .pm-ico{font-size:22px;line-height:1}
.paywall-method-btn .pm-lbl{font-size:13px;font-weight:600}
.paywall-method-btn .pm-sub{font-size:10.5px;color:var(--t3);font-weight:400}
.paywall-method-btn.active .pm-sub{color:var(--t2)}

/* Minha Assinatura */
.mysub-status{display:flex;align-items:center;gap:14px;padding:18px;border-radius:10px;border:1px solid var(--bd);background:var(--card2);margin-bottom:18px}
.mysub-st-ico{font-size:28px;flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--card);font-weight:700}
.mysub-st-info{flex:1;min-width:0}
.mysub-st-title{font-size:14px;font-weight:700;color:var(--t1);margin-bottom:3px}
.mysub-st-sub{font-size:12px;color:var(--t2);line-height:1.55}
.mysub-active{border-color:var(--gr);box-shadow:var(--gl-gr-s)}
.mysub-active .mysub-st-ico{background:rgba(74,222,128,.12);color:var(--gr)}
.mysub-lifetime{border-color:var(--yw);box-shadow:var(--gl-yw-s)}
.mysub-lifetime .mysub-st-ico{background:rgba(251,191,36,.18);color:var(--yw)}
.mysub-inactive .mysub-st-ico{background:rgba(239,68,68,.08);color:var(--rd)}

.mysub-cancel-block{padding:14px;background:rgba(239,68,68,.04);border:1px dashed var(--rd);border-radius:8px;margin-bottom:18px;text-align:center}
.mysub-cancel-block .danger{background:transparent;color:var(--rd);border:1px solid var(--rd)}
.mysub-cancel-block .danger:hover{background:var(--rd);color:#fff}
.mysub-cancel-hint{font-size:11px;color:var(--t3);margin-top:8px;line-height:1.5}

.mysub-history-title{font-size:12px;color:var(--t2);text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--bd)}
.mysub-history-empty{text-align:center;padding:24px;color:var(--t3);font-size:12px;font-style:italic}
.mysub-pay{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--card);border:1px solid var(--bd);border-radius:8px;margin-bottom:6px;gap:10px}
.mysub-pay-l{flex:1;min-width:0}
.mysub-pay-r{text-align:right;flex-shrink:0}
.mysub-pay-plan{font-size:13px;font-weight:600;color:var(--t1);margin-bottom:2px}
.mysub-pay-tag{font-size:9.5px;background:rgba(237,237,240,.08);color:var(--t2);padding:1px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.4px;font-weight:500;margin-left:4px}
.mysub-pay-date{font-size:11px;color:var(--t3)}
.mysub-pay-amount{font-size:14px;font-weight:700;color:var(--t1);font-variant-numeric:tabular-nums}
.mysub-pay-status{display:inline-block;font-size:10px;font-weight:600;padding:2px 7px;border-radius:4px;margin-top:2px;text-transform:uppercase;letter-spacing:.4px}
.mysub-st-approved{background:rgba(74,222,128,.12);color:var(--gr)}
.mysub-st-pending,.mysub-st-in_process{background:rgba(251,191,36,.12);color:var(--yw)}
.mysub-st-rejected{background:rgba(239,68,68,.12);color:var(--rd)}
.mysub-st-cancelled,.mysub-st-expired{background:rgba(237,237,240,.06);color:var(--t3)}
.mysub-st-refunded{background:rgba(96,165,250,.12);color:var(--bl)}
.mysub-error{padding:18px;text-align:center;color:var(--rd);background:rgba(239,68,68,.06);border:1px solid var(--rd);border-radius:8px}

/* Sub badge no admin user detail */
.sub-badge{font-size:10.5px;font-weight:600;padding:3px 9px;border-radius:5px}
.sub-active{background:rgba(74,222,128,.12);color:var(--gr);box-shadow:var(--gl-gr-s)}
.sub-trial{background:rgba(251,191,36,.12);color:var(--yw)}
.sub-lifetime{background:rgba(251,191,36,.18);color:var(--yw);box-shadow:var(--gl-yw-s);font-weight:700}

