:root{
  --purple:#6b3df4;--purple-dark:#4f25d5;--purple-soft:#f3efff;--purple-border:#ded4ff;
  --text:#171a2b;--muted:#73778b;--line:#e9e8f0;--bg:#fbfbfe;--card:#fff;
  --green:#1a9f67;--orange:#e9962b;--red:#e24c5b;--blue:#3976ee;
  --shadow:0 10px 32px rgba(51,43,102,.06);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}button,input{font:inherit}button{cursor:pointer}.icon{display:block;flex:none}
.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:246px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;padding:24px 14px 16px;z-index:20}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 26px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#6b3df4,#8a69ff);color:#fff;box-shadow:0 10px 25px rgba(107,61,244,.2)}.brand-name{font-size:22px;font-weight:850;letter-spacing:-.03em}.brand-sub{font-size:11px;color:var(--muted);margin-top:2px}.nav-list{display:flex;flex-direction:column;gap:4px}.nav-item{width:100%;display:flex;align-items:center;gap:11px;padding:12px 12px;border:0;border-radius:11px;background:transparent;color:#282b38;font-weight:650;font-size:14px}.nav-item:hover{background:#f7f6fb}.nav-item.active{color:#fff;background:linear-gradient(135deg,#6235ef,#7a58ff);box-shadow:0 9px 20px rgba(107,61,244,.16)}.nav-item .nav-icon{width:21px;color:currentColor}.nav-badge{margin-left:auto;min-width:20px;height:20px;border-radius:10px;display:grid;place-items:center;font-size:10px;font-weight:800;background:#efeaff;color:var(--purple)}.nav-item.active .nav-badge{background:rgba(255,255,255,.2);color:#fff}.sidebar-bottom{margin-top:auto}.support-item{margin-bottom:10px}.plan-card{border:1px solid #e8defe;background:linear-gradient(180deg,#f7f3ff,#fff);border-radius:15px;padding:15px 14px}.plan-title{font-weight:850;color:var(--purple)}.plan-status{font-size:12px;color:var(--muted);margin:8px 0 12px}.plan-button{width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid var(--purple-border);background:#fff;color:var(--purple);border-radius:10px;padding:9px 11px;font-weight:750}
.main{margin-left:246px;min-height:100vh}.topbar{height:76px;display:flex;justify-content:flex-end;align-items:center;padding:0 30px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.9);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.topbar-actions{display:flex;gap:12px;align-items:center}.icon-button{position:relative;width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:12px;display:grid;place-items:center;color:#4d5162}.top-dot{position:absolute;right:-2px;top:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#ea4057;color:#fff;font-size:10px;font-weight:800;display:grid;place-items:center}.profile-chip{display:flex;align-items:center;gap:10px;border:0;background:transparent;padding:4px 6px}.avatar{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#302c3a,#5a536d);color:#fff;font-weight:800}.profile-text{display:flex;flex-direction:column;align-items:flex-start}.profile-text strong{font-size:13px}.profile-text span{font-size:11px;color:var(--muted);margin-top:2px}.caret{font-size:18px;color:var(--muted)}.page{max-width:1420px;margin:0 auto;padding:30px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.home-head h1,.page-head h1{font-size:31px;line-height:1.12;letter-spacing:-.035em;margin:8px 0 6px}.home-head p,.page-head p{margin:0;color:var(--muted);font-size:14px}.exam-chip,.eyebrow{display:inline-flex;align-items:center;gap:6px;color:var(--purple);background:var(--purple-soft);border-radius:999px;font-size:11px;font-weight:850;padding:7px 10px}.guidee-hero{margin-top:22px;padding:26px;display:grid;grid-template-columns:1.55fr .75fr;align-items:center;overflow:hidden;background:linear-gradient(135deg,#f7f2ff 0%,#fff 68%);min-height:245px}.guidee-copy h2{font-size:28px;letter-spacing:-.03em;margin:10px 0 7px}.guidee-copy p{max-width:630px;color:var(--muted);font-size:14px;line-height:1.6;margin:0}.primary-button,.outline-button,.text-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;font-weight:800}.primary-button{border:0;background:linear-gradient(135deg,#6333f0,#7a58ff);color:#fff;padding:11px 15px;box-shadow:0 10px 22px rgba(107,61,244,.15);margin-top:16px}.outline-button{border:1px solid var(--line);background:#fff;color:var(--purple);padding:9px 12px}.outline-button:hover{border-color:var(--purple-border);background:var(--purple-soft)}.text-button{border:0;background:transparent;color:var(--purple);padding:5px 0}.guidee-visual{height:190px;display:grid;place-items:center;position:relative}.guidee-orbit{position:absolute;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle at 45% 35%,#e7ddff,#d9ccff 48%,#c8b8ff);filter:drop-shadow(0 18px 32px rgba(98,55,234,.12))}.guidee-mascot{position:relative;width:125px;height:125px;border-radius:34px;display:grid;place-items:center;color:#5d39d8;background:linear-gradient(180deg,#ffffff,#eee8ff);border:1px solid rgba(107,61,244,.12);box-shadow:0 12px 28px rgba(88,63,170,.1)}.guidee-mascot .icon{stroke-width:1.5}.home-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr);gap:20px;margin-top:24px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin:0 0 12px}.section-head.compact{align-items:center;margin-bottom:8px}.section-head h2{margin:0;font-size:18px;letter-spacing:-.02em}.section-head p{margin:4px 0 0;color:var(--muted);font-size:12px}.focus-list{display:grid;gap:10px}.focus-card{display:flex;align-items:center;gap:13px;padding:14px 15px}.focus-icon,.assigned-icon{display:grid;place-items:center;border-radius:12px;flex:none}.focus-icon{width:43px;height:43px}.focus-icon.guidee,.assigned-icon.guidee{background:#efe9ff;color:var(--purple)}.focus-icon.note,.assigned-icon.note{background:#eaf8ef;color:var(--green)}.focus-icon.strategy,.assigned-icon.strategy{background:#fff1df;color:var(--orange)}.focus-icon.lecture,.assigned-icon.lecture{background:#eaf1ff;color:var(--blue)}.focus-icon.test,.assigned-icon.test{background:#ffeaf1;color:#df4773}.focus-main{min-width:0;flex:1}.focus-title-row{display:flex;align-items:center;gap:8px}.focus-card h3{margin:0;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.focus-card p{margin:4px 0 0;color:var(--muted);font-size:12px}.status-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:850;flex:none}.status-pill.new{background:#eff8ec;color:#34831f}.status-pill.pending{background:#fff5e7;color:#bf7600}.status-pill.upcoming{background:#eef4ff;color:#3269c7}.home-side{display:grid;gap:16px}.side-card{padding:17px}.assigned-list{display:grid}.assigned-row{display:flex;align-items:center;gap:10px;padding:11px 0;border:0;border-top:1px solid #f0eff4;background:transparent;text-align:left}.assigned-row:first-child{border-top:0}.assigned-icon{width:37px;height:37px}.assigned-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.assigned-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.assigned-copy small{font-size:10px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-dot{width:9px;height:9px;border-radius:50%;flex:none}.status-dot.new{background:#5cc85c}.status-dot.pending{background:#efaa32}.status-dot.upcoming{background:#4a7be7}.result-card{padding:13px;border:1px solid #ece8f5;border-radius:14px;background:#fcfbff}.result-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.result-label{font-size:10px;color:var(--muted)}.result-card h3{font-size:13px;margin:4px 0 0;line-height:1.35}.result-score{font-size:24px;font-weight:900;color:var(--purple)}.score-track{height:8px;border-radius:99px;background:#eae8ef;overflow:hidden;margin:12px 0 9px}.score-track span{display:block;height:100%;background:linear-gradient(90deg,#7044f2,#8b6cff);border-radius:99px}.result-bottom{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted)}.page-head{display:flex;justify-content:space-between;align-items:flex-start}.resource-tabs{display:flex;gap:8px;margin-top:22px;border-bottom:1px solid var(--line);padding-bottom:10px}.resource-tab{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 14px;font-weight:800;color:#343744}.resource-tab.active{background:var(--purple);color:#fff;border-color:var(--purple)}.resource-tab.locked{color:var(--muted)}.resource-tools{display:flex;gap:10px;margin:16px 0}.search-box{flex:1;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:0 13px;color:#8a8e9f}.search-box input{border:0;outline:none;width:100%;padding:11px 0;color:var(--text);background:transparent}.filter-button{border:1px solid var(--line);background:#fff;border-radius:11px;padding:0 14px;color:#4c5060;font-weight:750}.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.resource-card{padding:16px;display:flex;align-items:center;gap:12px}.resource-icon{width:44px;height:44px;border-radius:12px;background:var(--purple-soft);color:var(--purple);display:grid;place-items:center;flex:none}.resource-content{min-width:0;flex:1}.resource-card h3,.test-row h3{margin:0 0 4px;font-size:14px}.resource-card p,.test-row p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.resource-meta{margin-top:8px;color:var(--purple);font-size:10px;font-weight:800}.personalised-lock{margin-top:16px;padding:18px;display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#f7f2ff,#fff)}.lock-symbol{width:46px;height:46px;border-radius:14px;background:#eee7ff;display:grid;place-items:center;font-size:21px}.personalised-lock h3{margin:0 0 4px;font-size:14px}.personalised-lock p{margin:0;color:var(--muted);font-size:12px}.personalised-lock .primary-button{margin:0 0 0 auto}.test-list{display:grid;gap:13px;margin-top:16px}.test-row{padding:17px;display:flex;align-items:center;gap:13px}.placeholder{margin-top:20px;padding:32px}.placeholder h2{margin:0 0 7px}.placeholder p{margin:0;color:var(--muted)}.chat-shell{margin-top:20px;overflow:hidden}.chat-body{padding:22px;display:grid;gap:14px}.message{max-width:74%;padding:15px;border-radius:15px;font-size:13px;line-height:1.55}.message.bot{background:#f5f0ff}.message.user{margin-left:auto;background:#eef5ff}.message.human{background:#eef9f2;border:1px solid #d8efdf}.message-label{font-weight:850;color:var(--purple);font-size:11px}.message.user .message-label{color:#4b6ea8}.message.human .message-label{color:#21804e}.message-label span{font-size:9px;background:#e6ddff;border-radius:999px;padding:2px 5px;margin-left:4px}.message p{margin:6px 0 0}.message ol{margin:8px 0 0 19px;padding:0}.attachment-list{display:grid;gap:7px;margin-top:11px}.attachment-list button{display:flex;align-items:center;gap:8px;border:1px solid #dbeadf;background:#fff;border-radius:9px;padding:9px 11px;text-align:left;color:#2c3331;font-weight:700}.chat-input{display:flex;align-items:center;gap:9px;padding:15px 18px;border-top:1px solid var(--line);background:#fff}.chat-input input{flex:1;border:0;outline:0;background:transparent}.send-button{width:40px;height:40px;border:0;border-radius:12px;background:var(--purple);color:#fff;display:grid;place-items:center}.chat-note{padding:10px 18px 16px;color:var(--muted);font-size:10px;text-align:center}
@media (max-width:1150px){.sidebar{width:84px}.brand{justify-content:center}.brand>div:not(.brand-mark),.nav-item span:not(.nav-icon),.nav-item .nav-badge,.plan-card{display:none}.nav-item{justify-content:center}.main{margin-left:84px}.home-layout{grid-template-columns:1fr}.guidee-hero{grid-template-columns:1fr}.guidee-visual{justify-content:start;margin-top:5px}.resource-grid{grid-template-columns:1fr}}
@media (max-width:760px){.sidebar{display:none}.main{margin-left:0}.topbar{height:66px;padding:0 16px}.profile-text,.caret{display:none}.page{padding:20px 16px}.home-head h1,.page-head h1{font-size:26px}.guidee-hero{padding:20px}.guidee-copy h2{font-size:23px}.home-layout{gap:15px}.focus-title-row{align-items:flex-start}.focus-card{align-items:flex-start}.focus-card .outline-button{margin-left:auto}.resource-grid{grid-template-columns:1fr}.resource-tools{flex-direction:column}.filter-button{height:42px}.test-row{align-items:flex-start;flex-wrap:wrap}.test-row .primary-button,.test-row .outline-button{margin-left:auto}.message{max-width:92%}}

.status-pill.locked{background:#f0edf7;color:#767087}.locked-card{background:linear-gradient(135deg,#fff,#fbfaff)}.locked-performance{display:flex;align-items:flex-start;gap:11px;padding:13px;border:1px solid #ece8f5;border-radius:14px;background:#fcfbff}.lock-badge{width:36px;height:36px;border-radius:11px;background:#eee8ff;display:grid;place-items:center;font-size:17px;flex:none}.locked-performance strong{display:block;font-size:12px}.locked-performance p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.45}.status-pill-ready{background:#eefaf5;color:#18785c}.status-pill-attempted{background:#f3efff;color:#573dc9}.test-status-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}.test-latest-score{font-size:12px;color:var(--text)}.test-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.test-actions button{white-space:nowrap}.result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px;text-align:left}.result-stats>div{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#faf9ff}.result-stats span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}.result-stats strong{font-size:22px;letter-spacing:-.02em}.result-summary-note{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.result-actions{margin-top:26px}.result-card .primary-button,.result-card .outline-button{min-width:180px}
.status-pill-ready{background:#eefaf5;color:#18785c}.status-pill-attempted{background:#f3efff;color:#573dc9}.test-status-row{margin-top:10px}.test-row .outline-button,.test-row .primary-button{min-width:126px}.result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px;text-align:left}.result-stats > div{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#faf9ff}.result-stats span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}.result-stats strong{font-size:22px;letter-spacing:-.02em}.result-summary-note{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}.result-actions{margin-top:26px}.result-card .primary-button,.result-card .outline-button{min-width:180px}
.chat-body{max-height:62vh;overflow:auto;scroll-behavior:smooth}.message{position:relative}.message-time{margin-top:8px;color:#999cad;font-size:9px;text-align:right}.message.bot .message-time{text-align:left}.message.human .message-time{text-align:left}.attachment-item{display:flex;align-items:center;gap:8px;width:100%;border:1px solid #dbeadf;background:#fff;border-radius:9px;padding:9px 11px;text-align:left;color:#2c3331;font-weight:700}.chat-input{position:sticky;bottom:0}.chat-input input:disabled{opacity:.6}.send-button:disabled{opacity:.5;cursor:wait}.chat-error{margin:0 22px 16px;padding:11px 13px;border:1px solid #ffd1d1;border-radius:11px;background:#fff6f6;color:#a12626;font-size:12px}
@media (max-width:760px){.chat-body{max-height:none;min-height:55vh}.message-time{font-size:8px}}
.filter-button{height:42px;appearance:none;cursor:pointer;background:#fff}

.hidden{display:none!important}
.test-attempt{padding:20px;margin-top:18px}.test-attempt-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.test-attempt-top span{font-weight:900;color:var(--purple);font-variant-numeric:tabular-nums}.question-card{padding:8px 0}.question-card h2{font-size:22px;line-height:1.45;margin:0 0 18px}.options{display:grid;gap:10px}.option{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:13px;padding:14px;background:#fff;cursor:pointer}.option.selected{border-color:var(--purple);background:var(--purple-soft)}.option input{display:none}.option span{width:32px;height:32px;border-radius:9px;background:#f2f1f5;display:grid;place-items:center;font-weight:900;color:#555}.option.selected span{background:var(--purple);color:#fff}.option b{font-size:14px}.test-nav{display:flex;justify-content:space-between;gap:10px;margin-top:22px}.submit-test-button{width:100%;margin-top:12px;border:0;border-radius:11px;padding:12px;background:#171a2b;color:#fff;font-weight:850}.result-big{margin-top:18px;padding:36px;text-align:center}.result-big .result-score{font-size:44px}.result-big h2{font-size:32px;color:var(--purple);margin:8px 0}.report-list{display:grid;gap:12px;margin-top:18px}.report-row{display:flex;align-items:center;gap:13px;padding:17px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}.profile-card{padding:20px}.profile-card h2{font-size:17px;margin:0 0 14px}.profile-fields{display:grid;gap:12px}.profile-fields div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #f0eff4;padding-top:10px}.profile-fields span{color:var(--muted);font-size:12px}.profile-fields strong{font-size:13px;text-align:right}.payment-intro{margin-top:20px;padding:26px;display:grid;grid-template-columns:1.7fr 1fr;gap:22px;align-items:stretch}.payment-badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--purple);background:var(--purple-soft)}.payment-intro h2{font-size:28px;line-height:1.18;margin:13px 0 9px}.payment-intro p{max-width:720px;color:var(--muted);line-height:1.65;margin:0}.payment-trust-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}.payment-trust-row span{padding:7px 10px;border-radius:999px;background:#f6f5f8;color:#35313e;font-size:11px;font-weight:800}.payment-visual{border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column;justify-content:center;gap:7px;background:linear-gradient(180deg,#faf9fc,#fff)}.payment-visual-icon{font-size:34px}.payment-visual strong{font-size:20px}.payment-visual span{color:var(--muted);font-size:12px;line-height:1.5}.payment-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.payment-benefit{padding:16px;display:flex;gap:12px;align-items:flex-start}.payment-benefit-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#f5f2fb;font-size:20px;flex:none}.payment-benefit h3{font-size:14px;margin:1px 0 5px}.payment-benefit p{font-size:11px;line-height:1.55;color:var(--muted);margin:0}.payment-section-title{display:flex;justify-content:space-between;align-items:end;gap:14px;margin:26px 0 2px}.payment-section-title h2{font-size:22px;margin:4px 0 0}.payment-note-inline{font-size:11px;color:var(--muted)}.plan-option{position:relative}.plan-option.featured{border-color:var(--purple);box-shadow:0 8px 30px rgba(76,44,145,.08)}.plan-popular{position:absolute;right:14px;top:14px;padding:5px 8px;border-radius:999px;background:var(--purple);color:#fff;font-size:9px;font-weight:900;letter-spacing:.06em}.plan-mini-points{display:grid;gap:6px;text-align:left;margin:15px 0 17px;font-size:10px;color:var(--muted)}.payment-bottom-note{display:flex;align-items:flex-start;gap:12px}.payment-note-icon{font-size:24px}.payment-bottom-note strong{font-size:13px}.payment-bottom-note p{margin:5px 0 0!important}.payment-note{margin-top:16px;padding:17px}@media(max-width:850px){.payment-intro{grid-template-columns:1fr}.payment-benefits-grid{grid-template-columns:1fr 1fr}.payment-section-title{align-items:flex-start;flex-direction:column}.payment-note-inline{margin-top:-8px}}@media(max-width:560px){.payment-benefits-grid{grid-template-columns:1fr}.payment-intro h2{font-size:23px}.payment-intro{padding:20px}.payment-trust-row{gap:6px}}
.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px}.plan-option{padding:22px;text-align:center}.plan-option .plan-duration{font-weight:800;color:var(--purple)}.plan-option strong{display:block;font-size:32px;margin:13px 0 0}.plan-option p{color:var(--muted);margin:6px 0}.plan-option .primary-button{width:100%}.payment-note{margin-top:16px;padding:17px}.payment-note p{margin:6px 0 0;color:var(--muted);font-size:13px}.notice-list{display:grid;gap:11px;margin-top:18px}.notice-row{display:flex;align-items:flex-start;gap:12px;padding:15px}.notice-row.read{opacity:.58}.notice-dot{width:9px;height:9px;border-radius:50%;background:var(--purple);margin-top:5px;flex:none}.notice-row strong{display:block;font-size:13px}.notice-row small{display:block;color:var(--muted);margin-top:5px;font-size:10px}.section-actions{margin-top:12px}.support-card{margin-top:20px;padding:35px;text-align:center}.support-icon{font-size:34px}.support-card h2{margin:10px 0 6px}.support-card p{color:var(--muted)}.support-card .primary-button{display:inline-flex}.attachment-item{color:#2c3331;text-decoration:none}.resource-card a{white-space:nowrap}
@media(max-width:850px){.profile-grid,.payment-intro{margin-top:20px;padding:26px;display:grid;grid-template-columns:1.7fr 1fr;gap:22px;align-items:stretch}.payment-badge{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:10px;font-weight:900;letter-spacing:.08em;color:var(--purple);background:var(--purple-soft)}.payment-intro h2{font-size:28px;line-height:1.18;margin:13px 0 9px}.payment-intro p{max-width:720px;color:var(--muted);line-height:1.65;margin:0}.payment-trust-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:17px}.payment-trust-row span{padding:7px 10px;border-radius:999px;background:#f6f5f8;color:#35313e;font-size:11px;font-weight:800}.payment-visual{border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column;justify-content:center;gap:7px;background:linear-gradient(180deg,#faf9fc,#fff)}.payment-visual-icon{font-size:34px}.payment-visual strong{font-size:20px}.payment-visual span{color:var(--muted);font-size:12px;line-height:1.5}.payment-benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.payment-benefit{padding:16px;display:flex;gap:12px;align-items:flex-start}.payment-benefit-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#f5f2fb;font-size:20px;flex:none}.payment-benefit h3{font-size:14px;margin:1px 0 5px}.payment-benefit p{font-size:11px;line-height:1.55;color:var(--muted);margin:0}.payment-section-title{display:flex;justify-content:space-between;align-items:end;gap:14px;margin:26px 0 2px}.payment-section-title h2{font-size:22px;margin:4px 0 0}.payment-note-inline{font-size:11px;color:var(--muted)}.plan-option{position:relative}.plan-option.featured{border-color:var(--purple);box-shadow:0 8px 30px rgba(76,44,145,.08)}.plan-popular{position:absolute;right:14px;top:14px;padding:5px 8px;border-radius:999px;background:var(--purple);color:#fff;font-size:9px;font-weight:900;letter-spacing:.06em}.plan-mini-points{display:grid;gap:6px;text-align:left;margin:15px 0 17px;font-size:10px;color:var(--muted)}.payment-bottom-note{display:flex;align-items:flex-start;gap:12px}.payment-note-icon{font-size:24px}.payment-bottom-note strong{font-size:13px}.payment-bottom-note p{margin:5px 0 0!important}.payment-note{margin-top:16px;padding:17px}@media(max-width:850px){.payment-intro{grid-template-columns:1fr}.payment-benefits-grid{grid-template-columns:1fr 1fr}.payment-section-title{align-items:flex-start;flex-direction:column}.payment-note-inline{margin-top:-8px}}@media(max-width:560px){.payment-benefits-grid{grid-template-columns:1fr}.payment-intro h2{font-size:23px}.payment-intro{padding:20px}.payment-trust-row{gap:6px}}
.plans-grid{grid-template-columns:1fr}.test-attempt-top{align-items:flex-start}.question-card h2{font-size:18px}}

.auth-wrap{min-height:70vh;display:grid;place-items:center}.auth-card{width:min(480px,100%);padding:30px}.auth-brand{padding:0 0 22px}.auth-card h1{margin:6px 0;font-size:30px}.auth-card p{color:var(--muted);margin:0 0 22px}.auth-card label{display:grid;gap:7px;font-size:12px;font-weight:800;margin-top:13px}.auth-card input,.auth-card select{height:44px;border:1px solid var(--line);border-radius:10px;padding:0 12px;outline:0;background:#fff}.auth-card input:focus,.auth-card select:focus{border-color:var(--purple-border);box-shadow:0 0 0 3px var(--purple-soft)}.auth-submit{width:100%;margin-top:18px}.auth-link{width:100%;margin-top:12px}

/* Sidebar interaction + scrolling */
body{overflow-x:hidden}
.sidebar{overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}
.sidebar::-webkit-scrollbar{width:6px}
.sidebar::-webkit-scrollbar-thumb{background:#dcd8e8;border-radius:99px}
.sidebar-toggle{position:fixed;top:18px;left:258px;z-index:40;width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#4d5162;display:grid;place-items:center;box-shadow:0 6px 18px rgba(42,35,80,.08)}
.sidebar-overlay{display:none}
@media(min-width:901px){
  .sidebar.compact{width:84px}
  .sidebar.compact .brand>div:not(.brand-mark),
  .sidebar.compact .nav-item span:not(.nav-icon),
  .sidebar.compact .nav-item .nav-badge,
  .sidebar.compact .plan-card{display:none}
  .sidebar.compact .brand{justify-content:center}
  .sidebar.compact .nav-item{justify-content:center}
  .main.sidebar-collapsed{margin-left:84px}
}
@media(max-width:900px){
  .sidebar{width:min(286px,86vw);transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 50px rgba(31,24,69,.14);z-index:60}
  .sidebar.sidebar-open{transform:translateX(0)}
  .sidebar-toggle{left:16px;top:13px;z-index:70}
  .topbar{padding-left:68px}
  .sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(22,18,38,.28);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .22s ease;z-index:50}
  .sidebar-overlay.active{opacity:1;pointer-events:auto}
  body.sidebar-menu-open{overflow:hidden}
  .main{margin-left:0}
}

/* Final sidebar toggle: lives inside the sidebar header */
.sidebar-toggle{position:absolute;right:10px;top:27px;left:auto;z-index:25;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#4d5162;display:grid;place-items:center;box-shadow:none}
.sidebar{position:fixed;overflow-y:auto;overflow-x:hidden}
.sidebar .brand{position:relative;padding-right:48px}
.sidebar.compact .brand{padding-right:0}
.sidebar.compact .sidebar-toggle{right:25px}
@media(max-width:900px){
  .sidebar-toggle{right:10px;top:27px}
  .sidebar .brand{padding-right:48px}
}

/* Student entry flow */
.entry-view{background:linear-gradient(135deg,#faf9ff,#fff)}
.entry-hidden{display:none!important}.entry-main{margin-left:0!important}

/* Landing Page - Header */
.landing-page{max-width:1300px;margin:0 auto;padding:0;min-height:100vh;display:flex;flex-direction:column}
.landing-header{padding:20px 30px;border-bottom:1px solid rgba(107,61,244,.08);background:#fff}
.landing-top{display:flex;justify-content:space-between;align-items:center;max-width:1300px;margin:0 auto}
.landing-brand{display:flex;align-items:center;gap:11px}
.landing-brand strong{display:block;font-size:20px;font-weight:900}
.landing-brand span{display:block;color:var(--muted);font-size:10px;margin-top:2px}
.landing-actions{display:flex;gap:12px}
.landing-signup{margin-top:0}

/* Landing Hero */
.landing-hero{display:grid;grid-template-columns:1.3fr 1.2fr;align-items:center;gap:40px;padding:60px 30px;max-width:1300px;margin:0 auto}
.landing-copy h1{font-size:62px;line-height:1.08;letter-spacing:-.06em;margin:0 0 16px;color:var(--text);font-weight:950}
.landing-copy h1 span{color:var(--purple);display:inline}
.landing-copy>p{font-size:18px;line-height:1.6;color:var(--muted);margin:0 0 28px;max-width:600px}
.landing-ctas{display:flex;align-items:center;gap:14px;margin-bottom:32px}
.landing-ctas button{margin-top:0}
.text-button{background:transparent;border:none;color:var(--muted);padding:0;font-weight:700;font-size:14px;text-decoration:underline;opacity:.9}
.text-button:hover{opacity:1;color:var(--text)}
.landing-reassurance{display:flex;flex-direction:column;gap:10px}
.reassurance-item{display:flex;align-items:flex-start;gap:10px}
.reassurance-item .check{color:var(--green);font-weight:900;font-size:18px;flex:none}
.reassurance-item strong{display:block;font-size:13px;font-weight:850}
.reassurance-item span{display:block;color:var(--muted);font-size:11px;margin-top:2px}

/* Landing Product Visual */
.landing-product-visual{height:480px;position:relative;display:grid;place-items:center}
.product-visual-container{position:relative;width:100%;height:100%;display:grid;place-items:center}
.landing-guide-chat-image{display:block;width:340px;max-width:100%;height:auto;border-radius:20px;box-shadow:0 20px 60px rgba(107,61,244,.12);object-fit:contain}
.product-glow{position:absolute;inset:-40px;background:radial-gradient(circle,rgba(107,61,244,.15) 0%,transparent 70%);border-radius:50%;pointer-events:none}
.product-window{position:relative;width:100%;max-width:380px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:16px;box-shadow:0 20px 60px rgba(107,61,244,.12);z-index:2}
.product-header{display:flex;align-items:center;gap:10px;padding-bottom:14px;border-bottom:1px solid var(--line);margin-bottom:14px}
.product-avatar{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#6b3df4,#8a69ff);color:#fff;display:grid;place-items:center;font-weight:900;font-size:18px;flex:none}
.product-header-text{flex:1;min-width:0}
.product-header-text strong{display:block;font-size:13px;font-weight:850}
.product-header-text small{display:block;color:var(--muted);font-size:10px;margin-top:2px}
.product-badge{padding:4px 10px;background:var(--green);color:#fff;border-radius:999px;font-size:10px;font-weight:850;flex:none}
.product-sections{display:grid;gap:12px}
.product-section{display:grid;gap:8px;padding:10px;background:rgba(107,61,244,.04);border-radius:12px}
.section-label{font-size:10px;font-weight:850;color:var(--muted);text-transform:uppercase}
.profile-info{display:flex;align-items:center;gap:8px}
.exam-badge{padding:4px 8px;background:var(--purple-soft);color:var(--purple);border-radius:6px;font-size:11px;font-weight:850}
.status-text{font-size:12px;font-weight:700;color:var(--text)}
.chat-bubble{display:flex;align-items:flex-start;gap:6px;margin:4px 0;padding:8px 10px;border-radius:10px;font-size:11px;line-height:1.4}
.chat-bubble.bot-bubble{background:var(--purple-soft);color:var(--text)}
.chat-bubble.user-bubble{background:var(--purple);color:#fff;margin-left:20px}
.bubble-icon{display:inline-block;width:14px;height:14px;flex:none;margin-top:2px}
.chat-bubble p{margin:0;font-size:11px}
.resource-item{display:flex;align-items:center;gap:8px;padding:6px;border-radius:8px;background:#fff}
.resource-icon{width:20px;height:20px;display:grid;place-items:center;flex:none;color:var(--purple)}
.resource-item div{min-width:0}
.resource-item strong{display:block;font-size:11px;font-weight:800}
.resource-item small{display:block;color:var(--muted);font-size:9px;margin-top:1px}
.progress-item{background:rgba(26,159,103,.08)}

/* Landing Core Message */
.landing-message{padding:60px 30px;background:linear-gradient(135deg,rgba(107,61,244,.05) 0%,rgba(107,61,244,.02) 100%);max-width:1300px;margin:0 auto}
.message-content{max-width:900px;margin:0 auto}
.message-kicker{display:inline-block;padding:7px 12px;background:var(--purple-soft);color:var(--purple);border-radius:999px;font-size:11px;font-weight:850;margin-bottom:16px}
.landing-message h2{font-size:42px;line-height:1.15;letter-spacing:-.04em;margin:0 0 16px;color:var(--text)}
.landing-message h2 em{color:var(--purple);font-style:normal;font-weight:950}
.landing-message>p{font-size:16px;line-height:1.65;color:var(--muted);margin:0 0 28px;max-width:720px}
.understanding-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}
.pillar-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:16px;background:#fff;border:1px solid var(--line);border-radius:14px}
.pillar-circle{width:36px;height:36px;border-radius:50%;background:var(--purple-soft);color:var(--purple);display:grid;place-items:center;font-weight:950;font-size:16px;margin:0 auto}
.pillar-item strong{font-size:12px;font-weight:850;line-height:1.4}
.message-emphasis{font-size:16px;font-weight:800;color:var(--purple);margin:16px 0!important}

/* Landing Journey */
.landing-journey{padding:60px 30px;max-width:1300px;margin:0 auto}
.journey-header{margin-bottom:42px;max-width:900px}
.section-kicker{display:inline-block;padding:7px 12px;background:var(--purple-soft);color:var(--purple);border-radius:999px;font-size:11px;font-weight:850;margin-bottom:14px}
.landing-journey h2{font-size:42px;line-height:1.15;letter-spacing:-.04em;margin:0 0 10px;color:var(--text)}
.journey-header>p{font-size:16px;line-height:1.6;color:var(--muted);margin:0}
.journey-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px;position:relative}
.journey-step{display:grid;gap:12px;text-align:center;padding:20px;background:#fff;border:1px solid var(--line);border-radius:16px;position:relative}
.step-visual{display:grid;gap:8px}
.step-number{font-size:24px;font-weight:950;color:var(--purple)}
.step-icon{width:32px;height:32px;display:grid;place-items:center;margin:0 auto;color:var(--purple)}
.journey-step h3{font-size:14px;font-weight:850;margin:0;color:var(--text)}
.journey-step p{font-size:12px;line-height:1.5;color:var(--muted);margin:0}
.step-connector{display:none}

/* Landing Features */
.landing-features{padding:60px 30px;background:linear-gradient(135deg,rgba(107,61,244,.03) 0%,rgba(107,61,244,.01) 100%);max-width:1300px;margin:0 auto}
.features-header{margin-bottom:42px;max-width:900px}
.landing-features h2{font-size:42px;line-height:1.15;letter-spacing:-.04em;margin:0 0 10px;color:var(--text)}
.features-header>p{font-size:16px;line-height:1.6;color:var(--muted);margin:0}
.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.feature-card{padding:24px;display:grid;gap:12px;position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;transition:box-shadow .3s ease,transform .3s ease}
.feature-card:hover{box-shadow:0 20px 40px rgba(107,61,244,.15);transform:translateY(-4px)}
.feature-number{position:absolute;top:16px;right:16px;font-size:28px;font-weight:950;color:rgba(107,61,244,.1)}
.feature-icon{width:40px;height:40px;display:grid;place-items:center;color:var(--purple);margin-bottom:4px}
.feature-card h3{font-size:16px;font-weight:850;margin:0;color:var(--text)}
.feature-card p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}

/* Why Different */
.landing-why-different{padding:60px 30px;max-width:1300px;margin:0 auto}
.difference-container{max-width:900px;margin:0 auto}
.difference-header{margin-bottom:40px}
.landing-why-different h2{font-size:42px;line-height:1.15;letter-spacing:-.04em;margin:0 0 8px;color:var(--text)}
.landing-why-different h2 em{color:var(--purple);font-style:normal;font-weight:950}
.comparison-table{display:grid;gap:24px}
.comparison-row{display:grid;gap:16px}
.comparison-label{font-weight:850;font-size:14px;color:var(--text)}
.comparison-flow{display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.flow-step{padding:10px 14px;background:var(--purple-soft);color:var(--purple);border-radius:10px;font-size:12px;font-weight:800;white-space:nowrap}
.flow-arrow{color:var(--muted);font-size:16px;font-weight:900}
.guidee-row .flow-step{background:var(--purple);color:#fff}
.comparison-divider{height:1px;background:var(--line);margin:16px 0}

/* Landing CTA */
.landing-cta-final{padding:60px 30px;background:linear-gradient(135deg,#6b3df4 0%,#4f25d5 100%);max-width:1300px;margin:0 auto;text-align:center}
.cta-box{max-width:700px;margin:0 auto}
.landing-cta-final h2{font-size:42px;line-height:1.15;letter-spacing:-.04em;margin:0 0 14px;color:#fff;font-weight:950}
.landing-cta-final>div p{font-size:16px;line-height:1.6;color:rgba(255,255,255,.9);margin:0 0 24px}
.cta-button{background:#fff;color:var(--purple);font-weight:850}
.cta-button:hover{box-shadow:0 10px 30px rgba(0,0,0,.2)}
.cta-note{font-size:12px;color:rgba(255,255,255,.7);margin-top:16px}

/* Responsive */
@media(max-width:1150px){
  .landing-hero{grid-template-columns:1fr;gap:30px;padding:50px 30px}
  .landing-copy h1{font-size:48px}
  .landing-product-visual{height:400px}
  .landing-guide-chat-image{width:305px}
  .understanding-pillars{grid-template-columns:repeat(2,1fr)}
  .features-grid{grid-template-columns:1fr}
}
@media(max-width:850px){
  .landing-hero{padding:40px 20px}
  .landing-header{padding:16px 20px}
  .landing-copy h1{font-size:38px;margin-bottom:12px}
  .landing-copy>p{font-size:15px;margin-bottom:20px}
  .landing-reassurance{gap:8px}
  .landing-message{padding:40px 20px}
  .landing-message h2{font-size:32px;margin-bottom:12px}
  .landing-journey{padding:40px 20px}
  .landing-journey h2{font-size:32px}
  .journey-steps{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}
  .landing-features{padding:40px 20px}
  .landing-features h2{font-size:32px}
  .understanding-pillars{grid-template-columns:1fr}
  .landing-why-different{padding:40px 20px}
  .landing-why-different h2{font-size:32px}
  .comparison-flow{gap:8px}
  .flow-step{padding:8px 10px;font-size:11px}
  .landing-cta-final{padding:40px 20px}
  .landing-cta-final h2{font-size:32px}
}

.preview-list{display:grid;gap:9px;margin:20px 0}.preview-list>div{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--line);border-radius:12px}.preview-list>div>span:first-child{font-size:19px}.preview-list strong{display:block;font-size:13px}.preview-list small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.preview-side{height:310px;display:grid;place-items:center;position:relative}.preview-side .guidee-orbit{width:260px;height:260px}.preview-side .guidee-mascot{width:175px;height:175px;border-radius:45px}.lock-chip{font-size:10px;color:#77728b}.preview-foot{border-top:1px solid var(--line);padding-top:14px;color:var(--muted);font-size:10px;margin:22px 0 0}
@media(max-width:850px){.landing-page{padding:20px 16px}.landing-hero,.preview-grid{grid-template-columns:1fr}.landing-copy h1{font-size:39px}.landing-visual{height:260px}.landing-visual .guidee-orbit{width:220px;height:220px}.landing-visual .guidee-mascot{width:150px;height:150px}.landing-points{grid-template-columns:1fr}.preview-card{padding:22px}.preview-grid h1{font-size:29px}.preview-side{height:220px}}

/* Entry/auth screens must not show dashboard-only controls. */
body.entry-view .topbar{display:none!important}
body.entry-view .main{margin-left:0!important;min-height:100vh}

.student-tools{display:grid;grid-template-columns:minmax(0,1fr) 180px 180px auto;gap:10px;padding:14px;margin-top:20px}.student-search{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:11px;padding:0 12px}.student-search input{border:0;outline:0;width:100%;padding:11px 0;background:transparent}.student-tools select{border:1px solid var(--line);border-radius:11px;background:#fff;padding:0 11px}.student-table-wrap{margin-top:14px;overflow:auto}.student-table{width:100%;border-collapse:collapse;min-width:760px}.student-table th,.student-table td{text-align:left;padding:14px;border-bottom:1px solid #f0eff4;font-size:12px}.student-table th{font-size:11px;color:var(--muted);font-weight:850}.student-name{display:flex;align-items:center;gap:10px}.student-name strong{display:block}.student-name small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.student-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--purple-soft);color:var(--purple);font-weight:900;flex:none}.student-avatar.large{width:52px;height:52px;font-size:18px}.admin-status{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:850}.admin-status.active{background:#eaf8ef;color:#278652}.admin-status.preview{background:#f2eefb;color:#756a8e}.workspace-back{margin-bottom:8px}.student-head{display:flex;justify-content:space-between;align-items:center;padding:17px;margin-top:4px}.student-head-main{display:flex;align-items:center;gap:12px}.student-head h1{font-size:22px;margin:0 0 4px}.student-head p{margin:0;color:var(--muted);font-size:11px}.workspace-tabs{display:flex;gap:7px;margin-top:14px;overflow:auto}.workspace-tab{border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px 14px;font-weight:800;font-size:12px;white-space:nowrap}.workspace-tab.active{background:var(--purple);border-color:var(--purple);color:#fff}.workspace-body{margin-top:14px}.workspace-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:14px}.workspace-card{padding:17px}.workspace-card h2{font-size:16px;margin:0 0 13px}.kv{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #f0eff4;padding-top:10px;margin-top:10px}.kv span{color:var(--muted);font-size:11px}.kv strong{font-size:12px;text-align:right}.admin-chat{max-height:480px;overflow:auto;display:grid;gap:9px}.admin-msg{max-width:72%;padding:10px 12px;border-radius:12px;background:#f5f0ff}.admin-msg.student{margin-left:auto;background:#eef5ff}.admin-msg.human{background:#eef9f2}.admin-msg span{font-size:10px;font-weight:850;color:var(--purple)}.admin-msg p{font-size:12px;line-height:1.5;margin:5px 0 0;white-space:pre-wrap}.admin-next-q{margin-top:14px;border-top:1px solid var(--line);padding-top:13px}.admin-next-q strong{font-size:11px}.admin-next-q p{font-size:12px;color:var(--muted);margin:5px 0 0}.workspace-list{display:grid;gap:9px}.workspace-row{display:grid;grid-template-columns:1.4fr 1fr auto;gap:10px;align-items:center;border-top:1px solid #f0eff4;padding:11px 0;font-size:11px}.workspace-row span{color:var(--muted)}.workspace-row .outline-button,.workspace-row a{justify-self:end}.admin-empty{padding:25px;text-align:center;color:var(--muted);font-size:12px}
.content-row-actions{white-space:nowrap;text-align:right;display:flex;justify-content:flex-end;align-items:center;gap:7px}.content-row-actions .make-general{padding:8px 10px;font-size:11px}.content-row-actions .delete-content{width:34px;height:34px;margin-left:7px;border:1px solid #eadce0;border-radius:10px;background:#fff;color:#b64a5c;font-size:15px;line-height:1;cursor:pointer;display:inline-grid;place-items:center;vertical-align:middle}.content-row-actions .delete-content:hover{background:#fff3f5;border-color:#e5b8c1;transform:translateY(-1px)}

@media(max-width:900px){.student-tools{grid-template-columns:1fr 1fr}.student-search{grid-column:1/-1}.workspace-grid{grid-template-columns:1fr}.workspace-row{grid-template-columns:1fr;gap:5px}.workspace-row .outline-button,.workspace-row a{justify-self:start}}
@media(max-width:600px){.student-tools{grid-template-columns:1fr}.student-head{align-items:flex-start}.workspace-tabs{padding-bottom:2px}}

.guidee-admin-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:14px;margin-top:14px}.guidee-actions{display:grid;gap:14px}.workspace-card textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:10px;padding:10px;resize:vertical;outline:0}.workspace-card input[type=datetime-local]{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:10px;padding:10px;margin:7px 0 10px}.mini-label{display:block;margin-top:12px;color:var(--muted);font-size:10px;font-weight:800}.mini-check{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}.scheduled-list{display:grid;gap:8px;max-height:310px;overflow:auto}.scheduled-row{padding:10px;border-top:1px solid #f0eff4}.scheduled-row:first-child{border-top:0}.scheduled-row strong{display:block;font-size:11px}.scheduled-row small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.human-compose{display:grid;gap:8px;margin-top:14px;border-top:1px solid var(--line);padding-top:13px}
@media(max-width:850px){.guidee-admin-layout{grid-template-columns:1fr}}

.content-actions{display:flex;justify-content:flex-end;margin-top:-38px;margin-bottom:14px}.content-tools{display:grid;grid-template-columns:minmax(0,1fr) 180px 180px 180px;gap:10px;padding:14px}.modal-backdrop{position:fixed;inset:0;background:rgba(19,16,30,.38);backdrop-filter:blur(3px);z-index:100;display:grid;place-items:center;padding:20px}.modal-card{width:min(620px,100%);max-height:90vh;overflow:auto;padding:22px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.modal-head h2{margin:0;font-size:19px}.modal-close{border:0;background:#f3f1f7;border-radius:9px;width:34px;height:34px;font-size:22px;color:#555}.modal-card label{display:grid;gap:6px;margin-top:12px;font-size:11px;font-weight:800}.modal-card input,.modal-card textarea,.modal-card select{font:inherit;border:1px solid var(--line);border-radius:10px;padding:10px;background:#fff;outline:0}.modal-card select[multiple]{min-height:100px}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.modal-actions .primary-button{margin-top:0}.assign-student-list{display:grid;gap:7px;max-height:280px;overflow:auto;margin:12px 0}.assign-student{display:flex!important;grid-template-columns:none!important;align-items:center;gap:10px;border:1px solid var(--line);padding:10px;border-radius:10px}.assign-student input{width:16px;height:16px}.assign-student span{display:block}.assign-student strong{display:block;font-size:12px}.assign-student small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.modal-note{font-size:12px;color:var(--muted);line-height:1.5}
@media(max-width:900px){.content-tools{grid-template-columns:1fr 1fr}.content-actions{margin-top:10px}}
@media(max-width:600px){.content-tools{grid-template-columns:1fr}.modal-card{padding:17px}}

.qb-actions{display:flex;justify-content:flex-end;margin-top:-38px;margin-bottom:14px}.qb-tools{display:grid;grid-template-columns:minmax(0,1fr) 150px 150px 150px 160px 150px;gap:8px;padding:13px}.qb-selection-bar{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;margin-top:12px}.qb-selection-bar span{font-size:12px;font-weight:850;color:var(--muted)}.qb-check{width:16px;height:16px}.student-table td small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.modal-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.import-result{margin-top:12px;padding:10px;border-radius:9px;background:#f7f5fb;font-size:11px;color:#4d4960}.import-result pre{white-space:pre-wrap;max-height:180px;overflow:auto;font-size:9px;margin:8px 0 0}
@media(max-width:1200px){.qb-tools{grid-template-columns:1fr 1fr 1fr}.qb-tools .student-search{grid-column:1/-1}}
@media(max-width:650px){.qb-tools{grid-template-columns:1fr}.modal-two{grid-template-columns:1fr}.qb-actions{margin-top:10px}}

#adminTestQuestions,#adminTestStudents{width:100%;min-height:140px}

.workspace-card>.section-head .primary-button{margin-top:0}

.structure-layout{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:20px}.structure-panel{padding:15px;min-height:360px}.structure-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}.structure-head h2{font-size:15px;margin:0}.structure-list{display:grid;gap:6px;max-height:500px;overflow:auto}.structure-item{display:block;width:100%;text-align:left;border:1px solid transparent;background:#faf9fd;padding:10px;border-radius:9px;font-size:11px;color:var(--text)}button.structure-item{cursor:pointer}.structure-item:hover,.structure-item.selected{border-color:var(--purple-border);background:var(--purple-soft);color:var(--purple)}@media(max-width:1050px){.structure-layout{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.structure-layout{grid-template-columns:1fr}}

.otp-row{display:flex;gap:8px;align-items:center}.otp-row input{flex:1}.otp-help{font-size:11px;color:#777;margin-top:-4px;margin-bottom:6px}.profile-card #logoutBtn,.profile-card #changePasswordBtn{display:block;margin-top:8px}

/* Human Team takeover state */
.human-waiting{margin:10px 0;padding:12px 14px;border-radius:12px;background:#eef8f1;border:1px solid #dcefe1}.human-waiting span{display:block;font-size:11px;font-weight:800;color:#2f7d42;margin-bottom:4px}.human-waiting p{margin:0;font-size:12px;color:#344238}.human-waiting small{display:block;margin-top:5px;font-size:9px;color:#7c8b80}

/* Admin notification dropdown */
.admin-notifications{position:relative;margin-right:14px}.admin-notification-button{position:relative;border:1px solid var(--line);background:#fff;border-radius:10px;width:38px;height:38px;font-size:16px}.admin-notification-badge{position:absolute;right:-5px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:#d93434;color:#fff;font-size:10px;font-weight:800;display:grid;place-items:center}.admin-notification-menu{position:absolute;right:0;top:46px;width:min(360px,calc(100vw - 28px));max-height:420px;overflow:auto;z-index:120;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 15px 35px rgba(22,18,45,.18);padding:8px}.admin-notification-head{display:flex;align-items:center;justify-content:space-between;padding:8px 9px;font-size:12px}.admin-notification-item{width:100%;border:0;border-top:1px solid #f0eff4;background:#fff;padding:11px 9px;text-align:left}.admin-notification-item.unread{background:#f7f3ff}.admin-notification-item strong,.admin-notification-item small{display:block}.admin-notification-item strong{font-size:11px;line-height:1.4}.admin-notification-item small{color:var(--muted);font-size:9px;margin-top:4px}.admin-notification-empty{padding:20px 9px;color:var(--muted);font-size:11px;text-align:center}

/* Premium visual pass: the application structure and behavior remain unchanged. */
:root{--purple:#6654c7;--purple-dark:#4e3da8;--purple-soft:#f1effb;--purple-border:#d9d3f2;--text:#20202a;--muted:#707080;--line:#e8e7ed;--bg:#f7f7f9;--card:#fff;--shadow:0 12px 30px rgba(33,30,55,.055)}
body{background:var(--bg);color:var(--text)}
.sidebar{background:#fcfcfd;border-right-color:#e5e4eb}.topbar{background:rgba(252,252,253,.92);border-bottom-color:#e5e4eb}.nav-item{color:#353541;transition:background-color .18s ease,color .18s ease}.nav-item:hover{background:#f1f0f6}.nav-item.active{background:var(--purple);box-shadow:0 8px 18px rgba(82,67,171,.16)}.brand-mark,.product-avatar{background:var(--purple);box-shadow:0 8px 18px rgba(82,67,171,.16)}.card{border-color:#e6e5eb;box-shadow:var(--shadow)}
button,.outline-button,.primary-button,.icon-button,.plan-button{transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease}.primary-button:hover,.send-button:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(82,67,171,.18)}.outline-button:hover,.plan-button:hover,.icon-button:hover{border-color:var(--purple-border);color:var(--purple);background:#f7f6fc}
.chat-shell{margin-top:18px;overflow:hidden;background:#111214;border:1px solid #292a2f;border-radius:16px;box-shadow:0 18px 45px rgba(16,16,20,.14);color:#f2f2f3}.chat-body{max-height:66vh;min-height:390px;padding:28px clamp(18px,4vw,56px) 24px;background:#111214;scrollbar-color:#3b3d43 transparent}.chat-body::-webkit-scrollbar{width:8px}.chat-body::-webkit-scrollbar-track{background:transparent}.chat-body::-webkit-scrollbar-thumb{background:#383a40;border-radius:8px}
.message{max-width:820px;margin:0 auto 28px;padding:0;color:#e8e8ea;animation:guidee-message-in .22s ease both}.message-label{display:flex;align-items:center;gap:8px;margin-bottom:8px;color:#9d9fa8;font-size:11px;font-weight:750;letter-spacing:.01em}.message-label span{padding:2px 6px;border:1px solid #3f4148;border-radius:5px;color:#b8b3e7;font-size:9px;font-weight:700}.message p{margin:0;color:#e9e9eb;font-size:15px;line-height:1.72;white-space:normal;overflow-wrap:anywhere}.message.user{max-width:680px;margin-right:max(0px,4vw);margin-left:auto;padding:13px 16px;border:1px solid #30323a;border-radius:14px;background:#202126}.message.user .message-label{color:#c5c5cb}.message.bot,.message.human{padding-left:0;background:transparent}.message.bot .message-label{color:#b8b3e7}.message.human .message-label{color:#9fc9b0}.message-time{margin-top:10px;color:#777981;font-size:10px}.message.user .message-time{text-align:right}
.attachment-item{margin-top:14px;border:1px solid #34363d;background:#1a1b1f;border-radius:10px;color:#d7d5f1;transition:background-color .18s ease,border-color .18s ease}.attachment-item:hover{border-color:#7166bd;background:#24232e;color:#fff}.chat-input{display:flex;align-items:center;gap:10px;margin:0 clamp(14px,4vw,48px) 14px;padding:7px 8px 7px 14px;border:1px solid #35373e;border-radius:13px;background:#1a1b1f;color:#8d9099;transition:border-color .18s ease,box-shadow .18s ease}.chat-input:focus-within{border-color:#6860a9;box-shadow:0 0 0 3px rgba(102,84,199,.16)}.chat-input input{min-width:0;flex:1;height:38px;border:0;outline:0;background:transparent;color:#f2f2f3;font-size:14px}.chat-input input::placeholder{color:#858790}.send-button{width:36px;height:36px;display:grid;place-items:center;flex:none;border:0;border-radius:10px;background:var(--purple);color:#fff}.chat-note{margin:0 20px 16px;color:#777981;font-size:11px;text-align:center}.empty-chat{padding:58px 12px;text-align:center;color:#8d9099}.empty-chat p{margin:0;font-size:14px}.human-waiting{margin:0 auto 28px;max-width:820px;background:#19231d;border-color:#2e4a38;color:#dcebe1}.human-waiting span{color:#9fc9b0}.human-waiting p{color:#dcebe1}.personalised-lock{border-color:#dfdced;background:linear-gradient(135deg,#fcfbff,#f6f5fb)}
@keyframes guidee-message-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){.chat-shell{margin-top:14px;border-radius:13px}.chat-body{min-height:calc(100dvh - 250px);max-height:none;padding:22px 14px 18px}.message,.message.user,.human-waiting{max-width:100%;margin-bottom:22px}.message p{font-size:14px;line-height:1.65}.message.user{padding:11px 13px}.chat-input{margin:0 10px 10px;padding-left:11px}.chat-note{margin:0 12px 12px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.message{animation:none}button,.outline-button,.primary-button,.icon-button,.plan-button{transition:none}}

.guidee-chat-page{min-width:0}.guidee-chat-page>.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.chat-expand-button{display:inline-flex;align-items:center;gap:8px;flex:none;border:1px solid #d9d6e6;border-radius:10px;padding:9px 12px;background:#fff;color:#4d467d;font-size:12px;font-weight:800}.chat-expand-button:hover{border-color:#aaa2d5;background:#f6f4fc;color:var(--purple)}
body.guidee-fullscreen{overflow:hidden}.guidee-fullscreen .sidebar,.guidee-fullscreen .topbar{visibility:hidden;pointer-events:none}.guidee-fullscreen .main{margin-left:0}.guidee-fullscreen .page{max-width:none;height:100vh;padding:0}.guidee-fullscreen .guidee-chat-page{position:fixed;inset:0;z-index:80;display:flex;flex-direction:column;gap:14px;padding:24px clamp(20px,5vw,72px);background:#111214}.guidee-fullscreen .guidee-chat-page>.page-head{flex:none;padding:0}.guidee-fullscreen .guidee-chat-page .eyebrow{background:#262430;color:#b8b3e7}.guidee-fullscreen .guidee-chat-page .page-head h1{color:#f2f2f3}.guidee-fullscreen .guidee-chat-page .page-head p{color:#8f919a}.guidee-fullscreen .chat-expand-button{border-color:#3b3d45;background:#1a1b1f;color:#d7d5f1}.guidee-fullscreen .chat-expand-button:hover{border-color:#7166bd;background:#24232e;color:#fff}.guidee-fullscreen .chat-shell{min-height:0;flex:1;margin:0;display:flex;flex-direction:column}.guidee-fullscreen .chat-body{max-height:none;min-height:0;flex:1}.guidee-fullscreen .chat-input{flex:none}
@media(max-width:760px){.guidee-chat-page>.page-head{gap:12px}.guidee-chat-page>.page-head h1{font-size:25px}.chat-expand-button{padding:8px 10px}.chat-expand-button span{display:none}.guidee-fullscreen .guidee-chat-page{gap:10px;padding:14px 10px}.guidee-fullscreen .guidee-chat-page>.page-head h1{font-size:22px}.guidee-fullscreen .chat-expand-button span{display:inline}.guidee-fullscreen .chat-expand-button{padding:8px 9px;font-size:10px}.guidee-fullscreen .chat-body{min-height:0}}

/* Admin attempt detail view */
.attempt-history{display:grid;gap:10px;margin-bottom:16px}.attempt-history-list{display:grid;gap:7px;max-height:220px;overflow:auto}.attempt-history-item{width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:11px;padding:10px 12px;cursor:pointer}.attempt-history-item:hover{border-color:var(--purple-border);background:var(--purple-soft)}.attempt-history-item.active{border-color:var(--purple);background:var(--purple-soft)}.attempt-history-item strong{display:block;font-size:12px;color:var(--text)}.attempt-history-item span{display:block;font-size:11px;color:var(--purple);font-weight:800;margin-top:3px}.attempt-history-item small{display:block;color:var(--muted);font-size:9px;margin-top:3px}.attempt-detail-shell{display:grid;gap:14px}.attempt-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.attempt-summary-grid>div{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#faf9ff}.attempt-summary-grid span{display:block;color:var(--muted);font-size:10px;margin-bottom:3px}.attempt-summary-grid strong{font-size:20px;letter-spacing:-.02em}.attempt-meta{display:grid;gap:4px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fcfbff}.attempt-meta strong{font-size:13px}.attempt-meta span{color:var(--muted);font-size:11px}.attempt-meta small{color:var(--muted);font-size:10px}.attempt-question-list{display:grid;gap:12px;margin-top:4px}.attempt-question-row{padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff}.attempt-question-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.attempt-question-head strong{font-size:12px}.attempt-status{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:4px 9px;font-size:10px;font-weight:850;flex:none}.attempt-status.correct{background:#eaf8ef;color:#278652}.attempt-status.incorrect{background:#ffecef;color:#c22b3d}.attempt-status.unattempted{background:#f0edf7;color:#767087}.attempt-question-row>p{margin:0 0 10px;font-size:13px;line-height:1.5}.attempt-answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.attempt-answer-grid>div{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#faf9ff}.attempt-answer-grid span{display:block;color:var(--muted);font-size:10px;margin-bottom:3px}.attempt-answer-grid strong{font-size:12px;line-height:1.4}
@media(max-width:600px){.attempt-summary-grid{grid-template-columns:1fr 1fr}.attempt-answer-grid{grid-template-columns:1fr}}

/* ===== Test-taking mode ===== */
body.test-taking-mode{overflow:hidden;background:#f4f3f8}
body.test-taking-mode .app-shell{min-height:100vh}
body.test-taking-mode .sidebar,
body.test-taking-mode .topbar{display:none!important}
body.test-taking-mode .main{margin-left:0!important;min-height:100vh;width:100%}
body.test-taking-mode .page{padding:0;max-width:none}
.exam-shell{min-height:100vh;height:100vh;display:flex;flex-direction:column;background:#f4f3f8;color:var(--text)}
.exam-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 28px;background:#fff;border-bottom:1px solid #dedce6;position:relative;z-index:5;box-shadow:0 2px 12px rgba(33,30,55,.04)}
.exam-heading{min-width:0}.exam-eyebrow{display:flex;align-items:center;gap:7px;color:var(--purple);font-size:10px;font-weight:900;letter-spacing:.09em}.exam-eyebrow>span:last-child{font-size:8px;letter-spacing:.08em;color:#4b9c6f}.exam-live-dot{width:7px;height:7px;border-radius:50%;background:#4caf75;box-shadow:0 0 0 4px #eaf7ee}.exam-heading h1{margin:5px 0 4px;font-size:22px;line-height:1.2;letter-spacing:-.025em}.exam-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:10px;flex-wrap:wrap}.exam-header-actions{display:flex;align-items:center;gap:12px;flex:none}.exam-timer-wrap{min-width:100px;text-align:center;padding:9px 13px;border:1px solid #e4e1eb;background:#faf9fd;border-radius:12px}.exam-timer-wrap span{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.exam-timer-wrap strong{display:block;margin-top:3px;font-size:22px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.03em}.exam-timer-wrap strong.warning{color:#aa7b1d}.exam-timer-wrap strong.critical{color:#c83d49;animation:exam-pulse 1s ease-in-out infinite}
.exam-exit-button{border:1px solid #e4c9cc;background:#fff8f8;color:#b43c45;border-radius:10px;padding:10px 14px;font-size:11px;font-weight:850;cursor:pointer}.exam-exit-button:hover{background:#fff0f0;border-color:#dfafb3}.exam-workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px;width:100%;max-width:1540px;margin:0 auto;padding:18px 22px}
.exam-main{margin:0;padding:24px 30px;min-height:0;display:flex;flex-direction:column;overflow:auto;background:#fff;border:1px solid #e4e2ea;border-radius:16px;box-shadow:0 10px 35px rgba(42,35,80,.06)}
.exam-main-top{display:flex;justify-content:space-between;gap:18px;align-items:center;padding-bottom:15px;border-bottom:1px solid #efedf4}.exam-main-top>div:first-child{display:flex;align-items:center;gap:9px;min-width:0}.exam-section-label,.panel-kicker{display:inline-flex;align-items:center;color:var(--purple);font-size:8px;font-weight:900;letter-spacing:.11em}.exam-section-label{padding:5px 7px;border-radius:6px;background:var(--purple-soft)}.exam-main-top strong{font-size:13px}.exam-main-top>div:last-child{color:var(--muted);font-size:10px;white-space:nowrap}
.question-card{padding:34px 6px 18px;max-width:1020px}.question-index-label{display:none}.question-card h2{font-size:25px;line-height:1.5;max-width:980px;margin:0 0 27px;font-weight:750;letter-spacing:-.015em}.options{display:grid;gap:12px;max-width:1000px}.option{position:relative;display:grid;grid-template-columns:34px 1fr;align-items:center;gap:12px;min-height:62px;padding:14px 16px!important;border:1px solid #dddbe5!important;border-radius:12px!important;background:#fbfbfd!important;box-shadow:none!important;cursor:pointer;transition:.15s ease}.option:hover{border-color:#c9c1e9!important;background:#f8f6fd!important;transform:translateY(-1px)}.option.selected{border-color:var(--purple)!important;background:#f4f1ff!important;box-shadow:0 0 0 2px rgba(102,84,199,.08)!important}.option input{position:absolute;opacity:0;pointer-events:none}.option>span{width:32px;height:32px;display:grid;place-items:center;border:1px solid #d6d4de;border-radius:9px;background:#fff;color:#555766;font-size:11px;font-weight:900}.option.selected>span{border-color:var(--purple);background:var(--purple);color:#fff}.option b{font-size:14px;line-height:1.45;font-weight:650;color:#272835}
.exam-controls{margin-top:auto;padding-top:20px;border-top:1px solid #efedf4;display:flex;justify-content:space-between;align-items:center;gap:14px}.exam-primary-actions{display:flex;gap:10px}.exam-controls .outline-button,.exam-controls .primary-button{min-width:112px}.skip-button{color:#b23d44;border-color:#e9b8bc;background:#fff}.skip-button:hover{background:#fff3f3}.exam-question-panel{background:#fff;border:1px solid #e1dfea;border-radius:16px;padding:18px;align-self:stretch;min-height:0;display:flex;flex-direction:column;box-shadow:0 10px 30px rgba(42,35,80,.06)}.question-panel-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.panel-kicker{display:block;margin-bottom:5px;color:#8b8795}.question-panel-head strong{display:block;font-size:16px}.question-panel-head span:last-child{display:block;color:var(--muted);font-size:10px;margin-top:4px}.question-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0;padding:12px 0;border-top:1px solid #f0eff4;border-bottom:1px solid #f0eff4}.question-legend span{display:flex;align-items:center;gap:6px;color:#6e6c77;font-size:9px;font-weight:750}.q-dot{width:9px;height:9px;border-radius:3px;display:inline-block}.q-dot.current{background:var(--purple)}.q-dot.answered{background:#39a967}.q-dot.skipped{background:#dc5c63}.q-dot.unanswered{background:#c7c7ce}.question-palette{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;overflow:auto;padding:2px 3px 2px 1px}.question-number{height:42px;border-radius:10px;border:1px solid #dddbe4;background:#f5f5f8;color:#4f5160;font-size:12px;font-weight:900;cursor:pointer;transition:.15s ease}.question-number:hover{transform:translateY(-1px);border-color:#c9c2e6}.question-number.current{border-color:var(--purple);background:var(--purple);color:#fff;box-shadow:0 5px 14px rgba(109,61,245,.2)}.question-number.answered{border-color:#b7dfc5;background:#e9f7ee;color:#23794b}.question-number.skipped{border-color:#efb5b8;background:#fff0f1;color:#b33b42}.question-number.unanswered{background:#f6f6f8;color:#696b76}.palette-note{margin-top:auto;padding-top:13px;color:#8a8792;font-size:9px;line-height:1.45}
.exam-footer-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 28px;background:#fff;border-top:1px solid #dedce6;position:relative;z-index:5;box-shadow:0 -2px 10px rgba(33,30,55,.03)}.exam-footer-bar .exam-progress-state{color:#6e6c77;font-size:10px;font-weight:800}.exam-footer-bar .submit-test-button{width:auto;min-width:160px;margin:0}
.exam-exit-overlay{position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:rgba(21,20,28,.48);backdrop-filter:blur(3px);z-index:200}.exam-exit-overlay[hidden]{display:none}.exam-exit-dialog{width:min(430px,100%);padding:28px;border-radius:18px;background:#fff;border:1px solid #ddd9e4;box-shadow:0 25px 70px rgba(20,17,35,.25);text-align:center}.exam-exit-icon{width:44px;height:44px;margin:0 auto 13px;display:grid;place-items:center;border-radius:50%;background:#fff0f1;color:#bd3d48;font-size:20px;font-weight:900}.exam-exit-dialog h2{margin:0;font-size:21px}.exam-exit-dialog p{margin:9px auto 20px;max-width:350px;color:var(--muted);font-size:12px;line-height:1.55}.exam-exit-actions{display:flex;justify-content:center;gap:10px}.exam-exit-actions button{min-width:135px}.exam-danger-button{background:#b9414b!important;border-color:#b9414b!important}
@keyframes exam-pulse{50%{opacity:.5}}
@media(max-width:1050px){.exam-workspace{grid-template-columns:minmax(0,1fr) 255px;padding:14px}.question-palette{grid-template-columns:repeat(4,minmax(0,1fr))}.question-number{height:38px}.exam-main{padding:20px 22px}.exam-header{padding:14px 18px}.exam-footer-bar{padding:11px 18px}.question-card h2{font-size:22px}}
@media(max-width:760px){body.test-taking-mode{overflow:auto}.exam-shell{height:auto;min-height:100vh}.exam-header{padding:13px 14px;align-items:flex-start}.exam-heading h1{font-size:18px}.exam-meta{font-size:9px}.exam-header-actions{gap:7px;align-items:flex-start}.exam-timer-wrap{min-width:82px;padding:8px 9px}.exam-timer-wrap strong{font-size:18px}.exam-exit-button{padding:9px 10px;font-size:10px}.exam-workspace{display:flex;flex-direction:column;padding:10px}.exam-main{order:1;min-height:0;padding:16px}.exam-question-panel{order:2;min-height:auto;padding:14px}.question-palette{grid-template-columns:repeat(6,minmax(0,1fr));max-height:220px}.question-card{padding:22px 2px 14px}.question-card h2{font-size:19px;line-height:1.45}.option{grid-template-columns:30px 1fr;min-height:56px;padding:12px!important}.option>span{width:29px;height:29px}.option b{font-size:13px}.exam-main-top{align-items:flex-start;flex-direction:column;gap:7px}.exam-main-top>div:last-child{white-space:normal}.exam-controls{flex-direction:column;align-items:stretch}.exam-controls>button,.exam-primary-actions{width:100%}.exam-primary-actions button{flex:1}.exam-footer-bar{padding:10px 14px}.exam-footer-bar .exam-progress-state{font-size:9px}.exam-footer-bar .submit-test-button{min-width:126px}.question-legend{grid-template-columns:1fr 1fr}.exam-exit-actions{flex-direction:column}.exam-exit-actions button{width:100%}}

/* Guidee chat readability polish: keep the existing layout/behavior, improve reading comfort. */
.guidee-chat-page .chat-body{
  padding:28px 32px 24px;
  gap:18px;
}
.guidee-chat-page .message{
  max-width:min(82%, 900px);
  padding:16px 18px;
  border-radius:16px;
  font-size:15px;
  line-height:1.7;
  letter-spacing:0;
}
.guidee-chat-page .message.bot,
.guidee-chat-page .message.human{
  margin-right:auto;
}
.guidee-chat-page .message.user{
  margin-left:auto;
  margin-right:0;
}
.guidee-chat-page .message-label{
  font-size:12px;
  margin-bottom:2px;
}
.guidee-chat-page .message-label span{
  font-size:10px;
  padding:2px 6px;
}
.guidee-chat-page .message p{
  margin:7px 0 0;
  font-size:15px;
  line-height:1.75;
}
.guidee-chat-page .message-time{
  font-size:10px;
  margin-top:8px;
  opacity:.72;
}
.guidee-chat-page .preview-message{opacity:.98}.guidee-chat-page .chat-input.is-locked{border-color:#3a3b42;background:#17181c;opacity:.94}.guidee-chat-page .chat-input.is-locked input{cursor:not-allowed}.guidee-chat-page .chat-input.is-locked .send-button{background:#3a3b42;color:#a5a6ad;cursor:not-allowed}.guidee-chat-page .chat-input.is-locked:focus-within{border-color:#35373e;box-shadow:none}.guidee-chat-page .chat-note{font-weight:650;color:#8b8d96}
@media (max-width:760px){
  .guidee-chat-page .chat-body{padding:20px 16px 18px}
  .guidee-chat-page .message{max-width:94%;padding:14px 15px;font-size:14px;line-height:1.65}
  .guidee-chat-page .message p{font-size:14px;line-height:1.7}
}

.password-modal{max-width:520px}.password-modal .modal-head h2{margin:0 0 4px}.password-modal .modal-note{margin:0}.modal-error{margin-top:10px;padding:10px 12px;border-radius:10px;border:1px solid #efb5b5;background:#fff4f4;color:#b42318;font-size:14px}.modal-error.hidden{display:none}


.payment-info-backdrop{position:fixed;inset:0;z-index:3000;background:rgba(15,18,35,.62);display:grid;place-items:center;padding:20px;backdrop-filter:blur(6px)}
.payment-info-modal{position:relative;width:min(560px,100%);background:var(--card,#fff);border:1px solid rgba(109,61,245,.12);border-radius:24px;padding:30px;box-shadow:0 24px 80px rgba(15,18,35,.22);color:var(--text,#171827)}
.payment-info-close{position:absolute;right:16px;top:14px;width:38px;height:38px;border:0;background:transparent;font-size:28px;line-height:1;border-radius:10px;cursor:pointer;color:var(--muted,#6e7180)}
.payment-info-close:hover{background:rgba(109,61,245,.08);color:var(--text,#171827)}
.payment-info-badge{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.08em;background:rgba(109,61,245,.09);color:#6d3df5}
.payment-info-modal h2{margin:14px 0 8px;font-size:28px}.payment-info-sub{margin:0 0 22px;color:var(--muted,#6e7180);line-height:1.55}
.payment-info-person{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid rgba(109,61,245,.12);border-radius:16px;background:rgba(109,61,245,.035)}
.payment-info-avatar{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#6d3df5,#8e65ff);color:#fff;font-weight:800}.payment-info-person strong{display:block}.payment-info-person span{display:block;margin-top:3px;font-size:13px;color:var(--muted,#6e7180)}
.payment-info-note{display:flex;gap:10px;margin-top:16px;padding:14px 15px;border-radius:14px;background:#f7f8fc}.payment-info-note span{font-size:18px}.payment-info-note p{margin:0;font-size:13px;line-height:1.55;color:var(--muted,#616576)}
.payment-info-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.payment-info-actions .primary-button,.payment-info-actions .outline-button{min-height:44px}
@media (max-width:600px){.payment-info-modal{padding:24px 18px;border-radius:20px}.payment-info-modal h2{font-size:23px}.payment-info-actions{flex-direction:column-reverse}.payment-info-actions button{width:100%}}


/* My Preparation — journey graph */
.prep-journey-card{margin-top:22px;padding:26px 26px 22px;overflow:hidden}
.prep-journey-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.prep-journey-head h2{margin:0 0 5px;font-size:25px;letter-spacing:-.025em}
.prep-journey-head p{margin:0;color:var(--muted);font-size:15px}
.prep-journey-head p span{color:var(--purple);font-weight:850}
.prep-current-badge{border:1px solid var(--purple-border);background:var(--purple-soft);color:#4d3aa0;border-radius:999px;padding:9px 13px;font-size:13px;white-space:nowrap}
.prep-current-badge strong{color:var(--purple);margin-left:4px}
.prep-graph{height:365px;margin:10px 0 0;position:relative;cursor:pointer}
.prep-line{position:absolute;left:5%;right:5%;top:12px;width:90%;height:235px;overflow:visible;pointer-events:none}
.prep-curve{fill:none;stroke:url(#prepLineGradient);stroke-width:4;vector-effect:non-scaling-stroke;stroke-linecap:round}
.prep-area-fill{fill:url(#prepFillGradient);opacity:.9}
.prep-grid{position:absolute;left:5%;right:5%;top:42px;height:190px;background:repeating-linear-gradient(to right,transparent 0,transparent calc(20% - 1px),rgba(107,61,244,.10) calc(20% - 1px),rgba(107,61,244,.10) 20%);border-bottom:1px solid var(--line);pointer-events:none}
.prep-stage{position:absolute;left:var(--stage-x);bottom:5px;width:150px;transform:translateX(-50%);border:0;background:transparent;padding:0 4px;text-align:center;color:var(--ink);cursor:pointer;font:inherit}
.prep-stage-dot{display:block;width:17px;height:17px;margin:0 auto 13px;border-radius:50%;background:#fff;border:3px solid #b9afd9;box-shadow:0 0 0 5px rgba(107,61,244,.06);transition:.18s ease}
.prep-stage-pct{display:block;font-size:13px;font-weight:850;line-height:1.2}
.prep-stage strong{display:block;margin-top:3px;font-size:13px;line-height:1.25}
.prep-stage small{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.35}
.prep-stage:hover .prep-stage-dot,.prep-stage.is-selected .prep-stage-dot{background:var(--purple);border-color:var(--purple);box-shadow:0 0 0 6px rgba(107,61,244,.10)}
.prep-stage.is-nearest:not(.is-selected) .prep-stage-dot{border-color:#8e72f6}
.prep-current-point{position:absolute;left:var(--current-x);top:130px;transform:translate(-50%,-50%);width:28px;height:28px;border-radius:50%;border:4px solid #fff;background:var(--purple);box-shadow:0 0 0 4px rgba(107,61,244,.18),0 8px 18px rgba(107,61,244,.18);padding:0;cursor:pointer;z-index:3}
.prep-current-pulse{position:absolute;inset:-8px;border:1px solid rgba(107,61,244,.25);border-radius:50%;animation:prepPulse 2s ease-out infinite}
.prep-current-label{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);min-width:94px;padding:8px 10px;border-radius:10px;background:var(--purple);color:#fff;font-size:11px;font-weight:750;line-height:1.3;box-shadow:0 10px 22px rgba(107,61,244,.18);white-space:nowrap}
.prep-current-label strong{font-size:15px}
.prep-analysis{margin-top:2px;padding:16px 18px;border:1px solid var(--purple-border);border-radius:14px;background:linear-gradient(135deg,#fbf9ff,#fff)}
.prep-analysis-kicker{font-size:10px;letter-spacing:.12em;font-weight:900;color:var(--purple);margin-bottom:7px}
.prep-analysis-main{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.8fr);gap:24px;align-items:start}
.prep-analysis h3{margin:0 0 5px;font-size:18px}
.prep-analysis p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.prep-analysis-side{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.prep-analysis-side div{padding-left:12px;border-left:2px solid var(--purple-border)}
.prep-analysis-side span{display:block;color:var(--muted);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}
.prep-analysis-side strong{display:block;font-size:12px;line-height:1.4}
@keyframes prepPulse{0%{transform:scale(.85);opacity:.85}70%{transform:scale(1.35);opacity:0}100%{transform:scale(1.35);opacity:0}}
@media (max-width:900px){
  .prep-journey-head{flex-direction:column}
  .prep-current-badge{align-self:flex-start}
  .prep-graph{height:410px;overflow-x:auto;overflow-y:hidden}
  .prep-line,.prep-grid{min-width:760px;left:20px;right:auto;width:760px}
  .prep-stage{width:125px}
  .prep-analysis-main{grid-template-columns:1fr}
}
@media (max-width:620px){
  .prep-journey-card{padding:20px 16px 18px}
  .prep-graph{height:430px}
  .prep-analysis-side{grid-template-columns:1fr}
}

/* My Preparation — hover journey + admin editor */
.prep-stage{cursor:default;}
.prep-stage:focus{outline:none}
.prep-stage.is-hovered .prep-stage-dot{background:var(--purple);border-color:var(--purple);box-shadow:0 0 0 6px rgba(107,61,244,.10)}
.prep-hover-tooltip{position:absolute;transform:translate(-50%,-100%);min-width:170px;max-width:220px;padding:10px 12px;border:1px solid var(--purple-border);border-radius:12px;background:#fff;box-shadow:0 12px 28px rgba(44,30,91,.14);pointer-events:none;opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;z-index:8}
.prep-hover-tooltip.is-visible{opacity:1;visibility:visible}
.prep-hover-tooltip strong{display:block;font-size:12px;color:var(--ink)}
.prep-hover-tooltip span{display:inline-block;margin-top:2px;font-size:11px;font-weight:850;color:var(--purple)}
.prep-hover-tooltip small{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.35}
.prep-admin-progress{display:flex;align-items:flex-end;gap:26px;padding:16px;border:1px solid var(--purple-border);border-radius:14px;background:linear-gradient(135deg,#fbf9ff,#fff);margin-bottom:16px}
.prep-admin-progress>div{display:grid;grid-template-columns:150px 260px;gap:16px;align-items:end;flex:1}
.prep-admin-progress label{display:grid;gap:7px;font-size:12px;font-weight:800;color:var(--muted)}
.prep-admin-progress input[type=number]{width:100%;box-sizing:border-box}
.prep-admin-progress input[type=range]{width:100%;accent-color:var(--purple)}
.prep-admin-progress p{margin:0;color:var(--muted);font-size:12px;max-width:300px;line-height:1.45}
.prep-admin-stages{display:grid;gap:10px}
.prep-admin-stage{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.prep-admin-stage summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:10px;padding:13px 15px;font-size:13px}
.prep-admin-stage summary::-webkit-details-marker{display:none}
.prep-admin-stage summary:after{content:'+';margin-left:auto;color:var(--muted);font-weight:800}
.prep-admin-stage[open] summary:after{content:'−'}
.prep-admin-stage-pct{width:42px;text-align:center;padding:5px 7px;border-radius:999px;background:var(--purple-soft);color:var(--purple);font-size:11px;font-weight:900}
.prep-admin-edit-hint{margin-left:auto;color:var(--muted);font-size:11px}
.prep-admin-stage-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 15px 15px;border-top:1px solid var(--line)}
.prep-admin-stage-fields label{display:grid;gap:6px;color:var(--muted);font-size:11px;font-weight:800}
.prep-admin-stage-fields label:nth-child(3),.prep-admin-stage-fields label:nth-child(4),.prep-admin-stage-fields label:nth-child(5){grid-column:1/-1}
.prep-admin-stage-fields input,.prep-admin-stage-fields textarea{width:100%;box-sizing:border-box;font:inherit;border:1px solid var(--line);border-radius:10px;padding:10px 11px;color:var(--ink);background:#fff}
.prep-admin-stage-fields textarea{resize:vertical;min-height:70px;line-height:1.45}
@media(max-width:900px){.prep-admin-progress{flex-direction:column;align-items:stretch}.prep-admin-progress>div{grid-template-columns:1fr}.prep-admin-stage-fields{grid-template-columns:1fr}.prep-admin-stage-fields label:nth-child(3),.prep-admin-stage-fields label:nth-child(4),.prep-admin-stage-fields label:nth-child(5){grid-column:auto}}

@media(max-width:850px){.landing-guide-chat-image{width:300px}}

/* Question Bank authoring (Phase 1) */
.qb-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
.qb-actions a{display:inline-flex;align-items:center;text-decoration:none}
.qb-row-actions{display:flex;gap:6px;flex-wrap:wrap;min-width:170px}
.qb-row-actions .primary-button,.qb-row-actions .outline-button{padding:7px 10px;font-size:11px}
.qb-status{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;white-space:nowrap}
.qb-status.draft{background:#fff7e8;color:#996000}.qb-status.verified{background:#eaf8ef;color:#237444}.qb-status.archived{background:#f1f1f4;color:#656575}
.qb-question-cell{max-width:390px}.qb-question-cell strong{display:block;line-height:1.45}.qb-question-cell small,.student-table td small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.qb-modal-wide{width:min(980px,calc(100vw - 28px));max-height:92vh;overflow:auto}
.qb-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:10px 0}
.qb-form-grid label{min-width:0}.qb-form-grid input,.qb-form-grid select{width:100%}
.qb-option-grid{border:1px solid var(--line);border-radius:13px;padding:14px;margin:14px 0;background:#fcfbff}
.qb-option-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:10px}.qb-option-head small{color:var(--muted)}
.qb-option-row{display:grid;grid-template-columns:26px minmax(0,1fr) minmax(0,1fr) auto;gap:8px;align-items:center;margin:8px 0}
.qb-option-row>span{font-weight:900;color:var(--accent)}.qb-option-row input{min-width:0}.qb-correct-check{font-size:11px;display:flex;align-items:center;gap:4px;white-space:nowrap}
.qb-match-grid{display:grid;grid-template-columns:1fr 1fr 130px;gap:8px;margin:14px 0;align-items:center}.qb-match-grid strong{font-size:12px;color:var(--muted)}
.qb-editor-block{margin:16px 0}.qb-editor-toolbar{display:flex;gap:5px;flex-wrap:wrap;padding:8px;border:1px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;background:#f7f5fd}
.qb-editor-toolbar button{border:1px solid #ded9ed;background:#fff;border-radius:7px;padding:6px 9px;font-size:12px;color:#342a55;cursor:pointer}
.qb-rich-editor{min-height:150px;max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:0 0 10px 10px;padding:14px;background:#fff;line-height:1.6;outline:none}
.qb-rich-editor:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(108,64,255,.08)}
.qb-rich-editor table{border-collapse:collapse;width:100%;margin:10px 0}.qb-rich-editor td,.qb-rich-editor th{border:1px solid #d8d4e2;padding:7px}.qb-rich-editor img{max-width:100%;height:auto}
.qb-editor-block label{display:block;margin-bottom:7px;font-weight:800}
.qb-import-links{margin:10px 0 14px}.qb-import-links a{font-weight:800;color:var(--accent)}
.qb-import-status{margin:12px 0}.qb-import-counts{display:flex;gap:14px;flex-wrap:wrap;padding:12px;border-radius:10px;background:#f6f3ff}.qb-import-counts span{font-size:12px;font-weight:800;color:#4d3b91}
.qb-preview-list,.qb-import-errors,.qb-passage-list{display:grid;gap:8px;margin:8px 0 16px}
.qb-preview-list>div,.qb-import-errors>div,.qb-passage-row{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff}
.qb-preview-list strong,.qb-preview-list span,.qb-import-errors strong,.qb-import-errors span{display:block}.qb-preview-list span,.qb-import-errors span,.qb-preview-list p{font-size:12px;color:var(--muted);margin:4px 0 0}.qb-import-errors>div{border-color:#f0d7d7;background:#fffafa}
.qb-passage-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.qb-passage-row small{display:block;color:var(--muted);margin-top:4px}.qb-passage-row>div:last-child{display:flex;gap:6px;flex-wrap:wrap}
@media(max-width:700px){.qb-form-grid{grid-template-columns:1fr}.qb-option-row{grid-template-columns:24px 1fr}.qb-option-row input:nth-of-type(2){grid-column:2}.qb-correct-check{grid-column:2}.qb-match-grid{grid-template-columns:1fr 1fr 100px}.qb-passage-row{align-items:flex-start;flex-direction:column}}

.qb-option-explanations{margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.qb-option-explanations summary{cursor:pointer;font-weight:800;color:var(--accent);padding:5px 0}.qb-option-explain-row{display:grid;grid-template-columns:90px 1fr 1fr;gap:8px;align-items:start;margin:9px 0}.qb-option-explain-row strong{padding-top:9px;color:var(--muted)}.qb-option-explain-row textarea{min-width:0}@media(max-width:700px){.qb-option-explain-row{grid-template-columns:1fr}.qb-option-explain-row strong{padding-top:0}}


/* Phase 3 — secure multi-format attempt workspace */
.save-indicator{display:inline-flex;align-items:center;margin-left:10px;padding:4px 8px;border-radius:20px;background:#edf8f1;color:#23794b;font-size:10px;font-weight:750;vertical-align:middle}
.exam-footer-actions{display:flex;align-items:center;gap:10px}
.question-legend{grid-template-columns:repeat(2,minmax(0,1fr))}
.q-dot.marked{background:#e2a12e}.q-dot.not-visited{background:#c7c7ce}
.question-number.marked{border-color:#f0d28f;background:#fff5db;color:#90610a}
.question-number.answered-marked{border-color:#e2c078;background:#f8e8bd;color:#76500a}
.question-number.not-visited{background:#f1f1f4;color:#8b8b94;border-style:dashed}
.question-number.not-answered{background:#fff;color:#666a75;border-color:#d8d9df}
.question-number.section-nav-disabled{opacity:.25;cursor:not-allowed}
.section-nav{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.section-nav-button{border:1px solid #dedbe8;background:#fff;color:#5d596c;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:800;cursor:pointer}
.section-nav-button.active{background:#eee9ff;border-color:#bcb0f4;color:#6243c6}
.section-nav-button.locked{background:#f4f4f5;color:#9a9aa1;text-decoration:line-through}
.section-clock{padding:6px 9px;border-radius:8px;background:#fff5dc;color:#8c610c;font-size:10px;font-weight:850;white-space:nowrap}
.section-clock.expired{background:#fff0f0;color:#b13d47}
.section-instruction{margin:0 0 12px;color:#777487;font-size:12px}
.question-passage,.assertion-reason{margin:14px 0;padding:14px 16px;border:1px solid #e7e3ef;border-radius:12px;background:#faf9fd;line-height:1.65}
.question-passage strong{display:block;margin-bottom:6px;color:#6651a5}.question-passage p,.assertion-reason p{margin:5px 0}
.question-image{margin:15px 0}.question-image img{max-width:100%;max-height:360px;object-fit:contain;border-radius:10px;border:1px solid #e5e2ec}
.numerical-answer{display:flex;flex-direction:column;gap:8px;max-width:360px;margin:18px 0;font-weight:750}
.numerical-answer input{height:48px;padding:0 14px;border:1px solid #d9d5e4;border-radius:10px;font:inherit}
.match-question{margin-top:16px}.match-column{max-width:760px}.match-column>strong{display:block;margin-bottom:8px;color:#6651a5}.match-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,260px);gap:12px;align-items:center;padding:9px 0;border-bottom:1px solid #eeedf2}.match-row select{height:40px;border:1px solid #ddd9e8;border-radius:8px;padding:0 9px;background:#fff}
.locked-answer-badge{display:inline-flex;margin-left:8px;padding:3px 7px;border-radius:12px;background:#f1f1f3;color:#777;font-size:9px;vertical-align:middle}.section-locked-note{margin-top:12px;color:#a44747;font-size:12px}
.exam-calculator{margin-top:15px;padding:10px;border:1px solid #e5e2ec;border-radius:12px;background:#fff}.calculator-title{margin-bottom:7px;font-size:10px;font-weight:850;color:#6f6b7a}.exam-calculator input{width:100%;height:34px;margin-bottom:7px;border:1px solid #e4e1ea;border-radius:7px;text-align:right;padding:0 8px;font-size:16px;font-weight:800}.calculator-keys{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.calculator-keys button{min-height:29px;border:1px solid #e4e1ea;border-radius:6px;background:#f8f7fb;font-size:11px;font-weight:800;color:#514c60}.calculator-keys button:hover{background:#eee9ff}
.test-row .attempts-remaining{font-size:11px;color:#777482}
@media(max-width:760px){.exam-footer-actions{width:100%;justify-content:space-between}.match-row{grid-template-columns:minmax(0,1fr) minmax(130px,46%)}.question-legend{grid-template-columns:repeat(2,minmax(0,1fr))}.section-nav{margin-bottom:10px}}


/* Phase 4 — Advanced Test Centre category, listing and detail pages */
.test-centre-heading{align-items:center;gap:16px}
.test-centre-exam-chip{padding:9px 13px;border:1px solid var(--purple-border);border-radius:999px;background:var(--purple-soft);color:var(--purple);font-size:12px;font-weight:850;white-space:nowrap}
.test-centre-workspace{margin-top:20px;min-width:0}
.test-centre-section-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin:8px 0 18px}
.test-centre-section-intro h2,.test-history-heading h2{margin:7px 0 5px;font-size:22px;letter-spacing:-.025em}
.test-centre-section-intro p,.test-history-heading p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
.test-centre-summary{display:flex;gap:8px;flex-wrap:wrap}
.test-centre-summary>div{min-width:78px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;gap:2px}
.test-centre-summary span{font-size:9px;color:var(--muted);font-weight:750}
.test-centre-summary strong{font-size:18px;line-height:1.15}
.test-category-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.test-category-card{min-height:218px;padding:20px;text-align:left;display:flex;flex-direction:column;gap:14px;color:var(--text);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;background:linear-gradient(160deg,#fff 58%,#faf8ff)}
.test-category-card:hover,.test-category-card:focus-visible{transform:translateY(-3px);border-color:#cfc2ff;box-shadow:0 16px 36px rgba(66,44,135,.1);outline:none}
.test-category-card-icon,.test-detail-icon,.test-centre-empty-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:var(--purple-soft);color:var(--purple)}
.test-category-card-copy{display:grid;gap:5px}
.test-category-card-copy strong{font-size:17px;letter-spacing:-.015em}
.test-category-card-copy small{max-width:280px;color:var(--muted);font-size:11px;line-height:1.5}
.test-category-card-count{display:flex;align-items:baseline;gap:6px;margin-top:auto}
.test-category-card-count strong{font-size:27px;letter-spacing:-.04em;color:var(--purple)}
.test-category-card-count small{font-size:11px;color:var(--muted);font-weight:750}
.test-category-card-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
.test-category-card-link{display:inline-flex;align-items:center;gap:5px;color:var(--purple);font-weight:900;white-space:nowrap}
.test-subpage-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:3px 0 14px}
.test-back-button{display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--purple);padding:7px 0;font-size:12px;font-weight:850}
.test-back-button .icon{transform:rotate(180deg)}
.test-subpage-kicker{font-size:10px;letter-spacing:.1em;color:var(--muted);font-weight:900}
.test-category-hero{padding:22px;display:flex;align-items:center;gap:16px;background:linear-gradient(115deg,#f7f3ff,#fff 70%);margin-bottom:17px}
.test-category-hero-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:17px;background:#fff;color:var(--purple);box-shadow:0 6px 18px rgba(80,60,150,.08);flex:none}
.test-category-hero h2{margin:6px 0;font-size:22px;letter-spacing:-.03em}
.test-category-hero p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.test-category-hero-count{margin-left:auto;display:grid;text-align:center;min-width:62px;gap:1px}
.test-category-hero-count strong{font-size:28px;color:var(--purple)}
.test-category-hero-count span{font-size:10px;color:var(--muted);font-weight:800}
.test-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:15px 0}
.test-filter-pills{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.test-filter-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;color:#57596a;font-size:10px;font-weight:850;white-space:nowrap}
.test-filter-pill.active{background:var(--purple-soft);border-color:var(--purple-border);color:var(--purple)}
.test-filter-pill span{display:inline-grid;place-items:center;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:#f0eef5;color:inherit;font-size:9px}
.test-filter-pill.active span{background:#e4dcff}
.test-search-box{display:flex;align-items:center;gap:8px;width:min(310px,100%);height:40px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted)}
.test-search-box input{min-width:0;width:100%;border:0;outline:0;background:transparent;font-size:11px;color:var(--text)}
.student-test-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.student-test-card{padding:16px;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;min-width:0}
.student-test-card:hover,.student-test-card:focus-visible{border-color:#cfc2ff;box-shadow:0 12px 28px rgba(60,42,125,.08);transform:translateY(-2px);outline:none}
.student-test-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.student-test-type{display:inline-flex;align-items:center;border-radius:999px;padding:5px 8px;background:#f3efff;color:#6243c6;font-size:9px;font-weight:900;letter-spacing:.02em}
.test-state-pill{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:900}
.test-state-pill.available{background:#eaf8f0;color:#1d8050}.test-state-pill.upcoming{background:#edf3ff;color:#376bc5}.test-state-pill.progress{background:#fff3e1;color:#9a6509}.test-state-pill.attempted{background:#f0edff;color:#6243bb}.test-state-pill.closed{background:#f0f0f3;color:#747581}
.student-test-card-main{display:flex;align-items:center;gap:11px;margin:15px 0 13px;min-width:0}
.student-test-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:13px;background:var(--purple-soft);color:var(--purple);flex:none}
.student-test-card-title{min-width:0}.student-test-card-title h3{margin:0 0 5px;font-size:14px;line-height:1.35}.student-test-card-title p{margin:0;color:var(--muted);font-size:10px;line-height:1.45;overflow-wrap:anywhere}
.student-test-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.student-test-metrics>div{display:grid;gap:3px;min-width:0}.student-test-metrics strong{font-size:15px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.student-test-metrics strong small{font-size:9px;color:var(--muted)}.student-test-metrics span{font-size:9px;color:var(--muted)}
.student-test-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:11px}
.student-test-schedule{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:9px;line-height:1.4;min-width:0}.student-test-open-link{display:inline-flex;align-items:center;gap:5px;color:var(--purple);font-size:10px;font-weight:900;white-space:nowrap}
.student-test-latest-score{margin-top:9px;padding-top:9px;border-top:1px dashed var(--line);font-size:10px;font-weight:900;color:var(--text)}.student-test-latest-score span{font-weight:650;color:var(--muted)}
.test-centre-empty{display:flex;align-items:center;gap:14px;padding:22px;margin-top:14px}.test-centre-empty h3,.test-centre-empty h2{margin:0 0 5px;font-size:15px}.test-centre-empty p{margin:0;color:var(--muted);font-size:11px;line-height:1.5}.test-centre-empty-icon{flex:none}
.test-detail-hero{padding:22px;background:linear-gradient(145deg,#faf8ff,#fff 65%)}
.test-detail-hero-top{display:flex;justify-content:space-between;gap:10px;align-items:center}
.test-detail-title-row{display:flex;align-items:center;gap:14px;margin:18px 0}
.test-detail-icon{width:60px;height:60px;flex:none}
.test-detail-title-row h2{font-size:23px;letter-spacing:-.03em;margin:5px 0}
.test-detail-title-row p{margin:0;color:var(--muted);font-size:12px}
.test-detail-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding-top:15px;border-top:1px solid var(--line)}
.test-detail-metrics>div{display:grid;gap:5px}.test-detail-metrics span{font-size:10px;color:var(--muted)}.test-detail-metrics strong{font-size:17px}
.test-detail-availability{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:15px;padding-top:12px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}.test-detail-availability span{display:inline-flex;align-items:center;gap:6px}.test-detail-availability strong{color:var(--purple)}
.test-detail-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.test-detail-panel{padding:18px}.test-detail-panel h3{margin:0 0 9px;font-size:13px}.test-detail-panel p,.test-detail-instructions{margin:0;color:var(--muted);font-size:11px;line-height:1.7;overflow-wrap:anywhere}
.test-detail-actionbar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 18px;margin-top:14px}.test-detail-actionbar>div:first-child{display:grid;gap:4px}.test-detail-actionbar strong{font-size:12px}.test-detail-actionbar span{font-size:10px;color:var(--muted)}.test-detail-action-buttons{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.test-detail-action-buttons .primary-button{margin:0}.test-detail-action-buttons .outline-button{white-space:nowrap}
.test-history-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin:8px 0 16px}.test-history-total{display:grid;text-align:center;padding:10px 15px;background:var(--purple-soft);border-radius:13px;min-width:92px}.test-history-total strong{font-size:23px;color:var(--purple)}.test-history-total span{font-size:9px;color:var(--muted);font-weight:800}.history-filter-pills{margin-bottom:14px}
@media(max-width:1050px){.test-category-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.test-centre-heading{align-items:flex-start;flex-direction:column}.test-centre-section-intro{align-items:flex-start;flex-direction:column}.test-centre-summary{width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.test-centre-summary>div{min-width:0;padding:8px}.test-centre-summary strong{font-size:16px}.test-category-card-grid{grid-template-columns:1fr}.test-category-card{min-height:190px}.test-list-toolbar{align-items:stretch;flex-direction:column}.test-search-box{width:100%}.student-test-card-grid{grid-template-columns:1fr}.test-category-hero{align-items:flex-start;flex-wrap:wrap}.test-category-hero-count{margin-left:auto}.test-detail-columns{grid-template-columns:1fr}.test-detail-actionbar{align-items:stretch;flex-direction:column}.test-detail-action-buttons{width:100%}.test-detail-action-buttons>*{flex:1}.test-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.test-history-heading{align-items:flex-start}.test-filter-pills{overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.test-centre-empty{align-items:flex-start}}
@media(max-width:420px){.test-centre-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.student-test-metrics strong{font-size:13px}.test-detail-title-row h2{font-size:19px}.test-detail-action-buttons{flex-direction:column}.test-detail-action-buttons>*{width:100%}}

/* Phase 5 — Results, Analysis and Solutions */
.review-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.review-tabs{display:flex;gap:7px;overflow-x:auto;padding:5px;margin:16px 0 18px;border:1px solid var(--line);border-radius:14px;background:#fbfaff}
.review-tab{flex:none;border:0;border-radius:10px;padding:11px 16px;background:transparent;color:var(--muted);font-size:12px;font-weight:850;cursor:pointer}
.review-tab.active{background:#fff;color:var(--purple);box-shadow:0 2px 10px rgba(25,20,45,.08)}
.review-tab-content{display:grid;gap:16px}
.result-hero-kicker{font-size:10px;font-weight:900;letter-spacing:.11em;color:var(--muted)}
.result-big .result-score{font-size:48px;font-weight:950;letter-spacing:-.05em;color:var(--purple);line-height:1.12;margin-top:12px}
.result-big .result-score span{font-size:23px;color:var(--muted);font-weight:750}
.result-hero-percent{font-size:13px;font-weight:850;color:var(--muted);margin-top:5px}
.result-big .result-actions{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap}
.result-big .result-actions .text-button{min-width:0}
.review-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}
.review-section-heading h2{font-size:17px;margin:0}
.review-section-heading>span{font-size:11px;color:var(--muted)}
.attempt-comparison{padding:20px}
.attempt-comparison-highlights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0 17px}
.attempt-comparison-highlights>div{padding:13px;border:1px solid var(--line);border-radius:12px;background:#fbfaff;display:grid;gap:5px}
.attempt-comparison-highlights span{font-size:10px;color:var(--muted)}
.attempt-comparison-highlights strong{font-size:18px;font-weight:900}
.attempt-comparison-highlights strong.positive{color:#177b59}.attempt-comparison-highlights strong.negative{color:#ba4b4b}
.attempt-comparison-list{display:grid;gap:8px}
.attempt-comparison-row{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;padding:11px 12px;border:1px solid var(--line);border-radius:11px}
.attempt-comparison-row.selected{border-color:var(--purple-border);background:#fbfaff}
.attempt-comparison-row>div{display:grid;gap:4px}.attempt-comparison-row strong{font-size:12px}.attempt-comparison-row span{font-size:10px;color:var(--muted)}
.attempt-current-label{font-weight:900;color:var(--purple)!important}
.review-analysis-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.review-analysis-tile{padding:17px;display:grid;gap:7px}.review-analysis-tile span{font-size:11px;color:var(--muted)}.review-analysis-tile strong{font-size:23px;letter-spacing:-.03em}
.review-insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.review-insight{padding:18px}.review-insight h3{font-size:17px;margin:5px 0 12px}.review-insight>p{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:10px 0 0;margin:9px 0 0}.review-insight>p strong{font-size:12px}.review-insight>p span{font-size:11px;color:var(--muted)}
.review-analysis-section{padding:19px}
.review-analysis-table{display:grid;gap:17px}
.review-analysis-row{border-top:1px solid var(--line);padding-top:13px}
.review-analysis-row-head,.review-analysis-row-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.review-analysis-row-head strong{font-size:12px}.review-analysis-row-head span,.review-analysis-row-foot span,.review-analysis-row small{font-size:10px;color:var(--muted)}
.review-bar{height:8px;border-radius:99px;background:#efedf4;overflow:hidden;margin:9px 0 7px}.review-bar i{display:block;height:100%;border-radius:inherit;background:var(--purple)}
.review-analysis-row small{display:block;margin-top:7px}
.slow-question-list,.section-time-list{display:grid;gap:8px;margin-top:12px}
.slow-question-list>div,.section-time-list>div{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:10px;padding:10px 12px;background:#fbfaff;border:1px solid var(--line);border-radius:10px}
.slow-question-list strong,.section-time-list span{font-size:11px}.slow-question-list span{font-size:10px;color:var(--muted)}.slow-question-list b,.section-time-list strong{font-size:11px}
.solutions-toolbar{display:flex;justify-content:space-between;align-items:end;gap:14px}.solutions-toolbar h2{font-size:20px;margin:5px 0}.solutions-toolbar p{font-size:11px;color:var(--muted);margin:0}.solutions-toolbar>span{font-size:11px;color:var(--muted);white-space:nowrap}
.review-solution-filters{margin:13px 0}
.review-question{padding:19px;margin:13px 0}
.review-question-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}
.review-question-head h3{font-size:13px;margin:4px 0}.review-question-head p{font-size:10px;color:var(--muted);margin:0}
.review-question-result{display:grid;gap:4px;text-align:right;padding:8px 11px;border-radius:10px;white-space:nowrap}.review-question-result strong{font-size:11px}.review-question-result span{font-size:10px}.review-question-result.correct{background:#edf8f2;color:#16744f}.review-question-result.incorrect{background:#fff1f0;color:#b34242}.review-question-result.unattempted{background:#f3f1f6;color:#655f70}
.review-question-text{font-size:15px;line-height:1.55;margin:17px 0 13px}
.review-passage,.review-assertion{padding:13px 14px;border-radius:11px;background:#f8f7fb;margin:12px 0;font-size:12px;line-height:1.65}.review-passage strong{display:block;margin-bottom:6px}.review-assertion p{margin:5px 0}
.review-question-image{margin:12px 0}.review-question-image img{display:block;max-width:100%;max-height:330px;object-fit:contain;border-radius:10px;border:1px solid var(--line)}
.review-options{display:grid;gap:8px;margin:13px 0}
.review-option{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}
.review-option>span{width:27px;height:27px;display:grid;place-items:center;border-radius:8px;background:#f0eef4;font-size:11px;font-weight:900}
.review-option strong{font-size:11px;font-weight:650;line-height:1.5}.review-option small{font-size:9px;color:var(--muted)}.review-option.correct{border-color:#b8e4cd;background:#f3fbf6}.review-option.correct>span{background:#d9f1e3;color:#16744f}.review-option.student-wrong{border-color:#efc2c2;background:#fff8f8}
.review-answer-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0}.review-answer-pair>div{display:grid;gap:5px;padding:11px 13px;border:1px solid var(--line);border-radius:10px}.review-answer-pair span{font-size:10px;color:var(--muted)}.review-answer-pair strong{font-size:12px;overflow-wrap:anywhere}
.review-match-grid{display:grid;gap:7px;margin:12px 0}.review-match-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:9px;padding:10px;border:1px solid var(--line);border-radius:9px;font-size:10px}.review-match-row span{overflow-wrap:anywhere}.review-match-student{color:var(--muted)}.review-match-correct{color:#177b59;font-weight:800}
.review-question-meta{display:flex;justify-content:space-between;gap:10px;margin:12px 0;font-size:10px;color:var(--muted)}
.review-explanation{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.review-explanation summary{font-size:12px;font-weight:900;cursor:pointer;color:var(--purple)}.review-rich-content{font-size:12px;line-height:1.7;margin-top:10px;overflow-wrap:anywhere}.review-rich-content img{max-width:100%;height:auto;border-radius:9px}.review-rich-content table{width:100%;border-collapse:collapse;display:block;overflow-x:auto}.review-rich-content th,.review-rich-content td{border:1px solid var(--line);padding:7px;text-align:left}.review-option-explanations{display:grid;gap:8px;margin-top:10px}.review-option-explanation{font-size:11px;padding:9px;background:#fbfaff;border-radius:8px}.review-option-explanation>div{margin-top:5px;line-height:1.6}
.test-history-list{display:grid;gap:14px}.test-history-card{padding:17px}.test-history-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.test-history-card-head h3{font-size:15px;margin:7px 0 4px}.test-history-card-head p{font-size:11px;color:var(--muted);margin:0}.test-history-best{display:grid;gap:4px;text-align:right}.test-history-best span{font-size:10px;color:var(--muted)}.test-history-best strong{font-size:17px}.test-history-attempts{display:grid;gap:7px;margin-top:15px}.test-history-attempt-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:center;padding:10px 11px;border:1px solid var(--line);border-radius:10px}.test-history-attempt-row>div{display:grid;gap:4px}.test-history-attempt-row strong{font-size:11px}.test-history-attempt-row span{font-size:10px;color:var(--muted)}
@media(max-width:700px){.review-page-head{flex-direction:column}.review-analysis-summary{grid-template-columns:1fr 1fr}.attempt-comparison-highlights{grid-template-columns:1fr 1fr}.review-insight-grid{grid-template-columns:1fr}.attempt-comparison-row,.test-history-attempt-row{grid-template-columns:1fr 1fr}.attempt-comparison-row>*:last-child,.test-history-attempt-row>*:last-child{grid-column:1/-1;width:100%}.test-history-card-head{flex-direction:column}.test-history-best{text-align:left}.review-match-row{grid-template-columns:1fr}.solutions-toolbar{align-items:flex-start;flex-direction:column}}
@media(max-width:420px){.review-analysis-summary{grid-template-columns:1fr}.result-big .result-score{font-size:39px}.result-big .result-actions{flex-direction:column}.result-big .result-actions>*{width:100%}.review-question-head{flex-direction:column}.review-question-result{text-align:left}.review-answer-pair{grid-template-columns:1fr}.slow-question-list>div{grid-template-columns:1fr auto}.slow-question-list span{grid-column:1/-1;grid-row:2}}



/* Question usage filters and badges — Phase 10 */
.qb-usage-pill{display:inline-flex;align-items:center;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800;white-space:nowrap}
.qb-usage-pill.unused{background:#eaf8ef;color:#237444}
.qb-usage-pill.used{background:#fff4df;color:#9a5b00}
.qb-tools{grid-template-columns:minmax(220px,1.6fr) repeat(4,minmax(135px,1fr))}
.qb-tools>*{min-width:0}
@media(max-width:1200px){.qb-tools{grid-template-columns:repeat(3,minmax(0,1fr))}.qb-tools .student-search{grid-column:1/-1}}
@media(max-width:650px){.qb-tools{grid-template-columns:1fr}}
