:root{--paper:#f6f2e8;--paper-light:#fffdf7;--paper-deep:#eee8da;--ink:#252820;--ink-soft:#55594e;--muted:#74786c;--green:#2f4b3c;--green-dark:#21372c;--red:#a14c3c;--ochre:#a37a3f;--line:#d4cec0;--line-soft:#e5dfd2;--serif:Georgia,"Times New Roman","Noto Serif SC","Songti SC",SimSun,serif;--sans:Verdana,Tahoma,"Microsoft YaHei",Arial,sans-serif;--mono:"Courier New",Consolas,"Microsoft YaHei",monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:86px}body,html{background:var(--paper)}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:14px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.5;cursor:not-allowed}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:600}svg{flex-shrink:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--green);outline-offset:3px}::selection{background:#d9d2bf;color:var(--ink)}.skip-link{position:absolute;left:16px;top:-60px;z-index:100;background:var(--green);color:#fff;padding:10px}.skip-link:focus{top:8px}.container{width:min(1060px,calc(100% - 56px));margin:0 auto}.site-header{height:68px;background:var(--paper-light);border-bottom:4px solid var(--green);position:sticky;top:0;z-index:20}.header-inner{width:min(1120px,calc(100% - 56px));height:100%;margin:auto;justify-content:space-between;gap:24px}.brand,.header-inner{display:flex;align-items:center}.brand{gap:9px;font:700 24px Georgia,serif;letter-spacing:-.8px;color:var(--green-dark)}.brand-mark{width:29px;height:29px;display:grid;place-items:center;background:var(--green);color:#f6f2e8;border:1px solid var(--green-dark);border-radius:2px;font:italic 21px Georgia,serif;line-height:1}.brand-dot{color:var(--red)}.desktop-nav{display:flex;align-items:stretch;height:100%;gap:25px}.desktop-nav a{height:100%;display:flex;align-items:center;position:relative;color:#676b60;font-size:12px}.desktop-nav a:hover{color:var(--green-dark);text-decoration:underline;text-underline-offset:5px}.desktop-nav a.active{color:var(--green-dark);font-weight:700}.desktop-nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:12px;height:2px;background:var(--red)}.header-actions{gap:13px}.account-link,.header-actions{display:flex;align-items:center}.account-link{border:1px solid var(--line);border-radius:2px;padding:7px 10px;gap:10px;font-size:11px;background:var(--paper)}.account-link:hover{background:var(--green);border-color:var(--green);color:#fff}.admin-link{font-size:11px;color:var(--red);text-decoration:underline;text-underline-offset:3px}.mobile-menu{display:none}.eyebrow{font:9px var(--mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--green);line-height:1.8;display:flex;align-items:center;gap:7px;font-weight:700}.eyebrow>span:not(.section-count){display:inline-block;width:5px;height:5px;background:var(--red)}.home-page{padding-top:22px}.folio{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:0 0 17px;border-bottom:3px double var(--line)}.folio h1{font-size:32px;line-height:1.3;margin:5px 0 0;color:var(--green-dark);letter-spacing:-.5px}.folio-meta{display:flex;align-items:center;gap:12px;font:10px var(--mono);color:#717567;flex-wrap:wrap}.folio-meta>span{display:inline-flex;align-items:center;gap:5px}.folio-meta a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.home-page .demo-banner{margin-top:14px}.archive-note p{font:11px/1.7 var(--serif);color:#6f7367;margin:5px 0 9px}.archive-note a{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--red);text-decoration:underline;text-underline-offset:2px}.home-footnote{display:flex;justify-content:space-between;gap:16px;padding:13px 0 0;margin-top:17px;border-top:1px solid var(--line);font:9px var(--mono);color:#888a7c}.home-footnote a{color:var(--red);text-decoration:underline;text-underline-offset:2px}.daily-section{padding:22px 0 0}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px}.section-heading h2{margin:4px 0 0;font-size:24px;color:var(--green-dark)}.section-heading h1{margin:5px 0 0}.section-heading p{margin:6px 0 0;color:var(--muted)}.section-count{background:var(--paper-deep);color:#605f52;padding:1px 4px;margin-left:8px;vertical-align:middle}.date-chip,.section-count{font:10px var(--mono);border:1px solid var(--line)}.date-chip{gap:6px;color:#6d7165;background:var(--paper-light);padding:6px 8px}.date-chip,.demo-banner{display:flex;align-items:center}.demo-banner{gap:7px;background:#eef0e6;color:#606659;padding:9px 11px;font-size:11px;border:1px solid #d5d9ca;border-left:3px solid var(--ochre);margin-bottom:17px}.demo-banner a{display:flex;align-items:center;gap:4px;margin-left:auto;white-space:nowrap;color:var(--red);text-decoration:underline;text-underline-offset:3px}.daily-layout{display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:22px;align-items:start}.problem-list{display:grid;gap:0;background:var(--paper-light);border:1px solid var(--line)}.problem-card{padding:21px 23px 0;background:transparent;border:0;border-top:1px solid var(--line-soft);border-radius:0;scroll-margin-top:26px;box-shadow:none}.problem-card:first-child{border-top:0}.problem-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}.problem-number{font:9px var(--mono);letter-spacing:1.2px;font-weight:700;color:var(--green)}.tags{display:flex;align-items:center;gap:4px;flex-shrink:0}.tags>span{font-size:9px;padding:3px 5px;border:1px solid var(--line);background:#f3efe5;color:#6a6c60;border-radius:1px}.tags>span:first-child{background:#e8ede3;color:#506454;border-color:#cbd4c4}.difficulty{display:inline-flex;align-items:center;gap:4px}.difficulty i{width:3px;height:3px;background:currentColor;border-radius:50%}.difficulty-入门{color:#52735d!important}.difficulty-进阶{color:#99743c!important}.difficulty-挑战{color:#a14c3c!important}.problem-card h2{font-size:21px;margin-bottom:13px;color:var(--green-dark)}.problem-card h2 a:hover{color:var(--red);text-decoration:underline;text-underline-offset:3px}.prose{font-family:var(--serif);font-size:14px;line-height:1.95;color:#393b33;overflow-wrap:anywhere}.prose p{margin:0 0 12px}.prose p:last-child{margin-bottom:0}.prose .katex{font-size:1.1em}.prose .katex-display{overflow-x:auto;overflow-y:hidden;padding:7px 0;margin:13px 0 15px}.prose h2{font-size:21px;margin:23px 0 13px}.prose h2,.prose h3{color:var(--green-dark)}.prose h3{font-size:17px;margin:20px 0 10px}.prose ol,.prose ul{padding-left:21px;margin:10px 0}.prose li{margin:3px 0}.prose blockquote{border-left:2px solid var(--red);margin:14px 0;padding:7px 11px;background:#f1eee3;color:#5d5f53}.prose code{font:11px var(--mono);background:#eeeade;border:1px solid #dcd4c3;padding:1px 3px}.prose pre{overflow:auto;background:#29352d;color:#eee9dc;padding:13px;border-radius:1px;font:11px/1.65 var(--mono)}.prose pre code{background:transparent;border:0;padding:0;color:inherit}.prose a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.prose table{border-collapse:collapse;width:100%;margin:13px 0;font-size:13px;border:1px solid var(--line)}.prose td,.prose th{border:1px solid var(--line);padding:6px 8px;text-align:left}.prose th{background:#eeeade;color:var(--green-dark)}.prose hr{border:0;border-top:1px solid var(--line);margin:20px 0}.problem-card-bottom{margin-top:17px;padding:10px 0;border-top:1px solid var(--line-soft);display:flex;align-items:center;justify-content:space-between;gap:12px}.problem-source{font:9px var(--mono);color:#858577}.problem-card-bottom>div{display:flex;align-items:center;gap:13px}.solution-count{font-size:10px;color:#617064;display:inline-flex;align-items:center;gap:4px}.solution-count:hover,.write-link{color:var(--red)}.write-link{font-size:10px;display:inline-flex;align-items:center;gap:3px;text-decoration:underline;text-underline-offset:2px}.sidebar{display:grid;gap:14px}.sidebar-box{padding:16px;background:var(--paper-light);border:1px solid var(--line);border-top:3px solid var(--green);border-radius:1px}.sidebar-box h3{font-size:15px;margin:5px 0 9px;color:var(--green-dark)}.index-item{display:flex;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--line-soft);color:#5e6257;font-size:11px}.index-item:hover{color:var(--red);text-decoration:underline;text-underline-offset:2px}.index-item>span{font:10px var(--mono);color:var(--ochre)}.index-item>div{flex:1 1;min-width:0}.index-item small{display:block;font-size:9px;color:#8b8a7b;margin-top:2px}.index-item>svg{color:#898b7d}.reading-note{margin-top:8px;padding-top:9px;border-top:1px solid var(--line-soft);font:italic 11px Georgia,serif;color:#7d7d6d}.tiny-dot{display:inline-block;width:4px;height:4px;background:var(--red);border-radius:50%;margin-right:5px;vertical-align:1px}.submission-note{background:#eef1e8;border-top-color:var(--ochre)}.note-icon{width:27px;height:27px;display:grid;place-items:center;background:var(--green);color:#fff;border-radius:50%;margin-bottom:8px}.submission-note h3{font-size:16px}.submission-note p{font:12px/1.8 var(--serif);color:#606559}.submission-note ul{padding-left:0;list-style:none;margin:10px 0;font-size:10px}.submission-note li{display:flex;align-items:center;gap:5px;color:#6f7367;margin:5px 0}.submission-note li svg{color:var(--green)}.submission-note>a{display:inline-flex;gap:4px;align-items:center;padding-top:8px;border-top:1px solid #d7ddcf;color:var(--red);font-size:10px;text-decoration:underline;text-underline-offset:2px}.margin-quote{border-left:2px solid var(--red);padding:2px 0 2px 12px}.margin-quote>span{display:none}.margin-quote p{font:14px/1.6 var(--serif);font-style:italic;color:#64685d;margin:0 0 6px}.margin-quote small{font:9px var(--mono);color:#8a8b7d}.archive-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:27px;padding:19px 21px;background:#eef1e8;border:1px solid #d5dccd;border-left:3px solid var(--green);border-radius:1px}.archive-strip h2{font-size:21px;margin:5px 0;color:var(--green-dark)}.archive-strip p{margin:0;font:12px var(--serif);color:#707569}.button{display:inline-flex;align-items:center;justify-content:center;gap:5px;background:var(--green);border:1px solid var(--green-dark);border-radius:1px;color:#fff;padding:8px 13px;font-size:11px;font-weight:700;line-height:1.3}.button:hover{background:var(--green-dark)}.button-outline{background:var(--paper-light);color:var(--green-dark);border-color:var(--line)}.button-outline:hover{background:#e9ecdf;color:var(--green-dark);border-color:#b9c2b1}.text-button{display:inline-flex;align-items:center;gap:4px;border:0;background:transparent;color:var(--red);text-decoration:underline;text-underline-offset:2px;font-size:10px;padding:2px}.text-button:hover{color:var(--green-dark)}.footer{width:min(1060px,calc(100% - 56px));margin:38px auto 0;padding:16px 0 22px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px;color:#868779;font-size:10px}.footer-brand{font:700 18px Georgia,serif;color:var(--green-dark);letter-spacing:-.4px}.footer>div{display:flex;align-items:center;gap:12px}.footer>div a{color:var(--red);text-decoration:underline;text-underline-offset:2px}.page-space{padding-top:28px;padding-bottom:42px}.page-intro{padding:2px 0 17px;border-bottom:3px double var(--line);margin-bottom:18px}.page-intro h1{font-size:30px;margin:5px 0 7px;color:var(--green-dark)}.page-intro p{margin:0;font:13px/1.8 var(--serif);color:#6f7368}.muted,.small{color:var(--muted)}.small{font-size:10px}.accent{color:var(--red)}.empty-state{text-align:center;padding:34px 18px;border:1px dashed var(--line);background:#fbf8ef;color:var(--ink)}.empty-state>svg{color:var(--ochre);margin-bottom:8px}.empty-state h2,.empty-state h3{color:var(--green-dark);margin:5px 0}.empty-state h1{font-size:25px;color:var(--green-dark)}.empty-state p{font-family:var(--serif);font-size:13px;color:#77796c;margin-bottom:13px}.archive-filters{display:flex;justify-content:space-between;gap:17px;align-items:center;padding:8px 0 12px;border-bottom:1px solid var(--line);flex-wrap:wrap}.filter-tabs{display:flex;gap:2px;flex-wrap:wrap}.filter-tabs button{border:1px solid transparent;background:transparent;color:#74786b;padding:5px 7px;font-size:10px}.filter-tabs button:hover{color:var(--red);text-decoration:underline}.filter-tabs button.active{background:var(--green);color:#fff;border-color:var(--green)}.filter-inputs{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.date-filter,.search-input{display:flex;align-items:center;gap:5px;background:var(--paper-light);border:1px solid var(--line);padding:5px 7px;color:#8b8c7d}.date-filter input,.search-input input{border:0;background:transparent;outline:0;font-size:10px;color:var(--ink);min-width:0}.search-input input{width:150px}.date-filter input{width:116px}.date-filter:focus-within,.search-input:focus-within{border-color:var(--green)}.results-count{font:9px var(--mono);color:#888a7c;padding:11px 0 6px}.archive-group{margin-bottom:17px}.archive-date{display:inline-flex;align-items:center;gap:5px;margin-bottom:6px;font:10px var(--mono);color:var(--red);text-decoration:underline;text-underline-offset:2px}.archive-row{display:flex;align-items:center;gap:12px;padding:11px 12px;background:var(--paper-light);border:1px solid var(--line);border-left:2px solid var(--green);margin-bottom:4px}.archive-row:hover{background:#f0eddf;border-left-color:var(--red)}.row-index{font:10px var(--mono);color:var(--ochre)}.archive-row h2{font-size:16px;margin:0;flex:1 1;color:var(--green-dark)}.row-category{font-size:9px;color:#818375}.archive-row>svg{color:#8b8d7e;margin-left:3px}.solutions-heading{display:flex;justify-content:space-between;gap:15px;padding:8px 0;border-bottom:1px solid var(--line);color:#7d7f72;font-size:10px}.solutions-heading>span{display:flex;align-items:center;gap:4px}.solution-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-top:16px}.solution-card{padding:18px;background:var(--paper-light);border:1px solid var(--line);border-top:3px solid var(--ochre)}.solution-card:nth-child(2n){border-top-color:var(--green)}.solution-card h2{font-size:18px;color:var(--green-dark);margin:6px 0 10px}.solution-card h2 a:hover{color:var(--red);text-decoration:underline}.solution-excerpt{line-height:1.8}.solution-excerpt .prose{font-size:12px;line-height:1.75}.solution-card-footer{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-top:13px;padding-top:9px;border-top:1px solid var(--line-soft);color:#77796b;font-size:9px}.solution-card-footer>a,.solution-card-footer>span{display:flex;align-items:center;gap:5px}.solution-card-footer a{color:var(--red);text-decoration:underline;text-underline-offset:2px}.avatar{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--green);color:#fff;font:10px Georgia,serif}.reading-container{width:min(820px,calc(100% - 56px));margin:0 auto}.back-link{display:inline-flex;align-items:center;gap:3px;font:10px var(--mono);color:#837f70;margin-bottom:12px;text-decoration:underline;text-underline-offset:2px}.back-link:hover{color:var(--red)}.reading-paper{background:var(--paper-light);border:1px solid var(--line);border-top:4px solid var(--green);padding:30px 35px;box-shadow:0 1px 2px rgba(55,52,38,.05)}.reading-paper h1{font-size:29px;color:var(--green-dark);margin:6px 0 16px}.reading-paper .prose{font-size:14px;line-height:2}.problem-footer{display:flex;align-items:baseline;justify-content:space-between;gap:6px 16px;flex-wrap:wrap;margin-top:18px;padding-top:10px;border-top:1px solid var(--line-soft)}.problem-footer .reading-meta{min-width:0;margin:0;padding:0;border:0;font-size:10px;color:#7d7f70;overflow-wrap:anywhere}.problem-footer .export-link{flex:none;display:inline;margin:0}.reading-paper>.button{margin-top:15px}.problem-solutions{margin-top:23px}.problem-solutions .section-heading h2{font-size:21px}.solution-list-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px 13px;margin-bottom:5px;background:var(--paper-light);border:1px solid var(--line);border-left:2px solid var(--ochre)}.solution-list-row:hover{background:#f0eddf;border-left-color:var(--red)}.solution-list-row h3{font-size:14px;margin:0 0 3px;color:var(--green-dark)}.solution-list-row span{font-size:9px;color:#87897a}.solution-list-row>svg{color:#9a7f58}.author-line{display:flex;align-items:center;gap:8px;font-size:10px;color:#7f8173;border-bottom:1px solid var(--line-soft);padding-bottom:11px;margin-bottom:18px}.author-line .avatar{width:24px;height:24px}.approved-label{display:inline-flex;align-items:center;gap:3px;color:#4d6e55;font-size:9px;border:1px solid #c4d0bd;padding:2px 4px}.author-line time{margin-left:auto;font:9px var(--mono);color:#919284}.related-problem{display:inline-block;margin-bottom:16px;padding:5px 7px;border:1px solid var(--line);background:#f2eee2;color:#756549;font-size:10px;text-decoration:underline;text-underline-offset:2px}.proof-end{font:21px Georgia,serif;color:var(--red);text-align:right;border-top:1px solid var(--line-soft);padding-top:8px;margin-top:20px}.auth-page{display:grid;place-items:center;padding:35px 18px 55px;min-height:60vh}.auth-card{width:min(420px,100%);background:var(--paper-light);border:1px solid var(--line);border-top:4px solid var(--green);padding:27px 29px 23px;box-shadow:0 1px 2px rgba(55,52,38,.05)}.auth-card>.accent{color:var(--red);margin-bottom:9px}.auth-card h1{font-size:24px;color:var(--green-dark);margin:5px 0 7px}.auth-card>.muted{font:13px var(--serif);color:#77796b;line-height:1.8;margin-bottom:17px}.auth-card>.back-link{margin:15px 0 0;display:inline-block}.segmented{display:flex;background:#ece8dc;border:1px solid var(--line);padding:2px;margin-bottom:14px}.segmented button{flex:1 1;border:0;background:transparent;color:#74786b;padding:6px;font-size:10px}.segmented button.selected{background:var(--green);color:#fff}.stack-form{display:grid;gap:11px}.review-controls label,.stack-form label{display:grid;gap:5px;font-size:10px;font-weight:700;color:#606457}.review-controls textarea,.stack-form input,.stack-form select,.stack-form textarea{width:100%;border:1px solid #bfb8a8;border-radius:1px;background:#fffdf7;color:var(--ink);padding:8px 9px;font-size:12px;outline:0}.review-controls textarea:focus,.stack-form input:focus,.stack-form textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #e1e7db}.review-controls textarea::placeholder,.stack-form input::placeholder{color:#9a9b8c}.stack-form textarea{resize:vertical}.message{padding:8px 10px;border:1px solid var(--line);border-left:3px solid var(--ochre);background:#f1eee3;color:#626458;font-size:10px;line-height:1.7;margin:8px 0}.message.error{border-left-color:var(--red);background:#f3e3dd;color:#7f4238}.message.success{border-left-color:#52775a;background:#e7efe3;color:#49634d}.message a{color:var(--red);text-decoration:underline}.setup-note{background:#eef0e6;border:1px solid #d7ddcf;padding:12px;margin:12px 0}.setup-note h3{font-size:15px;margin:0 0 5px;color:var(--green-dark)}.setup-note p{font:11px/1.8 var(--serif);color:#6c7063;margin-bottom:9px}.inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.account-list{display:grid;gap:13px}.paper-panel{padding:18px 19px;background:var(--paper-light);border:1px solid var(--line);border-left:3px solid var(--green)}.paper-panel h2{font-size:18px;color:var(--green-dark);margin:6px 0 8px}.paper-panel details,.problem-reference{border-top:1px solid var(--line-soft);margin:10px 0;padding-top:7px}.paper-panel summary,.problem-reference summary{cursor:pointer;font:10px var(--mono);color:#7d7f70;padding:3px 0}.paper-panel details .prose,.problem-reference .prose{font-size:12px;margin-top:8px;color:#54564d}.status{display:inline-block;padding:2px 5px;border:1px solid #c2c5b4;background:#eef0e6;color:#65705c;font:8px var(--mono);letter-spacing:.2px}.status-pending{background:#f2e9d2;border-color:#d6c39b;color:#876c38}.status-approved{background:#e5eee1;border-color:#b9c9b3;color:#4f6c54}.status-rejected{background:#f2e0da;border-color:#d7b1a7;color:#8c4b40}.review-note{margin:10px 0;padding:8px 10px;border-left:3px solid var(--ochre);background:#f0ece0;color:#625f51;font-size:11px}.review-note strong{display:block;margin-bottom:3px;color:var(--red);font:10px var(--mono)}.review-note p{margin:0;font-family:var(--serif);line-height:1.8}.problem-reference{background:#f1eee3;padding:8px 10px;border:1px solid var(--line);margin-bottom:13px}.problem-reference summary{color:#716b5c}.problem-reference .prose{font-size:12px}.solution-editor{background:var(--paper-light);border:1px solid var(--line);border-top:3px solid var(--green);overflow:hidden}.editor-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 15px;background:#f1eee3;border-bottom:1px solid var(--line)}.title-input{flex:1 1;min-width:0;border:0;border-bottom:1px solid #bfb8a8;background:transparent;color:var(--green-dark);font:600 20px var(--serif);outline:0;padding:2px 1px}.title-input::placeholder{color:#9b9a8a}.save-status{font:9px var(--mono);color:#8d8d7d;gap:3px;white-space:nowrap}.editor-toolbar,.save-status{display:flex;align-items:center}.editor-toolbar{justify-content:space-between;gap:10px;padding:7px 11px;background:#fbf8ef;border-bottom:1px solid var(--line);flex-wrap:wrap}.toolbar-label{font:9px var(--mono);color:#777b6e}.toolbar-label>span{color:var(--red);padding:0 3px}.toolbar-tools{display:flex;align-items:center;gap:8px}.toolbar-tools button{border:1px solid transparent;background:transparent;color:#777b6d;display:flex;align-items:center;justify-content:center;gap:3px;font-size:9px;padding:3px}.toolbar-tools button:hover{color:var(--red);border-color:var(--line)}.toolbar-divider{height:15px;width:1px;background:var(--line)}.view-switch{display:flex;gap:1px}.toolbar-tools .view-switch button{padding:3px 5px}.toolbar-tools .view-switch button.selected{background:var(--green);color:#fff}.syntax-help{padding:10px 13px;background:#f1eee3;border-bottom:1px solid var(--line);font-size:9px;color:#6d7164;display:flex;gap:9px;align-items:center;flex-wrap:wrap}.syntax-help strong{font:10px var(--mono)}.syntax-help code{font:9px var(--mono);background:#fffdf7;border:1px solid #d8d1c1;padding:2px 3px}.syntax-help p{width:100%;margin:0;line-height:1.7;color:#858777}.editor-panes{display:grid;grid-template-columns:1fr 1fr;min-height:440px}.source-pane{min-width:0;border-right:1px solid var(--line);background:#fbf8ef}.preview-pane{min-width:0;background:#f9f6ec}.pane-label{font:8px var(--mono);letter-spacing:.8px;color:#8d8f80;border-bottom:1px solid var(--line-soft);padding:8px 11px;display:flex;justify-content:space-between;background:#f1eee3}.pane-label>span{font-size:8px;color:#9a9b8c}.preview-paper{padding:20px 22px}.preview-paper h2{font-size:19px;color:var(--green-dark);line-height:1.5;overflow-wrap:anywhere}.preview-paper .prose{font-size:12px;line-height:1.9;color:#484a41}.source-pane .cm-editor{background:#fbf8ef;color:var(--ink);font-size:11px}.source-pane .cm-scroller{font-family:Courier New,Consolas,monospace;line-height:1.75!important}.source-pane .cm-content{padding:14px 9px}.source-pane .cm-gutters{background:#f3efe4;color:#a3a394;border:0}.source-pane .cm-focused{outline:none!important}.mode-edit,.mode-preview{grid-template-columns:1fr}.mode-edit .preview-pane,.mode-preview .source-pane{display:none}.mode-edit .source-pane{border:0}.editor-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 13px;border-top:1px solid var(--line);background:#f1eee3}.editor-bottom>span{font:9px var(--mono);color:#8c8d7d}.solution-editor>.message{margin:10px 13px}.editor-loading{height:440px;padding:22px;color:#8d8d7d;background:#fbf8ef}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.admin-stats>div{background:var(--paper-light);border:1px solid var(--line);border-top:3px solid var(--green);padding:15px;display:flex;align-items:center;gap:10px;color:var(--ochre)}.admin-stats strong{font:24px Georgia,serif;color:var(--red)}.admin-stats span{font-size:9px;margin-left:auto;color:#7f8173}.admin-tabs{display:flex;gap:18px;border-bottom:1px solid var(--line);margin:18px 0;overflow-x:auto;white-space:nowrap}.admin-tabs button{flex-shrink:0;border:0;border-bottom:2px solid transparent;background:transparent;padding:9px 1px;font-size:10px;color:#74786b}.admin-tabs button.active{color:var(--green-dark);border-bottom-color:var(--red);font-weight:700}.admin-tabs button span{margin-left:5px;font:8px var(--mono);background:#eeeade;padding:2px 3px}.review-controls{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:10px}.review-controls .inline-actions{justify-content:flex-end}.review-controls textarea{resize:vertical;line-height:1.8}.admin-problem-list{display:grid;gap:5px}.admin-problem-row{display:flex;align-items:center;gap:12px;background:var(--paper-light);padding:10px 12px;border:1px solid var(--line);border-left:2px solid var(--green)}.admin-problem-row strong{flex:1 1;font-size:11px;font-weight:700;color:var(--green-dark)}.problem-form{margin-bottom:18px}.problem-form .section-heading{margin-bottom:0}.problem-form h2{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.mono{font:11px/1.75 Courier New,Consolas,monospace;resize:vertical;background:#fffdf7;border:1px solid #bfb8a8;color:var(--ink);padding:8px}.spin{animation:spin 1s linear infinite}.loading-line{height:2px;background:repeating-linear-gradient(90deg,var(--green) 0 18px,transparent 18px 25px);animation:pulse 1.4s infinite;margin-bottom:20px}.image-placeholder{color:#8d8f80;font:11px var(--sans)}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.35}}@media(max-width:900px){.hero{grid-template-columns:1fr 320px;gap:28px}.hero h1{font-size:34px}.daily-layout{grid-template-columns:minmax(0,1fr) 220px;gap:17px}.solution-grid{gap:11px}.problem-card{padding:19px 19px 0}.header-inner{width:calc(100% - 36px)}.container{width:calc(100% - 40px)}}@media(max-width:740px){.site-header{height:62px}.desktop-nav{display:none}.mobile-menu{display:block;position:relative;margin-left:auto}.mobile-menu summary{list-style:none;cursor:pointer;color:var(--green-dark);display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--line);background:var(--paper)}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:36px;width:165px;background:var(--paper-light);padding:5px;border:1px solid var(--line);border-top:3px solid var(--green);box-shadow:2px 2px 0 rgba(55,52,38,.1);display:grid;z-index:30}.mobile-menu nav a{padding:8px;font-size:10px;color:#686c60;border-bottom:1px solid var(--line-soft)}.mobile-menu nav a:last-child{border-bottom:0}.mobile-menu nav a:hover{color:var(--red);text-decoration:underline}.header-actions{margin-left:auto}.account-link{padding:6px 8px;gap:6px;font-size:10px}.brand{font-size:22px}.brand-mark{width:27px;height:27px;font-size:19px}.hero{grid-template-columns:1fr;gap:16px;padding:23px 0 20px}.hero h1{font-size:32px}.hero-aside p{font-size:13px}.daily-layout{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr 1fr;gap:11px}.margin-quote{display:none}.section-heading{align-items:flex-start}.section-heading h2{font-size:22px}.date-chip{font-size:9px;padding:5px 6px}.problem-card{padding:17px 15px 0}.problem-card h2{font-size:19px}.problem-card-bottom{align-items:flex-start;flex-direction:column;gap:7px}.problem-card-bottom>div{width:100%;justify-content:space-between}.sidebar-box{padding:13px}.archive-strip{padding:15px;align-items:flex-start;flex-direction:column;gap:10px}.archive-strip h2{font-size:19px}.solution-grid{grid-template-columns:1fr}.container,.reading-container{width:calc(100% - 30px)}.reading-paper{padding:23px 19px}.reading-paper h1{font-size:25px}.editor-panes{grid-template-columns:1fr}.source-pane{border-right:0;border-bottom:1px solid var(--line)}.preview-pane{display:block}.admin-stats{grid-template-columns:1fr}.admin-stats>div{flex-direction:row}.admin-stats strong{font-size:22px}.admin-stats span{margin-left:auto}.form-grid{grid-template-columns:1fr}.auth-card{padding:22px 19px}.footer{width:calc(100% - 30px);margin-top:25px;align-items:flex-start;flex-direction:column;gap:7px}.footer>div{gap:8px}.page-space{padding-top:22px;padding-bottom:32px}.page-intro h1{font-size:27px}.page-intro p{font-size:12px}.solutions-heading{font-size:9px}.archive-row{gap:8px;padding:9px}.row-index{font-size:9px}.archive-row h2{font-size:14px}.row-category{display:none}.archive-row>svg{width:13px}.filter-inputs{width:100%}.search-input{flex:1 1}.search-input input{width:100%}.filter-tabs button{font-size:9px}.problem-form{padding:14px}.admin-problem-row{gap:7px;flex-wrap:wrap}.admin-problem-row strong{font-size:10px}}@media(max-width:430px){.header-inner{width:calc(100% - 24px)}.brand{font-size:21px}.brand-mark{width:26px;height:26px;font-size:18px}.admin-link{display:none}.hero h1{font-size:29px}.hero-aside p{font-size:12px}.sidebar{grid-template-columns:1fr}.solution-card{padding:15px}.section-heading{gap:6px}.date-chip svg{display:none}.problem-card h2{font-size:18px}.reading-paper{padding:19px 14px}.reading-paper h1{font-size:22px}.author-line{font-size:9px}.author-line time{width:100%;margin-left:30px}.editor-title-row{padding:10px}.title-input{font-size:17px}.save-status{display:none}.editor-bottom{padding:9px;gap:6px}.editor-bottom>span{font-size:8px;max-width:135px;line-height:1.6}.syntax-help{padding:9px}.admin-stats>div{padding:10px}.admin-tabs{gap:14px}.auth-card{padding:20px 15px}.page-intro h1{font-size:24px}.archive-row{padding:9px 8px}.archive-row h2{font-size:13px}.footer{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}}@media print{.archive-strip,.back-link,.button,.demo-banner,.editor-toolbar,.footer,.problem-card-bottom,.sidebar,.site-header{display:none!important}body{background:#fff;color:#000}.container,.reading-container{width:100%}.problem-card,.reading-paper{border:0;box-shadow:none}.daily-layout{display:block}.prose{color:#000;font-size:12px}.hero{display:none}.reading-paper{padding:0}.problem-card{page-break-inside:avoid;break-inside:avoid}}@media(max-width:740px){.home-page{padding-top:16px}.folio{align-items:flex-start;flex-direction:column;gap:10px}.folio h1{font-size:28px}.folio-meta{width:100%;justify-content:space-between;font-size:9px}.problem-card{padding:18px 15px 0}.home-footnote{flex-direction:column;gap:6px}}.folio h1{font-size:34px}.folio-note{font:12px/1.7 var(--serif);color:#777b6d;margin:6px 0 0}.folio-meta{font-size:9px;color:#818679}.daily-layout{grid-template-columns:minmax(0,1fr) 220px;gap:30px;margin-top:3px}.problem-list{border-left:4px solid var(--green)}.problem-card{padding:24px 26px 0}.problem-card h2{font-size:24px;line-height:1.45;margin-bottom:14px}.problem-card .prose{font-size:15px;line-height:1.95}.problem-card-top{margin-bottom:14px}.problem-card-bottom{padding:11px 0}.problem-card-bottom .solution-count{font-size:9px;color:#85897b}.write-link{padding:5px 8px;background:var(--green);border:1px solid var(--green-dark);color:#fff;text-decoration:none;font-weight:700;line-height:1.2}.write-link:hover{background:var(--green-dark);color:#fff}.sidebar{gap:19px}.sidebar-box{padding:13px 0 0;background:transparent;border:0;border-top:1px solid var(--line);border-radius:0}.sidebar-box:first-child{border-top:2px solid var(--green)}.sidebar-box h3{font-size:14px;margin:4px 0 7px}.index-item{font-size:10px;padding:7px 0}.index-item small{font-size:8px}.submission-note{background:transparent;border-top-color:var(--line)}.submission-note p{font-size:11px;line-height:1.8}.submission-note ul{margin:8px 0;font-size:9px}.submission-note>a{font-size:9px;padding-top:7px}.archive-note p{font-size:10px}.archive-note a{font-size:9px}.demo-banner,.reading-note{font-size:10px}.home-footnote{font-size:8px;color:#8c8f81}@media(max-width:900px){.daily-layout{grid-template-columns:minmax(0,1fr) 205px;gap:21px}.problem-card{padding:20px 19px 0}.problem-card h2{font-size:22px}}@media(max-width:740px){.folio h1{font-size:28px}.folio-note{font-size:11px}.daily-layout{gap:17px}.problem-list{border-left-width:3px}.problem-card{padding:18px 15px 0}.problem-card h2{font-size:20px}.problem-card .prose{font-size:14px}.sidebar{gap:15px}.sidebar-box{padding-top:11px}.write-link{font-size:9px}}@media(max-width:430px){.folio h1{font-size:26px}.folio-meta{font-size:8px}.problem-card h2{font-size:18px}.sidebar-box h3{font-size:13px}}.text-editor{margin:13px 0;padding:0 10px 10px;border:1px dashed var(--line);background:#f5f2e8}.text-editor summary{font:10px var(--mono);color:#746b58;padding:8px 0;cursor:pointer}.text-editor textarea{width:100%;border:1px solid #bfb8a8;background:#fffdf7;color:var(--ink);padding:8px 9px;font:11px/1.75 Courier New,Consolas,monospace;resize:vertical}.propose-link{font-size:10px;color:var(--red);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.proposal-layout,.solver-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:22px;align-items:start}.proposal-form{max-width:none}.proposal-note,.solver-side{padding:15px;background:var(--paper-light);border:1px solid var(--line);border-top:2px solid var(--green)}.proposal-note h3,.solver-side h3{font-size:15px;color:var(--green-dark);margin:0 0 8px}.proposal-note ul,.solver-side ul{padding-left:17px;margin:8px 0;font:11px/1.8 var(--serif);color:#626758}.proposal-note li,.solver-side li{margin:4px 0}.proposal-note a{display:inline-block;margin-top:8px;font-size:10px;color:var(--red);text-decoration:underline;text-underline-offset:2px}.proposal-history{margin-top:26px}.proposal-history>.section-heading{border-bottom:1px solid var(--line);padding-bottom:8px}.proposal-history .paper-panel{margin-bottom:8px}.solver-card{background:var(--paper-light);border:1px solid var(--line);border-top:3px solid var(--green);padding:19px}.solver-form{display:grid;gap:10px}.solver-form label{display:grid;gap:6px;font-size:10px;font-weight:700;color:#606457}.solver-form textarea{width:100%;border:1px solid #bfb8a8;background:#fffdf7;color:var(--ink);padding:10px;font:13px/1.7 Courier New,Consolas,monospace;resize:vertical;outline:0}.solver-form textarea:focus{border-color:var(--green);box-shadow:0 0 0 2px #e1e7db}.solver-examples{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--line-soft);margin-top:12px}.solver-examples .text-button{font-family:Courier New,Consolas,monospace;font-size:10px}.solver-result{display:grid;grid-template-columns:40px 1fr;align-items:center;gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin:5px 0}.solver-result span{font:9px var(--mono);color:#8b8d7e}.solver-result strong{font:27px Georgia,serif;color:var(--green-dark);overflow-wrap:anywhere}.solver-result code{grid-column:2;font:10px var(--mono);color:#8b8d7e;overflow-wrap:anywhere}.solver-side p{font:11px/1.8 var(--serif);color:#777b6e;margin:10px 0}.solver-side code{font:10px var(--mono);background:#f0ece0;padding:1px 3px}.solver-side .back-link{margin-top:5px;font-size:9px}.export-links{display:flex;gap:8px;margin-left:auto}.export-link,.export-links a{font-size:10px;color:var(--red);text-decoration:underline;text-underline-offset:2px}.export-link{display:inline-block;margin:0}.page-intro>.export-link{display:block;margin-top:9px}.solutions-heading{flex-wrap:wrap}.solutions-heading .export-links{font-size:10px}.credit-table{background:var(--paper-light);border:1px solid var(--line);border-top:2px solid var(--green)}.credit-row{display:grid;grid-template-columns:52px minmax(0,1fr) 65px 65px 75px;gap:8px;align-items:center;padding:11px 14px;border-bottom:1px solid var(--line-soft);font-size:11px;color:#5e6457}.credit-row:last-child{border-bottom:0}.credit-head{font:9px var(--mono);letter-spacing:.7px;text-transform:uppercase;color:#898b7c;background:#f0ece0}.credit-rank{font:11px var(--mono);color:var(--ochre)}.credit-name{display:flex;align-items:center;gap:7px;font-family:var(--serif);font-size:13px;color:var(--green-dark);overflow-wrap:anywhere}.credit-row strong{font:16px Georgia,serif;color:var(--red)}.credits-note{margin-top:11px;line-height:1.7}@media(max-width:800px){.proposal-layout,.solver-layout{grid-template-columns:1fr}.proposal-note,.solver-side{order:-1}.credit-row{grid-template-columns:38px minmax(0,1fr) 42px 42px 52px;padding:9px}.credit-row strong{font-size:14px}.credit-name{font-size:12px}.propose-link{display:none}.export-link{display:block;margin:9px 0 13px}}@media(max-width:430px){.proposal-form{padding:15px}.solver-card{padding:14px}.solver-result strong{font-size:23px}.credit-row{grid-template-columns:30px minmax(0,1fr) 34px 34px 42px;font-size:10px;gap:4px}.credit-name{font-size:11px}.credit-row strong{font-size:12px}.solutions-heading .export-links{width:100%;margin-left:0;padding-top:4px}}.answer-box{margin-top:22px;padding:17px 18px;background:#eef1e8;border:1px solid #cfd8c9;border-left:3px solid var(--green)}.answer-box .section-heading{margin-bottom:8px}.answer-box h2{font-size:20px;margin:4px 0}.answer-box .small{line-height:1.7}.answer-form{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap;margin-top:10px}.answer-form label{display:grid;gap:5px;font-size:10px;font-weight:700;color:#5f665a;flex:1 1;min-width:220px}.answer-form input{width:100%;border:1px solid #bfb8a8;background:#fffdf7;color:var(--ink);padding:8px;font:12px Courier New,Consolas,monospace}.answer-form input:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 2px #dce5d7}.answer-box .message{display:flex;align-items:center;gap:4px;margin-top:10px}.answer-settings{display:grid;gap:8px;margin:10px 0;padding:10px;border:1px dashed var(--line);background:#f5f2e8}.answer-settings .checkbox-label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:#5f665a}.answer-settings .checkbox-label input{width:auto}.answer-settings label{display:grid;gap:5px;font-size:10px;font-weight:700;color:#5f665a}.answer-settings input:not([type]),.answer-settings input[type=text]{border:1px solid #bfb8a8;background:#fffdf7;padding:7px;font-size:11px}.answer-history{margin-top:25px}.answer-history .section-heading{border-bottom:1px solid var(--line);padding-bottom:7px}.answer-history-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,.6fr) auto;gap:10px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line-soft);font:11px var(--serif);color:#62665a}.answer-history-row code{font:11px Courier New,Consolas,monospace;color:var(--green-dark);overflow-wrap:anywhere}.answer-history-row time{font:9px var(--mono);color:#8c8e80}.answer-history-row span{overflow-wrap:anywhere}@media(max-width:700px){.answer-history-row{grid-template-columns:1fr;gap:3px}.answer-form{align-items:stretch}.answer-form label{min-width:100%}}.tikz-figure{margin:16px 0;max-width:100%;min-height:36px;overflow:auto;text-align:center}.tikz-figure img{display:block;max-width:100%;height:auto;margin:0 auto}.tikz-error{margin:12px 0;padding:9px 11px;border-left:2px solid var(--red);background:#f3e9df;color:#79483d;font:11px/1.8 var(--serif);text-align:left}.tikz-error p{margin:0}.tikz-error summary{cursor:pointer;text-decoration:underline;text-underline-offset:2px}.tikz-error pre{max-height:220px;overflow:auto;text-align:left}