/* Shared application design. Loaded after legacy styles, before the home/profile refinements. */
:root{--bg:#f4f7fc;--surface:#fff;--text:#14243f;--muted:#52627b;--faint:#7486a1;--border:#e0e7f0;--purple:#245be8;--purple-hover:#174bd0;--soft:#edf3ff;--gilt:#eab74d;--serif:var(--sans);--cloth:none;--ui-blue:#245be8;--ui-green:#078360;--ui-radius:11px}
body.dark{--bg:#101b2c;--surface:#152238;--text:#edf4ff;--muted:#a6b7d0;--faint:#8b9fbc;--border:#2b3d58;--purple:#91b5ff;--purple-hover:#bbd1ff;--soft:#203657;--gilt:#e6be68;--serif:var(--sans);--cloth:none}
body{font-family:var(--sans,'DM Sans',system-ui,sans-serif);color:var(--text);background:var(--bg);line-height:1.6}
h1,h2,h3,h4,h5,.brand,.hero-copy h2,.daily-card h2,.panel-heading h2,.start-panel h2,.detail-cover h2,.question-illustration h2,.feature-panel h2,.result-banner h2,.affairs-panel h3,.cover-caption,.book-front strong,.empty-state h3,.empty-page h2,.front-card h2,.auth-art h2,.soft-note h3,.daily-feature h2,.article-card-body h2,.reading-article h1,.score-ring strong,.podium-card strong,.palette-summary strong{font-family:var(--sans);font-optical-sizing:auto;letter-spacing:-.025em;font-weight:700}
h1,.inner-heading h1{font-size:30px;line-height:1.35;font-weight:750;letter-spacing:-.035em}.page-heading,.inner-heading{margin-bottom:27px}.page-heading p,.inner-heading p{font-size:14px;line-height:1.85;color:var(--muted)}
.page-heading .eyebrow,.inner-heading .eyebrow{display:flex;font-size:10px;font-weight:700;letter-spacing:.08em;color:#526c93;margin-bottom:10px}.page-heading .eyebrow>span,.inner-heading .eyebrow>span{display:inline-block;width:5px;height:5px;background:#245be8;border-radius:50%}.dark .page-heading .eyebrow,.dark .inner-heading .eyebrow{color:#a9c3e8}.eyebrow{font-size:10px;letter-spacing:.07em}.block-title{font-size:19px}.section-heading h2{font-size:22px;font-weight:750;line-height:1.4}.section-heading p{font-size:13px;line-height:1.8}.small-label{font-size:12px}
.brand-mark{background:#245be8}.brand>span:not(.brand-mark):not(.brand-dot){color:var(--purple)}.side-nav a{color:var(--muted);font-size:13px;border-radius:7px;transition:color .15s,background .15s}.side-nav a.active{color:var(--purple);background:var(--soft);box-shadow:inset 3px 0 0 var(--purple);font-weight:650}.side-nav a:hover{color:var(--purple);background:var(--soft)}.side-nav a.active i,.side-nav a:hover i{color:var(--purple)}.nav-caption{font-size:10px;font-weight:650;color:var(--faint);letter-spacing:.06em;text-transform:uppercase}.sidebar-note{background:var(--soft);border:1px solid var(--border);border-radius:9px}.sidebar-note h3{font-size:13px;color:var(--text)}.sidebar-note p{font-size:11px;color:var(--muted)}.sidebar-note .note-icon{font-size:23px;color:var(--purple)}.sidebar-note a{color:var(--purple)}.sidebar-footer{font-size:11px;color:var(--muted)}.nav-form button{font-size:13px;color:var(--muted)}.topbar{border-color:var(--border);background:var(--surface)}.search-box{background:var(--bg);border-color:var(--border)}.avatar{background:var(--soft);color:var(--purple)}.icon-button{color:var(--muted);transition:background .15s,border-color .15s}.icon-button:hover{background:var(--soft);border-color:#b8ccef;color:var(--purple)}
.primary-btn,.hero-button,.btn-primary{background:#245be8;border:1px solid #245be8;color:#fff;font-size:13px;font-weight:650;padding:11px 17px;border-radius:7px;box-shadow:0 3px 8px #245be812;transition:background .15s,transform .15s,box-shadow .15s}.primary-btn:hover,.primary-btn:focus,.hero-button:hover,.btn-primary:hover{background:#174bd0;border-color:#174bd0;color:#fff;box-shadow:0 5px 13px #245be824;transform:translateY(-1px)}.primary-btn>.bi-arrow-right,.text-link>.bi-arrow-right,.text-link>.bi-arrow-up-right,.test-start>.bi{display:inline-block}.secondary-btn,.btn-outline-secondary{background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:7px;font-size:13px;font-weight:550;transition:background .15s,border-color .15s}.secondary-btn:hover,.btn-outline-secondary:hover{border-color:#a1baf0;color:var(--purple);background:var(--soft)}.text-link{color:var(--purple);font-size:12px;font-weight:600}.btn:disabled,.btn.disabled{transform:none;box-shadow:none;opacity:.5}
.panel,.front-card,.paper-card,.subject-detail-card,.article-card,.reading-article,.review-card,.result-stats>div,.front-stat,.start-panel,.question-card,.question-palette,.support-wrap .faq-item,.front-table-wrap,.activity-feed,.profile-test-history,.reference-quiz-preferences,.quiz-pref-panel{background:var(--surface);border-color:var(--border);border-radius:var(--ui-radius);box-shadow:0 3px 12px #18335703}.panel{padding:24px}.panel-heading h2{font-family:var(--sans);font-size:17px;font-weight:700;letter-spacing:-.02em}.panel-heading>i{color:var(--purple)}.front-card h2{font-size:22px;line-height:1.45}.front-card p,.paper-card p,.body-copy,.instruction-list,.soft-note p{font-size:13px;line-height:1.9;color:var(--muted)}.panel-subtitle{font-size:12px;color:var(--muted)}.front-small{font-size:12px;line-height:1.9}.front-icon,.subject-symbol,.small-avatar{background:var(--soft);color:var(--purple)}.front-icon{width:45px;height:45px;border-radius:10px;font-size:22px}.notice-banner{background:var(--soft);border:1px solid var(--border);border-left:3px solid var(--purple);color:var(--muted);border-radius:8px;font-size:12px;line-height:1.9}.notice-banner>.bi{color:var(--purple)}.tag-pill,.tag-chip{border-color:var(--border);border-radius:5px;font-size:11px;background:var(--bg);color:var(--muted)}.demo-label,.team-badge,.nav-soon{background:var(--soft);color:var(--purple);font-size:10px}
/* Remove the cloth/book motif from every content surface. */
.test-cover,.detail-cover,.question-illustration,.feature-panel,.daily-card,.daily-feature,.auth-art,.article-art{background-image:none;filter:none;--cover:#245be8;--cover-deep:#174bd0;--print:#fff;--print-soft:#e4edff}.test-cover::before,.test-cover::after,.detail-cover::before,.question-illustration::before,.feature-panel::before,.daily-card::before,.daily-feature::before,.auth-art::before,.article-art::before{display:none}
.test-card{border:1px solid var(--border);border-radius:11px;background:var(--surface);overflow:hidden;transition:transform .17s,box-shadow .17s,border-color .17s}.test-card:hover{transform:translateY(-4px);border-color:#aac2ee;box-shadow:0 9px 22px #17396910}.test-card:focus-within{border-color:var(--purple)}.test-cover,.catalog-grid .test-cover{height:145px;padding:0 21px 21px;background:linear-gradient(110deg,#265ce5,#3986f0);color:#fff;align-items:flex-end;justify-content:flex-start}.test-card:nth-child(4n+2) .test-cover{background:linear-gradient(110deg,#a7660e,#d49a24)}.test-card:nth-child(4n+3) .test-cover{background:linear-gradient(110deg,#087559,#18a47d)}.test-card:nth-child(4n+4) .test-cover{background:linear-gradient(110deg,#5545c8,#7b67e4)}.cover-caption,.catalog-grid .cover-caption{font-family:var(--sans);font-size:21px;line-height:1.2;font-weight:700;color:#fff;letter-spacing:-.025em;max-width:80%}.cover-caption small{font-family:var(--sans);font-size:10px;color:#ffffffd9;font-weight:500;letter-spacing:0;margin-bottom:8px}.test-cover>.bi{right:-1px;bottom:-10px;font-size:90px;opacity:.15;color:#fff;transform:rotate(-7deg)}.test-badge{top:12px;left:21px;color:#fff;background:#ffffff18;border:1px solid #ffffff45;border-radius:4px;font-size:9px;padding:3px 7px}.save-button{background:#ffffff18;color:#fff;border:1px solid #ffffff4d;border-radius:6px;top:11px;right:12px;width:30px;height:30px;font-size:12px;transition:background .15s,transform .15s}.save-button:hover{background:#ffffff36;color:#fff;transform:scale(1.08)}.save-button.saved{color:#245be8;background:#fff;border-color:#fff}.test-body,.catalog-grid .test-body{padding:18px 19px 16px}.test-body h3,.catalog-grid .test-body h3{font-size:15px;font-weight:650;line-height:1.65;color:var(--text);margin:8px 0 11px}.test-category,.catalog-grid .test-category{font-size:11px;color:var(--muted);line-height:1.7}.exam-chip{background:var(--soft);color:var(--purple);font-size:10px;border-radius:5px}.test-meta,.catalog-grid .test-meta{font-size:12px;color:var(--muted);gap:15px}.test-meta i{color:var(--faint)}.test-start,.catalog-grid .test-start{color:var(--purple);font-size:12px;font-weight:650}.test-bottom{border-color:var(--border)}.difficulty,.catalog-grid .difficulty{font-size:12px;color:var(--muted)}.level-1 .level-bars i:nth-child(-n+1),.level-2 .level-bars i:nth-child(-n+2),.level-3 .level-bars i:nth-child(-n+3){background:var(--purple)}.level-bars i{background:var(--border)}
.filter-row button,.competition-tabs a,.competition-tabs button{font-size:12px;font-weight:500;border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:6px;padding:8px 14px;transition:background .15s,border-color .15s}.filter-row button.active,.competition-tabs a.active,.competition-tabs button.active,body.dark .filter-row button.active{background:#245be8;border-color:#245be8;color:#fff;font-weight:600}.filter-row button:hover:not(.active),.competition-tabs a:hover:not(.active),.competition-tabs button:hover:not(.active){background:var(--soft);border-color:#a4bdec;color:var(--purple)}
/* Daily practice, test introductions, and subject pages. */
.daily-feature,.dark .daily-feature{padding:38px;border:1px solid #1e55db;background:linear-gradient(125deg,#2055dc,#377bf2);border-radius:13px;color:#fff;position:relative;overflow:hidden;filter:none}.daily-feature-label{color:#e1ecff;font-size:11px;font-weight:650;letter-spacing:.02em}.daily-feature-label::before{background:#ffdf78}.daily-feature h2{font-family:var(--sans);font-size:42px;font-weight:750;line-height:1.15;letter-spacing:-.04em;color:#fff;margin-top:24px}.daily-feature>p{font-size:14px;line-height:1.9;color:#e1ebff;max-width:530px}.daily-feature-icon{font-size:210px;color:#fff;opacity:.09;right:-35px;top:60px}.daily-feature-meta{gap:8px;margin:25px 0;position:relative;flex-wrap:wrap}.daily-feature-meta .tag-pill{border:1px solid #ffffff45;color:#fff;background:#ffffff15;font-size:11px;border-radius:5px;padding:6px 10px}.daily-feature .primary-btn{background:#fff;color:#1747b0;border:1px solid #fff;font-size:13px;box-shadow:0 4px 10px #0a3b971c}.daily-feature .primary-btn:hover{background:#eff5ff;color:#1747b0}.daily-feature>small{display:block;color:#dce8ff;font-size:11px;line-height:1.9;margin-top:22px;max-width:550px}.soft-note{background:var(--surface);color:var(--text);border:1px solid var(--border);border-top:3px solid #f0bd4b;border-radius:10px;padding:24px}.soft-note>.bi{font-size:22px;color:#d49a20}.soft-note h3{font-size:18px;font-weight:700;line-height:1.4;color:var(--text)}.instruction-list li{margin:9px 0}.detail-cover,.feature-panel{background:linear-gradient(115deg,#e9f1ff,#f5f9ff);color:#245be8;border:1px solid #d7e5ff;border-radius:12px;padding:32px;filter:none}.detail-cover h2{font-family:var(--sans);font-size:33px;color:#16376e;font-weight:750;line-height:1.3;letter-spacing:-.035em}.detail-cover>.bi,.feature-panel>.bi{color:#245be8;opacity:.45;transform:none}.detail-cover .tag-pill,.detail-cover .tag-chip{background:#ffffffa8;border-color:#c9daf9;color:#2455ba}.feature-panel h2{font-family:var(--sans);font-size:27px;font-weight:700;color:#16376e}.feature-panel .eyebrow{color:#42669d}.subject-detail-card{transition:transform .16s,border-color .16s,box-shadow .16s}.subject-detail-card:hover{border-color:#a6bfee;transform:translateY(-3px);box-shadow:0 7px 19px #1b417d09}.subject-detail-card h2{font-size:18px;font-weight:700}.subject-detail-card p{font-size:13px;line-height:1.9}.subject-card-foot{color:var(--purple);font-size:12px;font-weight:600}.topic-list li{font-size:13px;color:var(--text);line-height:1.8}.topic-list span{color:var(--purple)}
/* Playing, submission review and results. */
.question-illustration{background:linear-gradient(145deg,#edf3ff,#e3edff);color:#245be8;padding:28px;filter:none}.question-illustration>.bi{font-size:85px;opacity:.55;color:#245be8;transform:none;margin-bottom:35px}.question-illustration>span{color:#4a6695;font-size:11px;font-weight:650}.question-illustration h2{font-family:var(--sans);color:#163b78;font-size:29px;font-weight:750;line-height:1.3}.question-illustration>small{font-size:10px;color:#5f7595;letter-spacing:.02em}.question-content>h2{font-size:22px;line-height:1.65;font-weight:650;color:var(--text)}.question-label{font-size:11px;font-weight:650;letter-spacing:.07em;color:var(--purple)}.answer-option{padding:16px;border:1px solid var(--border);border-radius:8px;transition:border-color .15s,background .15s}.answer-option:hover{border-color:#abc3ef;background:var(--soft)}.answer-option>span{border:0;background:var(--bg);color:var(--muted);font-size:12px;width:31px;height:31px}.answer-option>strong{font-size:14px;line-height:1.7;font-weight:500;color:var(--text)}.answer-option.chosen,.answer-option:has(input:checked){background:var(--soft);border-color:#245be8;box-shadow:inset 0 0 0 1px #245be8}.answer-option.chosen>span,.answer-option:has(input:checked)>span{background:#245be8;color:#fff;border-color:#245be8}.answer-option>.bi{display:block;color:#245be8}.timer-pill{font-size:18px;font-weight:600;color:var(--purple);background:var(--surface);border-color:var(--border);border-radius:8px}.timer-pill.ending{color:#bf3328;background:#fff1ef;border-color:#f0b7ae}.quiz-progress>span{background:#245be8}.palette-grid button{height:36px;border-radius:6px;font-size:12px}.palette-grid button.current{outline-color:#245be8}.palette-grid button.answered,.legend-dot.answered,.review-grid a.answered,.dark .review-grid a.answered{background:#e1f4e9;color:#087852;border-color:#badfca}.palette-grid button.marked,.legend-dot.marked,.review-grid a.marked,.dark .review-grid a.marked{background:#fff1cd;color:#9b6908;border-color:#edd69f}.palette-legend,.palette-summary>span{font-size:11px;color:var(--muted)}.palette-summary strong{font-family:var(--sans);color:var(--text);font-size:24px}.question-palette .panel-heading h2{font-family:var(--sans);font-size:15px;font-weight:650}.question-palette .primary-btn{font-size:12px}.quiz-actions .btn,.quiz-actions .text-link{font-size:12px}.quiz-hint{border-color:var(--border);border-radius:7px;background:var(--bg);font-size:12px}.quiz-hint summary{color:var(--purple)}.session-note{font-size:11px;line-height:1.9;color:var(--muted)}.session-heading h1{font-family:var(--sans);font-size:25px;font-weight:700;line-height:1.5}.quiz-topline{color:var(--muted);font-size:12px}.review-grid a{font-size:12px;border-radius:6px}.result-banner{background:linear-gradient(110deg,var(--soft),var(--surface));border-color:var(--border);border-radius:12px;padding:30px}.result-banner h2{font-family:var(--sans);font-size:25px;line-height:1.45;font-weight:750;color:var(--text)}.result-banner p{font-size:13px;line-height:1.9}.score-ring{background:conic-gradient(#245be8 var(--score),var(--border) 0)}.score-ring strong{font-family:var(--sans);color:var(--purple);font-weight:750}.score-ring span,.score-ring small{font-size:11px;color:var(--muted)}.result-stats strong{font-family:var(--sans);font-size:23px;color:var(--text);font-weight:700}.result-stats>div>span:last-child{font-size:11px}.review-card summary strong{font-size:14px;line-height:1.7;font-weight:600}.review-options>div{font-size:13px;line-height:1.8;border-radius:7px}.review-options .right-answer{background:#ecf8f1;border-color:#b9dfc9;color:#096841}.review-options .wrong-answer{background:#fff0ee;border-color:#efc2bb;color:#9a3428}.explanation{background:var(--bg);border-radius:7px;border-left:3px solid var(--purple)}.explanation strong{font-size:12px;color:var(--purple)}.explanation p{font-size:13px;line-height:1.9}.answer-status{font-size:10px;border-radius:5px}.answer-status.correct{background:#e6f5ec;color:#096c46}.answer-status.incorrect{background:#fff0ed;color:#a1382c}.answer-status.skipped{background:var(--bg);color:var(--muted)}
/* Forms, account preferences and quiz creation. */
.form-control,.form-select,.front-form .form-control,.front-form .form-select,.profile-form .form-control,.profile-form .form-select,.preference-field .form-control,.preference-field .form-select,.catalog-search{background-color:var(--surface);border-color:var(--border);color:var(--text);border-radius:7px;font-size:13px;padding:11px 13px;transition:border-color .15s,box-shadow .15s}.form-control:focus,.form-select:focus{border-color:#8babef;box-shadow:0 0 0 3px #245be814;color:var(--text);background-color:var(--surface)}.form-control:disabled,.form-select:disabled{background-color:var(--bg);color:var(--muted)}.front-form label,.profile-form label,.preference-field label{font-size:13px;color:var(--muted);font-weight:550}.form-check-input:checked,.preference-toggle .form-check-input:checked,.quiz-pref-row .form-check-input:checked{background-color:#245be8;border-color:#245be8}.form-check-input:focus{border-color:#85a8ef;box-shadow:0 0 0 3px #245be814}.catalog-toolbar select{font-size:12px;background-color:var(--surface);color:var(--muted);border-color:var(--border)}.catalog-search input{font-size:12px;color:var(--text)}.collection-summary{font-size:11px;line-height:1.8}.settings-title h2{font-size:22px;font-weight:700;color:var(--text)}.settings-title p{font-size:13px;color:var(--muted)}.quiz-pref-panel>h3{font-size:20px;font-weight:700}.quiz-pref-row label{font-size:13px;font-weight:550;color:var(--text)}.quiz-pref-row p,.quiz-pref-subtitle{font-size:12px;color:var(--muted)}.preferred-category-chips span{font-size:11px;border-radius:5px;border-color:var(--border)}.preferred-category-chips input:checked+span{background:#245be8;border-color:#245be8;color:#fff}.save-quiz-preferences{font-size:13px;font-weight:600;background:#245be8;border-color:#245be8;border-radius:7px}.save-quiz-preferences:hover{background:#174bd0;color:#fff}.settings-inline-note{font-size:11px;background:var(--bg);color:var(--muted);border-color:var(--border)}.editor-tabs{background:var(--surface);border-color:var(--border);border-radius:8px}.editor-tabs a,.editor-tabs button{font-size:12px;border-radius:6px;font-weight:550;color:var(--muted)}.editor-tabs a.active,.editor-tabs button.active{background:#245be8;color:#fff}.question-editor{background:var(--surface);border-color:var(--border);border-radius:9px}.question-editor>header strong{font-size:13px}.editor-option>span{color:var(--muted);font-size:11px}.editor-side{border-top:3px solid #245be8}.generator-well{background:linear-gradient(110deg,var(--soft),var(--surface));border-color:var(--border);border-radius:12px}.generator-well h2{font-size:29px;line-height:1.4;color:var(--text)}.generated-question h3{font-size:14px;line-height:1.8}
/* Reading, previous papers, plans and support. */
.article-art{height:160px;background:linear-gradient(110deg,#245be8,#3c83f2);align-items:start;justify-content:end;padding:24px;color:#fff}.article-art.art-1{background:linear-gradient(110deg,#087b5c,#1aa47e)}.article-art.art-2{background:linear-gradient(110deg,#b17b14,#dba436)}.article-art .bi{right:7px;bottom:5px;font-size:80px;opacity:.18;color:#fff;transform:none}.article-art span{font-family:var(--sans);font-size:17px;font-weight:650;color:#fff}.article-card-body h2{font-family:var(--sans);font-size:21px;font-weight:700;line-height:1.5;color:var(--text)}.article-card-body p{font-size:13px;line-height:1.9}.article-card{transition:transform .17s,border-color .17s,box-shadow .17s}.article-card:hover{transform:translateY(-3px);border-color:#a6beef;box-shadow:0 8px 20px #1c407a09}.reading-article{padding:36px}.reading-article h1{font-family:var(--sans);font-size:34px;font-weight:750;line-height:1.4}.reading-article section h2{font-size:22px;font-weight:700}.reading-article section p{font-size:14px;line-height:2}.article-lead{font-size:16px;color:var(--muted)}.article-number{color:var(--purple)}.article-cta{background:var(--soft);border:1px solid var(--border);border-radius:8px}.paper-card h2{font-family:var(--sans);font-size:23px;line-height:1.4;font-weight:700}.three-steps h3{font-size:15px;font-weight:650}.three-steps p{font-size:13px;line-height:1.9;color:var(--muted)}.faq-item{border-color:var(--border);border-radius:9px}.faq-item summary{font-size:14px;line-height:1.8;font-weight:600;color:var(--text)}.faq-item summary i{color:var(--purple)}.faq-item p{font-size:13px;line-height:1.9;color:var(--muted)}.plan-price{color:var(--purple);font-size:34px;font-weight:700}.plan-featured{border-color:#9ebaf4;box-shadow:inset 0 3px 0 #245be8}.plan-list{font-size:13px;line-height:2.7;color:var(--muted)}.referral-code{color:var(--purple);background:var(--soft);border-color:#a3bff1;font-size:23px;border-radius:8px}.reward-timeline strong{font-size:14px;color:var(--text)}.reward-timeline p{font-size:12px;color:var(--muted)}.front-empty,.empty-page,.empty-state{background:var(--surface);border-color:var(--border);border-radius:10px}.front-empty h2,.empty-page h2,.empty-state h3{font-family:var(--sans);font-size:22px;font-weight:700}.front-empty>.bi,.empty-page>.bi,.empty-state>.bi{color:var(--purple)}.front-empty p,.empty-page p,.empty-state p{font-size:13px;line-height:1.9;color:var(--muted)}
/* Account screens, community, performance tables and messages. */
.auth-layout{border-color:var(--border);border-radius:13px;background:var(--surface);box-shadow:0 6px 25px #17376807}.auth-art,.dark .auth-art{background:linear-gradient(140deg,#2257df,#3679ee);padding:35px;color:#fff;filter:none}.auth-art>.bi{font-size:48px;color:#dce8ff;opacity:1}.auth-art h2{font-family:var(--sans);font-size:34px;font-weight:750;color:#fff;line-height:1.3}.auth-art p{font-size:14px;line-height:1.9;color:#e0eaff}.auth-art .text-link{color:#fff}.auth-content h1{font-family:var(--sans);font-size:28px;font-weight:750;line-height:1.4}.auth-content>p{font-size:13px;line-height:1.9;color:var(--muted)}.auth-links{font-size:12px}.auth-links a{color:var(--purple)}.auth-demo-note{font-size:11px;line-height:1.9;color:var(--muted)}.front-table-wrap{overflow-x:auto}.front-table{font-size:13px}.front-table th{font-size:10px;font-weight:650;letter-spacing:.06em;background:var(--bg);color:var(--muted);padding:16px 20px}.front-table td{padding:17px 20px;border-color:var(--border);font-variant-numeric:tabular-nums}.front-table tbody tr:hover{background:var(--soft)}.front-table td a{color:var(--purple)}.front-stat>strong{font-family:var(--sans);color:var(--purple);font-size:28px;font-weight:700}.front-stat>span{font-size:12px;color:var(--muted)}.front-stat>small{font-size:10px;color:var(--muted)}.subject-progress .track>span,.chart-bar>div{background:#245be8}.podium-card.winner{background:linear-gradient(var(--soft),var(--surface));border-color:#aac1ef;box-shadow:inset 0 3px 0 #245be8}.podium-avatar{background:var(--soft);color:var(--purple)}.podium-avatar>span{background:#e8b648;color:#503700}.podium-card strong{font-family:var(--sans);font-size:27px;font-weight:750;color:var(--purple)}.podium-card h3{font-size:15px;font-weight:650}.competition-cover{background:linear-gradient(115deg,#245be8,#3c83f2);color:#fff;border-radius:8px}.competition-cover>span{font-family:var(--sans);font-size:22px;font-weight:700}.competition-cover>.bi{opacity:.7}.competition-meta{font-size:12px;color:var(--muted)}.discussion-row{border-color:var(--border);border-radius:10px;transition:border-color .15s,box-shadow .15s}.discussion-row:hover{border-color:#adc4ee;box-shadow:0 5px 15px #15356e06}.discussion-row h2{font-size:16px;line-height:1.6;font-weight:650}.discussion-row p{font-size:13px;line-height:1.85;color:var(--muted)}.discussion-info{font-size:11px;color:var(--muted)}.discussion-body{font-size:14px;line-height:2}.reply-row strong{font-size:13px}.reply-row p{font-size:13px;line-height:1.9}.reply-row time{font-size:10px}.messages-layout{background:var(--surface);border-color:var(--border);border-radius:11px;min-width:0}.conversation-list{border-color:var(--border)}.conversation-list a.active,.conversation-list button.active{background:var(--soft);color:var(--purple)}.conversation-list strong{font-size:13px}.conversation-list small{font-size:11px;color:var(--muted)}.chat-header{font-size:15px;font-weight:650;border-color:var(--border)}.chat-bubble{background:var(--bg);color:var(--text);font-size:13px;line-height:1.9;border-radius:9px;border:1px solid var(--border)}.chat-bubble.mine{background:var(--soft);color:var(--text);border-color:#cbdcfc}.chat-bubble small{font-size:10px;color:var(--muted)}.chat-compose{border-color:var(--border)}.chat-content{min-width:0}.notification-row{border-color:var(--border);border-radius:9px}.notification-row.unread{background:linear-gradient(110deg,var(--soft),var(--surface));border-left:3px solid #245be8}.notification-row h2{font-size:14px;font-weight:650}.notification-row p{font-size:13px;line-height:1.85;color:var(--muted)}.notification-row time{font-size:11px;color:var(--muted)}.task-item strong{font-size:14px;font-weight:550}.task-item span{font-size:11px;color:var(--muted)}.task-form label{font-size:12px;color:var(--muted)}.rhythm-item strong{font-size:13px}.rhythm-item p{font-size:12px;color:var(--muted)}.rhythm-item span{color:var(--purple);background:var(--soft)}.toast,.modal-content{border-color:var(--border);background:var(--surface);color:var(--text);border-radius:10px}.toast-body{font-size:13px;line-height:1.8}.page-footer{font-size:11px;color:var(--faint);border-color:var(--border)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #8aafff;outline-offset:3px}.test-body h3 a:focus-visible::after{outline:3px solid #8aafff;outline-offset:-3px}.btn:focus-visible{box-shadow:0 0 0 3px #245be81a}
/* Dark mode keeps hierarchy and semantic colors, rather than washing out controls. */
body.dark .detail-cover,body.dark .feature-panel,body.dark .question-illustration{background:linear-gradient(115deg,#1b3153,#17263f);border-color:#304d77;filter:none}body.dark .detail-cover h2,body.dark .feature-panel h2,body.dark .question-illustration h2{color:#e2edff}body.dark .detail-cover>.bi,body.dark .feature-panel>.bi,body.dark .question-illustration>.bi{color:#9abfff}body.dark .question-illustration>span,body.dark .question-illustration>small,body.dark .feature-panel .eyebrow{color:#aac0de}body.dark .detail-cover .tag-pill,body.dark .detail-cover .tag-chip{background:#243e64;border-color:#3a5884;color:#bcd3ff}body.dark .answer-option.chosen,body.dark .answer-option:has(input:checked){border-color:#79a2ff;background:#203657}body.dark .palette-grid button.answered,body.dark .review-grid a.answered{background:#173e32;color:#8de0b6;border-color:#306c52}body.dark .palette-grid button.marked{background:#493b1c;color:#f0cf7b;border-color:#79612d}body.dark .review-options .right-answer{background:#173e2f;border-color:#326d4b;color:#a1e8bf}body.dark .review-options .wrong-answer{background:#452b2b;border-color:#77403e;color:#f4bbb4}body.dark .answer-status.correct{background:#183e2c;color:#a3dfb9}body.dark .answer-status.incorrect{background:#452a27;color:#f4bfb6}body.dark .article-art{filter:none}body.dark .competition-cover{background:linear-gradient(115deg,#2454c6,#386ed3);color:#fff}body.dark .quiz-pref-row .form-check-input:checked{background:#245be8;border-color:#245be8}body.dark .save-quiz-preferences{background:#245be8;border-color:#245be8;color:#fff}
@media(min-width:1650px){h1,.inner-heading h1{font-size:33px}.daily-feature h2{font-size:46px}.detail-cover h2{font-size:37px}.test-cover,.catalog-grid .test-cover{height:155px}.cover-caption,.catalog-grid .cover-caption{font-size:23px}}
@media(max-width:1199px){.daily-feature,.dark .daily-feature{padding:30px}.daily-feature h2{font-size:36px}.detail-cover{padding:28px}.detail-cover h2{font-size:29px}.question-content>h2{font-size:21px}.catalog-grid .test-cover{height:137px}.catalog-grid .cover-caption{font-size:20px}}
@media(max-width:900px){.detail-layout>*,.editor-layout>*,.quiz-layout>*,.content-grid>*,.profile-layout>*,.front-two>*{min-width:0}.detail-layout{grid-template-columns:minmax(0,1fr) 255px}.question-content>h2{font-size:20px}}
@media(max-width:700px){h1,.inner-heading h1{font-size:26px;line-height:1.4}.page-heading p,.inner-heading p{font-size:13px}.section-heading h2{font-size:21px}.page-heading .eyebrow,.inner-heading .eyebrow{font-size:9px}.panel{padding:21px}.panel-heading h2{font-size:16px}.detail-layout{display:block}.detail-layout>aside{margin-top:22px}.daily-feature,.dark .daily-feature{padding:27px 23px}.daily-feature h2{font-size:34px}.daily-feature>p{font-size:13px;line-height:1.9}.daily-feature-meta .tag-pill{font-size:10px}.daily-feature>small{font-size:11px}.daily-feature-icon{font-size:160px;top:90px}.soft-note{padding:22px}.soft-note h3{font-size:18px}.test-cover,.catalog-grid .test-cover{height:140px;padding:0 19px 20px}.cover-caption,.catalog-grid .cover-caption{font-size:21px}.test-badge{left:19px}.test-body,.catalog-grid .test-body{padding:17px}.test-body h3,.catalog-grid .test-body h3{font-size:14px}.test-meta,.catalog-grid .test-meta{font-size:11px;gap:12px}.test-category,.catalog-grid .test-category{font-size:10px}.test-start,.catalog-grid .test-start,.difficulty,.catalog-grid .difficulty{font-size:11px}.subject-directory,.catalog-grid{gap:14px}.subject-detail-card{padding:21px}.subject-detail-card h2{font-size:17px}.subject-detail-card p{font-size:12px;min-height:0}.filter-row button,.competition-tabs a,.competition-tabs button{font-size:11px;padding:8px 12px}.question-content>h2{font-size:20px}.answer-option{padding:14px 12px;gap:11px}.answer-option>strong{font-size:13px}.question-card{padding:22px}.session-heading h1{font-size:21px}.timer-pill{font-size:16px;padding:10px 13px}.quiz-actions .btn,.quiz-actions .text-link{font-size:11px}.palette-legend{font-size:10px}.result-banner h2{font-size:21px}.result-banner p{font-size:12px}.result-banner{padding:25px;gap:20px}.review-card summary strong{font-size:13px}.review-options>div{font-size:12px}.explanation p{font-size:12px}.answer-status{font-size:9px}.reading-article{padding:25px}.reading-article h1{font-size:27px}.reading-article section h2{font-size:20px}.reading-article section p{font-size:13px}.article-card-body h2{font-size:20px}.auth-art,.dark .auth-art{padding:26px}.auth-art h2{font-size:28px}.auth-art>.bi{font-size:35px;margin-bottom:20px}.auth-content h1{font-size:26px}.auth-content>p{font-size:12px}.front-table{font-size:12px}.front-table th{font-size:9px;padding:14px}.front-table td{padding:15px}.discussion-row h2{font-size:14px}.discussion-row p{font-size:12px}.discussion-info{font-size:10px}.chat-bubble{font-size:12px;max-width:88%}.chat-header{font-size:14px}.notification-row h2{font-size:13px}.notification-row p{font-size:12px}.front-form .form-control,.front-form .form-select,.profile-form .form-control,.profile-form .form-select{font-size:12px}.quiz-pref-row label{font-size:12px}.quiz-pref-row p{font-size:11px}.quiz-pref-panel>h3{font-size:19px}.page-footer{font-size:10px}.subject-progress>div:first-child{font-size:12px}}
@media(max-width:420px){.catalog-grid,.subject-directory{grid-template-columns:1fr}.catalog-grid .test-cover,.test-cover{height:150px}.catalog-grid .cover-caption,.cover-caption{font-size:23px}.test-body h3,.catalog-grid .test-body h3{font-size:15px}.test-meta,.catalog-grid .test-meta{font-size:12px}.test-category,.catalog-grid .test-category{font-size:11px}.daily-feature h2{font-size:31px}.session-heading h1{font-size:19px}.timer-pill{font-size:14px}.question-card{padding:19px}.answer-option>strong{font-size:12px}.result-banner{flex-wrap:wrap}.primary-btn,.secondary-btn,.hero-button{font-size:12px}.form-control,.form-select{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.performance-charts .chart-bars {
  display: grid;
  grid-auto-columns: minmax(0, 1fr);
  grid-auto-flow: column;
  align-items: stretch;
  gap: clamp(4px, 2vw, 24px);
  height: 190px;
  margin: 42px 0 34px;
  border-bottom: 1px solid var(--border);
  background: repeating-linear-gradient(to top, transparent 0, transparent calc(25% - 1px), var(--border) calc(25% - 1px), var(--border) 25%);
}
.performance-column {
  position: relative;
  display: flex;
  align-items: end;
  justify-content: center;
  min-width: 0;
}
.performance-fill {
  position: relative;
  width: min(64px, 72%);
  height: var(--score);
  background: var(--purple);
  border-radius: 8px 8px 0 0;
}
.performance-fill > span,
.performance-column > small {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  font-variant-numeric: tabular-nums;
}
.performance-fill > span {
  bottom: calc(100% + 6px);
  color: var(--text);
  font-size: 12px;
  font-weight: 700;
}
.performance-column > small {
  top: calc(100% + 8px);
  color: var(--muted);
  font-size: 10px;
  line-height: 1.2;
}
.performance-charts .subject-progress .track {
  height: 10px;
  border-radius: 999px;
  overflow: hidden;
}
.performance-charts .subject-progress .track > span {
  background: var(--purple);
  border-radius: inherit;
}
