/* A quiet reading space. Layout is live HTML, with independent artwork. */
:root{--bg:#fafaf7;--paper:#fff;--ink:#25352e;--muted:#7e857e;--line:#e5e9e1;--green:#346f54;--pale:#edf3eb}
body{font-size:14px;overscroll-behavior-x:none}h1{font-size:32px;letter-spacing:-1px}h2,h3{letter-spacing:-.3px}.sidebar{width:208px;padding:27px 16px 24px}.brand{gap:10px;margin:0 8px 35px}.brandmark{width:34px;height:34px;border-radius:9px}.brand strong{font-size:17px;letter-spacing:-.5px;white-space:nowrap}.nav-item{font-size:14px;gap:14px;padding:13px 16px;min-height:47px;border-radius:7px}.nav-item small{font-size:11px;background:#e5eee1;padding:2px 7px;border-radius:12px}.nav-item.active{color:#24593f;background:#eaf0e7}.nav-spacer{min-height:24px}.topbar{height:65px;padding:0 32px;gap:24px}#breadcrumbs{font-size:12px}.searchbox{border:1px solid #e3e6df;background:#f4f5f1;border-radius:8px;padding:9px 12px;width:330px}.searchbox input{font-size:12px}.searchbox kbd{border:1px solid #dfe3db;padding:2px 4px;border-radius:3px}.sync-state{font-size:10px;color:#85947f}.page{max-width:1260px;padding:32px 36px 60px}.page-heading{margin-top:0}.page-heading p{font-size:13px}.metrics{padding:29px 0 30px;gap:0;border:0}.metrics>div{padding:0 28px;border-right:1px solid var(--line);gap:8px}.metrics>div:first-child{padding-left:0}.metrics>div:last-child{border:0}.metrics strong{font-size:32px;font-weight:600}.metrics>div>span{font-size:12px}.metrics strong small{font-size:12px}.resume{position:relative;isolation:isolate;border-radius:10px;overflow:hidden;background:#edf3eb url('ui/books-banner.png') center/cover no-repeat;padding:28px 30px;margin:0 0 26px;min-height:150px}.resume:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#edf3ebf2 0%,#edf3ebdd 37%,#edf3eb30 70%,#edf3eb77)}.resume>div{max-width:65%}.resume h2{font-size:23px;font-weight:600;line-height:1.5}.resume p{color:#667362;font-size:12px}.resume .eyebrow{font-size:11px;letter-spacing:1px;color:#63755f}.primary,.secondary{border-radius:7px;font-size:13px;min-height:42px;padding:11px 20px}.primary{background:#346f54}.text-button{font-size:12px}.section-heading h2{font-size:18px}.section-heading>span{font-size:11px}.subject-line{gap:18px;padding:18px 4px;min-height:77px}.subject-book{color:var(--subject-color);display:flex}.subject-book .icon{width:26px;height:29px;fill:color-mix(in srgb,var(--subject-color) 12%,transparent);stroke-width:1.7}.subject-name{width:170px;flex-shrink:0}.subject-name h3{font-size:15px}.subject-name p{font-size:10px;margin-top:5px}.shelf-progress{display:flex;align-items:center;flex:1;gap:18px;font-size:11px;color:var(--muted)}.shelf-progress>span{white-space:nowrap}.shelf-progress b{color:var(--ink);font-weight:500}.progress-track{height:5px;background:#e5ebe2;border-radius:8px;overflow:hidden;flex:1}.progress-track i{display:block;background:var(--green);height:100%;border-radius:inherit;max-width:100%}.shelf-progress small{min-width:30px}.shelf-actions{gap:18px;margin-left:20px}.home-bottom{gap:40px;margin-top:28px}.home-bottom>section{min-width:0}.saved-line{padding:14px 0}.saved-line span{font-size:13px}.saved-line small{font-size:11px}.heatmap{margin-top:18px;gap:5px}.heat{border-radius:3px}.tiny{font-size:11px}.empty-inline{font-size:13px}.library-heading{padding:24px 30px 21px;min-height:96px}.library-heading h1{font-size:28px;margin:0}.library-heading h1 small{font-size:12px;margin-left:15px}.library-actions{gap:22px}.filters{display:flex;gap:12px 18px;padding:15px 30px;border-top:1px solid var(--line);border-bottom:0;background:#fcfcfa}.filters label{font-size:10px;gap:3px;min-width:95px;max-width:165px}.filters select{font-size:12px;max-width:165px;border:0;padding-top:4px;padding-bottom:4px;min-height:28px}.filters label:has(select:disabled){opacity:.45}.filters label:has(#filter-pool),.filters label:has(#filter-order){display:none}.filters-open .filters label:has(#filter-pool),.filters-open .filters label:has(#filter-order){display:flex}.filters label[hidden]{display:none!important}.reset-filters{font-size:11px}.question-list{width:290px;padding:8px 12px 25px;background:#fdfdfa;scrollbar-width:thin;scrollbar-color:#ccd4c8 transparent;overscroll-behavior-y:contain}.group-title{padding:15px 12px 13px;font-size:11px;background:#fdfdfa;line-height:1.8;font-weight:500}.question-row{border-left:3px solid transparent;border-radius:5px;padding:14px 13px;margin-bottom:3px;gap:7px;border-bottom:1px solid #edf0e9}.question-row.active{background:var(--pale);border-left-color:var(--green)}.row-top{font-size:12px;font-weight:600}.row-preview{font-size:12px;color:#70796d;line-height:1.8}.row-history{font-size:10px;margin-top:0}.question-detail{background:#fff;scrollbar-width:thin;scrollbar-color:#ccd4c8 transparent}.detail-toolbar{padding:10px 25px;min-height:53px}.detail-content{max-width:1000px;padding:25px 34px 30px}.question-path{font-size:11px;margin-bottom:18px}.question-heading h2{font-size:24px}.tag-toggle{border-radius:20px;padding:6px 13px;font-size:11px}.question-history{margin:12px 0 27px;font-size:11px}.question-history strong{font-size:15px}.question-body{font-size:var(--reading-size);line-height:1.95}.options{gap:7px;margin-top:20px}.option{background:transparent;border-color:transparent;padding:10px 13px;font-size:var(--reading-size);align-items:baseline}.option-key{border-radius:50%;background:#edf3ed;color:#2f654a;min-width:32px;height:32px;display:flex;align-items:center;justify-content:center;font:600 16px/1 -apple-system,BlinkMacSystemFont,sans-serif}.option.chosen{background:#edf3eb;border-color:#aac3a4}.option.correct{background:#edf5e9;border-color:#bbd2b3}.option.wrong{background:#fff2e9;border-color:#e7cdb6}.solution{border-top:1px solid var(--line);background:linear-gradient(#f3f7f0,#f9fbf6);border-radius:7px;padding:20px 22px;font-size:calc(var(--reading-size) - 1px);color:#465542}.solution-heading h3{font-size:16px;color:#254f36}.study-tools{padding-top:15px;margin-top:26px;gap:20px}.compact-note summary{font-size:12px;color:#60765c}.compact-note summary:after{content:'⌄';margin-left:auto;color:#94a18c}.compact-note summary span{font-size:10px}.compact-note textarea{font-size:13px;min-height:70px}.question-footer{align-items:center;margin-top:28px;color:#929d89;font-size:10px}.question-footer .secondary{font-size:11px;min-height:34px;padding:7px 12px;gap:6px}.question-footer .icon{width:14px;height:14px}.touch-hint{display:none}.collection-back{display:inline-flex}.detail-position{margin-right:auto}.detail-toolbar:has(.collection-back) .detail-position{margin-left:auto;margin-right:20px}.collection-tree{width:240px;flex-shrink:0;overflow:auto;padding:24px 16px;border-right:1px solid var(--line)}.collection-tree h2{font-size:15px;margin:0 10px 20px}.collection-tree button{display:flex;align-items:center;text-align:left;width:100%;gap:8px;font-size:12px;padding:12px 10px;border-radius:5px;line-height:1.7}.collection-tree small{margin-left:auto;color:var(--muted);font-size:10px}.collection-tree .active{background:var(--pale);color:var(--green)}.collection-tree section{margin-top:9px}.collection-tree .tree-chapter{padding-left:25px;font-size:11px}.collection-tree .tree-section{padding-left:38px;font-size:10px;color:#7b8772}.collection-results{flex:1;width:auto;padding:9px 24px;background:var(--bg)}.collection-results .group-title{background:var(--bg);padding-left:0;border-bottom:1px solid var(--line);font-size:12px;padding-top:20px}.collection-row{display:flex;gap:15px;align-items:center;width:100%;padding:22px 0;text-align:left;border-bottom:1px solid var(--line)}.collection-row:hover{background:#f3f6ef}.collection-row-icon{color:#b69846;align-self:flex-start;margin-top:2px}.notes-library .collection-row-icon{color:var(--green)}.collection-row-main{display:flex;flex-direction:column;gap:9px;min-width:0;flex:1}.collection-row-main strong{font-size:13px;font-weight:600}.collection-row-main>span{font-size:12px;color:#65705e;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.8}.collection-row-main small{color:#919b88;font-size:10px;line-height:1.8}.collection-row-main em{font-style:normal;border-radius:12px;background:var(--pale);color:#53764a;font-size:10px;padding:3px 9px;margin-left:5px}.collection-history{font-size:11px;color:#7e8975;white-space:nowrap}.collection-row>.icon{width:14px;color:#9ca692}.note-excerpt{white-space:pre-wrap;line-height:1.8;font-size:13px;padding:12px 15px;background:#eef3e9;border-left:2px solid #abc09e;border-radius:0 4px 4px 0;color:#49613e;max-height:100px;overflow:hidden}.practice-library .question-list{width:245px;padding:25px 20px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-content:start;gap:12px 8px}.practice-nav-heading{grid-column:1/-1;margin-bottom:12px}.practice-nav-heading h2{font-size:16px;margin-bottom:17px}.practice-nav-heading p{font-size:9px;color:var(--muted);line-height:1.8;white-space:nowrap}.practice-nav-heading .result-dot{margin:0 3px 0 5px}.practice-number{aspect-ratio:1;min-width:0;border-radius:50%;background:#eff1eb;font-size:12px;color:#88917e;border:1.5px solid transparent}.practice-number.correct{color:#316344;background:#e2eddb}.practice-number.wrong{color:#a47731;background:#fbedd2}.practice-number.active{border-color:var(--green);color:var(--green);background:#fff;font-weight:600}.practice-library .list-sentinel,.practice-library .list-complete{grid-column:1/-1}.practice-library .options{gap:12px;margin-top:25px}.practice-library .option{border:1px solid #e0e6dc;border-radius:8px;padding:14px 18px;min-height:60px}.practice-library .option.chosen{border-color:#8daf80}.practice-library .submit-row{margin:30px 0;justify-content:center;flex-wrap:wrap}.practice-library #submit-answer{min-width:220px;font-size:15px}.practice-meter{display:flex;align-items:center;gap:15px;margin-top:10px;color:#929c86;font-size:10px}.practice-meter .progress-track{min-width:100px;max-width:260px}.practice-meter span{white-space:nowrap}.practice-library .library-heading{padding-top:18px;padding-bottom:17px}.practice-library .library-heading h1{font-size:23px}.practice-library>.filters{display:none}.practice-library.filters-open>.filters{display:flex}.practice-library .detail-content{max-width:960px;padding:28px 40px}.stats-layout{gap:40px}.stats-page .page-heading p{font-size:12px}.calendar-day{border-radius:6px;aspect-ratio:1.15}.daily-section{padding-left:26px}.subject-stat strong{font-size:13px}.subject-stat-progress{max-width:none;height:5px;border-radius:6px;overflow:hidden}.subject-stat-progress i{height:5px}.subject-stat>span:not(.subject-dot):not(.subject-stat-progress){font-size:12px}.subject-stat b{font-size:17px}.course-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:32px}.course-card{display:flex;flex-direction:column;border-bottom:1px solid var(--line);min-width:0}.course-cover{position:relative;min-height:195px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:24px;border-radius:8px;background:color-mix(in srgb,var(--subject-color) 9%,#f7f9f3);overflow:hidden}.course-cover:after{content:'';width:210px;height:210px;position:absolute;right:-70px;top:-70px;border:25px solid color-mix(in srgb,var(--subject-color) 8%,transparent);border-radius:50%}.course-cover>span{font-size:10px;letter-spacing:2px;color:var(--subject-color);margin-bottom:auto}.course-cover>.icon{position:absolute;right:30px;bottom:32px;width:72px;height:72px;stroke:var(--subject-color);opacity:.38;transform:rotate(-10deg);stroke-width:1}.course-cover h2{font-size:24px;color:var(--subject-color);margin-top:25px;padding-right:55px}.course-cover small{color:#7e8c76;font-size:11px;margin-top:10px}.course-info{padding:21px 2px 23px}.course-info h3{font-size:15px}.course-info p{font-size:12px;color:var(--muted);margin-top:8px;min-height:42px}.course-progress{display:flex;gap:15px;align-items:center;font-size:10px;color:var(--muted);margin-top:15px}.course-actions{display:flex;gap:25px;align-items:center;margin-top:20px}.course-actions .primary{font-size:11px;min-height:36px;padding:9px 15px}.lesson-toolbar{padding:20px 30px}.lesson-toolbar h1{font-size:23px}.lesson-toc{width:230px;background:#fafbf7}.lesson-toc .level-2,.lesson-toc .level-3{background:none}.lesson-toc .level-2{font-size:12px;color:#53664a}.lesson-toc .level-3{font-size:11px}.settings-page{max-width:960px;margin-left:0;padding-top:38px}.settings-intro{color:var(--muted);font-size:13px;margin-top:8px}.settings-section{padding:30px 0}.settings-section h2{font-size:18px}.settings-section p{font-size:13px}.font-setting{padding:15px 0;gap:24px}.font-setting input{width:min(350px,70%)}
@media(min-width:1400px){.page{padding-top:38px}.detail-content{padding:30px 45px}.question-list{width:325px}.collection-tree{width:260px}.library-heading{padding:26px 36px}.filters{padding-left:36px}}
@media(max-width:1150px) and (min-width:761px){.sidebar{width:185px;padding-left:10px;padding-right:10px}.brand{gap:8px}.brand strong{font-size:15px}.nav-item{font-size:13px}.page{padding:28px}.shelf-progress>span{display:none}.subject-name{width:155px}.shelf-actions .course-link{display:none}.topbar{padding:0 26px}.searchbox{width:280px}.question-list{width:235px}.question-row{padding:13px 10px}.detail-content{padding:24px}.question-heading{flex-direction:row}.question-heading h2{font-size:21px}.collection-tree{width:190px}.collection-results{padding-left:18px;padding-right:18px}.collection-history{font-size:10px}.practice-library .question-list{width:205px;grid-template-columns:repeat(4,minmax(0,1fr));padding:22px 15px}.practice-library .detail-content{padding:25px}.course-cover h2{font-size:20px}.home-bottom{gap:28px}.metrics>div{padding-left:20px}.shelf-progress .progress-track{min-width:30px}.shelf-actions{margin-left:5px;gap:14px}.filters label{max-width:135px;min-width:90px}.filters select{max-width:135px}}
@media(max-width:760px){.sidebar{width:245px;padding:26px 18px}.brand strong{font-size:17px}.sidebar .brandmark{width:35px;height:35px}.nav-item{font-size:14px}.topbar{height:61px;padding:0 17px;gap:10px}.searchbox{margin:0;border:0;background:transparent;padding:7px 0;flex:1;width:auto}.searchbox input{font-size:12px}.sync-state{font-size:9px}.page{padding:26px 22px 36px}.page-heading h1{font-size:27px;letter-spacing:-1px}.page-heading p{font-size:11px;margin-top:8px}.metrics{padding:26px 0;grid-template-columns:repeat(2,1fr);gap:23px 16px}.metrics>div{padding:0 0 0 17px;border-right:0;border-left:1px solid var(--line);gap:6px}.metrics>div:nth-child(odd){padding-left:0;border:0}.metrics strong{font-size:29px}.metrics strong small{font-size:11px;display:inline;margin-left:5px}.metrics>div>span{font-size:11px}.resume{padding:22px;min-height:187px;margin-bottom:25px;gap:18px;background-position:65% center;background-size:auto 100%;align-items:flex-start;flex-direction:column}.resume:before{background:linear-gradient(90deg,#edf3ebf5,#edf3ebbb 60%,#edf3eb66)}.resume>div{max-width:100%}.resume h2{font-size:19px;margin-top:7px}.resume p{font-size:11px}.resume .primary{font-size:11px;min-height:36px;padding:9px 15px}.section-heading h2{font-size:17px}.section-heading>span{font-size:9px}.subject-line{flex-wrap:wrap;gap:11px;position:relative;padding:19px 0}.subject-book .icon{width:23px;height:25px}.subject-name{width:auto;flex:1}.subject-name h3{font-size:14px}.subject-name p{font-size:9px}.shelf-progress{order:4;width:100%;flex:auto;padding-left:34px;margin-top:0;gap:12px}.shelf-progress>span{display:none}.shelf-progress .progress-track{height:3px}.shelf-progress small{font-size:9px;min-width:25px}.shelf-actions{margin-left:auto;gap:10px}.shelf-actions .course-link{display:none}.shelf-actions .text-button{font-size:10px;min-height:34px}.home-bottom{margin-top:26px;gap:26px;grid-template-columns:1fr}.heatmap{grid-template-columns:repeat(14,1fr)}.tiny{font-size:10px}.library-heading{padding:21px 22px;min-height:85px;gap:9px}.library-heading h1{font-size:24px}.library-heading h1 small{font-size:10px;margin-left:9px}.library-actions{gap:13px}.library-actions .primary{font-size:11px;padding:10px 12px;min-height:38px}.library-actions .text-button{font-size:11px}.library>.filters{display:none}.library.filters-open>.filters{display:flex}.filters{padding:14px 22px;gap:12px 20px;max-height:40dvh;overflow:auto;border-top:1px solid var(--line)}.filters label{width:calc(50% - 10px);max-width:none;min-width:0;font-size:10px}.filters select{max-width:100%;font-size:12px;width:100%}.filters-open .filters label:has(#filter-order),.filters-open .filters label:has(#filter-pool){display:flex}.question-list{width:100%;padding:3px 12px 22px}.group-title{padding:15px 12px 10px;font-size:11px}.question-row{padding:16px 12px;border-radius:0}.question-row.active{border-left-color:transparent;background:transparent}.row-top{font-size:13px}.row-preview{font-size:12px}.row-history{font-size:10px}.detail-toolbar{padding:9px 17px;min-height:51px}.detail-content,.practice-library .detail-content{padding:23px 22px 25px}.detail-position{margin-left:auto;margin-right:12px;font-size:12px}.question-path{font-size:10px;margin-bottom:17px}.question-heading{flex-direction:row;align-items:center;gap:10px}.question-heading h2{font-size:22px}.fixed-tags{gap:5px}.tag-toggle{padding:6px 10px;font-size:10px}.question-history{font-size:10px;gap:7px 10px;margin:12px 0 24px}.question-history strong{font-size:14px}.option{font-size:calc(var(--reading-size) - 1px);padding:9px 8px;gap:12px}.option-key{min-width:29px;height:29px;font-size:15px}.question-footer{gap:8px;margin-top:25px}.question-footer .secondary{font-size:10px;padding:7px 9px;min-height:35px}.touch-hint{display:inline;font-size:9px}.desktop-hint{display:none}.solution{padding:17px 16px;font-size:calc(var(--reading-size) - 1px)}.solution h3{font-size:15px}.study-tools{gap:16px;margin-top:24px}.compact-note summary{font-size:12px}.compact-note summary span{font-size:9px}.mastery-label{font-size:9px}.collection-body{flex-direction:column}.collection-tree{width:100%;max-height:25dvh;border-right:0;border-bottom:1px solid var(--line);padding:10px 15px;flex-shrink:0;overflow:auto}.collection-tree h2{display:none}.collection-tree button{font-size:12px;padding-top:8px;padding-bottom:8px}.collection-tree section{margin-top:0}.collection-tree section:has(.tree-chapter){border-left:2px solid var(--pale)}.collection-tree .tree-section{font-size:10px}.collection-results{flex:1;width:100%;padding:0 22px 25px;min-height:0}.collection-row{gap:11px;padding:18px 0;align-items:flex-start;flex-wrap:wrap}.collection-row-main{flex-basis:calc(100% - 70px);gap:7px}.collection-row-main strong{font-size:12px}.collection-row-main>span{font-size:11px}.collection-row-main small{font-size:9px}.collection-history{font-size:10px;margin-left:29px}.collection-row>.icon{margin-left:auto;width:13px;align-self:center}.collection-row-icon .icon{width:17px}.note-excerpt{font-size:12px;padding:10px 12px}.mobile-detail .collection-tree{display:none}.practice-library .question-list{display:none;width:100%;padding:20px;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}.practice-library .question-detail{display:block}.practice-library:not(:has(.question-detail)) .question-list{display:grid}.is-practice:not(.mobile-detail) .practice-library .question-list{display:grid}.is-practice:not(.mobile-detail) .practice-library .question-detail{display:none}.practice-nav-heading p{font-size:10px}.practice-number{font-size:12px}.practice-library .option{padding:12px 13px;min-height:55px}.practice-library #submit-answer{min-width:185px;font-size:13px}.practice-library .submit-row>span{font-size:10px}.practice-meter{font-size:9px;gap:10px}.practice-meter .progress-track{min-width:65px}.stats-layout{padding-top:28px;gap:27px;grid-template-columns:1fr}.calendar-day{aspect-ratio:1.1;min-height:36px;padding:6px 0}.daily-section{border-left:0;padding:25px 0 0}.daily-rate strong{font-size:30px}.subject-stat strong{font-size:12px}.subject-stat>span:not(.subject-dot):not(.subject-stat-progress){font-size:10px}.subject-stat b{font-size:14px}.course-grid{grid-template-columns:1fr;margin-top:25px;gap:25px}.course-cover{min-height:175px;padding:23px}.course-cover h2{font-size:25px}.course-info{padding-top:17px}.course-info p{min-height:0}.course-actions{gap:22px}.lesson-toolbar{padding:17px 22px;gap:10px}.lesson-toolbar h1{font-size:19px}.lesson-toc{width:auto;max-width:85%;background:#f9faf5}.lesson-toolbar>div:last-child{gap:14px}.settings-page{padding-top:29px}.settings-page>h1{font-size:28px}.settings-intro{font-size:12px}.settings-section{padding:26px 0}.settings-section h2{font-size:17px}.settings-section p{font-size:12px}.settings-actions{gap:12px}.settings-actions .primary,.settings-actions .secondary{font-size:12px}.font-setting{padding-top:12px;font-size:12px}.font-setting input{width:70%}.diagram-dialog .diagram-scroll img{min-width:0;width:auto;max-width:none}.question-body pre,.solution pre{font-size:12px;padding:12px}.question-body table,.solution table{display:block;max-width:100%;overflow:auto}.question-body math,.solution math{max-width:100%;overflow:auto}#mobile-nav{background:#fafaf7f5}#mobile-nav button{font-size:10px}.empty-inline{font-size:12px}}
@media(max-width:360px){.page{padding-left:18px;padding-right:18px}.page-heading h1{font-size:25px}.detail-content,.practice-library .detail-content{padding-left:19px;padding-right:19px}.library-heading{padding-left:19px;padding-right:19px}.library-heading h1{font-size:22px}.question-heading h2{font-size:20px}.tag-toggle{padding:5px 8px}.subject-name h3{font-size:13px}.shelf-actions .text-button{font-size:9px}.collection-results{padding-left:18px;padding-right:18px}.practice-library .question-list{grid-template-columns:repeat(6,minmax(0,1fr))}}
.lesson-toc button.current{background:var(--pale);color:var(--green);border-radius:5px}.question-body table,.solution table{max-width:100%;border-collapse:collapse}.question-body td,.question-body th,.solution td,.solution th{padding:6px 9px;border:1px solid var(--line)}
