:root{--paper:#f7f6f2;--white:#fff;--ink:#272d40;--muted:#737782;--line:#e3e3dd;--accent:#554caf;--accent-dark:#40378d;--soft:#efedf8;--serif:Georgia,"Times New Roman",serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none;font-size:15px;line-height:1.6}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a:hover{color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b5aee7;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}h1{font-size:44px;line-height:1.15;margin-bottom:16px}h2{font-size:27px;line-height:1.25;margin-bottom:12px}h3{font-weight:600;font-size:17px;margin-bottom:8px}p{margin-bottom:16px}.container{max-width:1220px;margin:0 auto;padding-left:36px;padding-right:36px}.muted,.field-help{color:var(--muted)}.small,.field-help{font-size:12px}.field-help{display:block;line-height:1.5;margin:6px 0 0}.field-help a,.prose a{color:var(--accent);text-decoration:underline}.eyebrow{font-size:10px;letter-spacing:.16em;font-weight:650;color:var(--accent);margin-bottom:16px}.local-banner{min-height:28px;padding:5px 28px;font-size:11px;color:#74727f;background:#eeecf3;display:flex;align-items:center;justify-content:center;gap:8px}.local-banner a{margin-left:18px;text-decoration:underline}.local-dot{width:5px;height:5px;background:#8176b7;border-radius:50%}.header{min-height:112px;display:flex;justify-content:space-between;align-items:center;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand img{border-radius:50%}.brand>span{font-family:var(--serif);font-size:21px;letter-spacing:-.02em;line-height:1.3}.brand small{display:block;font-family:var(--sans);font-size:8px;color:var(--muted);letter-spacing:.14em;margin-top:5px}.header nav{display:flex;align-items:center;gap:26px;font-size:12px;flex-wrap:wrap}.header nav>a[aria-current]{color:var(--accent);position:relative}.header nav>a[aria-current]:after{position:absolute;content:"";height:2px;background:var(--accent);bottom:-12px;left:0;right:0}.profile-link{display:flex;align-items:center;gap:7px;max-width:160px}.profile-link img,.profile-link>span:first-child{width:29px;height:29px;border-radius:50%;background:#e7e3f2;display:grid;place-items:center;object-fit:cover;color:var(--accent);flex-shrink:0}.profile-link>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;border:1px solid var(--accent);border-radius:6px;background:var(--accent);color:#fff;font-size:13px;font-weight:550;padding:12px 20px;min-height:45px;transition:background .15s}.button:hover{background:var(--accent-dark);color:#fff}.button.secondary{background:transparent;border-color:#cbcbd2;color:var(--ink)}.button.secondary:hover{background:#eae8ef}.button.small{padding:8px 13px;min-height:36px;font-size:12px}.button.full{width:100%}.button-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.text-link{border:0;background:transparent;padding:0;color:var(--accent);font-size:12px;text-align:left;text-decoration:none}.text-link:hover{text-decoration:underline}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:55px 0 26px}.page-heading .muted{font-size:14px;margin:0}.page-heading h1{font-size:39px}.stats{display:flex;gap:52px;align-items:center;padding:24px 0 30px;border-bottom:1px solid var(--line)}.stats>div{min-width:110px}.stats strong{display:block;font-family:var(--serif);font-size:38px;line-height:1.2;font-weight:400}.stats span{font-size:11px;color:var(--muted)}.stats>p{margin:0 0 0 auto;font-family:var(--serif);font-size:19px;color:#94909b;font-style:italic;max-width:270px;line-height:1.45}.source-counts{display:flex;gap:8px;flex-wrap:wrap;padding-top:20px}.source-counts button{border:1px solid var(--line);background:#fff;border-radius:5px;font-size:11px;padding:6px 10px}.source-counts b{margin-left:8px;color:var(--accent)}.collection{padding-top:35px;min-height:420px}.section-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.section-label h2{font-size:23px;margin:0}.filters{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.15fr 1fr;gap:13px;padding:20px;background:#efefea;border:1px solid #e6e6df;border-radius:7px}label{display:block;font-size:12px;font-weight:550;line-height:1.5}input:not([type=checkbox]):not([type=file]),select,textarea{display:block;width:100%;border:1px solid #dcdce0;border-radius:5px;background:#fff;padding:11px 12px;margin-top:7px;line-height:1.4;font-size:13px;min-width:0}select{padding-right:25px}.filters input[type=search],.filters select{height:41px;padding-block:0}input::placeholder,textarea::placeholder{color:#a1a1a8}input:disabled{background:#f1f1ee;color:var(--muted)}textarea{resize:vertical}.list-tools{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:20px 0 15px;font-size:11px;color:var(--muted)}.list-tools label{display:flex;align-items:center;gap:5px;margin-left:auto;font-size:11px}.list-tools select{margin:0;width:auto;border:0;background:transparent;font-size:11px;padding:5px}.list-tools .text-link{font-size:11px}.problem-table{border-top:1px solid var(--line)}.problem-row{display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--line);padding:19px 6px;transition:background .15s}.problem-row:hover{background:#efedf5}.problem-name{flex:1;min-width:0}.problem-name strong{display:block;font-family:var(--serif);font-size:21px;font-weight:400;letter-spacing:-.025em}.problem-name small{font-size:11px;color:var(--muted)}.problem-name small span{margin:0 5px;color:#b5b5b5}.level-label{font-size:11px;color:var(--muted)}.language-squares{display:flex;gap:6px}.lang-square{display:flex;align-items:center;justify-content:center;position:relative;width:36px;height:36px;border-radius:5px;font-size:10px;letter-spacing:.03em;color:#293b56;border:1px solid #00000008}.lang-square b{position:absolute;right:2px;top:0;font-size:10px}.level-1{background:#dbeefa}.level-2{background:#c9dff6}.level-3{background:#c6cbed}.level-4{background:#aba1df;color:#29244f}.level-5{background:#7865b7;color:#fff}.lang-square.absent{background:transparent;border:1px dashed #d4d3da;color:#aaa}.status{display:inline-block;padding:4px 9px;border-radius:4px;font-size:10px;background:#eeede9;color:#737378;white-space:nowrap;align-self:center}.status.submitted{color:#70551f;background:#f5ead1}.status.published,.status.solved{color:#426d58;background:#e5eee5}.status.returned{color:#a35f3c;background:#f9e9dd}.status.bookmarked{color:#615597;background:#eae4f4}.status.attempted{color:#43788b;background:#e4eff1}.row-arrow{color:#9a95b6}.empty{padding:56px 24px 62px;min-height:295px;text-align:center;border:1px dashed #dcd9e4;background:linear-gradient(140deg,#fcfbff55,#fff4);border-radius:8px}.empty-symbol{display:grid;place-items:center;width:46px;height:46px;border:1px solid #ddd9e9;color:#9186b4;background:#f0edf6;border-radius:50%;font-family:var(--serif);font-size:25px;margin:0 auto 17px}.empty h2{font-size:28px;margin-bottom:10px}.empty p{font-size:13px;max-width:440px;margin:0 auto 24px;color:var(--muted)}.footer{display:flex;gap:24px;border-top:1px solid var(--line);margin-top:70px;padding-top:24px;padding-bottom:32px;color:#8a8a90;font-size:10px}.footer>span{margin-right:auto}.footer-dot{padding:0 7px}.welcome{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:55px;padding:80px 0 70px}.welcome h1{font-size:58px;line-height:1.14}.lead{font-size:15px;color:var(--muted);line-height:1.85;margin:24px 0 28px}.welcome .small{margin-top:18px}.hero-logo{text-align:center;position:relative}.hero-logo img{max-width:100%;height:auto;mix-blend-mode:multiply;border-radius:50%}.hero-logo span{display:block;font-family:var(--serif);font-style:italic;color:#8e899e;font-size:13px;margin-top:20px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;border-top:1px solid var(--line);padding:35px 0 10px}.principles article>span{color:#a39bbd;font-family:var(--serif);font-size:18px}.principles h3{font-family:var(--serif);font-weight:400;font-size:23px;margin-top:12px}.principles p{font-size:12px;color:var(--muted)}.auth-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:100px;max-width:960px;margin:65px auto}.auth-layout>aside{padding-top:30px}.auth-layout>aside>img{mix-blend-mode:multiply;border-radius:50%;margin-bottom:26px}.auth-layout h2{font-size:34px}.auth-layout aside>p:last-child{font-size:13px;max-width:320px}.auth-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:34px}.auth-card h1{font-size:29px}.auth-card>p{font-size:12px}.auth-card form>label{margin:18px 0 0}.auth-card .button{margin-top:23px}.check{display:flex!important;align-items:flex-start;gap:9px;font-weight:400;font-size:12px;line-height:1.6}.check input{margin:3px 0 0;accent-color:var(--accent);width:15px;height:15px;flex-shrink:0}.check a{text-decoration:underline}.auth-links{display:grid;gap:9px;font-size:11px;margin-top:24px;color:var(--accent)}.auth-links p{margin:12px 0 0;color:var(--muted)}.auth-links p a{color:var(--accent)}.notice{padding:14px 17px;border-radius:6px;font-size:12px;margin-bottom:20px;line-height:1.6}.notice:empty{display:none}.notice.error{background:#f8e9e5;color:#a03a2e;border:1px solid #eccbc4}.notice.success{background:#e7f1e9;color:#3d694c;border:1px solid #c9dfce}.notice.soft{background:#efedf8;color:#675e8f;border:1px solid #dfdaef}.notice a{text-decoration:underline}.notice p:last-child{margin-bottom:0}.loading{color:var(--muted);padding:50px 0}.reader-heading{display:flex;gap:15px;align-items:center;margin:38px 0 25px;font-size:12px;flex-wrap:wrap}.reader-heading .text-link{margin-right:auto}.badge{background:#eae6f2;color:#6b5e98;font-size:10px;padding:4px 9px;border-radius:4px}.reading-card{max-width:890px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:45px 60px;margin:0 auto}.reader-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.reader-top .eyebrow{margin:0}.reading-card h1{font-size:38px;line-height:1.3;margin-bottom:35px}.math-content{font-family:var(--serif);font-size:19px;line-height:1.85;overflow-wrap:anywhere}.math-content .katex{font-size:1.04em}.math-content .katex-display{overflow-x:auto;overflow-y:hidden;padding:10px 0}.math-content figure{max-width:100%}.math-content figcaption{font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:10px}.math-content img{object-fit:contain;max-height:600px}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:35px}.tags span{font-size:10px;background:#f1f0ed;padding:4px 9px;border-radius:4px}.reader-foot{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:20px;margin-top:25px;font-size:11px;color:var(--muted)}.reader-foot strong{font-weight:500;color:var(--ink)}.reader-foot a{color:var(--accent)}.segmented{display:flex;border:1px solid #dcd9e5;border-radius:6px;background:#fff;padding:3px;gap:3px}.segmented button{background:transparent;border:0;border-radius:4px;font-size:11px;padding:7px 14px;color:var(--muted)}.segmented button[aria-pressed=true]{background:var(--soft);color:var(--accent);font-weight:600}.progress-card{max-width:890px;display:flex;justify-content:space-between;align-items:center;gap:25px;margin:30px auto 0}.progress-card h2{font-size:22px;margin-bottom:5px}.progress-card p{font-size:11px;margin:0}.editor-meta{display:grid;grid-template-columns:1fr 1fr 1.4fr 1.4fr;gap:15px;margin:20px 0 27px}.editor-panel{background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden}.editor-toolbar{padding:14px 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.import-button{font-size:11px;color:var(--accent);cursor:pointer}.import-button input,.upload-label input{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.import-button:focus-within,.upload-label:focus-within{outline:3px solid #b5aee7;outline-offset:3px}.editor-title{padding:20px 24px}.editor-title input{font-family:var(--serif);font-size:23px;padding:12px}.editor-columns{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.latex-pane,.preview-pane{padding:21px 24px}.latex-pane{border-right:1px solid var(--line);background:#fcfcfa}.latex-pane>label,.preview-pane>.eyebrow{font-size:9px;letter-spacing:.14em;color:var(--muted);font-weight:600;margin-bottom:15px}.latex-pane textarea{min-height:350px;background:transparent;resize:vertical;border:0;border-radius:0;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.85}.preview-pane .math-content{font-size:17px}.preview-placeholder{font-family:var(--serif);font-style:italic;color:#b5b2ba;font-size:17px}.approval{padding:16px 24px;background:#f3f0fa;border-top:1px solid #e9e4f4}.approval .field-help{padding-left:24px;font-size:11px}.attachments{display:grid;grid-template-columns:1fr 1.6fr;gap:40px;padding:27px 0;border-bottom:1px solid var(--line)}.attachments h2{font-size:23px;margin-bottom:6px}.attachments .muted{font-size:11px;margin-bottom:16px}.upload-label{cursor:pointer}.asset-list{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.asset{display:flex;gap:12px;align-items:center;padding:10px;background:#fff;border:1px solid var(--line);border-radius:6px;max-width:100%}.asset img{height:65px;width:80px;object-fit:contain}.asset strong{display:block;font-size:11px;overflow-wrap:anywhere}.asset .text-link{font-size:10px}.review-note{margin-top:24px}.save-bar{display:flex;gap:20px;align-items:center;justify-content:space-between;margin-top:28px;padding:22px 0;border-bottom:1px solid var(--line)}.save-bar>span{font-size:10px;color:var(--muted)}.editor-bottom{display:flex;justify-content:space-between;padding:22px 0}.editor-bottom .text-link{font-size:11px}.danger{color:#b64e48!important}.button.danger{border-color:#d5b5b2;background:transparent}.history-entry{border-bottom:1px solid var(--line);padding:16px 0;font-size:12px}.history-entry summary{cursor:pointer}.history-entry p{margin-top:15px}.history-entry h3{font-size:13px}.profile-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:28px}.panel{background:#fff;border:1px solid var(--line);border-radius:8px;padding:30px}.panel form>label{margin-bottom:20px}.avatar-editor{display:flex;align-items:center;gap:20px;margin:25px 0}.avatar-editor>img,.avatar-editor>span{width:76px;height:76px;object-fit:cover;border-radius:50%;background:#eae5f4;color:var(--accent);display:grid;place-items:center;font-size:27px}.account-panel>p{font-size:13px}.account-panel>a{display:block;color:var(--accent);font-size:12px;margin:30px 0 22px}.delete-account{margin-top:35px;border-top:1px solid var(--line);padding-top:20px;font-size:11px;color:var(--muted)}.delete-account summary{cursor:pointer}.delete-account p,.delete-account button{margin-top:15px}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.help-grid .panel p,.help-grid ol{font-size:13px}.help-grid h2{font-size:25px}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f6f5f8;border:1px solid #eae7ef;border-radius:5px;padding:18px;font-size:11px;line-height:1.8;tab-size:2;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em;background:#f1eef6;padding:2px 4px;border-radius:3px}.prose{max-width:850px;padding:40px}.prose h2{margin-top:25px}.prose h2:first-child{margin-top:0}.prose p{font-size:14px}.mailbox{display:grid;gap:20px}.mailbox h2{font-size:23px}.mailbox pre a{color:var(--accent);text-decoration:underline}.skip-link{position:absolute;left:12px;top:-100px;background:#fff;padding:10px;z-index:20}.skip-link:focus{top:8px}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#303044;color:#fff;padding:12px 22px;border-radius:7px;font-size:12px;z-index:50;box-shadow:0 5px 25px #2222;max-width:calc(100% - 32px);transition:opacity .15s,transform .15s}#toast.visible{opacity:1;transform:translate(-50%)}@media(min-width:1500px){.container{max-width:1320px}.welcome{padding-top:100px;padding-bottom:100px}}@media(max-width:1000px){.container{padding-left:25px;padding-right:25px}.header{gap:20px}.brand>span{font-size:18px}.header nav{gap:17px;font-size:11px}.brand img{width:43px;height:43px}.welcome{gap:30px}.welcome h1{font-size:45px}.auth-layout{gap:50px}.filters{grid-template-columns:repeat(4,1fr)}.search-label{grid-column:1/-1}.editor-meta{grid-template-columns:1fr 1fr}.stats{gap:30px}.problem-row{gap:14px}.save-bar{flex-wrap:wrap}}@media(max-width:720px){.container{padding-left:20px;padding-right:20px}.local-banner{font-size:9px;padding:6px 10px;flex-wrap:wrap;gap:5px}.local-banner a{margin-left:6px}.header{flex-direction:column;align-items:flex-start;gap:18px;padding-top:19px;padding-bottom:20px}.brand>span{font-size:21px}.brand img{width:43px;height:43px}.header nav{width:100%;gap:19px;justify-content:flex-start;font-size:11px}.header nav .profile-link{margin-left:auto;max-width:100px}.profile-link>span:last-child{display:none}.header nav>a[aria-current]:after{bottom:-8px}.page-heading{padding-top:34px;display:block}.page-heading h1{font-size:33px}.page-heading>.button,.page-heading>.status{margin-top:20px}.page-heading .muted{font-size:12px}.stats{padding:15px 0 24px;gap:18px;flex-wrap:wrap}.stats>div{min-width:80px}.stats strong{font-size:32px}.stats span{font-size:10px}.stats>p{font-size:16px;width:100%;max-width:none;margin-left:0}.collection{padding-top:27px}.filters{grid-template-columns:1fr 1fr;padding:14px;gap:12px}.filters label{font-size:10px}.filters input[type=search],.filters select{font-size:12px;height:38px;padding:0 10px}.list-tools{gap:8px;flex-wrap:wrap}.list-tools .text-link{margin-left:auto}.problem-row{gap:10px;flex-wrap:wrap;position:relative;padding:17px 0}.problem-name{flex-basis:calc(100% - 100px)}.problem-name strong{font-size:20px}.problem-name small{font-size:10px}.level-label,.row-arrow{display:none}.problem-row .status{margin-top:-7px}.language-squares{margin-left:auto}.lang-square{width:32px;height:32px;font-size:9px}.empty{padding:36px 16px}.empty h2{font-size:25px}.empty p{font-size:12px}.footer{margin-top:45px;flex-wrap:wrap;gap:12px 20px;font-size:9px}.footer>span{flex-basis:100%}.welcome{grid-template-columns:1fr;padding:43px 0 38px;gap:25px}.welcome h1{font-size:43px}.welcome .lead{font-size:13px}.hero-logo img{width:210px}.hero-logo span{margin-top:12px;font-size:12px}.principles{grid-template-columns:1fr;gap:18px}.principles article{padding-bottom:10px}.principles h3{margin-top:5px}.auth-layout{display:block;margin:30px auto}.auth-layout>aside{display:none}.auth-card{padding:25px}.auth-card h1{font-size:28px}.reading-card{padding:25px 23px}.reading-card h1{font-size:29px;margin-bottom:25px}.reader-heading{font-size:10px;gap:8px;margin-top:25px}.reader-heading .text-link{flex-basis:100%;margin-bottom:8px}.math-content{font-size:18px}.reader-foot{flex-wrap:wrap;font-size:10px}.progress-card{display:block}.progress-card .segmented{margin-top:15px}.segmented button{padding:7px 12px}.progress-buttons button{flex:1;padding:9px 4px;font-size:10px}.editor-meta{gap:12px}.editor-meta label{font-size:10px}.editor-meta input,.editor-meta select{font-size:12px}.editor-toolbar{padding:13px 14px;gap:8px}.editor-toolbar .segmented button{font-size:10px;padding:7px 10px}.import-button{font-size:10px}.editor-title{padding:15px}.editor-title input{font-size:21px}.editor-columns{grid-template-columns:1fr}.latex-pane{border-right:0;border-bottom:1px solid var(--line)}.latex-pane,.preview-pane{padding:20px}.latex-pane textarea{min-height:280px}.preview-pane{min-height:180px}.approval{padding:15px}.approval .check{font-size:11px}.attachments{grid-template-columns:1fr;gap:15px;padding:24px 0}.attachments .muted{font-size:11px}.save-bar .button-row{gap:10px}.save-bar .button{font-size:11px;padding:11px 14px}.save-bar>.button-row{width:100%}.save-bar .text-link{padding:8px 0}.profile-grid,.help-grid{grid-template-columns:1fr;gap:20px}.panel{padding:23px}.avatar-editor{gap:14px}.avatar-editor>img,.avatar-editor>span{width:60px;height:60px}.prose{padding:25px}.prose p{font-size:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}.pagination{display:flex;justify-content:center;align-items:center;gap:24px;padding:24px 0;font-size:12px}.source-details{margin:0 0 24px;padding:16px 20px;border:1px solid var(--line);border-radius:6px;font-size:12px}.source-details summary{cursor:pointer;font-weight:600}.source-details p{margin:14px 0}.welcome .button-row{margin-top:28px}.simple-header{min-height:96px;gap:24px}.simple-header .brand{flex:0 0 auto}.simple-header nav{margin-left:auto;gap:28px}.simple-header .brand img{width:58px;height:58px}.landing{min-height:calc(100vh - 96px)}.simple-header nav>a[aria-current]:after{bottom:-8px}.account-menu{position:relative;font-size:12px}.account-menu summary{cursor:pointer;list-style:none;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:12px 0}.account-menu summary::-webkit-details-marker{display:none}.account-menu>div{position:absolute;right:0;top:100%;z-index:10;background:#fff;border:1px solid var(--line);box-shadow:0 8px 24px #24203918;border-radius:7px;min-width:175px;padding:7px}.account-menu a,.account-menu button{display:block;width:100%;text-align:left;padding:10px;border:0;background:transparent;font-size:12px;border-radius:4px}.account-menu a:hover,.account-menu button:hover{background:#f1eef6}.manifesto{padding:32px 0 60px;font:18px/1.6 var(--serif)}.language-tabs{flex-wrap:wrap;gap:4px}.language-tabs button{overflow-wrap:anywhere}.language-management{padding:16px 28px;display:flex;justify-content:space-between;gap:16px;align-items:start;border-bottom:1px solid var(--line)}.language-management summary{cursor:pointer;font-size:12px;color:var(--accent)}.language-management form{display:flex;align-items:end;gap:12px;padding-top:14px}.language-management form label{min-width:190px}.language-management .text-link{padding-top:2px}.editor-title #language-name{font-family:var(--sans);font-size:13px;max-width:320px;margin-bottom:18px}.reader-language{min-width:170px}.reader-language select{margin-top:3px}.math-content[dir=auto]{unicode-bidi:plaintext}.progress-controls{display:flex;align-items:start;justify-content:space-between;gap:24px;margin:26px 0}.control-label{display:block;font-size:11px;color:var(--muted);margin-bottom:8px}.progress-filters{grid-template-columns:1.3fr 1fr 1fr 1.3fr}.progress-legend{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-size:11px;color:var(--muted);padding:18px 0}.level-key{display:inline-grid;place-items:center;width:23px;height:23px;border-radius:4px;color:#262338;border:1px solid #0001}.progress-legend>span:nth-last-of-type(1){margin-left:12px}.progress-legend .text-link{margin-left:auto}.progress-group{padding:23px 0;border-top:1px solid var(--line)}.progress-group-heading{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}.progress-group-heading h2{font-size:25px;margin:0 auto 0 0}.progress-group-heading>span{font-size:12px;color:var(--muted)}.progress-group-heading progress{width:95px;height:7px;border:0;border-radius:10px;accent-color:var(--accent)}progress::-webkit-progress-bar{background:#e5e2ed;border-radius:10px}progress::-webkit-progress-value{background:var(--accent);border-radius:10px}.problem-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:12px}.problem-tile{display:flex;flex-direction:column;gap:13px;min-height:138px;padding:16px;border:1px solid #0001;border-radius:8px;color:#252035;transition:box-shadow .15s,transform .15s}.problem-tile:hover{color:#252035;box-shadow:0 3px 12px #2420391c;transform:translateY(-2px)}.problem-tile.is-solved{border-color:#68538d70}.tile-top{display:flex;justify-content:space-between;gap:10px;font-size:10px}.tile-status{font-weight:650}.problem-tile>strong{font:20px/1.25 var(--serif);overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.problem-tile>small{font-size:10px;line-height:1.5;margin-top:auto}.more-problems{display:block;margin:18px auto 0}.problem-tile.level-1,.level-key.level-1{background:#e4f2fb}.problem-tile.level-2,.level-key.level-2{background:#dfeaf9}.problem-tile.level-3,.level-key.level-3{background:#e4e1f7}.problem-tile.level-4,.level-key.level-4{background:#dacbef}.problem-tile.level-5,.level-key.level-5{background:#c9a9e3}@media(max-width:720px){.simple-header{flex-direction:row;align-items:center;gap:15px;min-height:84px;padding-top:14px;padding-bottom:14px}.simple-header .brand img{width:44px;height:44px}.simple-header nav{gap:14px;font-size:11px;justify-content:flex-end}.simple-header nav .button{font-size:11px;min-height:32px;padding:7px 10px}.simple-header .account-menu{font-size:11px}.account-menu summary{max-width:95px;padding:5px 0}.landing{min-height:calc(100vh - 84px)}.manifesto{font-size:17px}.progress-controls{flex-wrap:wrap;gap:18px}.progress-controls .segmented button{font-size:12px;padding:9px 13px}.progress-filters{grid-template-columns:1fr 1fr}.progress-filters label:first-child{grid-column:1/-1}.progress-legend .text-link{margin-left:0}.progress-group-heading{gap:8px}.progress-group-heading h2{font-size:23px;flex:1 0 60%}.problem-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.problem-tile{padding:13px;min-height:142px}.problem-tile>strong{font-size:18px}.tile-top{font-size:9px;gap:5px;flex-wrap:wrap}.language-management{padding:16px;flex-wrap:wrap}.language-management form,.editor-toolbar{flex-wrap:wrap}.language-tabs{max-width:100%}.language-tabs button{font-size:12px!important}.language-management form label{min-width:150px;max-width:100%}}.progress-page .page-heading{padding:30px 0 12px}.progress-page .page-heading h1{margin-bottom:0}.progress-page .stats{padding:14px 0 20px}.progress-page .stats strong{font-size:32px}.progress-page .progress-controls{margin:20px 0}.progress-page .progress-group{padding:18px 0}@media(max-width:720px){.progress-page .page-heading{padding-top:24px}.progress-page .progress-controls{margin:16px 0;gap:12px}.progress-page .progress-filters label:first-child{grid-column:auto}.progress-page .progress-filters{padding:12px;gap:10px}.progress-page .stats{gap:16px;padding:10px 0 18px}.progress-page .stats strong{font-size:28px}}.simple-header{flex-wrap:wrap}.simple-header .brand{gap:12px}.simple-header .brand>span{font-size:18px;white-space:nowrap}.landing{min-height:0}.page-heading h1{font-size:30px}.reading-card h1{font-size:29px}.auth-card h1{font-size:26px}.math-content{font-size:17px}.problem-name strong{font-size:18px}.problem-tile>strong{font-size:18px}.progress-group-heading h2{font-size:22px}.stats strong,.progress-page .stats strong{font-size:29px}@media(max-width:720px){.simple-header{gap:12px}.simple-header nav{margin-left:0;justify-content:flex-start;width:100%}.simple-header .brand>span{font-size:17px}.page-heading h1{font-size:26px}.reading-card h1{font-size:25px}.auth-card h1{font-size:24px}.problem-name strong,.problem-tile>strong{font-size:17px}.progress-group-heading h2{font-size:20px}.stats strong,.progress-page .stats strong{font-size:26px}}.review-row{border-bottom:1px solid var(--line)}.review-row .problem-row{border-bottom:0}.reference-links{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:0 6px 14px;font-size:11px;color:var(--muted)}.reference-links a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.reference-links-detail{padding:15px 18px;margin-bottom:18px;background:var(--soft);border-radius:6px;font-size:12px}.reference-context{font-size:12px;color:var(--muted)}.reference-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:14px;border:1px solid var(--line);border-radius:7px;background:#fff}.reference-page-form{display:flex;align-items:center;gap:8px;font-size:12px}.reference-page-form label{display:flex;align-items:center;gap:7px}.reference-page-form input{width:72px!important;margin:0!important;padding:8px!important}.reference-status{font-size:12px;color:var(--muted);margin:15px 0}.reference-retry{margin-bottom:15px}.reference-sheet{width:100%;overflow:auto;background:#e9e8e4;border:1px solid var(--line);min-height:180px;padding:12px}.reference-sheet canvas{display:block;margin:auto;background:#fff;max-width:none}.reference-file{margin-left:auto}.reference-controls button:disabled{cursor:default}.reference-controls+button[hidden],.reference-retry[hidden]{display:none}@media(max-width:720px){.reference-links{padding-left:0;gap:7px 12px}.reference-links-detail{padding:12px}.reference-controls{padding:10px;gap:8px}.reference-page-form{order:-1;flex-basis:100%}.reference-file{margin-left:0}.reference-links a{padding:4px 0}}.progress-controls>div{min-width:0}.progress-status-options{display:flex;flex-wrap:wrap;gap:3px;max-width:100%}.progress-status-options button{white-space:nowrap}.progress-page .problem-grid{grid-template-columns:repeat(auto-fill,minmax(152px,1fr));gap:8px}.progress-page .problem-tile{min-height:94px;padding:10px;gap:6px;border-radius:6px}.progress-page .problem-tile>strong{font-size:15px;line-height:1.25;-webkit-line-clamp:2}.progress-page .tile-top{font-size:10px;gap:5px;flex-wrap:wrap}.progress-page .problem-tile>small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-page .progress-group-heading{margin-bottom:10px}@media(max-width:720px){.progress-page .problem-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:7px}.progress-page .problem-tile{min-height:94px;padding:9px}.progress-page .progress-status-options button{font-size:11px;padding:8px 10px}}@media(max-width:720px)and (pointer:coarse){input:not([type=checkbox]):not([type=file]),select,textarea,.filters input[type=search],.filters select,.editor-meta input,.editor-meta select,.list-tools select{font-size:16px}}.profile-page{margin-top:32px}:root{--paper: #f6f0e3;--white: #fffdf6;--ink: #302c24;--muted: #6c6252;--line: #cfc3a8;--accent: #28518a;--accent-dark: #1c355a;--soft: #e2e9f2;--ochre: #d6b35c;--ochre-ink: #7a581b;--header: #233e68;--earth: #8a4c34;--green: #466758;--level-1: #d6eef8;--level-2: #b6d8f8;--level-3: #a5b6f0;--level-4: #b398e2;--level-5: #7042b3}body{background:var(--paper)}::selection{background:var(--ochre);color:var(--ink)}.masthead{background:var(--header);color:var(--white);border-bottom:3px solid var(--ochre)}.header{border-bottom:0}.brand img{background:#fff;border:1px solid var(--ochre);padding:2px}.brand:hover,.header nav>a:hover,.account-menu summary:hover{color:#f4d991}.header nav>a[aria-current]{font-weight:700;color:#f4d991}.header nav>a[aria-current]:after{background:var(--ochre);height:3px}.local-banner{color:#e8e1d1;background:var(--ink)}.local-dot{background:var(--ochre)}.local-banner a:hover{color:var(--ochre)}.account-menu>div{border-color:var(--line);border-radius:6px;box-shadow:0 6px 18px #302c2420;background:var(--white);color:var(--ink)}.account-menu a:hover,.account-menu button:hover{background:var(--soft);color:var(--accent-dark)}.button{border-color:var(--accent-dark);border-radius:5px;box-shadow:0 2px 4px #233e6818}.header .button{background:var(--ochre);color:var(--ink);border-color:#e4c77e;box-shadow:none}.header .button:hover{background:#ecd18d;color:var(--ink)}.button:hover{background:var(--accent-dark)}.button.secondary{background:var(--white);border-color:#a79a80;color:var(--ink);box-shadow:none}.button.secondary:hover{background:var(--ochre)}.text-link{font-weight:550}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.import-button:focus-within,.upload-label:focus-within{outline-color:var(--accent)}input:not([type=checkbox]):not([type=file]),select,textarea{border-color:#96886d;background-color:var(--white);border-radius:5px}input::placeholder,textarea::placeholder{color:#736753}input:disabled{color:var(--muted);background:#ebe2d0}.manifesto{margin-top:32px;padding:24px 28px;max-width:740px;background:var(--white);border:1px solid var(--line);border-left:5px solid var(--ochre);box-shadow:0 4px 16px #302c240b}.manifesto p{margin:0}.stats{border-bottom:1px solid var(--line)}.stats>div{border-left:4px solid var(--accent);padding-left:13px}.stats>div:nth-child(2){border-color:var(--ochre)}.stats>div:nth-child(3){border-color:var(--green)}.stats strong{color:var(--accent-dark)}.stats>div:nth-child(2) strong{color:var(--ochre-ink)}.stats>div:nth-child(3) strong{color:var(--green)}.source-counts button{border-color:#b5a88d;color:var(--ink);background:var(--white)}.source-counts button:nth-child(4n+1){background:#efe0b4}.source-counts button:nth-child(4n+2){background:#edd5c4}.source-counts button:nth-child(4n+3){background:#dfe7dc}.source-counts button:nth-child(4n){background:var(--soft)}.source-counts b{color:var(--ink)}.source-counts button:hover{background:var(--ochre)}.section-label h2{text-decoration:underline;text-decoration-color:var(--ochre);text-decoration-thickness:2px;text-underline-offset:8px}.filters{background:#ede2c7;border-color:var(--line);border-radius:5px;box-shadow:none}.list-tools select{background:transparent}.problem-table{border-top:1px solid #a79a80}.review-row:nth-child(odd){background:var(--white)}.problem-row:hover{background:#eee0b5;color:var(--ink)}.row-arrow{color:var(--accent)}.problem-name small span{color:var(--muted)}.status{color:#575043;background:#e8e1d2;border:1px solid #c6b99e}.status.submitted,.status.bookmarked{color:#654a16;background:#efe0b4;border-color:#a98b47}.status.published,.status.solved{color:#385342;background:#dfe7dc;border-color:#708976}.status.returned{color:#833f2e;background:#f0dcd0;border-color:#b37860}.status.attempted{color:#244971;background:#dce6ef;border-color:#7893af}.badge{color:var(--accent-dark);background:var(--soft);border:1px solid #adbdcf}.lang-square{border-color:#7e809080}.lang-square.absent{color:var(--muted);border-color:#96886d;background:transparent}.segmented{border-color:#a79a80;border-radius:5px;background:var(--white)}.segmented button{color:var(--muted);border-radius:2px}.segmented button:hover{color:var(--ink);background:#eee0b5}.segmented button[aria-pressed=true]{background:var(--accent);color:#fff}.progress-group{border-top:1px solid #a79a80}.progress-group-heading progress{accent-color:var(--green)}progress::-webkit-progress-bar{background:#ded5c2}progress::-webkit-progress-value{background:var(--green)}.problem-tile{border-color:#8a8192;color:var(--ink)}.problem-tile:hover{color:var(--ink);border-color:var(--accent);box-shadow:0 2px 6px #233e681a;transform:translateY(-1px)}.problem-tile.is-solved{border:2px solid var(--green)}.level-1,.problem-tile.level-1,.level-key.level-1{background:var(--level-1);color:var(--ink)}.level-2,.problem-tile.level-2,.level-key.level-2{background:var(--level-2);color:var(--ink)}.level-3,.problem-tile.level-3,.level-key.level-3{background:var(--level-3);color:var(--ink)}.level-4,.problem-tile.level-4,.level-key.level-4{background:var(--level-4);color:var(--ink)}.level-5,.problem-tile.level-5,.level-key.level-5{background:var(--level-5);color:#fff}.auth-card,.panel,.editor-panel,.reading-card{background:var(--white);border-color:var(--line);border-radius:5px;box-shadow:0 4px 16px #302c240b}.reading-card{border-top:3px solid var(--accent);box-shadow:0 4px 16px #302c240b}.math-content,.reading-card h1{color:var(--ink)}.editor-toolbar{background:#ede2c7;border-color:var(--line)}.latex-pane{background:#f0e9d9}.preview-pane{background:var(--white)}.approval{background:#e1e9de;border-color:#a6b49c}.preview-placeholder{color:var(--muted)}.avatar-editor>span,.profile-link>span:first-child{background:var(--ochre);border:1px solid #a79a80;color:var(--ink)}.asset{border-color:#96886d;background:var(--white)}.notice.soft{background:var(--soft);border-color:#adbdcf;color:var(--accent-dark)}.notice.success{background:#e1e9de;border-color:#a6b49c;color:#385342}.notice.error{background:#f0dcd0;border-color:#b37860;color:#833f2e}.danger{color:#8a4030!important}.button.danger{border-color:#8a4030;background:#fbede3;box-shadow:none}.button.danger:hover{background:#f0dcd0}.empty{border-color:#96886d;background:var(--white);border-radius:5px}.empty-symbol{background:var(--ochre);border-color:var(--line);color:var(--ink)}pre{background:#f0e9d9;border-color:var(--line)}code{background:#eee0b5}.reference-links-detail{border:1px solid #adbdcf}.reference-controls{background:var(--white);border-color:var(--line)}.reference-sheet{background:#ddd3bf;border-color:var(--line)}.footer{border-color:var(--line);color:var(--muted)}.footer a{color:var(--accent)}#toast{background:var(--ink);color:var(--white);border:2px solid var(--ochre)}@media(max-width:720px){.manifesto{padding:20px;margin-top:26px}.stats>div{padding-left:9px}}
