:root{--paper:#f6f5ef;--card:#fffefb;--ink:#243b33;--muted:#78827b;--line:#e5e8df;--green:#1f4d3e;--green-soft:#edf3ec;--gold:#c08e50;--gold-soft:#f5eddf;--red:#b85848;--red-soft:#fbefea;--shadow:0 12px 40px #243b3307;--radius:20px;--serif:"Songti SC","STSong","Noto Serif CJK SC",serif;--sans:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.6 var(--sans);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button,input,select{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #c4ad72;outline-offset:3px}a{color:inherit}button{border:0;background:transparent;color:inherit}input,select{max-width:100%}svg{width:21px;height:21px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.4}button,.nav-item,a{transition:background .18s,transform .18s,box-shadow .18s}.boot{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;color:var(--muted)}.brand-mark{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--green);color:#eacfa7;font:26px var(--serif);flex-shrink:0}.eyebrow{font-size:11px;font-weight:700;letter-spacing:3px;color:var(--gold);text-transform:uppercase}.muted{color:var(--muted)}.small{font-size:12px}.primary,.secondary,.text-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:12px 23px;border-radius:11px;font-size:14px;font-weight:600;line-height:1.5;white-space:nowrap}.primary{background:var(--green);color:white;box-shadow:0 4px 10px #1f4d3e12}.primary:hover:not(:disabled){background:#163c2f;transform:translateY(-1px)}.secondary{border:1px solid #dce2d8;background:var(--card)}.secondary:hover:not(:disabled){background:#edf3ec}.text-button{padding:9px 10px;color:var(--muted)}.text-button:hover{color:var(--green);background:var(--green-soft)}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;line-height:1.4;padding:5px 9px;border-radius:6px;background:var(--green-soft);color:var(--green);white-space:nowrap}.pill.gold{background:var(--gold-soft);color:#98703e}.pill.red{background:var(--red-soft);color:var(--red)}.pill.gray{background:#f1f2ee;color:var(--muted)}
/* A calm, private study room. */
.login-screen{min-height:100vh;display:grid;grid-template-columns:minmax(390px,1.05fr) minmax(400px,1fr);padding:24px;gap:24px}.login-story{background:var(--green);color:#f8f4e9;border-radius:25px;position:relative;overflow:hidden;padding:48px 11%;display:flex;flex-direction:column;justify-content:space-between;min-height:700px}.login-story:before,.login-story:after{content:"";position:absolute;border:1px solid #d1dfc421;width:490px;height:490px;border-radius:50%;right:-230px;bottom:20px}.login-story:after{width:620px;height:620px;right:-295px;bottom:-45px}.login-logo{display:flex;align-items:center;gap:13px;font-size:21px;font-weight:600;letter-spacing:3px;position:relative;z-index:1}.login-logo .brand-mark{background:#ffffff12;border:1px solid #ffffff20}.login-editorial{position:relative;z-index:1;padding:52px 0}.login-editorial .eyebrow{color:#d6b886}.login-editorial h1{font:54px/1.5 var(--serif);letter-spacing:2px;margin:20px 0}.login-editorial p{max-width:320px;color:#c1d1c3;line-height:2;font-size:14px}.login-mastery{display:flex;align-items:center;gap:15px;margin-top:36px}.login-mastery .dot{width:31px;height:31px;border-radius:50%;border:1px solid #b9cfb530;color:#c5d5c6;display:grid;place-items:center;font-size:12px}.login-mastery .dot:last-child{background:#e3c69a;color:var(--green);border-color:#e3c69a}.story-foot{position:relative;z-index:1;display:flex;align-items:center;gap:10px;color:#9cb79e;font-size:11px;letter-spacing:2px}.story-foot:before{content:"";width:27px;height:1px;background:#9cb79e}.login-form-wrap{display:flex;align-items:center;justify-content:center;padding:40px}.login-form{width:100%;max-width:350px}.login-form h2{font:34px/1.4 var(--serif);margin:15px 0 12px}.login-form>.muted{font-size:14px;line-height:1.9;margin-bottom:37px}.field{display:block;margin:23px 0}.field>span{display:block;font-size:13px;font-weight:600;margin-bottom:10px}.field input{width:100%;border:1px solid #dce2d7;background:var(--card);border-radius:10px;padding:14px 16px;color:var(--ink);height:52px}.field input:focus{border-color:#658875;box-shadow:0 0 0 3px #1f4d3e08}.password-wrap{position:relative}.password-wrap input{padding-right:50px}.password-toggle{position:absolute;right:9px;top:7px;padding:8px;color:var(--muted);border-radius:5px}.login-form .primary{width:100%;height:52px;margin-top:8px}.login-note{display:flex;align-items:center;gap:7px;justify-content:center;margin-top:23px;color:var(--muted);font-size:12px}.login-note svg{width:15px;height:15px}.form-error{font-size:13px;color:var(--red);background:var(--red-soft);border-radius:8px;padding:11px 13px;margin-top:16px}.login-bottom{font-size:10px;letter-spacing:2px;color:#a1a99f;text-align:center;margin-top:55px}
/* Main shell */
.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:#f0f1e9;border-right:1px solid #e0e5d9;display:flex;flex-direction:column;padding:31px 21px 23px}.brand{display:flex;align-items:center;gap:11px;padding:0 6px 35px}.brand-title{font:22px var(--serif);letter-spacing:2px}.brand-caption{font-size:9px;letter-spacing:2px;color:var(--muted);margin-top:5px}.nav-label{font-size:10px;letter-spacing:2px;color:#929b90;margin:0 15px 13px}.navigation{display:flex;flex-direction:column;gap:7px}.nav-item{width:100%;display:flex;align-items:center;gap:13px;padding:13px 15px;border-radius:10px;text-align:left;color:#738071;font-size:14px;position:relative}.nav-item:hover{background:#e6ebdf}.nav-item.active{background:var(--green);color:#f9f9f1;box-shadow:0 5px 15px #1f4d3e13}.nav-item .nav-count{margin-left:auto;font-size:11px;background:#ffffff1f;padding:0 7px;border-radius:5px}.subject-nav{margin-top:37px}.subject-link{width:100%;display:flex;align-items:center;gap:9px;padding:9px 15px;font-size:12px;color:#778172;border-radius:8px;text-align:left}.subject-link:hover,.subject-link.active{background:#e5ebde;color:var(--green)}.subject-dot{width:6px;height:6px;border-radius:50%;background:#b3bda8;flex-shrink:0}.subject-link.active .subject-dot{background:var(--green)}.subject-link small{margin-left:auto;font-size:10px;color:#a0a797}.sidebar-note{margin-top:auto;padding:21px 13px 23px;font-size:11px;color:#929b8c;line-height:1.8}.sidebar-note .mini-rule{display:flex;gap:4px;margin-bottom:9px}.mini-rule i{display:block;width:16px;height:4px;background:#cad5be;border-radius:5px}.mini-rule i:last-child{background:var(--gold)}.user{border-top:1px solid #dce3d4;padding:20px 7px 0;display:flex;align-items:center;gap:10px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e0e7d9;color:var(--green);font-size:12px;font-weight:600}.user-name{font-size:12px;font-weight:600;max-width:115px;overflow:hidden;text-overflow:ellipsis}.user-role{color:#929b8c;font-size:10px}.logout{margin-left:auto;padding:4px;color:#95a08e}.logout svg{width:17px;height:17px}.main{padding:30px 45px 40px;max-width:1570px;width:100%;margin:auto}.topbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:27px;border-bottom:1px solid var(--line);margin-bottom:30px}.breadcrumb{font-size:12px;color:#949e92;display:flex;align-items:center;gap:9px}.breadcrumb strong{font-weight:500;color:var(--green)}.status-chip{font-size:11px;color:#889680;display:flex;gap:7px;align-items:center}.status-chip i{width:6px;height:6px;border-radius:50%;background:#8ca379}.page-title{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:27px}.page-title h1{font:32px/1.5 var(--serif);letter-spacing:1px;margin:5px 0}.page-title p{font-size:12px;color:var(--muted)}.page-title .eyebrow{font-size:10px;letter-spacing:2px}.title-decoration{color:#cbd3c2;align-self:center}.title-decoration svg{width:45px;height:45px;stroke-width:.8}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:26px}.stat{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:19px 21px;position:relative;overflow:hidden}.stat-label{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;align-items:center}.stat-label svg{width:17px;height:17px;color:#a3b097}.stat-value{font-size:29px;line-height:1.2;font-weight:500;letter-spacing:-1px;margin:12px 0 8px;font-variant-numeric:tabular-nums}.stat-value small{font-size:11px;letter-spacing:0;margin-left:6px;color:#a2ac99;font-weight:400}.stat-caption{font-size:10px;color:#9aa291}.stat:first-child{background:var(--green);color:#fff}.stat:first-child .stat-label,.stat:first-child .stat-caption,.stat:first-child .stat-label svg{color:#b5c8b5}.stat:first-child .stat-value small{color:#bdcdb8}.study-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;align-items:start}.exam-filters{padding:21px 25px 18px;border-bottom:1px solid var(--line)}.filter-heading{display:flex;align-items:center;gap:7px;font-size:11px;color:#89937f;margin-bottom:12px}.filter-heading svg{width:15px;height:15px}.filters{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.select-wrap{position:relative;flex:1;min-width:145px}.filters .select-wrap{flex-basis:210px}.select-wrap svg{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:#9aa58f;pointer-events:none}.select-wrap select{width:100%;height:48px;border:1px solid #e1e6da;background:#fffefb;appearance:none;border-radius:8px;padding:10px 36px 10px 12px;font-size:16px;line-height:1.5;color:#52654e;cursor:pointer}.select-wrap option{font-size:16px}.check-label{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11px;white-space:nowrap}.check-label input{accent-color:var(--green);width:14px;height:14px}.question-area{padding:27px 29px 29px;min-height:400px}.question-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px}.question-tags{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.question-sequence{font-size:11px;color:#929d88;white-space:nowrap}.question-heading{font-size:19px;font-weight:500;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}.question-source{font-size:10px;color:#a1aa98;margin:13px 0 24px;line-height:1.6}.options{display:flex;flex-direction:column;gap:11px;margin-top:24px}.option{position:relative;display:flex;align-items:flex-start;gap:13px;cursor:pointer;border:1px solid #e3e8dd;border-radius:11px;padding:14px 16px;font-size:13px;line-height:1.7;transition:all .15s;background:#fffefa}.option:hover{border-color:#a5b89b;background:#fafcf5}.option input{position:absolute;opacity:0;pointer-events:none}.option-key{display:grid;place-items:center;flex-shrink:0;width:25px;height:25px;border:1px solid #e3e8dd;border-radius:6px;background:#f8f9f3;color:#85947a;font-size:12px;font-weight:500;margin-top:0}.option-text{padding-top:1px;overflow-wrap:anywhere}.option.selected{border-color:#62835b;background:#f2f6ed;box-shadow:0 0 0 1px #62835b14}.option.selected .option-key{background:var(--green);color:#fff;border-color:var(--green)}.option.correct-option{background:#edf6eb;border-color:#a3b99a}.option.correct-option .option-key{background:var(--green);color:white;border-color:var(--green)}.option.wrong-option{background:#fff0eb;border-color:#d8aa9e}.option.wrong-option .option-key{background:var(--red);color:white;border-color:var(--red)}.option.submitted{cursor:default}.option:has(input:focus-visible){outline:3px solid #c4ad72;outline-offset:3px}.option-state{margin-left:auto;flex-shrink:0;color:var(--green)}.option-state svg{width:18px;height:18px}.wrong-option .option-state{color:var(--red)}.blank-fields{display:grid;gap:14px;margin-top:25px}.blank-row{display:flex;align-items:center;gap:13px}.blank-row label{font-size:11px;color:var(--muted);min-width:42px}.blank-row input{flex:1;min-width:0;border:1px solid #dde4d6;border-radius:9px;padding:12px 14px;background:#fffefa;color:var(--ink);font-size:14px}.blank-row input:disabled{background:#f4f5ef;color:#697961}.question-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:29px;padding-top:23px;border-top:1px dashed #e2e6d9}.keyboard-tip{font-size:10px;color:#a1aa98}.keyboard-tip kbd{font:10px var(--sans);border:1px solid #dfe4d7;background:#f8f9f4;border-radius:3px;padding:2px 4px;margin:0 2px}.result{margin-top:25px;border-radius:12px;background:#eff5eb;border:1px solid #d8e5cf;padding:20px}.result.incorrect{background:#fbf1eb;border-color:#efd9cc}.result-title{display:flex;align-items:center;gap:8px;color:var(--green);font-size:14px;font-weight:600}.result.incorrect .result-title{color:#a36143}.result-title svg{width:19px;height:19px}.result-answer{font-size:13px;margin-top:11px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere}.result-notes{font-size:11px;color:#8f8270;margin-top:10px;white-space:pre-wrap}.result-progress{display:flex;align-items:center;gap:10px;margin-top:15px;color:#879474;font-size:11px}.streak-dots{display:flex;gap:5px}.streak-dots i{display:inline-block;width:7px;height:7px;background:#dce4d3;border-radius:50%}.streak-dots i.filled{background:#638a54}.practice-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:46px 20px 32px}.empty-art{width:86px;height:86px;position:relative;display:grid;place-items:center;margin-bottom:23px;background:#f0f4e9;border-radius:27px;transform:rotate(-7deg)}.empty-art svg{width:40px;height:40px;stroke-width:1.2;transform:rotate(7deg);color:#6a8b56}.empty-art:after{content:"";position:absolute;width:12px;height:12px;border:3px solid #d7bf8f;border-radius:50%;right:-5px;top:6px}.practice-empty h2{font:25px var(--serif);margin-bottom:12px}.practice-empty p{font-size:12px;color:var(--muted);line-height:2;max-width:310px;margin-bottom:25px}.practice-empty .small-rule{font-size:10px;color:#a1aa98;margin-top:17px}.exam-bottom{display:flex;align-items:center;justify-content:space-between;color:#a1a997;font-size:10px;padding:17px 28px;border-top:1px solid var(--line);background:#fafbf6;border-radius:0 0 var(--radius) var(--radius)}.exam-bottom span{display:flex;align-items:center;gap:5px}.exam-bottom svg{width:13px;height:13px}.aside-stack{display:flex;flex-direction:column;gap:18px}.rule-card{padding:23px 22px;background:#edeedf;border-color:#e4e4d1;position:relative;overflow:hidden}.rule-card .eyebrow{font-size:9px;letter-spacing:2px;color:#9b976e}.rule-card h3{font:22px/1.6 var(--serif);margin:10px 0 15px}.rule-steps{display:flex;gap:7px;margin-bottom:18px}.rule-steps i{width:27px;height:27px;border:1px solid #ccd3b9;border-radius:50%;display:grid;place-items:center;color:#a3ad8e;font:11px var(--sans);font-style:normal}.rule-steps i:last-child{background:#748658;color:white;border-color:#748658}.rule-card p{font-size:11px;color:#8d967a;line-height:2}.rule-foot{padding-top:16px;border-top:1px solid #dfe3cd;margin-top:17px;font-size:10px;display:flex;gap:6px;align-items:center;color:#8d967a}.rule-foot svg{width:14px;height:14px}.progress-card,.source-card{padding:21px 21px}.card-heading{font-size:12px;font-weight:600;display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.card-heading>span{color:#9ba590;font-size:10px;font-weight:400}.subject-progress{margin-top:15px}.subject-progress-head{display:flex;justify-content:space-between;color:#7d8a73;font-size:10px;margin-bottom:7px}.subject-progress-head span:last-child{color:#a6ae9a;font-variant-numeric:tabular-nums}.progress-track{height:4px;border-radius:4px;background:#edf0e6;overflow:hidden}.progress-fill{height:100%;background:#8eaa79;border-radius:4px}.source-link{display:flex;align-items:center;gap:9px;text-decoration:none;color:#7f8d73;font-size:11px;padding:9px 0;border-bottom:1px solid #f0f2e9}.source-link:last-child{border:0}.source-link:hover{color:var(--green)}.source-link svg{width:15px;height:15px;color:#a6b295}.source-link .source-arrow{margin-left:auto;width:12px;height:12px}.source-link span{flex:1;min-width:0}.page-footer{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.7px;color:#a6ad9d;margin-top:30px}
/* Library and mistake notebook */
.catalog-top{padding:22px 25px}.catalog-filters{display:grid;grid-template-columns:1.2fr 1fr 1fr minmax(160px,1.3fr);gap:10px}.search-wrap{position:relative}.search-wrap svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:#9da893}.search-wrap input{height:48px;border:1px solid #e1e6da;border-radius:8px;background:var(--card);width:100%;padding:8px 12px 8px 35px;font-size:12px;color:var(--ink)}.catalog-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:19px;font-size:11px;color:#9aa58e}.catalog-summary strong{font-weight:600;color:var(--green);margin:0 3px}.sort-hint{display:flex;align-items:center;gap:6px;font-size:10px}.sort-hint svg{width:14px;height:14px}.catalog-list{padding:0 25px}.question-card{border-top:1px solid var(--line);padding:25px 0}.library-prompt{font-size:15px;line-height:1.9;font-weight:500;white-space:pre-wrap;overflow-wrap:anywhere}.library-options{margin-top:15px;display:grid;grid-template-columns:1fr 1fr;gap:9px 20px;font-size:12px;color:#7f8b74}.library-option{display:flex;gap:8px;align-items:flex-start;line-height:1.8}.library-option b{font-weight:500;color:#a0ac91;font-size:11px;flex-shrink:0}.library-answer{margin-top:19px}.library-answer summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:6px;color:#869578;font-size:11px}.library-answer summary::-webkit-details-marker{display:none}.library-answer summary svg{width:13px;height:13px}.library-answer[open] summary svg{transform:rotate(90deg)}.answer-content{margin-top:11px;background:#f4f7ef;border:1px solid #e7ecdf;border-radius:9px;padding:14px 16px;white-space:pre-wrap;font-size:12px;line-height:1.9;color:#6d805e;overflow-wrap:anywhere}.question-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:17px;font-size:10px;color:#a0aa94;gap:10px}.question-card-footer .streak{display:flex;align-items:center;gap:7px}.question-card-footer .source{color:#a6af9b}.pagination{display:flex;align-items:center;justify-content:center;gap:20px;padding:23px;border-top:1px solid var(--line);color:#94a086;font-size:11px}.pagination button{padding:7px 13px;border-radius:7px;border:1px solid #e1e6d9;background:#fafcf5;font-size:11px}.pagination button:hover:not(:disabled){background:var(--green-soft)}.pagination button:disabled{opacity:.35;cursor:default}.catalog-empty{padding:65px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;color:var(--muted)}.catalog-empty svg{width:37px;height:37px;color:#a2b494;stroke-width:1.1;margin-bottom:15px}.catalog-empty h3{font:23px var(--serif);color:var(--ink);margin-bottom:9px}.catalog-empty p{font-size:12px}.loading-line{height:180px;display:flex;align-items:center;justify-content:center;color:#9aa68e;gap:10px;font-size:12px}.spinner{width:16px;height:16px;border:2px solid #dfe5d6;border-top-color:#708b5f;border-radius:50%;animation:spin .8s linear infinite}.list-error{text-align:center;padding:45px 20px;color:var(--red);font-size:12px}.list-error button{display:block;margin:17px auto 0}.mistake-banner{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:23px;background:#f1eddf;border:1px solid #e8e2d0;border-radius:14px;padding:20px 24px}.mistake-banner h3{font:20px var(--serif);color:#7c7355;margin-bottom:5px}.mistake-banner p{font-size:11px;color:#a59a79;line-height:1.8}.mistake-banner svg{width:33px;height:33px;color:#b5a574;stroke-width:1.1;flex-shrink:0}.mistake-count{font-size:12px;font-weight:600;color:var(--red);white-space:nowrap}.rank-number{font-size:12px;color:#bc9468;margin-right:2px}.doc-links{display:flex;gap:12px;margin:12px 0 0;flex-wrap:wrap}.doc-links a{font-size:10px;color:#8a9a7b;text-decoration:none;display:flex;align-items:center;gap:4px}.doc-links a:hover{text-decoration:underline}.doc-links svg{width:12px;height:12px}.mobile-brand{display:none}#toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);padding:13px 20px;border-radius:11px;background:#303e32;color:#fff;box-shadow:0 6px 30px #1f35222b;max-width:calc(100vw - 36px);font-size:13px;z-index:99;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}#toast.visible{opacity:1;transform:translate(-50%,0)}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1450px){.main{padding-left:60px;padding-right:60px}.study-layout{grid-template-columns:minmax(0,1fr) 280px}.question-area{padding:32px 36px}.question-heading{font-size:20px}.option{padding:16px 18px}.exam-filters{padding-left:36px;padding-right:36px}}
@media(max-width:1150px){.shell{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding-left:13px;padding-right:13px}.main{padding:25px 28px}.study-layout{grid-template-columns:minmax(0,1fr) 220px;gap:16px}.stats{gap:10px}.stat{padding:17px}.question-area{padding:23px}.question-heading{font-size:17px}.rule-card,.progress-card,.source-card{padding:20px 17px}.catalog-filters{grid-template-columns:1fr 1fr}.keyboard-tip{display:none}.check-label{font-size:10px}.select-wrap{min-width:125px}.login-story{padding-left:12%;padding-right:12%}.login-editorial h1{font-size:46px}}
@media(max-width:950px){.study-layout{grid-template-columns:minmax(0,1fr)}.aside-stack{display:grid;grid-template-columns:1fr 1fr;gap:16px}.aside-stack .rule-card{display:none}.source-card{grid-column:2}.progress-card{grid-column:1}.page-title h1{font-size:29px}.question-heading{font-size:18px}.login-screen{padding:17px;gap:10px;grid-template-columns:1fr 1fr}.login-story{min-height:650px;padding:35px 35px}.login-editorial h1{font-size:40px}.login-form-wrap{padding:30px}.login-form h2{font-size:29px}}
@media(max-width:700px){.shell{display:block;padding-bottom:78px}.sidebar{position:fixed;top:auto;bottom:0;width:100%;height:70px;background:#f8f9f3f5;backdrop-filter:blur(15px);z-index:30;display:block;padding:0;border:0;border-top:1px solid #dfe5d6}.sidebar .brand,.sidebar .nav-label,.sidebar .subject-nav,.sidebar .sidebar-note,.sidebar .user{display:none}.navigation{height:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:0}.nav-item{flex-direction:column;gap:3px;padding:8px 0;border-radius:0;justify-content:center;font-size:10px}.nav-item svg{width:21px;height:21px}.nav-item.active{background:#edf2e7;color:var(--green);box-shadow:none}.nav-item .nav-count{position:absolute;top:8px;left:calc(50% + 9px);font-size:8px;padding:0 4px;margin:0;color:#a97749;background:#f0e6d6;border-radius:4px}.main{padding:20px 18px 12px}.topbar{padding-bottom:17px;margin-bottom:24px}.breadcrumb{display:none}.mobile-brand{display:flex;align-items:center;gap:9px;font-size:17px;font-family:var(--serif);letter-spacing:2px}.mobile-brand .brand-mark{width:29px;height:29px;font-size:19px;border-radius:8px}.status-chip{font-size:10px;gap:5px}.status-chip .desktop-only{display:none}.mobile-logout{padding:4px;margin-left:3px;color:#96a28b;display:inline-flex}.mobile-logout svg{width:14px;height:14px}.page-title{margin-bottom:22px}.page-title h1{font-size:28px;letter-spacing:0;margin:6px 0}.page-title p{font-size:11px;max-width:290px;line-height:1.9}.page-title .eyebrow{font-size:9px}.title-decoration svg{width:36px;height:36px}.stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.stat{padding:15px 17px;border-radius:12px}.stat-value{font-size:26px;margin:8px 0 5px}.stat-label{font-size:10px}.stat-label svg{width:15px;height:15px}.stat-caption{font-size:9px}.stat-value small{font-size:10px}.study-layout{gap:18px}.exam-filters{padding:19px 18px 16px}.filters{gap:8px}.select-wrap{min-width:120px}.select-wrap select{padding-left:12px}.filters .select-wrap{flex-basis:100%}.check-label{flex-basis:100%;margin-top:3px;font-size:10px}.filter-heading{font-size:10px}.question-area{padding:22px 19px;min-height:350px}.question-heading{font-size:17px;line-height:1.95}.question-meta{margin-bottom:18px}.pill{font-size:10px;padding:5px 7px}.question-sequence{font-size:9px}.question-source{font-size:9px;margin-bottom:18px}.options{gap:9px;margin-top:21px}.option{font-size:12px;padding:13px 12px;gap:11px}.option-key{width:23px;height:23px;font-size:11px}.question-actions{margin-top:24px;padding-top:20px;gap:10px}.question-actions .primary{padding:11px 19px;font-size:12px}.question-actions .text-button{font-size:11px;padding:9px 0}.question-actions .text-button svg{width:14px;height:14px}.exam-bottom{padding:13px 19px;font-size:9px}.exam-bottom>span:last-child{display:none}.practice-empty{padding:32px 7px 21px}.practice-empty h2{font-size:23px}.practice-empty p{font-size:11px;margin-bottom:22px}.practice-empty .small-rule{font-size:9px}.empty-art{width:75px;height:75px;margin-bottom:23px;border-radius:24px}.empty-art svg{width:34px;height:34px}.aside-stack{gap:12px;grid-template-columns:1fr}.source-card,.progress-card{grid-column:auto}.progress-card{display:none}.source-card{padding:19px 21px}.source-card .card-heading{margin-bottom:10px}.source-links{display:grid;grid-template-columns:1fr 1fr;column-gap:18px}.source-link{font-size:10px;gap:5px}.source-link .source-arrow{display:none}.source-link svg{width:12px;height:12px}.page-footer{font-size:8px;letter-spacing:0;margin-top:23px;line-height:1.9;gap:20px}.page-footer span:last-child{text-align:right}.result{padding:17px 15px}.result-title{font-size:12px}.result-answer{font-size:12px}.result-notes{font-size:10px}.result-progress{font-size:10px;gap:8px}.catalog-top{padding:18px}.catalog-filters{gap:8px;grid-template-columns:minmax(0,1fr)}.catalog-summary{font-size:10px;align-items:flex-start}.sort-hint{font-size:9px;gap:4px}.sort-hint svg{width:12px;height:12px}.catalog-list{padding:0 19px}.question-card{padding:22px 0}.library-prompt{font-size:14px}.library-options{grid-template-columns:1fr;gap:7px;font-size:11px}.question-card-footer{font-size:9px;align-items:flex-start}.question-card-footer .source{max-width:150px;text-align:right;line-height:1.7}.library-answer summary{font-size:10px}.answer-content{font-size:11px;padding:13px}.pagination{padding:19px;gap:16px}.pagination button{font-size:10px}.mistake-banner{padding:18px;margin-bottom:20px;gap:18px}.mistake-banner h3{font-size:18px}.mistake-banner p{font-size:10px}.mistake-banner svg{width:28px;height:28px}.mistake-count{font-size:11px}.login-screen{display:flex;flex-direction:column;padding:0;gap:0;min-height:100vh}.login-story{min-height:auto;border-radius:0 0 28px 28px;padding:25px 28px 30px}.login-logo{font-size:18px;letter-spacing:2px;gap:10px}.login-logo .brand-mark{width:35px;height:35px;font-size:23px;border-radius:10px}.login-editorial{padding:30px 0 0}.login-editorial .eyebrow{font-size:9px}.login-editorial h1{font-size:32px;line-height:1.6;margin:12px 0 10px;letter-spacing:1px}.login-editorial h1 br{display:none}.login-editorial p{font-size:11px;max-width:290px}.login-mastery{position:absolute;right:0;bottom:9px;gap:5px;margin:0}.login-mastery .dot{width:19px;height:19px;font-size:8px}.story-foot{display:none}.login-form-wrap{padding:31px 29px 32px;flex:1}.login-form{max-width:400px}.login-form h2{font-size:27px;margin:9px 0}.login-form>.muted{font-size:12px;margin-bottom:25px}.login-form>.eyebrow{font-size:9px}.field{margin:19px 0}.field>span{font-size:12px;margin-bottom:8px}.field input{height:49px;font-size:14px}.password-toggle{top:5px}.login-form .primary{height:49px;font-size:13px}.login-note{font-size:10px;margin-top:18px}.login-bottom{font-size:8px;margin-top:30px}.blank-row input{font-size:16px}.blank-row label{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.mobile-only,.mobile-logout{display:none}@media(max-width:700px){.mobile-only{display:inline}.mobile-logout{display:inline-flex}}
