@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap";:root{color-scheme:light;font-family:Plus Jakarta Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--display: "Space Grotesk", "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;--ink: #0e1828;--ink-2: #2a3645;--muted: #5d6a7d;--faint: #8893a3;--line: #e6eaf1;--line-2: #eef1f6;--panel: #ffffff;--canvas: #eef1f7;--soft: #f2f5fa;--soft-2: #f7f9fc;--accent: #3257d6;--accent-2: #4f74ff;--accent-strong: #213fae;--accent-soft: #eef2ff;--accent-ring: rgba(50, 87, 214, .16);--good: #0e9e6e;--good-soft: #e6f7f0;--good-line: rgba(14, 158, 110, .4);--bad: #e0533d;--bad-soft: #fdeeeb;--bad-line: rgba(224, 83, 61, .42);--review: #6d5bf0;--review-soft: #efecfe;--review-line: rgba(109, 91, 240, .4);--warn: #d4881f;--warn-soft: #fbf2e0;--night: #0d1828;--night-2: #131f33;--night-line: rgba(255, 255, 255, .09);--night-ink: #e7edf6;--night-muted: #8d9cb3;--r-sm: 10px;--r: 14px;--r-lg: 18px;--r-pill: 999px;--e1: 0 1px 2px rgba(13, 22, 38, .05), 0 1px 1px rgba(13, 22, 38, .03);--e2: 0 1px 2px rgba(13, 22, 38, .04), 0 10px 26px -14px rgba(13, 22, 38, .18);--e3: 0 2px 4px rgba(13, 22, 38, .05), 0 20px 48px -22px rgba(13, 22, 38, .28);--shadow: var(--e3)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--ink);background-color:var(--canvas);background-image:radial-gradient(1200px 600px at 12% -8%,rgba(50,87,214,.06),transparent 60%),radial-gradient(1000px 520px at 110% 0%,rgba(14,158,110,.05),transparent 55%);background-attachment:fixed;letter-spacing:-.005em}button,select,input{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}img{display:block;max-width:100%}::selection{background:var(--accent-ring)}*{scrollbar-width:thin;scrollbar-color:#c7cfdb transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#cdd5e1;border:3px solid transparent;background-clip:padding-box;border-radius:999px}*::-webkit-scrollbar-thumb:hover{background:#b3bdcc;background-clip:padding-box}h1,h2,h3{margin:0;font-family:var(--display);letter-spacing:-.02em;color:var(--ink)}h1{font-size:clamp(28px,3.4vw,44px);line-height:1.03;font-weight:700}h2{font-size:clamp(19px,2vw,27px);font-weight:700}h3{font-size:21px;font-weight:700}.eyebrow{margin:0 0 6px;color:var(--faint);font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.loading-screen,.ready-shell{min-height:100vh;display:grid;place-items:center;padding:28px}.loader{width:40px;height:40px;border:3px solid #d8e0ec;border-top-color:var(--accent);border-radius:50%;animation:spin .7s cubic-bezier(.5,.1,.4,.9) infinite}@keyframes spin{to{transform:rotate(360deg)}}.home-shell{min-height:100vh;display:grid;grid-template-columns:264px minmax(0,1fr);background:transparent}.app-sidebar{position:sticky;top:0;align-self:start;height:100vh;padding:22px 18px;color:var(--night-ink);background:linear-gradient(180deg,var(--night-2),var(--night) 42%);border-right:1px solid var(--night-line);display:flex;flex-direction:column;gap:6px}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:4px 6px 20px;border-bottom:1px solid var(--night-line)}.sidebar-brand .brand-mark{width:44px;height:44px;border-radius:12px;flex:0 0 auto;display:grid;place-items:center;color:#fff;background:linear-gradient(140deg,var(--accent-2),var(--accent-strong));box-shadow:0 8px 20px -6px #3257d699,inset 0 1px #ffffff47,inset 0 0 0 1px #ffffff14;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s ease}.sidebar-brand:hover .brand-mark{transform:translateY(-1px) rotate(-3deg) scale(1.04);box-shadow:0 12px 26px -6px #3257d6b3,inset 0 1px #ffffff59,inset 0 0 0 1px #ffffff1f}.sidebar-brand strong,.sidebar-brand span{display:block}.sidebar-brand strong{color:#fff;font-family:var(--display);font-size:15.5px;font-weight:700;letter-spacing:-.01em}.sidebar-brand span{margin-top:3px;color:var(--night-muted);font-size:11.5px;font-weight:600;letter-spacing:.02em}.sidebar-nav{display:grid;gap:4px;padding:20px 0}.nav-item{min-height:42px;width:100%;display:flex;align-items:center;gap:11px;padding:0 12px;border-radius:var(--r-sm);color:#9fb0c6;font-family:inherit;font-weight:600;font-size:14px;text-align:left;background:transparent;transition:background .15s ease,color .15s ease;position:relative}.nav-item svg{opacity:.85}.nav-item:not(.active):hover{color:#d8e2ef;background:#ffffff0d}.nav-item.active{color:#fff;background:linear-gradient(180deg,#4f74ff38,#3257d629);box-shadow:inset 0 0 0 1px #7896ff40}.nav-item.active:before{content:"";position:absolute;left:-18px;top:50%;transform:translateY(-50%);width:3px;height:22px;border-radius:0 3px 3px 0;background:var(--accent-2)}.sidebar-status{margin-top:auto;padding:15px 16px;border:1px solid var(--night-line);border-radius:var(--r);background:radial-gradient(120% 100% at 0% 0%,rgba(79,116,255,.14),transparent 60%),#ffffff0a}.status-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.sidebar-status span{color:var(--night-muted);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.sidebar-status strong{color:#fff;font-family:var(--display);font-size:18px;font-weight:700;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.status-foot{margin:9px 0 0;display:flex;align-items:center;gap:6px;color:var(--night-muted);font-size:11px;font-weight:600}.status-foot:before{content:"";width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 0 3px #34d3992e}.progress-track{height:8px;margin-top:12px;overflow:hidden;border-radius:999px;background:#ffffff1a}.progress-track span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent-2),#34d399);box-shadow:0 0 12px #4f74ff80;transition:width .5s cubic-bezier(.4,0,.2,1)}.home-main{width:min(1280px,100%);margin:0 auto;padding:30px 30px 56px}.home-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:22px}.home-header h1{font-size:clamp(27px,3vw,40px)}.home-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:16px}.home-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:16px;align-items:stretch;margin-bottom:16px}.paper-command,.rules-panel{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel);box-shadow:var(--e2)}.paper-command{min-height:280px;display:grid;grid-template-columns:.95fr 1.05fr;overflow:hidden;position:relative}.command-copy{padding:26px;display:grid;align-content:center;gap:4px}.command-copy h2{margin-bottom:14px;font-size:clamp(23px,2.4vw,32px)}.paper-meta-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.paper-meta-row span{min-height:32px;display:inline-flex;align-items:center;padding:0 12px;border-radius:var(--r-pill);color:var(--ink-2);background:var(--soft);border:1px solid var(--line);font-size:12.5px;font-weight:600}.command-preview{min-height:100%;display:grid;place-items:center;padding:22px;border-left:1px solid var(--line);background:linear-gradient(180deg,var(--soft-2),var(--soft))}.command-preview img{width:100%;max-height:214px;object-fit:contain;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;box-shadow:var(--e1)}.preview-card{width:100%;max-height:214px;overflow:hidden;padding:18px 20px;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff;box-shadow:var(--e1);display:grid;gap:10px;align-content:start}.preview-tag{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}.preview-text{font-size:15px;line-height:1.55;color:var(--ink);white-space:pre-wrap;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;overflow:hidden}.rules-panel{padding:24px}.rule-list{display:grid;gap:9px;margin-top:16px}.rule-list div{min-height:46px;display:flex;align-items:center;gap:11px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink-2);background:var(--soft-2);font-weight:600;font-size:13.5px;transition:border-color .15s ease,transform .15s ease}.rule-list div:hover{border-color:#cfd8e6;transform:translate(2px)}.rule-list svg{color:var(--accent);flex:0 0 auto}.section-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.section-tile.rich{min-height:124px}.tile-foot{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:12.5px;font-weight:700}.info-stat,.section-tile,.result-metric,.score-panel{border:1px solid var(--line);background:var(--panel);border-radius:var(--r)}.info-stat{min-height:100px;padding:18px;display:grid;align-content:center;gap:7px;box-shadow:var(--e1);position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.info-stat:hover{transform:translateY(-2px);box-shadow:var(--e2);border-color:#d8e0ec}.info-stat svg{width:22px;height:22px;color:var(--accent);padding:7px;box-sizing:content-box;background:var(--accent-soft);border-radius:10px}.info-stat span,.section-tile span,.result-metric span{color:var(--muted);font-size:12.5px;font-weight:600}.info-stat strong{font-family:var(--display);font-size:27px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.section-tile{padding:18px;display:grid;gap:8px;box-shadow:var(--e1);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.section-tile:hover{transform:translateY(-2px);box-shadow:var(--e2);border-color:#d8e0ec}.section-tile strong{font-family:var(--display);font-size:18px;font-weight:700}.primary-action,.ghost-action,.control-action,.submit-action{min-height:46px;border-radius:var(--r-sm);display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:700;font-size:14px;letter-spacing:-.01em;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.primary-action{padding:0 20px;color:#fff;background:linear-gradient(180deg,var(--accent-2),var(--accent));box-shadow:0 10px 22px -8px #3257d68c,inset 0 1px #ffffff40}.primary-action:hover{transform:translateY(-1px);box-shadow:0 14px 28px -8px #3257d699,inset 0 1px #ffffff40}.primary-action:active{transform:translateY(0)}.primary-action.compact{margin-left:auto}.ghost-action,.control-action{padding:0 16px;color:var(--ink-2);border:1px solid var(--line);background:var(--panel);box-shadow:var(--e1)}.control-action:hover,.ghost-action:hover{background:var(--soft);border-color:#cfd8e6;transform:translateY(-1px)}.control-action svg,.ghost-action svg{color:var(--muted)}.exam-shell,.result-shell{min-height:100vh;padding:20px}.topbar{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px;margin:0 auto 18px;max-width:1500px;background:#ffffffd1;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e2);backdrop-filter:blur(20px) saturate(1.4);-webkit-backdrop-filter:blur(20px) saturate(1.4);position:sticky;top:12px;z-index:20}.topbar h2{font-size:clamp(17px,1.6vw,22px)}.topbar-stats{display:flex;align-items:stretch;gap:10px}.timer-pill,.mini-stat{min-width:116px;min-height:50px;display:grid;align-content:center;border-radius:var(--r-sm)}.timer-pill{grid-template-columns:auto 1fr;align-items:center;gap:10px;padding:0 16px;color:#fff;background:linear-gradient(180deg,var(--night-2),var(--night));box-shadow:var(--e2)}.timer-pill svg{color:#8fb0ff}.timer-pill span{font-family:var(--display);font-size:23px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em}.mini-stat{padding:7px 14px;border:1px solid var(--line);background:var(--panel);box-shadow:var(--e1)}.mini-stat span{color:var(--muted);font-size:11.5px;font-weight:600}.mini-stat strong{font-family:var(--display);font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}.exam-layout{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;align-items:start}.workspace,.palette-panel,.result-shell>section,.review-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e2)}.workspace{overflow:hidden}.section-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line);background:var(--soft-2)}.section-tab{min-height:66px;padding:12px 14px;display:grid;align-content:center;gap:5px;text-align:left;color:var(--muted);background:transparent;border-right:1px solid var(--line);position:relative;transition:background .15s ease,color .15s ease}.section-tab:last-child{border-right:0}.section-tab:hover{background:#3257d60a}.section-tab.active{background:var(--panel);color:var(--ink)}.section-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:linear-gradient(90deg,var(--accent-2),var(--accent))}.section-tab span{font-size:13px;font-weight:700;overflow-wrap:anywhere;line-height:1.25}.section-tab strong{color:var(--accent);font-family:var(--display);font-variant-numeric:tabular-nums;font-size:14px}.question-panel,.review-panel{padding:22px}.question-head,.review-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.question-head h3{font-size:22px}.review-chip{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:0 13px;color:var(--muted);background:var(--soft);border:1px solid var(--line);border-radius:var(--r-pill);font-size:12.5px;font-weight:700}.review-chip.active{color:var(--review);background:var(--review-soft);border-color:var(--review-line)}.stem-frame{width:100%;min-height:118px;overflow:auto;border:1px solid var(--line);border-radius:var(--r-sm);background:#fff}.stem-frame img{width:100%;min-width:720px;height:auto}.typed-stem{width:100%;min-height:118px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--r-sm);background:linear-gradient(180deg,var(--soft-2),#fff);color:var(--ink);font-size:18px;line-height:1.6;font-weight:500;white-space:pre-wrap;border-left:3px solid var(--accent)}.options-stack{display:grid;gap:11px;margin-top:16px}.option-row{width:100%;min-height:60px;display:grid;grid-template-columns:52px minmax(0,1fr);align-items:stretch;gap:0;color:var(--ink);text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease,transform .1s ease}.option-row:hover{border-color:#b9c5da;background:var(--soft-2)}.option-row:active{transform:scale(.997)}.option-row.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-ring)}.option-letter{display:grid;place-items:center;min-height:100%;color:var(--accent);background:var(--accent-soft);border-right:1px solid var(--line);font-family:var(--display);font-weight:700;font-size:16px;transition:background .14s ease,color .14s ease}.option-row.selected .option-letter{color:#fff;background:linear-gradient(180deg,var(--accent-2),var(--accent));border-right-color:transparent}.option-row img{align-self:center;width:100%;min-width:0;padding:12px 14px}.typed-option{align-self:center;padding:14px 16px;color:var(--ink);font-size:16.5px;line-height:1.5;font-weight:600;white-space:pre-wrap}.exam-actions{padding:16px;border-top:1px solid var(--line);background:var(--soft-2)}.palette-panel{position:sticky;top:104px;padding:16px}.candidate-card{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}.avatar{width:44px;height:44px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--good),#0b7d57);border-radius:13px;font-family:var(--display);font-weight:700;font-size:18px;box-shadow:0 8px 18px -8px #0e9e6e99}.candidate-card span{color:var(--muted);font-size:11.5px;font-weight:600}.candidate-card strong{display:block;font-size:15px;margin-top:1px}.legend{display:grid;grid-template-columns:1fr 1fr;gap:9px 12px;padding:16px 0;color:var(--muted);font-size:11.5px;font-weight:600}.legend-item{display:flex;align-items:center;gap:8px;min-width:0}.legend-dot{width:14px;height:14px;border-radius:5px;border:1px solid var(--line);flex:0 0 auto}.legend-dot.answered,.palette-button.answered{color:#fff;background:var(--good);border-color:var(--good)}.legend-dot.notAnswered,.palette-button.notAnswered{color:#fff;background:var(--bad);border-color:var(--bad)}.legend-dot.marked,.palette-button.marked{color:#fff;background:var(--review);border-color:var(--review)}.legend-dot.answeredMarked,.palette-button.answeredMarked{color:#fff;background:linear-gradient(135deg,var(--good) 0 50%,var(--review) 50% 100%);border-color:var(--good)}.legend-dot.notVisited,.palette-button.notVisited{background:#fff}.palette-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;max-height:calc(100vh - 360px);min-height:260px;overflow:auto;padding:2px}.palette-button{aspect-ratio:1;min-width:0;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--panel);color:var(--ink-2);font-family:var(--display);font-weight:700;font-size:14px;font-variant-numeric:tabular-nums;transition:transform .12s ease,box-shadow .12s ease}.palette-button:hover{transform:translateY(-1px);box-shadow:var(--e1)}.palette-button.notVisited{color:var(--muted)}.palette-button.current{outline:3px solid var(--accent-ring);outline-offset:2px;box-shadow:0 6px 14px -6px #3257d680}.submit-action{width:100%;margin-top:16px;color:#fff;background:linear-gradient(180deg,#1d2a3e,var(--night));box-shadow:var(--e2)}.submit-action:hover{transform:translateY(-1px);box-shadow:var(--e3)}.result-shell{max-width:1500px;margin:0 auto}.result-grid{display:grid;grid-template-columns:1.3fr repeat(4,minmax(130px,1fr));gap:14px;margin-bottom:18px;padding:0;background:transparent!important;border:0!important;box-shadow:none!important}.score-panel{padding:24px;color:#fff;border:0;position:relative;overflow:hidden;background:radial-gradient(120% 120% at 100% 0%,rgba(79,116,255,.55),transparent 55%),linear-gradient(150deg,#16233a,#0d1828 70%);box-shadow:var(--e3)}.score-panel:after{content:"";position:absolute;right:-40px;bottom:-60px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,rgba(14,158,110,.35),transparent 70%);pointer-events:none}.score-panel .eyebrow{color:#ffffffa6}.score-value{font-family:var(--display);font-size:clamp(40px,5vw,66px);line-height:1;font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.score-max{margin-top:8px;color:#ffffffb3;font-weight:600;font-size:14px}.result-metric{padding:20px;display:grid;align-content:center;gap:8px;box-shadow:var(--e1);position:relative;overflow:hidden}.result-metric:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent)}.result-metric.good:before{background:var(--good)}.result-metric.bad:before{background:var(--bad)}.result-metric strong{font-family:var(--display);font-size:31px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.result-metric.good strong,.good{color:var(--good)}.result-metric.bad strong,.bad{color:var(--bad)}.section-report{margin-bottom:18px;padding:8px 18px}.report-row{min-height:62px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 6px;border-bottom:1px solid var(--line-2)}.report-row:last-child{border-bottom:0}.report-row>div:first-child strong{font-family:var(--display);font-size:15px;font-weight:700}.report-row span{display:block;color:var(--muted);font-size:12.5px;font-weight:600}.report-numbers{display:flex;align-items:center;justify-content:flex-end;gap:16px;text-align:right}.report-numbers .good,.report-numbers .bad{font-size:13px;font-weight:700}.report-numbers strong{min-width:64px;font-family:var(--display);font-size:17px;font-weight:700;font-variant-numeric:tabular-nums}.review-toolbar{justify-content:flex-end;margin-bottom:18px;padding:14px;display:flex;flex-wrap:wrap;gap:10px}.review-panel{margin-bottom:36px}.review-nav select{height:44px;min-width:120px;padding:0 14px;border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink);background:var(--panel);font-weight:700;box-shadow:var(--e1);cursor:pointer}.option-row.review{grid-template-columns:52px minmax(0,1fr) 46px;cursor:default}.option-row.review:hover{background:var(--panel);border-color:var(--line)}.option-row.review.correct{border-color:var(--good-line);background:var(--good-soft)}.option-row.review.correct .option-letter{color:#fff;background:var(--good);border-right-color:transparent}.option-row.review.wrong{border-color:var(--bad-line);background:var(--bad-soft)}.option-row.review.wrong .option-letter{color:#fff;background:var(--bad);border-right-color:transparent}.review-icon{display:grid;place-items:center;color:var(--muted)}.option-row.review.correct .review-icon{color:var(--good)}.option-row.review.wrong .review-icon{color:var(--bad)}.analytics-grid{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.4fr);gap:16px;margin-bottom:18px}.donut-card,.bars-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e2);padding:22px}.donut-wrap{display:flex;align-items:center;gap:22px;margin-top:14px}.donut{position:relative;width:150px;height:150px;flex:0 0 auto}.donut svg{transform:rotate(-90deg);display:block}.donut-center{position:absolute;inset:0;display:grid;place-items:center;align-content:center;text-align:center}.donut-center strong{font-family:var(--display);font-size:34px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;color:var(--ink)}.donut-center span{margin-top:4px;color:var(--muted);font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.donut-legend{display:grid;gap:10px;flex:1 1 auto}.donut-legend .dl-row{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--ink-2)}.donut-legend .dl-dot{width:11px;height:11px;border-radius:4px;flex:0 0 auto}.donut-legend .dl-val{margin-left:auto;font-family:var(--display);font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink)}.bars-list{display:grid;gap:16px;margin-top:16px}.bar-row{display:grid;gap:8px}.bar-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.bar-head .bh-name{font-size:13.5px;font-weight:700;color:var(--ink)}.bar-head .bh-score{font-family:var(--display);font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-2)}.bar-track{display:flex;height:12px;border-radius:999px;overflow:hidden;background:var(--soft);border:1px solid var(--line)}.bar-seg{height:100%;transition:width .6s cubic-bezier(.4,0,.2,1)}.bar-seg.correct{background:linear-gradient(90deg,#18b884,var(--good))}.bar-seg.wrong{background:linear-gradient(90deg,var(--bad),#c8432f)}.bar-seg.skip{background:#dde3ec}.bar-foot{display:flex;gap:14px;font-size:11.5px;font-weight:600;color:var(--muted)}.bar-foot b{font-weight:700}.bar-foot .fc{color:var(--good)}.bar-foot .fw{color:var(--bad)}.card-title{font-family:var(--display);font-size:15px;font-weight:700;color:var(--ink)}@media(max-width:1100px){.home-shell{grid-template-columns:1fr}.app-sidebar{position:static;height:auto;display:grid;grid-template-columns:1fr;padding:16px}.sidebar-brand{padding-bottom:14px}.sidebar-nav{grid-template-columns:repeat(3,minmax(0,1fr));padding:14px 0 0}.nav-item.active:before{display:none}.sidebar-status{display:none}.home-layout{grid-template-columns:1fr}.section-board{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid,.exam-layout{grid-template-columns:1fr}.palette-panel{position:static}.palette-grid{max-height:none;min-height:0;grid-template-columns:repeat(10,minmax(38px,1fr))}.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.score-panel{grid-column:1 / -1}}@media(max-width:760px){.exam-shell,.result-shell,.ready-shell,.home-main{padding:12px}.home-header,.paper-command{grid-template-columns:1fr}.home-header{align-items:flex-start;flex-direction:column}.home-actions,.home-actions .primary-action,.home-actions .ghost-action{width:100%}.metric-grid,.section-board{grid-template-columns:1fr}.command-preview{border-left:0;border-top:1px solid var(--line)}.sidebar-nav{grid-template-columns:1fr}.question-panel,.review-panel{padding:16px}.topbar,.question-head,.review-nav,.report-row{align-items:flex-start;flex-direction:column}.topbar{position:static}.section-tabs,.result-grid{grid-template-columns:1fr}.section-tab{border-right:0;border-bottom:1px solid var(--line)}.topbar-stats,.report-numbers{width:100%;flex-wrap:wrap;justify-content:stretch}.timer-pill,.mini-stat{flex:1 1 130px}.stem-frame img{min-width:640px}.palette-grid{grid-template-columns:repeat(5,minmax(42px,1fr))}.primary-action.compact{margin-left:0}}@keyframes fade-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes rail-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes bar-sheen{0%{transform:translate(-130%)}55%,to{transform:translate(240%)}}@keyframes timer-flash{0%,to{box-shadow:var(--e2),0 0 #e0533d00}50%{box-shadow:var(--e2),0 0 0 5px #e0533d29}}.sidebar-brand{animation:rail-in .5s .02s ease-out backwards}.sidebar-nav .nav-item{animation:rail-in .5s ease-out backwards}.sidebar-nav .nav-item:nth-child(1){animation-delay:.1s}.sidebar-nav .nav-item:nth-child(2){animation-delay:.16s}.sidebar-nav .nav-item:nth-child(3){animation-delay:.22s}.sidebar-status{animation:fade-up .6s .3s ease-out backwards}.nav-item svg{transition:transform .18s ease,opacity .18s ease}.nav-item:hover svg{transform:translate(2px);opacity:1}.home-header{animation:fade-up .5s ease-out backwards}.metric-grid>*{animation:fade-up .55s ease-out backwards}.metric-grid>*:nth-child(1){animation-delay:.06s}.metric-grid>*:nth-child(2){animation-delay:.12s}.metric-grid>*:nth-child(3){animation-delay:.18s}.metric-grid>*:nth-child(4){animation-delay:.24s}.home-layout>*{animation:fade-up .6s .2s ease-out backwards}.home-layout>*:nth-child(2){animation-delay:.28s}.section-board>*{animation:fade-up .6s ease-out backwards}.section-board>*:nth-child(1){animation-delay:.3s}.section-board>*:nth-child(2){animation-delay:.36s}.section-board>*:nth-child(3){animation-delay:.42s}.section-board>*:nth-child(4){animation-delay:.48s}.paper-command,.rules-panel{transition:transform .22s ease,box-shadow .22s ease}.paper-command:hover,.rules-panel:hover{transform:translateY(-3px);box-shadow:var(--e3)}.exam-layout .workspace{animation:fade-up .45s ease-out backwards}.exam-layout .palette-panel{animation:fade-up .5s .08s ease-out backwards}.question-panel{animation:fade-in .35s ease-out backwards}.result-grid>*{animation:fade-up .5s ease-out backwards}.result-grid>*:nth-child(2){animation-delay:.06s}.result-grid>*:nth-child(3){animation-delay:.12s}.result-grid>*:nth-child(4){animation-delay:.18s}.result-grid>*:nth-child(5){animation-delay:.24s}.analytics-grid>*{animation:fade-up .55s .18s ease-out backwards}.analytics-grid>*:nth-child(2){animation-delay:.26s}.section-report{animation:fade-up .55s .3s ease-out backwards}.progress-track span{position:relative;overflow:hidden}.progress-track span:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,rgba(255,255,255,.55) 50%,transparent 80%);transform:translate(-130%);animation:bar-sheen 3s ease-in-out 1s infinite}.timer-pill.low{background:linear-gradient(180deg,#e0533df2,#be3c2af2);animation:timer-flash 1.1s ease-in-out infinite}.timer-pill.low svg{color:#ffd2c8}.palette-button{transition:transform .14s cubic-bezier(.34,1.56,.64,1),background .15s ease,color .15s ease,box-shadow .15s ease}.palette-button:hover{transform:translateY(-2px)}.palette-button:active{transform:translateY(0) scale(.94)}:where(button,select,a,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.history-empty{display:grid;justify-items:center;gap:12px;text-align:center;padding:64px 24px;color:var(--muted);background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--e2)}.history-empty svg{color:var(--accent);opacity:.7}.history-empty h2{color:var(--ink);margin:0}.history-empty p{max-width:420px;margin:0}.history-empty .primary-action{margin-top:6px}.perf-card{display:grid;gap:18px;padding:22px;margin-bottom:18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--e2);animation:fade-up .5s ease-out backwards}.perf-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;flex-wrap:wrap}.perf-head h2{margin:2px 0 6px;font-size:clamp(20px,2vw,26px)}.perf-sub{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:13px;font-weight:600}.perf-score{display:grid;gap:8px;justify-items:end;text-align:right}.ps-value{font-family:var(--display);font-size:clamp(30px,4vw,44px);font-weight:700;letter-spacing:-.02em;color:var(--ink);line-height:1}.ps-value span{font-size:15px;font-weight:600;color:var(--faint);margin-left:6px}.delta{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:var(--r-pill);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}.delta.sm{padding:3px 8px;font-size:12px}.delta.up{color:var(--good);background:var(--good-soft)}.delta.down{color:var(--bad);background:var(--bad-soft)}.delta.flat{color:var(--muted);background:var(--soft)}.attempts-label{margin:2px 0 -6px}.attempt-list{display:grid;gap:8px}.attempt-row{display:flex;align-items:center;gap:14px;width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--soft-2);text-align:left;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.attempt-row:hover{transform:translate(2px);background:var(--panel);border-color:var(--accent-ring);box-shadow:var(--e1)}.ar-idx{font-weight:700;font-size:12px;color:var(--faint);min-width:28px}.ar-date{flex:1;color:var(--ink-2);font-weight:600;font-size:14px}.ar-score{font-family:var(--display);font-weight:700;font-size:17px;font-variant-numeric:tabular-nums}.ar-acc{color:var(--muted);font-size:13px;font-weight:600}.ar-first{color:var(--faint);font-size:12px;font-weight:700;padding:3px 8px;background:var(--soft);border-radius:var(--r-pill)}.ar-go{color:var(--faint);flex:0 0 auto}.filter-toolbar{display:grid;gap:14px;max-width:1500px;margin:0 auto 16px;padding:16px 18px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e2)}.filter-group{display:grid;gap:8px}.filter-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.chip-row{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;padding:7px 13px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--soft-2);color:var(--ink-2);font-weight:600;font-size:13px;transition:all .15s ease}.chip:hover{border-color:var(--accent-ring);color:var(--ink)}.chip b{font-weight:800}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 6px 16px -8px var(--accent)}.chip.status.on.correct{background:var(--good);border-color:var(--good);box-shadow:none}.chip.status.on.wrong{background:var(--bad);border-color:var(--bad);box-shadow:none}.chip.status.on.unattempted{background:var(--muted);border-color:var(--muted);box-shadow:none}.attempt-review-grid{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;align-items:start}.attempt-palette-panel{position:sticky;top:90px;display:grid;gap:14px;padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--e2)}.qchip{min-height:40px;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--soft);color:var(--ink-2);font-weight:700;font-size:13px;font-variant-numeric:tabular-nums;transition:transform .14s cubic-bezier(.34,1.56,.64,1),box-shadow .15s ease}.qchip:hover{transform:translateY(-2px);box-shadow:var(--e1)}.qchip.correct{background:var(--good-soft);border-color:var(--good-line);color:#0a7a55}.qchip.wrong{background:var(--bad-soft);border-color:var(--bad-line);color:#b53b27}.qchip.unattempted{background:var(--soft);border-color:var(--line);color:var(--faint)}.qchip.current{outline:2px solid var(--accent);outline-offset:1px;box-shadow:0 0 0 4px var(--accent-ring)}.qchip-legend{display:flex;flex-wrap:wrap;gap:10px 14px;padding-top:4px;border-top:1px solid var(--line-2);color:var(--muted);font-size:12px;font-weight:600}.qchip-legend span{display:inline-flex;align-items:center;gap:6px}.qd{width:11px;height:11px;border-radius:4px}.qd.correct{background:var(--good)}.qd.wrong{background:var(--bad)}.qd.unattempted{background:#c2cbd8}.attempt-title{display:flex;align-items:center;gap:12px}.icon-back{width:38px;height:38px;flex:0 0 auto;display:grid;place-items:center;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--panel);color:var(--ink-2);transition:background .15s ease,transform .15s ease,border-color .15s ease}.icon-back:hover{background:var(--soft);border-color:var(--accent-ring);transform:translate(-2px)}@media(max-width:920px){.attempt-review-grid{grid-template-columns:1fr}.attempt-palette-panel{position:static}.perf-head{flex-direction:column}.perf-score{justify-items:start;text-align:left}}
