  *{margin:0;padding:0;box-sizing:border-box}
  :root{
    --bg:#f5f2ea;--bg2:#ffffff;
    --surface:#fcfbf6;--surface2:#ffffff;--surface3:rgba(10,10,15,0.06);
    --border:rgba(10,10,15,0.1);--border2:rgba(10,10,15,0.16);--border3:rgba(10,10,15,0.28);
    --text:#0a0a0f;--text-dim:rgba(10,10,15,0.5);--text-mid:rgba(10,10,15,0.66);
    --cream:#f5f2ea;
    --accent:#3d8b8b;--accent2:#2f6f6f;--accent-bg:rgba(61,139,139,0.12);--accent-border:rgba(61,139,139,0.45);
    --green:#2f8f5b;--green-bg:rgba(47,143,91,0.1);--green-border:rgba(47,143,91,0.32);
    --red:#c0492f;--red-bg:rgba(192,73,47,0.09);--red-border:rgba(192,73,47,0.3);
    --amber:#a9762a;--amber-bg:rgba(169,118,42,0.1);--amber-border:rgba(169,118,42,0.32);
    --blue:#3a7ea0;--blue-bg:rgba(58,126,160,0.09);--blue-border:rgba(58,126,160,0.26);
    --prov:#8a52b5;--prov-bg:rgba(138,82,181,0.1);--prov-border:rgba(138,82,181,0.32);
    --dd:#2f8a80;--dd-bg:rgba(47,138,128,0.1);--dd-border:rgba(47,138,128,0.32);
    --fed:#b0712a;--fed-bg:rgba(176,113,42,0.1);--fed-border:rgba(176,113,42,0.32);
    --eth:#3a7ea0;--eth-bg:rgba(58,126,160,0.1);--eth-border:rgba(58,126,160,0.32);
    --nm:#c0492f;--nm-bg:rgba(192,73,47,0.1);--nm-border:rgba(192,73,47,0.36);
  }
  html{scrollbar-width:none;background:var(--bg)}
  body{background:var(--bg);color:var(--text);font-family:'Manrope',-apple-system,sans-serif;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
  body::-webkit-scrollbar{width:0;height:0}
  body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(900px 520px at 50% -6%,rgba(61,139,139,0.05),transparent 68%)}
  .container{max-width:760px;margin:0 auto;padding:30px 24px 90px;position:relative;z-index:1}
  .container.wide{max-width:960px}
  a{color:inherit}
  ::selection{background:#0a0a0f;color:#f5f2ea}::-moz-selection{background:#0a0a0f;color:#f5f2ea}
  .brand-label,.nav-btn,.section-label,.field-label,.badge,.stat-label,.seg button,.topic-dom,.option-tag,.lock-brand,.ql-meta{font-family:'Sora',sans-serif}
  .hero h1,.brand-title,.domain-name,.mg-card h3,.modal h3,.lock h1,.empty .serif{font-weight:600}
  .stat-num,.ring-pct,.results-pct,.q-score .big{font-weight:600}
  .question-text{font-weight:500}

  /* ---- Top nav ---- */
  #topnav{position:relative;z-index:40;background:#000000;border-bottom:1px solid rgba(248,248,246,0.12)}
  .topbar{max-width:960px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 24px;flex-wrap:wrap}
  .brand{display:flex;flex-direction:column;gap:1px}
  .brand-label{font-size:9.5px;text-transform:uppercase;letter-spacing:2.6px;color:var(--accent)}
  .brand-title{font-family:'Cormorant Garamond',serif;font-size:25px;line-height:1.1;letter-spacing:.3px;color:#f8f8f6;font-weight:600}
  .nav{display:flex;gap:4px;background:rgba(248,248,246,0.06);border:1px solid rgba(248,248,246,0.12);border-radius:11px;padding:4px}
  .nav-btn{padding:7px 13px;border:none;background:transparent;color:rgba(248,248,246,0.62);font-family:'Sora',sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:8px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:6px}
  .nav-btn:hover{color:rgba(248,248,246,0.92)}
  .nav-btn.active{background:rgba(248,248,246,0.12);color:#f8f8f6}
  .nav-dot{font-size:10px;color:rgba(248,248,246,0.62);background:rgba(248,248,246,0.08);padding:1px 7px;border-radius:20px;border:1px solid rgba(248,248,246,0.14)}

  /* ---- Generic ---- */
  .section-label{font-size:10px;text-transform:uppercase;letter-spacing:2.2px;color:var(--text-dim);margin-bottom:13px;font-weight:600}
  .muted{color:var(--text-dim)}
  .serif{font-family:'Cormorant Garamond',serif}
  .row{display:flex;gap:12px}.wrap{flex-wrap:wrap}
  .btn{padding:13px 18px;border:none;border-radius:9px;font-size:14.5px;font-weight:600;cursor:pointer;font-family:'Manrope',sans-serif;transition:all .12s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}
  .btn-primary{background:#f5f2ea;color:#0a0a0f}.btn-primary:hover{background:#e8e5dd}
  .btn-outline{background:transparent;border:1px solid var(--border2);color:var(--text)}.btn-outline:hover{border-color:var(--border3);background:var(--surface)}
  .btn-ghost{background:var(--surface);border:1px solid var(--border);color:var(--text-mid)}.btn-ghost:hover{background:var(--surface2);color:var(--text)}
  .btn-disabled{background:rgba(248,248,246,0.06);color:var(--text-dim);cursor:not-allowed}
  .btn-danger{background:transparent;border:1px solid var(--red-border);color:var(--red)}.btn-danger:hover{background:var(--red-bg)}
  .btn-sm{padding:8px 13px;font-size:12.5px;border-radius:7px}
  .btn-block{width:100%}

  /* ---- Cards ---- */
  .card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px}
  .stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:26px}
  .stat{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:15px 16px}
  .stat-num{font-family:'Cormorant Garamond',serif;font-size:31px;line-height:1}
  .stat-label{font-size:10.5px;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dim);margin-top:6px}

  /* hero */
  .hero{display:flex;align-items:center;gap:24px;margin-bottom:28px;flex-wrap:wrap}
  .hero-text{flex:1;min-width:240px}
  .hero h1{font-family:'Cormorant Garamond',serif;font-size:40px;line-height:1.05;font-weight:400;margin-bottom:8px}
  .hero p{color:var(--text-dim);font-size:14.5px;max-width:440px}
  .ring-wrap{position:relative;width:128px;height:128px;flex-shrink:0}
  .ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
  .ring-pct{font-family:'Cormorant Garamond',serif;font-size:30px;line-height:1}
  .ring-sub{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dim);margin-top:2px}

  /* domain cards */
  .domain-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:28px}
  .domain-card{border-radius:14px;padding:20px;border:1px solid var(--border);position:relative;overflow:hidden;cursor:pointer;transition:all .18s ease}
  .domain-card:hover{transform:translateY(-2px)}
  .domain-card.prov{background:var(--prov-bg);border-color:var(--prov-border)}
  .domain-card.dd{background:var(--dd-bg);border-color:var(--dd-border)}
  .domain-pct{font-family:'Cormorant Garamond',serif;font-size:13px;padding:2px 9px;border-radius:20px;display:inline-block;margin-bottom:10px;letter-spacing:.5px}
  .prov .domain-pct{background:rgba(138,82,181,0.14);color:var(--prov)}
  .dd .domain-pct{background:rgba(47,138,128,0.14);color:var(--dd)}
  .domain-name{font-family:'Cormorant Garamond',serif;font-size:23px;margin-bottom:14px;line-height:1.1}
  .dbar{height:6px;border-radius:3px;background:rgba(248,248,246,0.1);overflow:hidden;margin-bottom:8px}
  .dbar > div{height:100%;border-radius:3px;transition:width .5s ease}
  .prov .dbar > div{background:var(--prov)}.dd .dbar > div{background:var(--dd)}
  .domain-card.fed{background:var(--fed-bg);border-color:var(--fed-border)}
  .domain-card.eth{background:var(--eth-bg);border-color:var(--eth-border)}
  .fed .domain-pct{background:rgba(176,113,42,0.14);color:var(--fed)}
  .eth .domain-pct{background:rgba(58,126,160,0.14);color:var(--eth)}
  .fed .dbar > div{background:var(--fed)}.eth .dbar > div{background:var(--eth)}
  .domain-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--text-mid)}

  /* nightmare CTA + difficulty */
  .nightmare-cta{display:block;width:100%;margin-bottom:28px;padding:18px 20px;border-radius:14px;background:linear-gradient(100deg,rgba(192,73,47,0.1),rgba(138,82,181,0.08));border:1px solid var(--nm-border);cursor:pointer;text-align:left;transition:all .18s ease;color:var(--text);font-family:'Manrope',sans-serif}
  .nightmare-cta:hover:not(:disabled){transform:translateY(-2px)}
  .nightmare-cta:disabled{opacity:.45;cursor:not-allowed}
  .nightmare-cta .nt{font-family:'Cormorant Garamond',serif;font-size:22px;display:flex;align-items:center;gap:9px}
  .nightmare-cta .ns{font-size:12.5px;color:var(--text-dim);margin-top:3px}
  .topic-dom.fed{background:var(--fed-bg);color:var(--fed)}
  .topic-dom.eth{background:var(--eth-bg);color:var(--eth)}

  /* lock screen */
  .lock-brand{text-align:center;font-size:9.5px;text-transform:uppercase;letter-spacing:2.6px;color:var(--accent);padding-top:30px}
  .lock{min-height:66vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;animation:fadeIn .4s ease}
  .lock-icon{font-size:30px;margin-bottom:16px;opacity:.85}
  .lock h1{font-family:'Cormorant Garamond',serif;font-size:38px;font-weight:400;margin-bottom:8px}
  .lock p{color:var(--text-dim);font-size:14px;margin-bottom:24px;max-width:340px}
  .lock-form{display:flex;gap:9px;width:100%;max-width:360px}
  .lock-form input{flex:1;text-align:center;letter-spacing:3px;font-size:15px;padding:14px}
  .lock-err{color:var(--red);font-size:13px;margin-top:14px;min-height:18px}

  /* filter panel */
  .filter-panel{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:18px}
  .field{margin-bottom:16px}
  .field:last-child{margin-bottom:0}
  .field-label{font-size:11px;text-transform:uppercase;letter-spacing:1.4px;color:var(--text-dim);margin-bottom:9px;font-weight:600;display:block}
  select,input[type=text],input[type=search],textarea{width:100%;background:var(--bg2);border:1px solid var(--border2);border-radius:8px;color:var(--text);padding:11px 13px;font-family:'Manrope',sans-serif;font-size:14px;transition:border-color .15s}
  select:focus,input:focus,textarea:focus{outline:none;border-color:var(--accent-border)}
  textarea{resize:vertical;line-height:1.6}
  .chips{display:flex;gap:7px;flex-wrap:wrap}
  .chip{padding:6px 12px;border-radius:20px;border:1px solid var(--border2);background:var(--surface);color:var(--text-mid);font-size:12.5px;cursor:pointer;transition:all .13s;user-select:none}
  .chip:hover{border-color:var(--border3)}
  .chip.on{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent)}
  .chip .ct{opacity:.6;font-size:11px;margin-left:4px}
  .seg{display:inline-flex;background:var(--bg2);border:1px solid var(--border2);border-radius:9px;padding:3px;gap:2px;flex-wrap:wrap}
  .seg button{border:none;background:transparent;color:var(--text-dim);padding:7px 13px;border-radius:6px;font-family:'Manrope',sans-serif;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .13s}
  .seg button.on{background:var(--surface3);color:var(--text)}
  .toggle{display:inline-flex;align-items:center;gap:9px;cursor:pointer;font-size:13px;color:var(--text-mid);user-select:none}
  .switch{width:38px;height:22px;border-radius:20px;background:var(--surface3);border:1px solid var(--border2);position:relative;transition:all .15s}
  .switch::after{content:'';position:absolute;width:16px;height:16px;border-radius:50%;background:var(--text-dim);top:2px;left:2px;transition:all .15s}
  .toggle.on .switch{background:var(--accent-bg);border-color:var(--accent-border)}
  .toggle.on .switch::after{left:18px;background:var(--accent)}

  /* quick actions */
  .quick{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:8px}
  .quick-btn{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;cursor:pointer;transition:all .15s;text-align:left;color:var(--text);font-family:'Manrope',sans-serif}
  .quick-btn:hover{background:var(--surface2);border-color:var(--border2)}
  .quick-btn .qt{font-weight:600;font-size:14px;margin-bottom:3px}
  .quick-btn .qs{font-size:12px;color:var(--text-dim)}
  .quick-btn:disabled{opacity:.4;cursor:not-allowed}

  /* topics breakdown */
  .topic-list{display:flex;flex-direction:column;gap:2px}
  .topic-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:9px;cursor:pointer;transition:background .13s}
  .topic-row:hover{background:var(--surface)}
  .topic-name{flex:1;font-size:13.5px}
  .topic-dom{font-size:9px;text-transform:uppercase;letter-spacing:1px;padding:2px 7px;border-radius:4px}
  .topic-dom.prov{background:var(--prov-bg);color:var(--prov)}
  .topic-dom.dd{background:var(--dd-bg);color:var(--dd)}
  .tbar{width:90px;height:5px;border-radius:3px;background:var(--surface3);overflow:hidden}
  .tbar > div{height:100%;background:var(--accent);border-radius:3px}
  .topic-frac{font-size:11.5px;color:var(--text-dim);width:42px;text-align:right;font-variant-numeric:tabular-nums}

  /* ---- Quiz ---- */
  .q-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}
  .q-progresswrap{flex:1}
  .q-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--text-dim);margin-bottom:7px}
  .progress-track{height:3px;background:var(--border);border-radius:2px;overflow:hidden}
  .progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .4s ease}
  .q-score{text-align:right;white-space:nowrap}
  .q-score .big{font-family:'Cormorant Garamond',serif;font-size:24px;line-height:1}
  .q-score .lbl{font-size:10px;color:var(--text-dim)}
  .badges{margin:18px 0 14px;display:flex;gap:7px;flex-wrap:wrap;align-items:center}
  .badge{display:inline-block;padding:3px 9px;border-radius:4px;font-size:9.5px;text-transform:uppercase;letter-spacing:1.6px;font-weight:600}
  .badge-dom.prov{background:var(--prov-bg);border:1px solid var(--prov-border);color:var(--prov)}
  .badge-dom.dd{background:var(--dd-bg);border:1px solid var(--dd-border);color:var(--dd)}
  .badge-dom.fed{background:var(--fed-bg);border:1px solid var(--fed-border);color:var(--fed)}
  .badge-dom.eth{background:var(--eth-bg);border:1px solid var(--eth-border);color:var(--eth)}
  .badge-topic{background:var(--surface2);border:1px solid var(--border);color:var(--text-mid)}
  .badge-flag{background:var(--amber-bg);border:1px solid var(--amber-border);color:var(--amber);cursor:pointer;margin-left:auto}
  .question-text{font-family:'Manrope',sans-serif;font-size:18px;line-height:1.72;margin-bottom:24px;font-weight:500;letter-spacing:-0.003em}
  .qnum{color:var(--text-dim);margin-right:7px}
  .options{display:flex;flex-direction:column;gap:9px;margin-bottom:26px}
  .option-btn{padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:9px;color:var(--text);font-size:14.5px;line-height:1.55;text-align:left;cursor:pointer;transition:all .14s ease;font-family:'Manrope',sans-serif;display:flex;gap:11px;align-items:flex-start}
  .option-btn .okey{font-weight:700;color:var(--text-dim);flex-shrink:0}
  .option-btn:hover:not(.locked){background:rgba(10,10,15,0.035);border-color:var(--border2)}
  .option-btn.selected{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent2)}
  .option-btn.selected .okey{color:var(--accent)}
  .option-btn.locked{cursor:default}
  .option-btn.correct{background:var(--green-bg);border-color:var(--green-border);color:var(--green)}
  .option-btn.correct .okey{color:var(--green)}
  .option-btn.wrong{background:var(--red-bg);border-color:var(--red-border);color:var(--red)}
  .option-btn.wrong .okey{color:var(--red)}
  .option-btn.dimmed{opacity:.4}
  .option-tag{display:inline-block;font-size:9px;text-transform:uppercase;letter-spacing:1.4px;padding:2px 6px;border-radius:3px;margin-left:8px}
  .tag-correct{background:var(--green-bg);color:var(--green)}.tag-yours{background:var(--red-bg);color:var(--red)}

  .teach-box{margin-bottom:28px;animation:fadeIn .3s ease}
  @keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
  .teach-verdict{padding:14px 18px;border-radius:11px 11px 0 0;font-size:14px;font-weight:600}
  .verdict-correct{background:var(--green-bg);border:1px solid var(--green-border);border-bottom:none;color:var(--green)}
  .verdict-wrong{background:var(--red-bg);border:1px solid var(--red-border);border-bottom:none;color:var(--red)}
  .verdict-neutral{background:var(--blue-bg);border:1px solid var(--blue-border);border-bottom:none;color:var(--blue)}
  .teach-content{padding:20px;background:var(--surface2);border:1px solid var(--border2);border-radius:0 0 11px 11px;font-size:14px;line-height:1.8;color:var(--text-mid)}
  .teach-content p{margin-bottom:13px}.teach-content p:last-child{margin-bottom:0}
  .teach-content strong{color:var(--text);font-weight:600}.teach-content em{color:var(--amber);font-style:normal}
  .teach-section{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}
  .teach-section-label{font-size:10px;text-transform:uppercase;letter-spacing:2px;margin-bottom:8px;font-weight:600}
  .label-trap{color:var(--red)}.label-rule{color:var(--blue)}.label-remember{color:var(--amber)}.label-cite{color:var(--text-dim)}
  .rule-box{padding:12px 16px;background:var(--blue-bg);border:1px solid var(--blue-border);border-radius:7px;font-size:13.5px;line-height:1.7;color:var(--blue)}
  .cite-box{padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:7px;font-size:12.5px;line-height:1.6;color:var(--text-dim)}
  .btn-row{display:flex;gap:10px}
  .btn-row .btn{flex:1}

  /* results */
  .results{text-align:center;padding-top:6vh;animation:fadeIn .4s ease}
  .results-pct{font-family:'Cormorant Garamond',serif;font-size:74px;line-height:1;margin-bottom:6px}
  .results-sub{font-size:16px;color:var(--text-dim);margin-bottom:14px}
  .results-msg{font-size:14px;color:var(--text-dim);line-height:1.7;max-width:470px;margin:0 auto 30px}
  .results-btns{display:flex;gap:11px;justify-content:center;flex-wrap:wrap}

  /* editor */
  .ed-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .opt-row{display:flex;gap:9px;align-items:flex-start;margin-bottom:8px}
  .opt-row input[type=radio]{margin-top:13px;accent-color:var(--accent);width:16px;height:16px;flex-shrink:0;cursor:pointer}
  .opt-row textarea{flex:1;min-height:42px}
  .opt-row .rm{background:transparent;border:1px solid var(--border2);color:var(--text-dim);border-radius:7px;width:36px;flex-shrink:0;cursor:pointer;align-self:stretch;font-size:16px}
  .opt-row .rm:hover{border-color:var(--red-border);color:var(--red)}
  .hint{font-size:11.5px;color:var(--text-dim);margin-top:5px;line-height:1.5}
  .q-list-item{display:flex;align-items:center;gap:12px;padding:11px 14px;background:var(--surface);border:1px solid var(--border);border-radius:9px;margin-bottom:7px}
  .q-list-item .ql-q{flex:1;font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .q-list-item .ql-meta{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px}
  .pill{font-size:9px;padding:2px 7px;border-radius:4px;text-transform:uppercase;letter-spacing:1px}
  .pill.builtin{background:var(--surface2);color:var(--text-dim)}
  .pill.custom{background:var(--accent-bg);color:var(--accent2)}

  /* manage */
  .mg-card{background:var(--surface);border:1px solid var(--border);border-radius:13px;padding:20px;margin-bottom:14px}
  .mg-card h3{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:400;margin-bottom:5px}
  .mg-card p{font-size:13px;color:var(--text-dim);margin-bottom:14px}

  /* modal + toast */
  .modal-bg{position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(3px);z-index:50;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease}
  .modal{background:var(--bg2);border:1px solid var(--border2);border-radius:16px;padding:26px;max-width:620px;width:100%;max-height:86vh;overflow:auto}
  .modal h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;margin-bottom:10px}
  .toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#0a0a0f;border:1px solid rgba(248,248,246,0.2);color:#f5f2ea;padding:12px 20px;border-radius:10px;font-size:13.5px;font-weight:600;z-index:60;animation:fadeIn .2s ease;box-shadow:0 10px 30px rgba(10,10,15,0.2)}

  .empty{text-align:center;padding:50px 20px;color:var(--text-dim)}
  .empty .serif{font-size:22px;color:var(--text-mid);margin-bottom:8px}
  .kbd{display:inline-block;padding:1px 7px;border:1px solid var(--border2);border-bottom-width:2px;border-radius:5px;background:var(--surface);font-size:11px;font-family:'Manrope';color:var(--text-mid);margin:0 1px}

  @media(max-width:680px){
    .stat-grid{grid-template-columns:repeat(2,1fr)}
    .domain-grid{grid-template-columns:1fr}
    .quick{grid-template-columns:1fr}
    .ed-grid{grid-template-columns:1fr}
    .hero h1{font-size:32px}
    .nav-btn{padding:7px 10px}
  }

  /* ---- Emerald glass deck appearance ---- */
  :root{
    color-scheme:light;
    --bg:#f2f2f7;--bg2:rgba(255,255,255,.38);
    --surface:rgba(255,255,255,.52);--surface2:rgba(255,255,255,.36);--surface3:rgba(255,255,255,.55);
    --border:rgba(255,255,255,.42);--border2:rgba(255,255,255,.58);--border3:rgba(255,255,255,.82);
    --text:#1c1c1e;--text-dim:#717176;--text-mid:#3a3a3c;
    --cream:#ffffff;
    --accent:#34c759;--accent2:#1a7a34;--accent-bg:rgba(52,199,89,.16);--accent-border:rgba(40,160,72,.4);
    --green:#34c759;--green-bg:rgba(52,199,89,.18);--green-border:rgba(52,199,89,.3);
    --red:#ff3b30;--red-bg:rgba(255,59,48,.12);--red-border:rgba(255,59,48,.25);
    --amber:#ff2d55;--amber-bg:rgba(255,45,85,.14);--amber-border:rgba(255,45,85,.27);
    --blue:#007aff;--blue-bg:rgba(0,122,255,.12);--blue-border:rgba(0,122,255,.24);
    --prov:#34c759;--prov-bg:rgba(52,199,89,.12);--prov-border:rgba(52,199,89,.24);
    --dd:#00c7be;--dd-bg:rgba(0,199,190,.12);--dd-border:rgba(0,199,190,.25);
    --fed:#007aff;--fed-bg:rgba(0,122,255,.12);--fed-border:rgba(0,122,255,.24);
    --eth:#ff2d55;--eth-bg:rgba(255,45,85,.12);--eth-border:rgba(255,45,85,.24);
    --nm:#ff2d55;--nm-bg:rgba(255,45,85,.12);--nm-border:rgba(255,45,85,.24);
    --glass:rgba(255,255,255,.5);--glass-strong:rgba(255,255,255,.55);--glass-edge:rgba(255,255,255,.7);
    --control-glass:rgba(255,255,255,.34);--control-edge:rgba(255,255,255,.58);
    --panel-glass:rgba(255,255,255,.24);--panel-edge:rgba(255,255,255,.52);
    --panel-shadow:0 10px 28px rgba(0,40,20,.045),inset 0 1px 0 rgba(255,255,255,.66);
    --spec:rgba(255,255,255,.9);--spec-faint:rgba(255,255,255,.52);
    --shadow-sm:0 2px 12px rgba(0,0,0,.04),inset 0 1px 0 rgba(255,255,255,.6);
    --shadow:0 20px 60px rgba(0,0,0,.07),0 4px 12px rgba(0,0,0,.03),inset 0 1.5px 0 rgba(255,255,255,.88),inset 0 0 32px 12px rgba(255,255,255,.32);
    --shadow-float:0 24px 80px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.65);
  }
  :root[data-theme="night"]{
    color-scheme:dark;
    --bg:#050505;--bg2:rgba(255,255,255,.035);
    --surface:rgba(16,16,17,.68);--surface2:rgba(255,255,255,.052);--surface3:rgba(255,255,255,.09);
    --border:rgba(255,255,255,.09);--border2:rgba(255,255,255,.15);--border3:rgba(255,255,255,.24);
    --text:#f5f5f7;--text-dim:#a1a1a7;--text-mid:#d1d1d6;
    --cream:#ffffff;
    --accent:#30d158;--accent2:#83ec9d;--accent-bg:rgba(48,209,88,.15);--accent-border:rgba(48,209,88,.32);
    --green:#30d158;--green-bg:rgba(48,209,88,.15);--green-border:rgba(48,209,88,.3);
    --red:#ff7368;--red-bg:rgba(255,115,104,.13);--red-border:rgba(255,115,104,.28);
    --amber:#ff5b79;--amber-bg:rgba(255,91,121,.13);--amber-border:rgba(255,91,121,.28);
    --blue:#409cff;--blue-bg:rgba(64,156,255,.13);--blue-border:rgba(64,156,255,.27);
    --prov:#30d158;--prov-bg:rgba(48,209,88,.13);--prov-border:rgba(48,209,88,.28);
    --dd:#38e5dc;--dd-bg:rgba(56,229,220,.12);--dd-border:rgba(56,229,220,.28);
    --fed:#409cff;--fed-bg:rgba(64,156,255,.13);--fed-border:rgba(64,156,255,.27);
    --eth:#ff6280;--eth-bg:rgba(255,98,128,.13);--eth-border:rgba(255,98,128,.27);
    --nm:#ff6280;--nm-bg:rgba(255,98,128,.13);--nm-border:rgba(255,98,128,.27);
    --glass:rgba(12,12,13,.52);--glass-strong:rgba(10,10,11,.66);--glass-edge:rgba(255,255,255,.13);
    --control-glass:rgba(255,255,255,.048);--control-edge:rgba(255,255,255,.12);
    --panel-glass:rgba(255,255,255,.052);--panel-edge:rgba(255,255,255,.1);
    --panel-shadow:0 12px 30px rgba(0,0,0,.23),inset 0 1px 0 rgba(255,255,255,.09);
    --spec:rgba(255,255,255,.19);--spec-faint:rgba(255,255,255,.1);
    --shadow-sm:0 1px 2px rgba(0,0,0,.28),0 8px 18px rgba(0,0,0,.24);
    --shadow:0 20px 56px rgba(0,0,0,.46),0 4px 12px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 30px 10px rgba(255,255,255,.025);
    --shadow-float:0 24px 70px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.12);
  }
  html{background:var(--bg);transition:background .3s ease}
  body{
    background:transparent;
    color:var(--text);
    font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","SF Pro Display","Helvetica Neue",Arial,sans-serif;
    line-height:1.55;
    letter-spacing:-.01em;
  }
  :root[data-theme="night"] body{background:transparent}
  body::before{display:none}
  #mesh-bg{
    position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;
    background:linear-gradient(145deg,#f2f6fa 0%,#eaf5ec 25%,#eef4ff 50%,#ebf8f8 75%,#f0f7ee 100%);
  }
  :root[data-theme="night"] #mesh-bg{background:radial-gradient(900px 700px at 30% 18%,#0e120f 0%,transparent 66%),linear-gradient(145deg,#050505 0%,#080808 48%,#060606 100%)}
  .mesh-orb{position:absolute;border-radius:50%;filter:blur(60px);will-change:transform,opacity}
  .mesh-orb-1{
    width:1000px;height:1000px;top:-20%;left:-15%;
    background:radial-gradient(circle,rgba(52,199,89,.4) 0%,rgba(48,209,88,.15) 40%,transparent 65%);
    animation:meshFlow1 14s ease-in-out infinite,meshPulse1 7s ease-in-out infinite;
  }
  .mesh-orb-2{
    width:1100px;height:1100px;bottom:-22%;right:-18%;
    background:radial-gradient(circle,rgba(255,45,85,.38) 0%,rgba(255,180,80,.14) 40%,transparent 65%);
    animation:meshFlow2 11s ease-in-out infinite,meshPulse2 5.5s ease-in-out infinite;
    animation-delay:-4s,-2s;
  }
  .mesh-orb-3{
    width:900px;height:900px;top:-10%;right:-10%;
    background:radial-gradient(circle,rgba(255,45,85,.35) 0%,rgba(255,100,130,.12) 40%,transparent 65%);
    animation:meshFlow3 16s ease-in-out infinite,meshPulse3 8s ease-in-out infinite;
    animation-delay:-7s,-4s;
  }
  .mesh-orb-4{
    width:950px;height:950px;bottom:-18%;left:-12%;
    background:radial-gradient(circle,rgba(0,122,255,.35) 0%,rgba(0,199,190,.12) 40%,transparent 65%);
    animation:meshFlow4 12s ease-in-out infinite,meshPulse4 6s ease-in-out infinite;
    animation-delay:-2s,-1s;
  }
  .mesh-orb-5{
    width:850px;height:850px;top:20%;left:25%;
    background:radial-gradient(circle,rgba(255,107,107,.32) 0%,rgba(255,159,10,.12) 40%,transparent 65%);
    animation:meshFlow5 18s ease-in-out infinite,meshPulse5 9s ease-in-out infinite;
    animation-delay:-10s,-5s;
  }
  :root:not([data-theme="night"]) .mesh-orb{opacity:1!important}
  :root:not([data-theme="night"]) .mesh-orb-1{background:radial-gradient(circle,rgba(52,199,89,.5) 0%,rgba(48,209,88,.2) 40%,transparent 65%)}
  :root:not([data-theme="night"]) .mesh-orb-2{background:radial-gradient(circle,rgba(255,45,85,.45) 0%,rgba(255,180,80,.18) 40%,transparent 65%)}
  :root:not([data-theme="night"]) .mesh-orb-3{background:radial-gradient(circle,rgba(255,45,85,.4) 0%,rgba(255,100,130,.16) 40%,transparent 65%)}
  :root:not([data-theme="night"]) .mesh-orb-4{background:radial-gradient(circle,rgba(0,122,255,.42) 0%,rgba(0,199,190,.16) 40%,transparent 65%)}
  :root:not([data-theme="night"]) .mesh-orb-5{background:radial-gradient(circle,rgba(255,107,107,.38) 0%,rgba(255,159,10,.16) 40%,transparent 65%)}
  :root[data-theme="night"] .mesh-orb{filter:blur(90px) saturate(.8)}
  :root[data-theme="night"] .mesh-orb-1{background:radial-gradient(circle,rgba(48,209,88,.16),rgba(48,209,88,.035) 42%,transparent 66%)}
  :root[data-theme="night"] .mesh-orb-2{background:radial-gradient(circle,rgba(255,45,85,.1),rgba(255,159,10,.025) 42%,transparent 66%)}
  :root[data-theme="night"] .mesh-orb-3{background:radial-gradient(circle,rgba(255,45,85,.07),rgba(255,100,130,.018) 42%,transparent 66%)}
  :root[data-theme="night"] .mesh-orb-4{background:radial-gradient(circle,rgba(0,199,190,.08),rgba(0,199,190,.02) 42%,transparent 66%)}
  :root[data-theme="night"] .mesh-orb-5{background:radial-gradient(circle,rgba(255,159,10,.06),rgba(255,159,10,.015) 42%,transparent 66%)}
  body[data-view="quiz"] .mesh-orb,body[data-view="editor"] .mesh-orb,body[data-view="manage"] .mesh-orb{
    animation-play-state:paused;will-change:auto;
  }
  @keyframes meshFlow1{
    0%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
    25%{transform:translate3d(280px,180px,0) scale(1.08) rotate(6deg)}
    50%{transform:translate3d(140px,320px,0) scale(.92) rotate(-4deg)}
    75%{transform:translate3d(-200px,120px,0) scale(1.05) rotate(10deg)}
    100%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
  }
  @keyframes meshFlow2{
    0%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
    20%{transform:translate3d(-300px,-180px,0) scale(1.1) rotate(-5deg)}
    40%{transform:translate3d(-180px,-350px,0) scale(.9) rotate(3deg)}
    60%{transform:translate3d(120px,-200px,0) scale(1.06) rotate(-8deg)}
    80%{transform:translate3d(200px,50px,0) scale(.94) rotate(6deg)}
    100%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
  }
  @keyframes meshFlow3{
    0%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
    16%{transform:translate3d(-250px,200px,0) scale(1.06) rotate(4deg)}
    33%{transform:translate3d(-350px,-60px,0) scale(.94) rotate(-7deg)}
    50%{transform:translate3d(-100px,-280px,0) scale(1.04) rotate(9deg)}
    66%{transform:translate3d(160px,-140px,0) scale(.96) rotate(-3deg)}
    83%{transform:translate3d(80px,180px,0) scale(1.02) rotate(5deg)}
    100%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
  }
  @keyframes meshFlow4{
    0%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
    25%{transform:translate3d(320px,-100px,0) scale(1.08) rotate(-6deg)}
    50%{transform:translate3d(180px,-280px,0) scale(.9) rotate(5deg)}
    75%{transform:translate3d(-120px,-160px,0) scale(1.05) rotate(-10deg)}
    100%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
  }
  @keyframes meshFlow5{
    0%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
    20%{transform:translate3d(220px,-200px,0) scale(1.1) rotate(7deg)}
    40%{transform:translate3d(-160px,-300px,0) scale(.88) rotate(-5deg)}
    60%{transform:translate3d(-280px,100px,0) scale(1.06) rotate(10deg)}
    80%{transform:translate3d(60px,260px,0) scale(.94) rotate(-4deg)}
    100%{transform:translate3d(0,0,0) scale(1) rotate(0deg)}
  }
  @keyframes meshPulse1{0%,100%{opacity:.12}50%{opacity:.22}}
  @keyframes meshPulse2{0%,100%{opacity:.11}50%{opacity:.2}}
  @keyframes meshPulse3{0%,100%{opacity:.1}50%{opacity:.18}}
  @keyframes meshPulse4{0%,100%{opacity:.11}50%{opacity:.2}}
  @keyframes meshPulse5{0%,100%{opacity:.1}50%{opacity:.16}}
  ::selection{background:rgba(52,199,89,.2);color:var(--text)}
  .container{max-width:1180px;padding:18px 28px 74px}
  .container.dashboard-view{max-width:1720px;padding:20px clamp(12px,1.25vw,20px) 74px}
  .container.wide{max-width:1180px}
  .container.quiz-view{max-width:1720px;padding:10px clamp(10px,1vw,16px) 60px}
  .brand-label,.nav-btn,.section-label,.field-label,.badge,.stat-label,.seg button,.topic-dom,.option-tag,.lock-brand,.ql-meta,
  .brand-title,.hero h1,.domain-name,.stat-num,.ring-pct,.q-score .big,.question-text,.results-pct,.mg-card h3,.modal h3,.lock h1,.empty .serif{
    font-family:inherit;
  }
  .serif,.btn,.quick-btn,.nightmare-cta,.nightmare-cta .nt,.kbd{font-family:inherit}
  #topnav{
    position:relative;top:auto;z-index:40;padding:0;
    background:rgba(255,255,255,.55);border-bottom:1px solid rgba(52,199,89,.12);
    box-shadow:0 1px 0 rgba(0,0,0,.03),inset 0 1px 0 rgba(255,255,255,.8),inset 0 0 20px 8px rgba(255,255,255,.2);
    backdrop-filter:blur(40px) saturate(2);-webkit-backdrop-filter:blur(40px) saturate(2);
    transition:box-shadow .22s ease;
  }
  #topnav[hidden]{display:none!important}
  #topnav::after{
    content:'';position:absolute;bottom:0;left:0;right:0;height:2px;pointer-events:none;
    background:linear-gradient(90deg,transparent,rgba(52,199,89,.4),rgba(0,199,190,.35),rgba(52,199,89,.4),transparent);opacity:.7;
  }
  :root[data-theme="night"] #topnav{
    background:rgba(7,7,8,.78);border-bottom-color:rgba(48,209,88,.12);
    box-shadow:0 1px 0 rgba(48,209,88,.12),0 14px 28px rgba(0,0,0,.34);
  }
  #topnav:empty{display:none}
  .topbar{
    position:static;
    max-width:1440px;margin:0 auto;
    padding:10px 20px;
    position:relative;overflow:hidden;isolation:isolate;
    border:0;border-radius:0;background:transparent;box-shadow:none;
    backdrop-filter:none;-webkit-backdrop-filter:none;
    flex-wrap:nowrap;
  }
  .topbar::after{display:none}
  .brand{gap:0;min-width:248px}
  .brand-title{order:-1;font-size:22px;line-height:1.15;font-weight:700;letter-spacing:-.04em;color:var(--text)}
  .brand-label{font-size:11px;font-weight:500;letter-spacing:0;text-transform:none;color:var(--text-dim)}
  .nav{gap:4px;padding:5px;border-radius:16px;background:var(--control-glass);border:1px solid var(--control-edge);box-shadow:inset 0 1px 0 var(--spec-faint);backdrop-filter:blur(22px) saturate(1.55);-webkit-backdrop-filter:blur(22px) saturate(1.55)}
  .nav-btn{
    min-height:42px;padding:0 18px;border-radius:12px;
    color:var(--text-dim);font-size:14px;font-weight:550;letter-spacing:-.01em;text-transform:none;
  }
  .nav-btn:hover{color:var(--text);background:var(--surface)}
  .nav-btn.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}
  .nav-dot{font-size:11px;color:var(--accent);background:var(--accent-bg);padding:2px 7px;border:0}
  .theme-mode{
    --theme-index:0;display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:3px;white-space:nowrap;
    position:relative;isolation:isolate;min-width:174px;
    margin-left:auto;padding:4px;height:43px;border-radius:14px;
    background:var(--control-glass);border:1px solid var(--control-edge);box-shadow:inset 0 1px 0 var(--spec-faint);
    backdrop-filter:blur(22px) saturate(1.55);-webkit-backdrop-filter:blur(22px) saturate(1.55);
  }
  .theme-mode::before{
    content:'';position:absolute;z-index:-1;top:4px;bottom:4px;left:4px;
    width:calc((100% - 14px)/3);border-radius:10px;
    background:rgba(255,255,255,.78);box-shadow:var(--shadow-sm);
    transform:translateX(calc(var(--theme-index) * (100% + 3px)));
    transition:transform .27s cubic-bezier(.22,.61,.36,1),background .2s ease,box-shadow .2s ease;
  }
  .theme-option{
    border:0;background:transparent;color:var(--text-dim);height:33px;padding:0 12px;border-radius:10px;
    font:550 12px/1 inherit;cursor:pointer;transition:color .16s ease,transform .1s ease;
  }
  .theme-option:hover{color:var(--text)}
  .theme-option.on{background:transparent;color:var(--accent);box-shadow:none}
  .theme-option:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
  :root[data-theme="night"] .theme-mode::before{background:rgba(255,255,255,.075);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 4px 12px rgba(0,0,0,.25)}
  .section-label{margin-bottom:16px;font-size:18px;line-height:1.2;font-weight:650;letter-spacing:-.035em;text-transform:none;color:var(--text)}
  @keyframes liquidAction{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
  .btn{border-radius:12px;font-size:14px;font-weight:600;min-height:47px;letter-spacing:-.01em;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s ease,background .2s ease,border-color .2s ease;backdrop-filter:blur(20px) saturate(1.6);-webkit-backdrop-filter:blur(20px) saturate(1.6)}
  .btn-primary{
    background:linear-gradient(120deg,rgba(103,212,13,.72) 0%,rgba(34,180,85,.84) 42%,rgba(103,212,13,.74) 100%);
    background-size:220% 220%;animation:liquidAction 7s ease-in-out infinite;color:#fff;border:1px solid rgba(255,255,255,.28);
    box-shadow:0 6px 24px rgba(34,180,85,.22),inset 0 1px 0 rgba(255,255,255,.45),inset 0 0 10px 4px rgba(255,255,255,.22);
  }
  .btn-primary:hover{
    transform:translateY(-1px);
    background:linear-gradient(120deg,rgba(103,212,13,.84) 0%,rgba(34,180,85,.92) 42%,rgba(103,212,13,.86) 100%);
    background-size:220% 220%;
    box-shadow:0 8px 28px rgba(34,180,85,.22),0 3px 8px rgba(34,180,85,.08),inset 0 1px 0 rgba(255,255,255,.5),inset 0 0 10px 4px rgba(255,255,255,.25)
  }
  .btn-outline{background:var(--control-glass);border-color:var(--control-edge);color:var(--text);box-shadow:inset 0 1px 0 var(--spec-faint)}
  .btn-outline:hover{background:rgba(255,255,255,.48);border-color:var(--border3)}
  .btn-ghost{background:var(--control-glass);border-color:var(--control-edge);color:var(--text-mid);box-shadow:inset 0 1px 0 var(--spec-faint)}
  .btn-disabled{background:var(--surface3);color:var(--text-dim)}
  .btn-danger{background:var(--red-bg);border-color:var(--red-border);color:var(--red)}
  @keyframes stageIn{
    from{opacity:0;transform:translateY(16px) scale(.985);filter:blur(5px)}
    to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
  }
  @keyframes sectionTitleFlow{
    0%{background-position:0% 50%}
    50%{background-position:100% 50%}
    100%{background-position:0% 50%}
  }
  .stage-glass{
    position:relative;overflow:hidden;padding:clamp(20px,3vw,34px);
    border:1.5px solid rgba(255,255,255,.75);border-radius:28px;
    background:rgba(255,255,255,.48);
    box-shadow:0 30px 90px rgba(0,60,30,.1),0 10px 30px rgba(0,60,30,.06),inset 0 2px 0 rgba(255,255,255,.9),inset 0 0 40px 16px rgba(255,255,255,.3);
    backdrop-filter:blur(40px) saturate(1.8) brightness(1.05);
    -webkit-backdrop-filter:blur(40px) saturate(1.8) brightness(1.05);
    animation:stageIn .4s cubic-bezier(.22,.61,.36,1) both;
  }
  :root[data-theme="night"] .stage-glass{
    border-color:rgba(255,255,255,.13);background:rgba(10,10,11,.68);
    box-shadow:0 30px 90px rgba(0,0,0,.58),0 10px 30px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 40px 16px rgba(255,255,255,.018);
    backdrop-filter:blur(40px) saturate(1.18) brightness(.86);
    -webkit-backdrop-filter:blur(40px) saturate(1.18) brightness(.86);
  }
  .quiz-stage{
    max-width:1424px;margin:0 auto;
    padding:clamp(14px,1.55vw,20px) clamp(24px,3vw,42px) clamp(24px,3vw,38px);
    overflow:visible;animation:none;
  }
  .card,.surface-section,.filter-panel,.stat,.mg-card,.q-head{
    background:var(--glass-strong);border:1.5px solid var(--glass-edge);box-shadow:var(--shadow-sm);
    backdrop-filter:blur(40px) saturate(1.8);
    -webkit-backdrop-filter:blur(40px) saturate(1.8);
  }
  .surface-section,.stat,.mg-card,.q-head{position:relative;overflow:hidden;isolation:isolate}
  .surface-section::before,.mg-card::before,.q-head::before{
    content:'';position:absolute;left:14%;right:14%;top:0;height:1.5px;z-index:2;pointer-events:none;
    background:linear-gradient(90deg,transparent,var(--spec-faint),var(--spec),var(--spec-faint),transparent);
  }
  .surface-section{border-radius:24px;padding:22px;margin-bottom:18px;box-shadow:var(--shadow)}
  .hero-panel{
    display:grid;grid-template-columns:minmax(450px,1fr) 320px;gap:16px;
    padding:20px;margin-bottom:18px;border-radius:25px;
    position:relative;isolation:isolate;overflow:hidden;
    background:var(--glass-strong);border:1.5px solid var(--glass-edge);box-shadow:var(--shadow);
    backdrop-filter:blur(48px) saturate(2.2);
    -webkit-backdrop-filter:blur(48px) saturate(2.2);
  }
  .hero-panel::before{
    content:'';position:absolute;z-index:-1;inset:-1px;pointer-events:none;
    background:
      radial-gradient(310px 220px at 80% 12%,rgba(50,125,246,.11),transparent 70%),
      radial-gradient(250px 210px at 42% 88%,rgba(84,173,42,.08),transparent 72%);
  }
  .hero-panel::after{
    content:'';position:absolute;left:20%;right:20%;top:0;height:2px;z-index:2;pointer-events:none;
    border-radius:0 0 8px 8px;background:linear-gradient(90deg,transparent,var(--accent),#00c7be,transparent);opacity:.58;
  }
  .dashboard-stage{padding:clamp(26px,3.2vw,38px)}
  .dashboard-meta{
    display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:22px;padding-bottom:18px;
    border-bottom:1px solid rgba(10,26,16,.09);color:rgba(10,26,16,.47);
    font-size:12px;font-weight:750;letter-spacing:.26em;text-transform:uppercase;
  }
  .dashboard-meta .coverage{color:rgba(52,199,89,.72);letter-spacing:.12em}
  :root[data-theme="night"] .dashboard-meta{border-bottom-color:rgba(226,235,255,.1);color:var(--text-dim)}
  .dashboard-utility-head{
    display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin:0 0 18px;
    min-height:clamp(128px,11vw,188px);
  }
  .dashboard-utility-head > div:first-child{min-width:0}
  .dashboard-kicker{font-size:clamp(13px,1.25vw,17px);font-weight:760;color:var(--text-dim);margin-bottom:8px}
  .dashboard-utility-head h1{
    display:inline-block;margin:0 0 -.14em;padding-bottom:.14em;overflow:visible;
    font-size:clamp(58px,7.2vw,118px);line-height:1;font-weight:900;letter-spacing:0;color:var(--text);
    transform:translateY(-.045em);
    background:linear-gradient(90deg,#8ce840,#50d470,#34c759,#50d470,#8ce840);
    background-size:400% 100%;
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
    animation:sectionTitleFlow 14s ease-in-out infinite;
    filter:drop-shadow(0 0 20px rgba(52,199,89,.18));
  }
  .exam-mini{
    min-width:230px;border:1px solid var(--panel-edge);border-radius:18px;background:var(--control-glass);
    padding:17px 18px;display:grid;gap:6px;text-align:center;
  }
  .exam-mini span{font-size:15px;font-weight:760;color:var(--text-dim)}
  .exam-mini strong{font-size:24px;line-height:1.05;color:var(--text);letter-spacing:0}
  .exam-mini small{font-size:17px;font-weight:720;color:var(--text-dim)}
  .exam-mini.final,.exam-mini.crunch{border-color:rgba(0,199,190,.24);background:rgba(0,199,190,.065)}
  .dashboard-stage .hero-panel{
    display:block;padding:0;margin-bottom:34px;border:0;border-radius:0;
    background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;
  }
  .dashboard-stage .hero-panel::before,.dashboard-stage .hero-panel::after{display:none}
  .dashboard-stage .hero{display:block;margin:0;padding:0;max-width:1000px}
  .dashboard-stage .hero-text{min-width:0}
  .hero h1{
    font-size:clamp(42px,4.6vw,58px);font-weight:800;letter-spacing:-.065em;line-height:1.02;margin-bottom:17px;color:var(--text);
    background:linear-gradient(90deg,#8ce840,#50d470,#34c759,#50d470,#8ce840);background-size:400% 100%;
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
    animation:sectionTitleFlow 14s ease-in-out infinite;
  }
  .dashboard-stage .hero h1{font-size:clamp(54px,7vw,86px);font-weight:900;line-height:.98;max-width:1010px;margin-bottom:18px}
  .hero p{font-size:16px;line-height:1.65;color:var(--text-mid);max-width:450px}
  .dashboard-stage .hero p{max-width:650px;font-size:17px;line-height:1.55;color:rgba(10,26,16,.66)}
  :root[data-theme="night"] .dashboard-stage .hero p{color:var(--text-mid)}
  .label-info{display:inline-flex;align-items:center;gap:6px;min-width:0}
  .info-tip{
    position:relative;display:inline-grid;place-items:center;flex:0 0 auto;
    width:16px;height:16px;border-radius:50%;border:1px solid var(--control-edge);
    background:rgba(255,255,255,.56);color:var(--text-dim);font-size:11px;font-weight:820;line-height:1;
    text-transform:none;letter-spacing:0;cursor:help;z-index:5;
  }
  .info-tip::after{display:none}
  .floating-info-tip{
    position:fixed;left:0;top:0;z-index:9999;width:260px;max-width:calc(100vw - 24px);
    padding:8px 10px;border-radius:10px;border:1px solid var(--panel-edge);
    background:rgba(255,255,255,.96);box-shadow:0 12px 30px rgba(10,26,16,.12);
    color:var(--text-mid);font-size:12px;font-weight:600;line-height:1.35;text-align:left;text-transform:none;letter-spacing:0;white-space:normal;overflow-wrap:break-word;
    opacity:0;pointer-events:none;transition:opacity .14s ease;
  }
  .floating-info-tip.visible{opacity:1}
  .study-plan-section,.coach-section{overflow:visible}
  .snapshot-grid{overflow:visible}
  .info-tip:hover,.info-tip:focus-visible{border-color:var(--accent-border);color:var(--accent2);outline:none}
  :root[data-theme="night"] .info-tip{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14)}
  :root[data-theme="night"] .floating-info-tip{background:rgba(26,27,29,.96);box-shadow:0 14px 32px rgba(0,0,0,.34);color:var(--text-mid)}
  .ring-wrap{width:154px;height:154px}
  .ring-wrap svg{width:154px;height:154px}
  .ring-pct{font-size:35px;font-weight:650;letter-spacing:-.05em}
  .ring-sub{font-size:11px;letter-spacing:0;text-transform:none}
  .hero-nightmare{
    margin:0;padding:26px 23px;display:flex;flex-direction:column;justify-content:center;
    border-radius:18px;background:linear-gradient(145deg,var(--glass),var(--red-bg));border-color:var(--glass-edge);
  }
  .hero-nightmare:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-sm)}
  .nightmare-cta .nt{font-size:21px;font-weight:650;letter-spacing:-.035em;gap:12px}
  .nightmare-mark{width:36px;height:36px;border-radius:50%;background:var(--red-bg);display:inline-grid;place-items:center}
  .nightmare-mark::before{content:"";width:14px;height:14px;border-radius:50%;background:var(--red);box-shadow:5px -3px 0 0 var(--surface)}
  .nightmare-cta .ns{font-size:13px;line-height:1.6;margin:10px 0 22px;color:var(--text-mid)}
  .nightmare-cta .btn{align-self:flex-start;padding:11px 17px;min-height:42px}
  .stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
  .stat.stat-card{
    --metric:var(--accent);position:relative;border-radius:20px;padding:15px 18px 20px;border:1px solid var(--panel-edge);
    background:var(--panel-glass)!important;box-shadow:var(--panel-shadow)!important;
    backdrop-filter:blur(28px) saturate(1.55);-webkit-backdrop-filter:blur(28px) saturate(1.55);
  }
  .stat.stat-card::before,.stat.stat-card::after{display:none}
  .stat.stat-card:nth-child(1){--metric:var(--prov)}
  .stat.stat-card:nth-child(2){--metric:var(--fed)}
  .stat.stat-card:nth-child(3){--metric:var(--red)}
  .stat.stat-card:nth-child(4){--metric:var(--eth)}
  :root[data-theme="night"] .stat.stat-card{background:var(--panel-glass)!important}
  .stat-num{font-size:31px;line-height:1.2;font-weight:620;letter-spacing:-.05em}
  .stat-label{font-size:11px;letter-spacing:0;text-transform:none;margin-top:2px;color:var(--text-dim)}
  .snapshot-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 42px}
  .snapshot-metric{
    --metric:#34c759;position:relative;min-height:108px;padding:0 18px 4px 14px;
    display:flex;flex-direction:column;align-items:flex-start;background:transparent;
  }
  .snapshot-metric::after{
    content:'';position:absolute;left:0;right:10px;bottom:0;height:4px;background:var(--metric);
    display:none;
  }
  .snapshot-label{font-size:11px;font-weight:750;letter-spacing:.22em;text-transform:uppercase;color:rgba(10,26,16,.5);margin-bottom:8px}
  .snapshot-value{font-size:clamp(34px,3.6vw,46px);font-weight:850;line-height:1;letter-spacing:-.065em;color:var(--metric);margin-bottom:8px}
  .snapshot-detail{font-size:13px;line-height:1.45;color:rgba(10,26,16,.64);max-width:190px}
  :root[data-theme="night"] .snapshot-label{color:var(--text-dim)}
  :root[data-theme="night"] .snapshot-detail{color:var(--text-mid)}
  .answered-section{margin-top:-18px;margin-bottom:34px;overflow:hidden}
  .answered-head{
    display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:13px;
  }
  .answered-head h2{
    margin:0 0 3px;font-size:22px;line-height:1.15;font-weight:760;letter-spacing:0;color:var(--text);
  }
  .answered-head p{margin:0;color:var(--text-mid);font-size:13px;line-height:1.45}
  .answered-list{
    max-height:430px;overflow:auto;border-top:1px solid var(--border);
    scrollbar-width:thin;scrollbar-color:rgba(52,199,89,.42) transparent;
  }
  .answered-row{
    display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;
    padding:13px 2px;border-bottom:1px solid var(--border);
  }
  .answered-main{min-width:0}
  .answered-tags{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-bottom:6px}
  .answered-status{
    display:inline-flex;align-items:center;min-height:22px;border-radius:999px;padding:4px 8px;
    font-size:10.5px;font-weight:780;line-height:1;text-transform:uppercase;letter-spacing:.06em;
    border:1px solid var(--panel-edge);background:var(--control-glass);
  }
  .answered-status.correct{color:var(--green);border-color:var(--green-border);background:var(--green-bg)}
  .answered-status.wrong{color:var(--red);border-color:var(--red-border);background:var(--red-bg)}
  .answered-topic{font-size:12px;font-weight:690;color:var(--text-dim)}
  .answered-question{
    margin:0;color:var(--text);font-size:14px;line-height:1.42;font-weight:590;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
  }
  .answered-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px;color:var(--text-dim);font-size:11.5px;font-weight:650}
  .answered-meta span:not(:last-child)::after{content:' ·';margin-left:8px;color:var(--text-dim)}
  .answered-review-btn{min-height:36px;white-space:nowrap}
  .answered-empty{
    border-top:1px solid var(--border);padding:14px 0 3px;color:var(--text-mid);font-size:13px;line-height:1.45;
  }
  .domain-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:0}
  .domain-card.column-card{
    min-height:165px;padding:18px;background:var(--panel-glass)!important;
    backdrop-filter:blur(22px) saturate(1.5)!important;-webkit-backdrop-filter:blur(22px) saturate(1.5)!important;
    border-top:1px solid var(--panel-edge)!important;border-right:1px solid var(--panel-edge)!important;border-left:1px solid var(--panel-edge)!important;
    border-bottom:1px solid var(--panel-edge)!important;box-shadow:none!important;
    border-radius:16px!important;
    width:100%;display:block;text-align:left;color:var(--text);font:inherit;cursor:pointer;
    transition:transform .2s cubic-bezier(.4,0,.2,1),background .2s ease;
  }
  .domain-card.column-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.38)!important;box-shadow:var(--panel-shadow)!important}
  :root[data-theme="night"] .domain-card.column-card{background:var(--panel-glass)!important}
  :root[data-theme="night"] .domain-card.column-card:hover{background:rgba(255,255,255,.078)!important}
  .domain-card.prov{--col-tone:var(--prov)}
  .domain-card.dd{--col-tone:var(--dd)}
  .domain-card.fed{--col-tone:var(--fed)}
  .domain-card.eth{--col-tone:var(--eth)}
  .domain-card .domain-pct{
    font-family:inherit;font-size:12px;font-weight:800;border-radius:10px;padding:7px 11px;margin-bottom:18px;
    background:var(--col-tone,#34c759)!important;color:#fff!important;
    box-shadow:0 4px 14px rgba(0,0,0,.12);
  }
  .domain-name{display:block;font-size:17px;line-height:1.3;font-weight:600;letter-spacing:-.025em;margin-bottom:19px}
  .dbar{height:6px;background:var(--surface3);margin-bottom:11px}
  .domain-card .dbar{display:block}
  .domain-card .dbar > div,.domain-card .dbar > span{display:block;height:100%;background:var(--col-tone,#34c759);animation:none}
  .domain-meta{display:flex;font-size:12px;color:var(--text-dim)}
  .quick-session-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:28px;margin-bottom:18px}
  .quick-session-layout .surface-section{height:100%;margin:0}
  .quick{display:flex;flex-direction:column;gap:9px;margin:0}
  .quick-btn{
    background:var(--panel-glass);border:1px solid var(--panel-edge);border-radius:13px;padding:13px 15px;
    display:flex;align-items:baseline;justify-content:space-between;gap:10px;
  }
  .quick-btn{backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);box-shadow:inset 0 1px 0 var(--spec-faint)}
  .quick-btn:hover{background:rgba(255,255,255,.4);box-shadow:var(--panel-shadow)}
  :root[data-theme="night"] .quick-btn:hover{background:rgba(255,255,255,.08)}
  .quick-btn .qt{font-size:14px;font-weight:560;margin:0}
  .quick-btn .qs{font-size:12px;white-space:nowrap}
  .study-plan-section{margin-top:12px}
  .start-simple{
    display:grid;grid-template-columns:minmax(260px,1fr) minmax(320px,480px) auto;gap:14px;align-items:center;
    padding:13px 14px;border-radius:14px;border:1px solid var(--panel-edge);
    background:var(--panel-glass);
    box-shadow:inset 0 1px 0 var(--spec-faint);
  }
  .start-copy .section-label{margin-bottom:5px}
  .start-copy h2{
    margin:0 0 4px;font-size:20px;line-height:1.16;font-weight:760;letter-spacing:0;color:var(--text);
    background:linear-gradient(90deg,#67d40d,#22b455,#67d40d);
    background-size:220% 100%;
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
    animation:liquidAction 7s ease-in-out infinite;
    filter:drop-shadow(0 0 10px rgba(52,199,89,.12));
  }
  .start-copy p{margin:0;max-width:560px;color:var(--text-mid);font-size:13.5px;line-height:1.45}
  .engine-reasons{
    display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;max-width:650px;
  }
  .engine-reasons span{
    display:inline-flex;align-items:center;min-height:24px;padding:5px 9px;border-radius:999px;
    border:1px solid var(--control-edge);background:var(--control-glass);
    color:var(--text-mid);font-size:11.5px;font-weight:680;line-height:1.15;
    backdrop-filter:blur(14px) saturate(1.35);-webkit-backdrop-filter:blur(14px) saturate(1.35);
  }
  .start-smart-btn{
    min-height:64px;min-width:150px;border:1px solid rgba(255,255,255,.44);border-radius:15px;padding:11px 16px;cursor:pointer;
    background:linear-gradient(120deg,rgba(103,212,13,.72) 0%,rgba(34,180,85,.84) 42%,rgba(103,212,13,.74) 100%);
    background-size:220% 220%;animation:liquidAction 7s ease-in-out infinite;
    color:#fff;font:inherit;text-align:left;
    box-shadow:0 6px 24px rgba(34,180,85,.22),inset 0 1px 0 rgba(255,255,255,.45),inset 0 0 10px 4px rgba(255,255,255,.22);
    display:flex;flex-direction:column;justify-content:center;gap:3px;
    transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
  }
  .start-smart-btn:hover{
    transform:translateY(-1px);
    background:linear-gradient(120deg,rgba(103,212,13,.84) 0%,rgba(34,180,85,.92) 42%,rgba(103,212,13,.86) 100%);
    background-size:220% 220%;
    box-shadow:0 8px 28px rgba(34,180,85,.22),0 3px 8px rgba(34,180,85,.08),inset 0 1px 0 rgba(255,255,255,.5),inset 0 0 10px 4px rgba(255,255,255,.25)
  }
  .start-smart-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
  .start-smart-btn span{font-size:18px;font-weight:790;line-height:1.1;color:#fff}
  .start-smart-btn small{font-size:12px;font-weight:720;opacity:.88;color:rgba(255,255,255,.88)}
  .plan-pulse{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0}
  .plan-pulse button{
    min-height:38px;border-radius:10px;border:1px solid var(--panel-edge);background:var(--control-glass);
    color:var(--text);font:inherit;text-align:left;padding:7px 9px;display:flex;align-items:baseline;gap:7px;
    backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);
  }
  .plan-pulse button:disabled{opacity:.45;cursor:not-allowed}
  .plan-pulse strong{font-size:17px;line-height:1;color:var(--text)}
  .plan-pulse span{font-size:11px;font-weight:650;color:var(--text-dim);white-space:nowrap}
  .plan-pulse .label-info{gap:5px}
  .plan-pulse .info-tip{width:14px;height:14px;font-size:10px}
  .mode-drawer{margin-top:10px;border-top:1px solid var(--border);padding-top:10px}
  .engine-drawer{margin-top:10px;border-top:1px solid var(--border);padding-top:10px}
  .engine-drawer summary{
    width:max-content;list-style:none;cursor:pointer;color:var(--text-mid);font-size:13px;font-weight:650;
    padding:8px 2px;border-radius:10px;
  }
  .engine-drawer summary::-webkit-details-marker{display:none}
  .engine-drawer summary::after{content:'+';display:inline-block;margin-left:8px;color:var(--accent2);font-weight:800}
  .engine-drawer[open] summary::after{content:'-'}
  .engine-detail-grid{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:10px;margin-top:8px}
  .engine-detail-card{
    min-height:86px;border-radius:13px;border:1px solid var(--panel-edge);background:var(--control-glass);
    padding:12px 13px;box-shadow:inset 0 1px 0 var(--spec-faint);
  }
  .engine-detail-card > span{
    display:block;margin-bottom:9px;color:var(--text-dim);font-size:11px;font-weight:760;letter-spacing:.14em;text-transform:uppercase;
  }
  .engine-mix{display:flex;flex-wrap:wrap;gap:6px}
  .engine-mix b{
    display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;background:var(--panel-glass);
    color:var(--text);font-size:11.5px;font-weight:700;line-height:1.1;border:1px solid var(--panel-edge);
  }
  .engine-weak-card p{margin:0 0 8px;display:grid;gap:2px}
  .engine-weak-card p:last-child{margin-bottom:0}
  .engine-weak-card strong{font-size:13px;font-weight:720;color:var(--text);line-height:1.25}
  .engine-weak-card small{font-size:11.5px;color:var(--text-dim);line-height:1.25}
  .mode-drawer summary{
    width:max-content;list-style:none;cursor:pointer;color:var(--text-mid);font-size:13px;font-weight:650;
    padding:8px 2px;border-radius:10px;
  }
  .mode-drawer summary::-webkit-details-marker{display:none}
  .mode-drawer summary::after{content:'+';display:inline-block;margin-left:8px;color:var(--accent2);font-weight:800}
  .mode-drawer[open] summary::after{content:'-'}
  .plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px}
  .plan-grid .quick-btn{min-height:72px}
  .plan-primary{border-color:rgba(52,199,89,.28);background:linear-gradient(110deg,rgba(52,199,89,.13),rgba(255,255,255,.38))}
  .plan-due{border-color:rgba(0,122,255,.24)}
  .plan-fragile{border-color:rgba(255,149,0,.26)}
  .plan-recall{border-color:rgba(175,82,222,.25)}
  .plan-cold{border-color:rgba(0,199,190,.24)}
  .plan-exam{border-color:rgba(255,45,85,.24)}
  :root[data-theme="night"] .plan-primary{background:linear-gradient(110deg,rgba(48,209,88,.11),rgba(255,255,255,.045));border-color:rgba(48,209,88,.24)}
  :root[data-theme="night"] .start-simple{background:var(--panel-glass);border-color:var(--panel-edge)}
  :root[data-theme="night"] .start-smart-btn{border-color:rgba(255,255,255,.16)}
  .coach-section{margin-top:18px}
  .coach-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .coach-card{
    min-height:98px;padding:15px 16px;border-radius:13px;border:1px solid var(--panel-edge);
    background:var(--panel-glass);box-shadow:inset 0 1px 0 var(--spec-faint);
    backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);
    display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;text-align:left;color:var(--text);
  }
  button.coach-card{font:inherit;cursor:pointer}
  button.coach-card:hover{background:rgba(255,255,255,.4);box-shadow:var(--panel-shadow)}
  .coach-label{font-size:12px;font-weight:650;color:var(--text-dim)}
  .coach-value{font-size:30px;line-height:1;font-weight:660;color:var(--text)}
  .coach-detail{font-size:12px;color:var(--text-dim)}
  .coach-action{border-color:rgba(255,59,48,.25)}
  .coach-action .coach-value{color:#ff3b30}
  .coach-strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
  .coach-insight{
    min-height:60px;border-radius:13px;border:1px solid var(--panel-edge);background:var(--control-glass);
    padding:11px 13px;display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:baseline;
  }
  .coach-insight span{font-size:12px;font-weight:650;color:var(--text-dim)}
  .coach-insight strong{font-size:16px;color:var(--text);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .coach-insight small{grid-column:1/-1;color:var(--text-dim);font-size:11.5px;margin-top:4px}
  .contrast-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:10px}
  .contrast-btn{
    min-height:58px;border-radius:13px;border:1px solid var(--panel-edge);background:var(--panel-glass);
    padding:11px 13px;font:inherit;color:var(--text);text-align:left;cursor:pointer;
    display:flex;flex-direction:column;justify-content:center;gap:5px;
    backdrop-filter:blur(18px) saturate(1.45);-webkit-backdrop-filter:blur(18px) saturate(1.45);
  }
  .contrast-btn:hover{background:rgba(255,255,255,.4);box-shadow:var(--panel-shadow)}
  .contrast-btn span{font-size:13px;font-weight:640;overflow:visible;text-overflow:ellipsis;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}
  .contrast-btn small{font-size:11.5px;color:var(--text-dim);white-space:nowrap}
  :root[data-theme="night"] :is(.coach-card,.contrast-btn){background:var(--panel-glass)}
  :root[data-theme="night"] :is(button.coach-card,.contrast-btn):hover{background:rgba(255,255,255,.08)}
  .filter-panel{border:0;box-shadow:none;padding:0;margin:0;background:transparent}
  .field{margin-bottom:14px}
  .field-label{font-size:12px;text-transform:none;letter-spacing:0;font-weight:560;margin-bottom:8px;color:var(--text-mid)}
  select,input[type=text],input[type=search],textarea{
    min-height:45px;padding:11px 13px;border-radius:12px;background:var(--control-glass);
    border-color:var(--control-edge);color:var(--text);font-family:inherit;font-size:14px;
    backdrop-filter:blur(18px) saturate(1.5);-webkit-backdrop-filter:blur(18px) saturate(1.5);
    box-shadow:0 2px 8px rgba(0,0,0,.02),inset 0 1px 0 var(--spec-faint),inset 0 0 6px 2px rgba(255,255,255,.1);
  }
  select:focus,input:focus,textarea:focus{border-color:var(--accent-border);box-shadow:0 0 0 3px rgba(52,199,89,.1),inset 0 1px 0 var(--spec)}
  .chips{gap:7px}
  .chip{display:inline-flex;align-items:center;font:inherit;cursor:pointer;background:var(--control-glass);border-color:var(--control-edge);color:var(--text-mid);padding:6px 11px;backdrop-filter:blur(16px) saturate(1.45);-webkit-backdrop-filter:blur(16px) saturate(1.45);box-shadow:inset 0 1px 0 var(--spec-faint)}
  .chip.on{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent2)}
  .seg{background:var(--control-glass);border-color:var(--control-edge);border-radius:12px;padding:4px;box-shadow:inset 0 1px 0 var(--spec-faint);backdrop-filter:blur(16px) saturate(1.45);-webkit-backdrop-filter:blur(16px) saturate(1.45)}
  .seg button{font-family:inherit;font-size:13px;border-radius:9px;color:var(--text-dim)}
  .seg button.on{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--accent2)}
  .switch{background:var(--surface3);border-color:var(--border)}
  .toggle.on .switch{background:var(--green-bg);border-color:var(--green-border)}
  .toggle.on .switch::after{background:var(--green)}
  .topic-section .card{padding:0;box-shadow:none;border:0;background:transparent}
  .topic-row{width:100%;font:inherit;color:var(--text);text-align:left;background:transparent;padding:12px 10px;border:0;border-top:1px solid var(--border);border-radius:0}
  .topic-row:first-child{border-top:0}
  .topic-row:hover,.topic-row:focus-visible{
    background:var(--control-glass);border-radius:10px;
    backdrop-filter:blur(12px) saturate(1.4);-webkit-backdrop-filter:blur(12px) saturate(1.4);
  }
  .topic-name{font-size:14px}
  .topic-dom{border-radius:12px;padding:4px 8px;font-size:10px;font-weight:650;letter-spacing:.04em}
  .tbar{height:7px;background:var(--surface3)}
  .tbar > span{display:block;height:100%;border-radius:inherit}
  .topic-frac{color:var(--text-dim)}
  .q-head{padding:18px 20px;border-radius:17px;margin-bottom:28px}
  .q-meta{font-size:13px;margin-bottom:12px}
  .progress-track{height:6px;background:var(--surface3);box-shadow:inset 0 1px 2px rgba(0,0,0,.04)}
  .progress-fill,.dbar > div,.dbar > span,.tbar > div,.tbar > span{background:linear-gradient(90deg,#34c759,#30d158 52%,#00c7be);background-size:220% 220%;animation:liquidAction 7s ease-in-out infinite}
  .q-score .big{font-size:29px;font-weight:620}
  .q-score .lbl{text-transform:none;font-size:11px}
  .badges{margin:4px 0 21px}
  .badge{font-size:11px;letter-spacing:0;text-transform:none;border-radius:20px;padding:5px 11px;font-weight:560}
  .badge-dom,.badge-flag{
    background:rgba(255,255,255,.42);
    backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
    font-weight:620;
  }
  .badge-dom.prov{background:rgba(255,255,255,.38);border-color:rgba(25,136,57,.25);color:#188139}
  .badge-dom.dd{background:rgba(255,255,255,.4);border-color:rgba(0,123,118,.25);color:#007d78}
  .badge-dom.fed{background:rgba(255,255,255,.4);border-color:rgba(0,96,208,.24);color:#0064ce}
  .badge-dom.eth{background:rgba(255,255,255,.4);border-color:rgba(203,34,70,.24);color:#c72d48}
  .badge-topic{
    background:rgba(255,255,255,.43);border-color:rgba(255,255,255,.7);color:#3f454a;font-weight:620;
    backdrop-filter:blur(18px) saturate(1.35);-webkit-backdrop-filter:blur(18px) saturate(1.35);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.72);
  }
  .badge-flag{padding:5px 14px;font:620 14px/1 inherit;cursor:pointer;border-color:rgba(206,35,69,.27);color:#cf2645;background:rgba(255,255,255,.43)}
  :root[data-theme="night"] .badge-dom.prov{background:rgba(48,209,88,.1);color:#67e886;border-color:rgba(48,209,88,.3)}
  :root[data-theme="night"] .badge-dom.dd{background:rgba(56,229,220,.1);color:#57ece4;border-color:rgba(56,229,220,.3)}
  :root[data-theme="night"] .badge-dom.fed{background:rgba(64,156,255,.11);color:#74b6ff;border-color:rgba(64,156,255,.3)}
  :root[data-theme="night"] .badge-dom.eth{background:rgba(255,98,128,.11);color:#ff8199;border-color:rgba(255,98,128,.3)}
  :root[data-theme="night"] .badge-topic{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.13);color:#e0e0e5}
  :root[data-theme="night"] .badge-flag{background:rgba(255,98,128,.1);border-color:rgba(255,98,128,.3);color:#ff8199}
  .question-text{font-size:clamp(25px,2.35vw,34px);font-weight:620;letter-spacing:-.045em;line-height:1.38;margin-bottom:34px;max-width:1240px}
  .qnum{color:var(--accent);font-weight:650}
  .options{gap:12px;max-width:1320px}
  .option-btn{
    min-height:61px;padding:18px 19px;border-radius:16px;background:var(--control-glass);
    border-color:var(--control-edge);box-shadow:var(--shadow-sm);font-family:inherit;font-size:15px;color:var(--text-mid);
    backdrop-filter:blur(24px) saturate(1.65);-webkit-backdrop-filter:blur(24px) saturate(1.65);
  }
  .option-btn .okey{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:var(--surface3);color:var(--text-mid)}
  .option-btn:hover:not(.locked){background:var(--surface2);border-color:var(--accent-border);transform:translateY(-1px)}
  .option-btn.selected{background:var(--accent-bg);border-color:var(--accent-border);color:var(--text);box-shadow:0 5px 18px rgba(34,180,85,.12),inset 0 1px 0 var(--spec-faint)}
  .option-btn.correct{background:var(--green-bg);border-color:var(--green-border);color:var(--text)}
  .option-btn.wrong{background:var(--red-bg);border-color:var(--red-border);color:var(--text)}
  .teach-verdict{border-radius:17px 17px 0 0;padding:16px 19px}
  .teach-box{width:100%;max-width:none}
  .teach-content{background:var(--glass-strong);border-color:var(--glass-edge);border-radius:0 0 17px 17px;padding:22px 25px;color:var(--text-mid);font-size:15px;line-height:1.72;backdrop-filter:blur(30px) saturate(1.7);-webkit-backdrop-filter:blur(30px) saturate(1.7)}
  .rule-box,.cite-box{
    border-radius:12px;color:var(--text-mid);background:var(--control-glass);border-color:var(--control-edge);
    box-shadow:inset 0 1px 0 var(--spec-faint);
    backdrop-filter:blur(14px) saturate(1.4);-webkit-backdrop-filter:blur(14px) saturate(1.4);
  }
  .results-pct{font-size:78px;font-weight:670;letter-spacing:-.07em}
  .q-list-item{background:var(--surface);border-color:var(--border);border-radius:13px;box-shadow:var(--shadow-sm)}
  .mg-card{border-radius:18px;padding:23px}
  .mg-card h3,.modal h3,.lock h1{font-size:22px;font-weight:650;letter-spacing:-.04em}
  .modal{background:var(--glass-strong);border-color:var(--glass-edge);border-radius:22px;box-shadow:var(--shadow-float);backdrop-filter:blur(48px) saturate(2);-webkit-backdrop-filter:blur(48px) saturate(2)}
  .modal-bg{background:rgba(18,28,46,.34);backdrop-filter:blur(10px)}
  .toast{background:var(--text);color:var(--surface);border:0;border-radius:14px;box-shadow:var(--shadow-float)}
  .lock-brand{font-size:12px;font-weight:550;letter-spacing:0;text-transform:none;color:var(--accent);padding-top:35px}
  .lock-icon{display:none}
  .lock h1{font-size:41px}
  .lock-form{max-width:385px}
  .lock-stage{max-width:620px;margin:clamp(26px,7vh,78px) auto 0;padding:0 30px 34px}
  .lock-stage .lock{min-height:430px}
  .lock-stage .theme-mode{width:max-content;margin:0 auto}
  .dashboard-stage .surface-section{
    background:transparent;border:0;border-bottom:0;border-radius:0;box-shadow:none;
    backdrop-filter:none;-webkit-backdrop-filter:none;padding:0 clamp(14px,2.2vw,30px);margin-bottom:35px;
  }
  .dashboard-stage .custom-session-section{
    margin-left:clamp(-22px,-1.5vw,-14px);margin-right:clamp(-22px,-1.5vw,-14px);
    padding:clamp(22px,2.1vw,28px) clamp(25px,2.6vw,38px) clamp(24px,2.3vw,30px);
    border-radius:25px;
    background:linear-gradient(108deg,rgba(255,255,255,.35),rgba(255,255,255,.18));
    border:1px solid var(--panel-edge);
    box-shadow:var(--panel-shadow);
    backdrop-filter:blur(34px) saturate(1.72);-webkit-backdrop-filter:blur(34px) saturate(1.72);
  }
  .dashboard-stage .custom-session-section .filter-panel{max-width:none;margin:0}
  .session-control-row{display:flex;align-items:end;gap:22px;margin-top:3px}
  .session-control-row .field{margin-bottom:14px}
  .session-control-row .status-field{flex:1 1 380px}
  .session-control-row .difficulty-field{flex:0 1 300px}
  .session-submit-row{display:grid;grid-template-columns:minmax(250px,1fr) auto;align-items:end;gap:18px;margin-top:2px}
  .session-submit-row .field{margin-bottom:0}
  .session-submit-actions{display:flex;align-items:center;gap:18px}
  .resume-session{
    display:flex;align-items:center;justify-content:space-between;gap:22px;
    margin:0 clamp(14px,2.2vw,30px) 36px;padding:18px 21px;
    border-radius:18px;border:1px solid var(--panel-edge);
    background:var(--panel-glass);box-shadow:var(--panel-shadow);
    backdrop-filter:blur(26px) saturate(1.58);-webkit-backdrop-filter:blur(26px) saturate(1.58);
    transition:opacity .18s ease,transform .18s ease,margin .18s ease,padding .18s ease;
  }
  .resume-session.removing{opacity:0;transform:translateY(-5px);margin-bottom:0;padding-top:0;padding-bottom:0;overflow:hidden;pointer-events:none}
  .resume-title{font-size:17px;font-weight:670;letter-spacing:-.025em;color:var(--text);margin-bottom:3px}
  .resume-meta{font-size:13px;color:var(--text-mid)}
  .resume-actions{display:flex;align-items:center;gap:9px;flex-shrink:0}
  .workspace-stage .mg-card{
    background:var(--panel-glass);border:1px solid var(--panel-edge);
    border-radius:18px;box-shadow:var(--panel-shadow);backdrop-filter:blur(26px) saturate(1.58);-webkit-backdrop-filter:blur(26px) saturate(1.58);
  }
  .source-card{border-color:var(--accent-border)!important}
  .source-file{
    display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;border-radius:12px;
    background:var(--control-glass);border:1px solid var(--control-edge);box-shadow:inset 0 1px 0 var(--spec-faint);
  }
  .source-file code,.teach-content code{
    font:600 12px/1.5 ui-monospace,SFMono-Regular,Menlo,Monaco,monospace;
    color:var(--text);background:var(--control-glass);border:1px solid var(--control-edge);padding:2px 6px;border-radius:6px;
  }
  .source-file .muted{margin-left:auto;font-size:12px}
  .import-actions{display:flex;gap:10px}
  .import-actions .btn{flex:1 1 220px}
  .teach-rich p,.rule-box p,.cite-box p{margin-bottom:8px}
  .teach-rich p:last-child,.rule-box p:last-child,.cite-box p:last-child{margin-bottom:0}
  .workspace-stage .stat{
    --metric:var(--accent);position:relative;background:var(--panel-glass);border:1px solid var(--panel-edge);
    box-shadow:var(--panel-shadow);backdrop-filter:blur(22px) saturate(1.5);-webkit-backdrop-filter:blur(22px) saturate(1.5);
  }
  .workspace-stage .stat::before{display:none}
  .workspace-stage .stat::after{display:none}
  .workspace-stage .stat:nth-child(2){--metric:var(--dd)}
  .workspace-stage .stat:nth-child(3){--metric:var(--fed)}
  .workspace-stage .stat:nth-child(4){--metric:var(--eth)}
  :root[data-theme="night"] .dashboard-stage .surface-section{background:transparent}
  :root[data-theme="night"] .dashboard-stage .custom-session-section{
    background:linear-gradient(108deg,rgba(255,255,255,.052),rgba(255,255,255,.025));
    border-color:rgba(255,255,255,.075);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 34px rgba(0,0,0,.22);
  }
  :root[data-theme="night"] .resume-session{background:var(--panel-glass)}
  :root[data-theme="night"] .workspace-stage .mg-card{background:var(--panel-glass)}
  :root[data-theme="night"] .workspace-stage .stat{background:var(--panel-glass)}
  .dashboard-stage .surface-section::before,.workspace-stage .mg-card::before{display:none}
  .dashboard-stage .section-label{font-size:14px;text-transform:uppercase;letter-spacing:.2em;color:rgba(10,26,16,.5);font-weight:750;margin-bottom:18px}
  :root[data-theme="night"] .dashboard-stage .section-label{color:var(--text-dim)}
  .quiz-stage .q-head{
    position:relative;top:auto;z-index:1;margin-top:0;padding:12px 18px;
    background:rgba(255,255,255,.47);border:0;border-bottom:3px solid rgba(52,199,89,.45);border-radius:14px 14px 4px 4px;
    box-shadow:0 9px 22px rgba(0,0,0,.045);backdrop-filter:blur(28px) saturate(1.55);-webkit-backdrop-filter:blur(28px) saturate(1.55);
  }
  :root[data-theme="night"] .quiz-stage .q-head{background:rgba(12,12,13,.78);box-shadow:0 10px 25px rgba(0,0,0,.34)}
  .quiz-stage .q-head::before{display:none}
  .quiz-stage .q-meta{align-items:center;gap:10px;margin-bottom:8px}
  .quiz-stage .q-meta > span:first-child{min-width:0}
  .q-tools{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-left:auto;flex-shrink:0}
  .quiz-exit{
    position:static;z-index:auto;
    min-height:30px;padding:0 12px;border-radius:999px;border:1px solid var(--control-edge);
    background:rgba(255,255,255,.7);color:var(--text-mid);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 4px 14px rgba(0,0,0,.035);
    font:600 12px/1 inherit;cursor:pointer;
    transition:transform .1s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
  }
  .quiz-exit:hover{background:rgba(255,255,255,.92);color:var(--text)}
  .quiz-exit:active{transform:translateY(1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.82)}
  .quiz-exit:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(52,199,89,.22),inset 0 1px 0 rgba(255,255,255,.95)}
  :root[data-theme="night"] .quiz-exit{
    background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.14);color:var(--text-mid);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 6px 18px rgba(0,0,0,.2);
  }
  :root[data-theme="night"] .quiz-exit:hover{background:rgba(255,255,255,.1);color:var(--text)}
  .pomodoro{
    position:static;z-index:auto;
    min-height:30px;display:flex;align-items:center;gap:4px;padding:3px 4px 3px 5px;
    border-radius:999px;border:1px solid rgba(255,255,255,.9);
    background:rgba(255,255,255,.66);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 5px 16px rgba(0,0,0,.04);
    color:var(--text-mid);
  }
  .pomodoro-modes{
    display:flex;align-items:center;gap:2px;padding:2px;border-radius:999px;
    background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.72);
  }
  .pomodoro-modes button,.pomodoro-start,.pomodoro-reset{
    min-height:24px;border:0;border-radius:999px;background:transparent;color:var(--text-mid);
    font:600 10.5px/1 inherit;cursor:pointer;transition:background .16s ease,color .16s ease,transform .1s ease;
  }
  .pomodoro-modes button{padding:0 8px}
  .pomodoro-modes button.on{
    background:rgba(255,255,255,.92);color:#1f9d42;
    box-shadow:0 2px 8px rgba(17,54,29,.045),inset 0 1px 0 rgba(255,255,255,.98);
  }
  .pomodoro-time{
    min-width:48px;text-align:center;color:var(--text);font-size:13px;font-weight:700;
    letter-spacing:.01em;font-variant-numeric:tabular-nums;
  }
  .pomodoro-start{min-width:46px;padding:0 10px;background:rgba(52,199,89,.13);color:#16883a}
  .pomodoro-reset{width:25px;font-size:15px;color:var(--text-dim)}
  .pomodoro-start:hover{background:rgba(52,199,89,.2)}
  .pomodoro-reset:hover{background:rgba(255,255,255,.68);color:var(--text)}
  .pomodoro.running .pomodoro-time{color:#12883a}
  .pomodoro.running .pomodoro-start{background:rgba(52,199,89,.2)}
  .pomodoro-modes button:active,.pomodoro-start:active,.pomodoro-reset:active{transform:translateY(1px)}
  .pomodoro-modes button:focus-visible,.pomodoro-start:focus-visible,.pomodoro-reset:focus-visible{
    outline:none;box-shadow:0 0 0 3px rgba(52,199,89,.21);
  }
  @keyframes pomodoroComplete{
    0%{box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 5px 16px rgba(0,0,0,.04)}
    40%{box-shadow:0 0 0 4px rgba(52,199,89,.19),0 10px 28px rgba(52,199,89,.15),inset 0 1px 0 rgba(255,255,255,.98)}
    100%{box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 5px 16px rgba(0,0,0,.04)}
  }
  .pomodoro.finished{animation:pomodoroComplete .72s ease}
  :root[data-theme="night"] .pomodoro{
    background:rgba(14,14,15,.84);border-color:rgba(255,255,255,.13);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 8px 22px rgba(0,0,0,.24);
  }
  :root[data-theme="night"] .pomodoro-modes{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1)}
  :root[data-theme="night"] .pomodoro-modes button.on{background:rgba(48,209,88,.14);color:#67e886;box-shadow:none}
  :root[data-theme="night"] .pomodoro-time{color:#f4f4f7}
  :root[data-theme="night"] .pomodoro.running .pomodoro-time{color:#67e886}
  :root[data-theme="night"] .pomodoro-start{background:rgba(48,209,88,.13);color:#67e886}
  :root[data-theme="night"] .pomodoro-reset:hover{background:rgba(255,255,255,.08);color:var(--text)}
  .results-stage{min-height:min(520px,60vh);display:grid;place-items:center}
  .results-stage .results{padding-top:0}
  .results-stage.perfect::after{
    content:'';position:absolute;inset:auto 18% 18% 18%;height:120px;pointer-events:none;
    background:radial-gradient(ellipse,rgba(52,199,89,.13),transparent 68%);filter:blur(20px);
  }
  .results-stage.perfect .results-pct{text-shadow:0 10px 34px rgba(52,199,89,.2)}
  .workspace-stage .section-label,.quiz-stage .question-text{color:var(--text)}
  .workspace-stage .q-list-item{
    background:var(--panel-glass);border:1px solid var(--panel-edge);border-radius:14px;box-shadow:var(--panel-shadow);
    backdrop-filter:blur(20px) saturate(1.45);-webkit-backdrop-filter:blur(20px) saturate(1.45);
    content-visibility:auto;contain-intrinsic-size:58px;
  }
  :root[data-theme="night"] .workspace-stage .q-list-item{background:var(--panel-glass)}
  .answer-state.revealed{
    position:relative;margin:0 -10px 30px;padding:11px 10px 3px;border-radius:18px;
    transition:background .25s ease,box-shadow .25s ease;
  }
  .answer-state.correct{
    background:linear-gradient(105deg,rgba(52,199,89,.08),rgba(255,255,255,.13),transparent 70%);
    box-shadow:none;
    backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);
  }
  .answer-state.wrong{
    background:var(--panel-glass);
    box-shadow:none;
    backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);
  }
  .answer-state.correct .qnum{color:#30c854;text-shadow:0 0 18px rgba(52,199,89,.38)}
  .answer-state.wrong .qnum{color:#ff3b30;text-shadow:0 0 18px rgba(255,59,48,.35)}
  .answer-state.correct .question-text{text-shadow:0 0 26px rgba(52,199,89,.11)}
  .answer-state.wrong .question-text{text-shadow:none}
  .answer-state.revealed .options{margin-bottom:0}
  .quiz-action-row{align-items:stretch}
  .quiz-action-row.revealed-actions{align-items:center;justify-content:flex-end}
  .quiz-action-row.revealed-actions > .btn{flex:0 0 auto;min-width:132px}
  .quiz-action-row.revealed-actions > .btn-outline{min-width:96px}
  .quiz-action-row.revealed-actions > .quiz-back-action{margin-right:auto}
  .quiz-action-row.revealed-actions > .quiz-next-action{margin-left:auto}
  .quiz-action-row.revealed-actions > .btn-disabled:disabled{opacity:.64;cursor:not-allowed;box-shadow:inset 0 1px 0 var(--spec-faint)}
  .confidence-card{
    flex:1;display:flex;align-items:center;justify-content:space-between;gap:14px;
    min-height:47px;padding:6px 7px 6px 14px;border-radius:15px;border:1px solid var(--panel-edge);
    background:linear-gradient(108deg,rgba(255,255,255,.54),rgba(255,255,255,.28));
    box-shadow:0 8px 24px rgba(12,42,24,.045),inset 0 1px 0 rgba(255,255,255,.92);
    backdrop-filter:blur(22px) saturate(1.58);-webkit-backdrop-filter:blur(22px) saturate(1.58);
  }
  .confidence-copy{display:flex;align-items:baseline;gap:9px;min-width:0}
  .confidence-label{font-size:12px;font-weight:680;color:var(--text);white-space:nowrap}
  .confidence-note{font-size:11.5px;font-weight:600;color:var(--text-dim);white-space:nowrap}
  .confidence-actions{display:flex;gap:6px}
  .confidence-btn{
    border:1px solid var(--control-edge);border-radius:10px;background:var(--control-glass);
    min-width:98px;padding:7px 10px;color:var(--text-dim);font:600 12px/1 inherit;cursor:pointer;
    display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:left;
    transition:background .16s ease,border-color .16s ease,color .16s ease,transform .1s ease;
    backdrop-filter:blur(16px) saturate(1.45);-webkit-backdrop-filter:blur(16px) saturate(1.45);
    box-shadow:inset 0 1px 0 var(--spec-faint);
  }
  .confidence-btn span{font-size:12.5px;font-weight:720;color:inherit}
  .confidence-btn small{font-size:10.5px;font-weight:650;color:var(--text-dim);white-space:nowrap}
  .confidence-btn:hover{color:var(--text);border-color:var(--border2)}
  .confidence-btn.on{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent2)}
  .confidence-btn.on small{color:var(--accent2)}
  @keyframes confidenceNudge{
    0%,100%{box-shadow:0 8px 24px rgba(12,42,24,.045),inset 0 1px 0 rgba(255,255,255,.92)}
    45%{box-shadow:0 0 0 4px rgba(52,199,89,.17),0 10px 28px rgba(52,199,89,.12),inset 0 1px 0 rgba(255,255,255,.96)}
  }
  .confidence-card.needs-choice{animation:confidenceNudge .48s ease}
  .repair-card{
    margin:-10px 0 24px;padding:15px 16px;border-radius:16px;border:1px solid rgba(255,149,0,.26);
    background:linear-gradient(105deg,rgba(255,149,0,.11),rgba(255,255,255,.42));
    box-shadow:inset 0 1px 0 var(--spec-faint);backdrop-filter:blur(22px) saturate(1.45);-webkit-backdrop-filter:blur(22px) saturate(1.45);
  }
  .repair-copy{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:9px}
  .repair-label{font-size:13px;font-weight:740;color:var(--text)}
  .repair-note{font-size:12px;font-weight:620;color:var(--text-dim)}
  .repair-prompt{font-size:14px;line-height:1.5;color:var(--text-mid);margin-bottom:11px}
  .repair-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
  .repair-entry input{min-height:42px}
  .repair-saved{border-radius:11px;background:var(--control-glass);border:1px solid var(--control-edge);padding:10px 12px;color:var(--text-mid);font-size:13px}
  .repair-card.done{border-color:rgba(48,209,88,.3);background:linear-gradient(105deg,rgba(48,209,88,.12),rgba(255,255,255,.4))}
  .repair-card.needs-repair{animation:confidenceNudge .48s ease}
  .repair-history{
    margin-top:13px;padding:12px;border-radius:13px;border:1px solid var(--control-edge);
    background:var(--control-glass);
  }
  .repair-history-row{display:grid;grid-template-columns:70px minmax(0,1fr);gap:10px;padding:8px 0;border-top:1px solid var(--border)}
  .repair-history-row:first-of-type{border-top:0}
  .repair-history-row span{font-size:11.5px;font-weight:650;color:var(--text-dim)}
  .repair-history-row p{margin:0;font-size:13px;line-height:1.45;color:var(--text-mid)}
  .study-visual{
    margin-top:14px;padding:13px;border-radius:14px;border:1px solid rgba(0,199,190,.22);
    background:linear-gradient(108deg,rgba(0,199,190,.08),rgba(255,255,255,.36));
  }
  .visual-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}
  .visual-step{
    min-height:86px;border:1px solid var(--control-edge);border-radius:12px;background:var(--surface);
    padding:10px;display:grid;grid-template-rows:auto 1fr;gap:8px;position:relative;
  }
  .visual-step span{
    width:24px;height:24px;border-radius:50%;display:grid;place-items:center;
    font-size:12px;font-weight:740;color:#fff;background:#00a7a0;
  }
  .visual-step p{margin:0;font-size:12.5px;line-height:1.4;color:var(--text-mid)}
  .recall-stage .question-text{margin-bottom:18px}
  .recall-entry textarea{min-height:118px}
  .fill-entry{max-width:840px;margin-bottom:26px}
  .fill-answer-input{
    width:100%;min-height:58px;border-radius:16px;border:1px solid var(--control-edge);
    background:var(--control-glass);box-shadow:var(--shadow-sm),inset 0 1px 0 var(--spec-faint);
    color:var(--text);font:650 17px/1.3 inherit;padding:0 18px;
    backdrop-filter:blur(24px) saturate(1.55);-webkit-backdrop-filter:blur(24px) saturate(1.55);
  }
  .fill-answer-input:focus{outline:none;border-color:var(--accent-border);box-shadow:0 0 0 4px rgba(52,199,89,.14),var(--shadow-sm)}
  .recall-compare,.fill-compare{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
  .recall-compare > div,.fill-compare > div{
    border:1px solid var(--control-edge);border-radius:13px;background:var(--control-glass);padding:12px;
  }
  .recall-compare span,.fill-compare span{display:block;margin-bottom:7px;font-size:12px;font-weight:700;color:var(--text-dim)}
  .recall-compare p,.fill-compare p{margin:0;color:var(--text-mid);line-height:1.48}
  .exam-lock-note{
    margin-top:12px;border:1px solid rgba(0,122,255,.2);border-radius:12px;padding:10px 12px;
    background:rgba(0,122,255,.08);font-size:13px;font-weight:620;color:var(--text-mid);
  }
  .answer-state.exam-locked .option-btn.selected{
    border-color:rgba(0,122,255,.42);background:rgba(0,122,255,.1);
  }
  .results-strengthened{
    margin:14px auto 0;max-width:560px;border:1px solid var(--control-edge);border-radius:13px;
    background:var(--control-glass);padding:11px 13px;font-size:13px;color:var(--text-mid);
  }
  :root[data-theme="night"] .repair-card{background:rgba(255,149,0,.09);border-color:rgba(255,149,0,.25)}
  :root[data-theme="night"] .repair-card.done{background:rgba(48,209,88,.09);border-color:rgba(48,209,88,.24)}
  :root[data-theme="night"] .study-visual{background:rgba(0,199,190,.08);border-color:rgba(0,199,190,.23)}
  @keyframes correctBloom{
    0%{box-shadow:0 0 0 0 rgba(48,209,88,.18)}
    55%{box-shadow:0 12px 30px rgba(48,209,88,.11),0 0 0 8px rgba(48,209,88,0)}
    100%{box-shadow:none}
  }
  .answer-state.revealed.correct.just-correct{animation:correctBloom .58s cubic-bezier(.22,.61,.36,1)}
  .quiz-stage .option-btn.correct{
    background:linear-gradient(100deg,rgba(48,209,88,.26),rgba(52,199,89,.15))!important;
    border-color:rgba(48,209,88,.62)!important;
    box-shadow:0 0 0 1px rgba(48,209,88,.13),0 10px 28px rgba(48,209,88,.13),inset 0 1px 0 rgba(255,255,255,.35)!important;
    color:var(--text)!important;
  }
  .quiz-stage .option-btn.correct .okey{background:#30d158;color:#fff}
  .quiz-stage .option-btn.wrong{
    background:rgba(255,59,48,.14)!important;
    border-color:rgba(255,59,48,.5)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.28)!important;
    color:var(--text)!important;
  }
  .quiz-stage .option-btn.wrong .okey{background:#ff3b30;color:#fff}
  .quiz-stage .tag-correct{background:#30d158;color:#fff;font-weight:750}
  .quiz-stage .tag-yours{background:#ff3b30;color:#fff;font-weight:750}
  .teach-box.feedback-correct .teach-verdict{
    background:linear-gradient(100deg,rgba(48,209,88,.3),rgba(52,199,89,.17));
    border-color:rgba(48,209,88,.52);color:#1a9f3e;font-weight:700;
  }
  .teach-box.feedback-wrong .teach-verdict{
    background:rgba(255,59,48,.13);
    border-color:rgba(255,59,48,.4);color:#e5362b;font-weight:700;
  }
  .teach-box.feedback-neutral .teach-verdict{
    background:rgba(0,122,255,.1);
    border-color:rgba(0,122,255,.28);color:#1478d4;font-weight:700;
  }
  :root[data-theme="night"] .answer-state.correct{background:linear-gradient(105deg,rgba(48,209,88,.07),rgba(255,255,255,.025),transparent 72%)}
  :root[data-theme="night"] .answer-state.wrong{background:var(--panel-glass)}
  :root[data-theme="night"] .confidence-card{
    background:rgba(18,18,19,.76);border-color:rgba(255,255,255,.12);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 12px 26px rgba(0,0,0,.26);
  }
  :root[data-theme="night"] .teach-box.feedback-correct .teach-verdict{color:#5ee87b}
  :root[data-theme="night"] .teach-box.feedback-wrong .teach-verdict{color:#ff7168}
  .shortcut-hints{
    display:flex;align-items:center;justify-content:flex-end;gap:15px;margin-top:17px;
    color:var(--text-dim);font-size:11px;font-weight:550;
  }
  .shortcut-hints span{display:inline-flex;align-items:center;gap:6px}
  .kbd{
    display:inline-grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:7px;
    background:var(--control-glass);border:1px solid var(--control-edge);color:var(--text-mid);
    font-size:10px;font-weight:700;box-shadow:inset 0 1px 0 var(--spec-faint);
    backdrop-filter:blur(12px) saturate(1.4);-webkit-backdrop-filter:blur(12px) saturate(1.4);
  }
  :root[data-theme="night"] .btn-outline:hover,:root[data-theme="night"] .btn-ghost:hover{background:rgba(255,255,255,.085)}
  /* Apple Music inspired colour fields that exchange places under clean white glass. */
  #mesh-bg{
    --mesh-delay-green:0s;--mesh-delay-blue:0s;--mesh-delay-pink:0s;--mesh-delay-warm:0s;
    isolation:isolate;
    background:#fbfffd;
  }
  .mesh-field,.mesh-light{
    position:absolute;inset:-18%;pointer-events:none;
    transform:translate3d(0,0,0);will-change:transform;
  }
  .mesh-field-green{
    background:radial-gradient(ellipse 60% 84% at 50% 50%,rgba(52,199,89,.9) 0%,rgba(72,218,104,.7) 28%,rgba(52,199,89,.31) 52%,rgba(52,199,89,.09) 70%,transparent 84%);
    animation:meshRouteGreen 37s cubic-bezier(.45,0,.55,1) infinite;
    animation-delay:var(--mesh-delay-green);
  }
  .mesh-field-blue{
    background:radial-gradient(ellipse 58% 82% at 50% 50%,rgba(79,179,255,.76) 0%,rgba(120,211,255,.56) 30%,rgba(76,176,255,.23) 54%,rgba(76,176,255,.055) 70%,transparent 84%);
    animation:meshRouteBlue 43s cubic-bezier(.42,0,.58,1) infinite;
    animation-delay:var(--mesh-delay-blue);
  }
  .mesh-field-pink{
    background:radial-gradient(ellipse 54% 78% at 50% 50%,rgba(255,119,160,.5) 0%,rgba(255,173,198,.36) 30%,rgba(255,119,160,.14) 54%,rgba(255,119,160,.035) 70%,transparent 84%);
    animation:meshRoutePink 49s cubic-bezier(.4,0,.6,1) infinite;
    animation-delay:var(--mesh-delay-pink);
  }
  .mesh-field-warm{
    background:radial-gradient(ellipse 52% 76% at 50% 50%,rgba(142,238,212,.38) 0%,rgba(195,249,228,.26) 32%,rgba(142,238,212,.1) 54%,rgba(142,238,212,.025) 68%,transparent 82%);
    animation:meshRouteWarm 53s cubic-bezier(.44,0,.56,1) infinite;
    animation-delay:var(--mesh-delay-warm);
  }
  .mesh-light{
    inset:0;z-index:1;
    background:radial-gradient(ellipse 52% 54% at 51% 43%,rgba(255,255,255,.13),rgba(255,255,255,.045) 52%,transparent 82%);
  }
  @keyframes meshRouteGreen{
    0%{transform:translate3d(-14%,-2%,0) scale(1.04) rotate(-3deg)}
    24%{transform:translate3d(-2%,11%,0) scale(1.11) rotate(4deg)}
    49%{transform:translate3d(16%,2%,0) scale(1.05) rotate(1deg)}
    73%{transform:translate3d(2%,-12%,0) scale(1.09) rotate(-4deg)}
    100%{transform:translate3d(-14%,-2%,0) scale(1.04) rotate(-3deg)}
  }
  @keyframes meshRouteBlue{
    0%{transform:translate3d(12%,-10%,0) scale(1.06) rotate(2deg)}
    27%{transform:translate3d(-13%,-1%,0) scale(1.1) rotate(-4deg)}
    53%{transform:translate3d(-3%,12%,0) scale(1.03) rotate(3deg)}
    78%{transform:translate3d(14%,6%,0) scale(1.1) rotate(-2deg)}
    100%{transform:translate3d(12%,-10%,0) scale(1.06) rotate(2deg)}
  }
  @keyframes meshRoutePink{
    0%{transform:translate3d(13%,9%,0) scale(1.05) rotate(-2deg)}
    21%{transform:translate3d(8%,-12%,0) scale(1.11) rotate(4deg)}
    47%{transform:translate3d(-15%,-5%,0) scale(1.06) rotate(-3deg)}
    76%{transform:translate3d(-4%,12%,0) scale(1.1) rotate(2deg)}
    100%{transform:translate3d(13%,9%,0) scale(1.05) rotate(-2deg)}
  }
  @keyframes meshRouteWarm{
    0%{transform:translate3d(-4%,13%,0) scale(1.07) rotate(3deg)}
    25%{transform:translate3d(15%,1%,0) scale(1.04) rotate(-2deg)}
    51%{transform:translate3d(3%,-13%,0) scale(1.11) rotate(3deg)}
    77%{transform:translate3d(-14%,1%,0) scale(1.06) rotate(-4deg)}
    100%{transform:translate3d(-4%,13%,0) scale(1.07) rotate(3deg)}
  }
  :root[data-theme="night"] #mesh-bg{
    background:#060606;
  }
  :root[data-theme="night"] .mesh-field-green{
    background:radial-gradient(ellipse 58% 82% at 50% 50%,rgba(48,209,88,.19),rgba(48,209,88,.11) 38%,transparent 84%);
  }
  :root[data-theme="night"] .mesh-field-blue{
    background:radial-gradient(ellipse 56% 80% at 50% 50%,rgba(64,156,255,.15),rgba(64,156,255,.08) 38%,transparent 84%);
  }
  :root[data-theme="night"] .mesh-field-pink{
    background:radial-gradient(ellipse 57% 80% at 50% 50%,rgba(255,98,128,.14),rgba(255,98,128,.07) 38%,transparent 84%);
  }
  :root[data-theme="night"] .mesh-field-warm{
    background:radial-gradient(ellipse 52% 76% at 50% 50%,rgba(98,231,196,.11),rgba(98,231,196,.05) 38%,transparent 84%);
  }
  :root[data-theme="night"] .mesh-light{
    background:radial-gradient(ellipse 52% 54% at 51% 43%,rgba(0,0,0,.17),transparent 82%);
  }
  .mesh-touch{
    --touch-x:50%;--touch-y:50%;
    position:absolute;inset:0;z-index:2;opacity:0;pointer-events:none;
    background:radial-gradient(circle clamp(100px,12vw,170px) at var(--touch-x) var(--touch-y),
      rgba(255,255,255,.34) 0%,rgba(255,255,255,.17) 28%,rgba(255,255,255,.04) 48%,transparent 70%);
    transform:translate3d(0,0,0);
  }
  .mesh-touch::before,.mesh-touch::after{
    content:'';position:absolute;left:var(--touch-x);top:var(--touch-y);
    width:clamp(160px,22vw,315px);aspect-ratio:1;border-radius:50%;
    border:1.5px solid rgba(255,255,255,.65);
    box-shadow:0 0 0 1px rgba(255,255,255,.16),inset 0 0 22px rgba(255,255,255,.12);
    opacity:0;transform:translate(-50%,-50%) scale(.08);
  }
  .mesh-touch.active{animation:meshDropLens 1.1s cubic-bezier(.16,.72,.2,1)}
  .mesh-touch.active::before{animation:meshDropRing 1.02s cubic-bezier(.14,.65,.2,1)}
  .mesh-touch.active::after{animation:meshDropRing 1.08s .12s cubic-bezier(.14,.65,.2,1)}
  @keyframes meshDropLens{
    0%{opacity:0}
    14%{opacity:1}
    100%{opacity:0}
  }
  @keyframes meshDropRing{
    0%{opacity:0;transform:translate(-50%,-50%) scale(.08)}
    16%{opacity:.62}
    100%{opacity:0;transform:translate(-50%,-50%) scale(1)}
  }
  :root[data-theme="night"] .mesh-touch{
    background:radial-gradient(circle clamp(100px,12vw,170px) at var(--touch-x) var(--touch-y),
      rgba(255,255,255,.12),rgba(255,255,255,.045) 30%,transparent 70%);
  }
  :root[data-theme="night"] .mesh-touch::before,:root[data-theme="night"] .mesh-touch::after{
    border-color:rgba(255,255,255,.3);box-shadow:0 0 0 1px rgba(255,255,255,.06),inset 0 0 22px rgba(255,255,255,.05);
  }
  .mesh-orb{display:none;animation:none!important;filter:none;will-change:auto}
  :root:not([data-theme="night"]) #topnav{background:rgba(255,255,255,.42)}
  :root:not([data-theme="night"]) .stage-glass{
    background:linear-gradient(126deg,rgba(255,255,255,.65),rgba(255,255,255,.45));
    border-color:rgba(255,255,255,.94);
    box-shadow:0 30px 90px rgba(0,60,30,.1),0 10px 30px rgba(0,60,30,.05),inset 0 2px 0 rgba(255,255,255,.98),inset 0 0 54px 22px rgba(255,255,255,.54);
    backdrop-filter:blur(18px) saturate(1.28) brightness(1.055)!important;
    -webkit-backdrop-filter:blur(18px) saturate(1.28) brightness(1.055)!important;
  }
  :root[data-theme="night"] .stage-glass{
    background:rgba(9,9,10,.82);
    backdrop-filter:blur(15px) saturate(1.1) brightness(.88)!important;
    -webkit-backdrop-filter:blur(15px) saturate(1.1) brightness(.88)!important;
  }
  #topnav,.card,.surface-section,.filter-panel,.stat,.mg-card,.q-head,.hero-panel,
  .nav,.theme-mode,.btn,.domain-card.column-card,.quick-btn,.resume-session,
  select,input[type=text],input[type=search],textarea,.chip,.seg,.topic-row,
  .badge-dom,.badge-flag,.option-btn,.teach-verdict,.teach-content,
  .workspace-stage .q-list-item,.answer-state.correct,.answer-state.wrong,.confidence-btn,.kbd,
  .modal,.modal-bg{
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  :root:not([data-theme="night"]) .dashboard-stage .custom-session-section{
    background:linear-gradient(112deg,rgba(255,255,255,.68),rgba(255,255,255,.48));
    border-color:rgba(255,255,255,.8);
    box-shadow:0 12px 32px rgba(26,58,38,.055),inset 0 1px 0 rgba(255,255,255,.94);
  }
  :root:not([data-theme="night"]) .domain-card.column-card{
    background:rgba(255,255,255,.68)!important;
    border-color:rgba(255,255,255,.86)!important;
    box-shadow:0 8px 22px rgba(12,42,24,.045),inset 0 1px 0 rgba(255,255,255,.98)!important;
  }
  :root:not([data-theme="night"]) :is(.quick-btn,.resume-session,.workspace-stage .mg-card,.workspace-stage .q-list-item){
    background:rgba(255,255,255,.62);
    border-color:rgba(255,255,255,.82);
    box-shadow:0 8px 22px rgba(12,42,24,.045),inset 0 1px 0 rgba(255,255,255,.96);
  }
  :root:not([data-theme="night"]) :is(select,input[type=text],input[type=search],textarea,.chip,.seg,.option-btn,.confidence-btn){
    background:rgba(255,255,255,.7);
    border-color:rgba(255,255,255,.9);
    box-shadow:0 5px 15px rgba(12,42,24,.035),inset 0 1px 0 rgba(255,255,255,.98);
  }
  :root:not([data-theme="night"]) .option-btn.selected{
    background:linear-gradient(110deg,rgba(52,199,89,.2),rgba(255,255,255,.75));
    border-color:rgba(52,199,89,.48);
  }
  :root[data-theme="night"] :is(.domain-card.column-card,.quick-btn,.resume-session,.workspace-stage .mg-card,.workspace-stage .q-list-item,.option-btn){
    background:rgba(18,18,19,.82)!important;
    border-color:rgba(255,255,255,.13)!important;
  }
  .lock-stage{
    max-width:540px;margin:clamp(34px,10vh,104px) auto 0;padding:18px 22px 18px;border-radius:34px;
  }
  .lock-stage .lock-brand{
    display:block;width:max-content;margin:0 auto;padding:9px 16px;
    border-radius:999px;border:1px solid rgba(52,199,89,.16);
    background:rgba(255,255,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.94);
    font-size:12px;font-weight:600;color:var(--accent2);
  }
  .lock-stage .lock{
    min-height:338px;padding:30px 18px 16px;
  }
  .lock-stage .lock h1{
    margin:0 0 11px;font-size:clamp(32px,5vw,39px);font-weight:680;letter-spacing:-.06em;
  }
  .lock-stage .lock p{
    max-width:310px;margin:0 auto 29px;font-size:14px;line-height:1.55;color:var(--text-mid);
  }
  .lock-stage .lock-form{
    max-width:426px;gap:7px;padding:5px;border-radius:999px;
    background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.86);
    box-shadow:0 8px 24px rgba(22,52,32,.045),inset 0 1px 0 rgba(255,255,255,.96);
  }
  .lock-stage .lock-form input[type=password]{
    flex:1;min-width:0;height:52px;padding:0 19px;border:0;border-radius:999px;
    background:rgba(255,255,255,.58);color:var(--text);text-align:left;
    font:500 16px/1 inherit;letter-spacing:.16em;outline:none;
    box-shadow:inset 0 1px 4px rgba(14,38,22,.04),inset 0 1px 0 rgba(255,255,255,.94);
    transition:box-shadow .16s ease,background .16s ease;
  }
  .lock-stage .lock-form input[type=password]::placeholder{
    color:var(--text-dim);letter-spacing:0;
  }
  .lock-stage .lock-form input[type=password]:focus{
    background:rgba(255,255,255,.78);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.98),0 0 0 3px rgba(52,199,89,.17);
  }
  .lock-stage .lock-submit{
    flex:none;min-width:112px;height:52px;min-height:52px;padding:0 22px;border-radius:999px;
  }
  .lock-stage .lock-err{
    min-height:20px;margin-top:15px;padding:0 12px;border-radius:999px;color:var(--red);
    font-size:13px;font-weight:550;line-height:30px;
  }
  .lock-stage .lock-err:not(:empty){
    background:var(--red-bg);border:1px solid var(--red-border);
  }
  .lock-stage .theme-mode{margin:0 auto 2px}
  :root[data-theme="night"] .lock-stage .lock-brand{
    background:rgba(255,255,255,.055);border-color:rgba(48,209,88,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.1);
  }
  :root[data-theme="night"] .lock-stage .lock-form{
    background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.09);
  }
  :root[data-theme="night"] .lock-stage .lock-form input[type=password]{
    background:rgba(255,255,255,.055);box-shadow:inset 0 1px 3px rgba(0,0,0,.28);
  }
  :root[data-theme="night"] .lock-stage .lock-form input[type=password]:focus{
    background:rgba(255,255,255,.08);box-shadow:0 0 0 3px rgba(48,209,88,.16);
  }
  :is(.btn,.quick-btn,.nav-btn,.theme-option,.option-btn,.domain-card,.chip,.topic-row,.badge-flag,.confidence-btn,.seg button):focus-visible{
    outline:none;box-shadow:0 0 0 3px rgba(52,199,89,.22),0 5px 18px rgba(34,180,85,.12);
  }
  :is(.btn,.quick-btn,.nav-btn,.theme-option,.domain-card,.chip,.topic-row,.badge-flag,.confidence-btn,.seg button):active:not(:disabled),
  .option-btn:not(.locked):active{
    transform:translateY(1px) scale(.994);box-shadow:0 1px 4px rgba(0,0,0,.07),inset 0 1px 0 var(--spec-faint)!important;transition-duration:.08s;
  }
  @media(max-width:1020px){
    .container.dashboard-view,.container.wide{padding:15px 14px 54px}
    .container.quiz-view{padding:8px 10px 44px}
    .quiz-stage{padding:12px 18px 24px}
    .quiz-stage .q-head{margin-top:0}
    .topbar{flex-wrap:wrap}
    .brand{min-width:0;margin-right:auto}
    .nav{order:3;width:100%;justify-content:space-between;margin-top:4px}
    .nav-btn{flex:1;justify-content:center}
    .hero-panel{grid-template-columns:1fr}
    .hero-nightmare{flex-direction:row;justify-content:space-between;align-items:center;gap:20px}
    .nightmare-cta .ns{margin:7px 0 0}
    .domain-grid{grid-template-columns:repeat(2,1fr)}
    .quick-session-layout{grid-template-columns:1fr}
    .snapshot-grid{grid-template-columns:repeat(2,1fr);row-gap:25px}
    .engine-detail-grid{grid-template-columns:1fr}
  }
  @media(max-width:680px){
    .mesh-field-green{animation-duration:45s}
    .mesh-field-blue{animation-duration:51s}
    .mesh-field-pink{animation-duration:57s}
    .mesh-field-warm{animation-duration:63s}
    .mesh-light{opacity:.92}
    .mesh-touch{background-size:auto}
    .mesh-orb{animation:none!important;will-change:auto;filter:blur(52px)}
    .mesh-orb-3,.mesh-orb-5{display:none}
    .dashboard-stage .hero h1,.btn-primary,.progress-fill,.tbar > span{animation:none}
    .container,.container.dashboard-view,.container.quiz-view,.container.wide{width:100%;padding:10px 8px 40px}
    #topnav{padding:0}
    .topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 8px;padding:9px 10px;border-radius:0;margin-bottom:0}
    .brand{min-width:0}
    .brand-title{font-size:19px}
    .brand-label{display:none}
    .theme-mode{min-width:142px;margin-left:0;height:36px;padding:3px;border-radius:12px}
    .theme-option{height:28px;padding:0 8px;font-size:11px}
    .theme-mode::before{top:3px;bottom:3px;left:3px;width:calc((100% - 12px)/3);border-radius:9px}
    .nav{order:initial;grid-column:1/-1;width:100%;gap:2px;padding:3px;margin-top:0;border-radius:13px}
    .nav-btn{min-height:38px;min-width:0;padding:0 6px;font-size:12px}
    .nav-dot{display:none}
    .stage-glass{padding:16px 14px;border-radius:19px}
    .dashboard-stage{padding:18px 14px}
    .quiz-stage{padding:12px 14px 20px}
    .dashboard-meta{font-size:9.5px;letter-spacing:.15em;margin-bottom:17px;padding-bottom:12px;gap:8px}
    .dashboard-meta .coverage{letter-spacing:.06em}
    .dashboard-utility-head{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:12px;min-height:0}
    .dashboard-utility-head h1{font-size:clamp(34px,12vw,52px);line-height:.95}
    .exam-mini{text-align:center;min-width:0}
    .ring-wrap,.ring-wrap svg{width:122px;height:122px}
    .hero-nightmare{display:block;padding:19px}
    .nightmare-cta .ns{margin:8px 0 17px}
    .stat-grid{grid-template-columns:repeat(2,1fr)}
    .snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 9px;margin-bottom:31px}
    .snapshot-metric{min-height:96px;padding:0 6px 4px 4px}
    .snapshot-metric::after{right:6px;height:3px}
    .snapshot-label{font-size:9.5px;letter-spacing:.13em;margin-bottom:6px}
    .snapshot-value{font-size:35px;margin-bottom:6px}
    .snapshot-detail{font-size:11.5px;line-height:1.36}
    .surface-section{padding:17px;border-radius:18px}
    .dashboard-stage .surface-section{padding:0;margin-bottom:27px}
    .answered-section{margin-top:-4px}
    .answered-head{display:block}
    .answered-head .btn{width:100%;margin-top:12px}
    .answered-list{max-height:520px}
    .answered-row{grid-template-columns:1fr;gap:9px;padding:13px 0}
    .answered-review-btn{width:100%}
    .answered-question{-webkit-line-clamp:3}
    .dashboard-stage .custom-session-section{
      margin-left:-5px;margin-right:-5px;padding:16px 13px 17px;border-radius:17px;
    }
    .session-control-row{display:block;margin-top:0}
    .session-submit-row{display:block;margin-top:0}
    .session-submit-actions{margin-top:12px;justify-content:space-between;gap:10px}
    .session-submit-actions .btn{flex:1}
    .resume-session{display:block;margin:0 0 26px;padding:14px 13px;border-radius:13px 13px 4px 4px}
    .resume-title{font-size:16px}
    .resume-actions{margin-top:12px}
    .resume-actions .btn-primary{flex:1}
    .dashboard-stage .section-label{font-size:11px;letter-spacing:.17em;margin-bottom:14px}
    .domain-grid{grid-template-columns:1fr}
    .domain-card.column-card{min-height:132px;padding:14px}
    .domain-card .domain-pct{margin-bottom:12px;padding:5px 9px;font-size:11px}
    .domain-name{margin-bottom:13px;font-size:16px}
    .quick-session-layout{display:block}
    .quick-session-layout .surface-section{margin-bottom:15px}
    .start-simple{grid-template-columns:1fr;padding:13px;gap:10px}
    .start-copy h2{font-size:20px}
    .start-copy p{font-size:13.5px}
    .start-smart-btn{min-height:52px;width:100%;padding:10px 12px}
    .start-smart-btn span{font-size:16px}
    .plan-pulse,.plan-grid{grid-template-columns:1fr}
    .plan-pulse button{min-height:50px}
    .coach-grid,.coach-strip,.contrast-row{grid-template-columns:1fr}
    .coach-card{min-height:76px}
    .repair-copy{display:block}
    .repair-note{display:block;margin-top:3px}
    .repair-entry{grid-template-columns:1fr}
    .visual-flow,.recall-compare,.fill-compare{grid-template-columns:1fr}
    .visual-step{min-height:70px}
    .repair-history-row{grid-template-columns:1fr;gap:3px}
    .quick-btn{min-height:49px;padding:13px 11px}
    .quick-btn .qs{font-size:11px}
    .chips{gap:6px}
    .chip{font-size:12px;padding:6px 9px}
    .seg{display:flex;width:100%;gap:2px}
    .seg button{flex:1 1 auto;min-height:40px;padding:7px 8px;font-size:12px}
    .topic-row{gap:8px;padding:11px 3px}
    .tbar{display:none}
    .quiz-stage .q-head{position:static;display:block;padding:11px 11px;margin-top:0;margin-bottom:15px}
    .quiz-stage .q-meta{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:9px}
    .q-tools{width:100%;margin-left:0;justify-content:space-between;gap:8px}
    .quiz-exit{min-height:31px;padding:0 12px}
    .pomodoro{height:31px;min-height:31px;gap:3px;padding:2px 4px;flex:1;min-width:0}
    .pomodoro-modes{gap:1px;padding:1px}
    .pomodoro-modes button{min-height:27px;padding:0 7px;font-size:10px}
    .pomodoro-time{min-width:42px;font-size:12px}
    .pomodoro-start{min-height:27px;min-width:39px;padding:0 7px;font-size:10px}
    .pomodoro-reset{display:none}
    .q-meta{font-size:12px;margin-bottom:10px}
    .q-score{display:flex;align-items:baseline;gap:6px;text-align:left;margin-top:12px}
    .q-score .big{font-size:25px}
    .badges{gap:6px;margin:0 0 17px}
    .badge{padding:5px 9px;font-size:10.5px}
    .badge-flag{margin-left:0}
    .quiz-stage .question-text{font-size:clamp(21px,6.2vw,24px);line-height:1.42;letter-spacing:-.035em;margin-bottom:23px}
    .answer-state.revealed{margin:0 -5px 20px;padding:8px 5px 2px;border-radius:14px}
    .quiz-action-row.revealed-actions{display:grid;grid-template-columns:1fr;align-items:stretch}
    .quiz-action-row.revealed-actions > .btn{width:100%;min-width:0}
    .quiz-action-row.revealed-actions > .quiz-back-action,
    .quiz-action-row.revealed-actions > .quiz-next-action{margin-left:0;margin-right:0}
    .confidence-card{display:block;padding:10px;border-radius:14px}
    .confidence-copy{justify-content:space-between}
    .confidence-actions{margin-top:9px;display:grid;grid-template-columns:1fr;gap:6px}
    .confidence-btn{min-width:0;min-height:42px}
    .options{gap:9px;margin-bottom:20px}
    .quiz-stage .option-btn{min-height:54px;padding:13px 11px;border-radius:13px;font-size:14px;line-height:1.46;gap:9px}
    .option-btn .okey{width:24px;height:24px}
    .btn-row{gap:8px}
    .btn{min-height:48px}
    .shortcut-hints{display:none}
    .results-stage{min-height:auto;padding-block:42px}
    .results-pct{font-size:64px}
    .results-btns{flex-direction:column}
    .results-btns .btn{width:100%}
    .workspace-stage{padding:17px 13px}
    .workspace-stage > .row:first-child{flex-wrap:wrap;gap:10px}
    .workspace-stage > .row:first-child .btn{width:100%}
    .q-list-item{display:grid;grid-template-columns:auto 1fr;gap:8px;padding:12px}
    .q-list-item .ql-q{grid-column:1/-1;white-space:normal;line-height:1.45}
    .ql-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:7px}
    .ed-grid{grid-template-columns:1fr}
    .source-file .muted{margin-left:0;width:100%}
    .import-actions .btn{flex-basis:100%}
    .mg-card{padding:17px}
    .lock-stage{margin:12px auto 0;padding:0 16px 18px}
    .lock-stage .lock{min-height:340px}
    .lock h1{font-size:34px}
    .lock-form{flex-direction:column;max-width:100%}
    .lock-stage .lock-form{max-width:100%;padding:6px;gap:7px;border-radius:28px}
    .lock-stage .lock-form input[type=password]{width:100%;text-align:center}
    .lock-stage .lock-submit{width:100%;min-width:0}
    .lock-form .btn{width:100%!important}
    .modal{padding:18px;border-radius:18px}
  }
  @media(max-width:380px){
    .snapshot-grid{grid-template-columns:1fr}
    .snapshot-metric{min-height:86px}
    .nav-btn{font-size:11.5px;padding:0 4px}
  }
  @media(prefers-reduced-motion:reduce){
    *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
    .mesh-field{animation:none!important}
    .mesh-touch.active{animation-duration:.001ms!important}
    .mesh-orb,.btn-primary,.progress-fill,.domain-card .dbar > div,.domain-card .dbar > span,.tbar > div,.tbar > span{animation:none!important}
  }
