:root{--text:#2f3833;--muted:#69746f;--soft:#f2f6f3;--line:#dce5df;--green:#187a45;--green-dark:#116437;--ink:#101814;--paper:#fbfdfb;--panel:#fff;--panel-strong:#eef5f0;--serif:Georgia, Cambria, "Times New Roman", Times, serif;--sans:sohne, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-family:var(--sans);color:var(--text);background:var(--paper);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:auto}body{background:var(--paper);margin:0}button,input,textarea{font:inherit}button{cursor:pointer}*{box-sizing:border-box}.topbar{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fbfdfbd6;align-items:center;gap:18px;min-height:56px;padding:16px 28px;display:flex;position:sticky;top:0}.brand{color:var(--ink);font-family:var(--serif);background:0 0;border:0;padding:0;font-size:25px;font-weight:700;line-height:1}.search{background:var(--soft);width:min(250px,26vw);height:42px;color:var(--muted);border:1px solid var(--line);border-radius:999px;align-items:center;gap:8px;padding:0 16px;display:flex}.search input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.top-actions{align-items:center;gap:18px;margin-left:auto;display:flex}.top-actions button{color:var(--muted);background:0 0;border:0;font-size:15px}.top-actions .donate{background:var(--green);color:#fff;border:0;border-radius:999px;min-height:34px;padding:0 10px;font-weight:600}.top-actions .donate:hover{background:var(--green-dark)}.avatar-placeholder{background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;line-height:0;display:inline-flex}.reader-shell{width:min(780px,100% - 40px);margin:56px auto 50px}.article{opacity:1;width:100%;margin-top:20px;transition:opacity .18s}.article.loading{opacity:.55}.article h1{color:var(--ink);letter-spacing:0;margin:0;font-size:clamp(34px,5vw,52px);line-height:1.08}.subtitle{color:var(--muted);margin:14px 0 0;font-size:22px;line-height:1.35}.author-row{color:var(--muted);align-items:center;gap:12px;margin:34px 0;font-size:14px;display:flex}.avatar{color:#fff;object-fit:cover;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;font-weight:800;display:inline-flex}.avatar-small{flex-basis:30px;width:30px;height:30px;font-size:14px}.author-name{color:var(--text)}.author-row button{border:1px solid var(--ink);min-height:34px;color:var(--ink);background:0 0;border-radius:999px;padding:0 14px}.engagement-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:64px;color:var(--muted);align-items:center;gap:28px;margin:0 0 42px;padding:0 10px;font-size:17px;display:flex}.icon-button{min-height:44px;color:var(--muted);font-size:inherit;background:0 0;border:0;align-items:center;gap:9px;display:inline-flex}.icon-button:disabled{cursor:not-allowed;opacity:.68}.icon-button.liked{color:#ef4444;font-weight:700}.metric{align-items:center;gap:9px;min-height:44px;display:inline-flex}.action-icon{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:0 0 28px;width:28px;height:28px}.article-body{color:var(--ink);font-family:var(--serif);font-size:21px;line-height:1.58}.article-body p{margin:0 0 32px}.article-body ul,.article-body ol{margin:0 0 32px;padding-left:28px}.article-body li{margin:8px 0}.article-body a{color:var(--green)}.article-body strong,.article-body b{font-weight:700}.article-body em,.article-body i{font-style:italic}.article-body img{max-width:100%;height:auto;margin:34px auto;display:block}.article-body blockquote{border-left:3px solid var(--green);color:var(--muted);margin:0 0 32px;padding-left:22px}.article-body iframe{border:0;width:100%;max-width:100%;min-height:360px;margin:34px auto;display:block}.article-body pre{border:1px solid var(--line);color:#243029;background:#f6f8fa;border-radius:8px;margin:0 0 32px;padding:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:15px;line-height:1.6;overflow-x:auto}.article-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.86em}.article-body h1,.article-body h2,.article-body h3,.comments h2{color:var(--ink);font-family:var(--sans);letter-spacing:0;margin:10px 0;font-size:24px;line-height:1.2}.article-body h1{font-size:30px}.article-body h3{font-size:21px}.article-body .ql-align-center{text-align:center}.article-body .ql-align-right{text-align:right}.article-body .ql-align-justify{text-align:justify}.article-promotion{margin:36px 0 0}.article-promotion>*{max-width:100%}.comments{border-top:1px solid var(--line);margin-top:35px;padding-top:22px}.comment{border-bottom:1px solid var(--line);align-items:flex-start;gap:12px;padding:18px 0;display:flex}.comment p{color:var(--muted);margin:8px 0 0;line-height:1.5}.comment-compose{gap:30px;margin-top:50px;display:grid}.comment-compose input,.comment-compose textarea{border:1px solid var(--line);background:var(--soft);width:100%;color:var(--ink);font:inherit;border-radius:8px}.comment-compose input{min-height:42px;padding:0 14px}.comment-compose textarea{resize:vertical;min-height:112px;padding:12px 14px}.captcha-field{color:var(--muted);grid-template-columns:minmax(0,1fr) minmax(96px,140px);align-items:center;gap:12px;font-weight:700;display:grid}.comment-compose input:focus,.comment-compose textarea:focus{border-color:var(--green);outline:2px solid #187a4533}.form-error{color:#b42318;margin:-18px 0 -10px;font-weight:700}.comment-compose button{background:var(--green);color:#fff;border:0;border-radius:999px;justify-self:start;min-height:40px;padding:0 18px;font-weight:700}.comment-compose button:hover{background:var(--green-dark)}.comment-compose button:disabled{cursor:not-allowed;opacity:.68}.auth-prompt{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin-top:30px;padding:18px;display:flex}.auth-prompt p{color:var(--muted);flex:260px;margin:0;line-height:1.5}.auth-prompt button,.auth-form button{background:var(--green);color:#fff;border:0;border-radius:999px;min-height:40px;padding:0 18px;font-weight:700}.auth-prompt button:hover,.auth-form button:hover{background:var(--green-dark)}.auth-form button:disabled{cursor:not-allowed;opacity:.68}.back-to-top{border:1px solid var(--line);min-height:42px;color:var(--ink);background:0 0;border-radius:999px;margin:34px auto 0;padding:0 18px;font-weight:700;display:block}.back-to-top:hover{border-color:var(--green);color:var(--green)}@media (width<=560px){.captcha-field{grid-template-columns:1fr}.donate-address{flex-direction:column;align-items:stretch}.donate-address button{width:100%}}.articles-page{width:min(900px,100% - 40px);margin:46px auto 96px}.article-cards{gap:16px;display:grid}.legal-page{width:min(780px,100% - 40px);margin:56px auto 96px}.legal-page article{gap:28px;display:grid}.legal-eyebrow{color:var(--green);margin:0;font-size:14px;font-weight:700}.legal-page h1{color:var(--ink);letter-spacing:0;margin:0;font-size:clamp(36px,5vw,54px);line-height:1.08}.legal-updated{color:var(--muted);margin:-16px 0 0}.legal-page section{border-top:1px solid var(--line);padding-top:22px}.legal-page h2{color:var(--ink);letter-spacing:0;margin:0 0 10px;font-size:22px;line-height:1.25}.legal-page p{color:var(--muted);margin:0;font-size:17px;line-height:1.65}.donate-page{width:min(780px,100% - 40px);margin:56px auto 200px}.auth-page{width:min(480px,100% - 40px);margin:92px auto 180px}.auth-form{gap:32px;display:grid}.auth-form h1{color:var(--ink);letter-spacing:0;margin:10px 0 12px;font-size:clamp(30px,4vw,42px);line-height:1.12}.auth-form label{color:var(--muted);gap:14px;font-weight:700;display:grid}.auth-form input{border:1px solid var(--line);background:var(--soft);width:100%;min-height:46px;color:var(--ink);font:inherit;border-radius:8px;padding:0 14px}.auth-form input:focus{border-color:var(--green);outline:2px solid #187a4533}.auth-form .auth-switch{border:1px solid var(--line);color:var(--green);background:0 0;justify-self:start}.auth-form button[type=submit]{min-height:48px;margin-top:14px;padding:0 24px}.auth-form .auth-switch:hover{border-color:var(--green);background:#187a4514}.auth-modal-backdrop{z-index:100;background:#10181457;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.auth-modal{border:1px solid var(--line);background:var(--panel);border-radius:8px;width:min(460px,100%);max-height:calc(100vh - 40px);padding:28px;position:relative;overflow:auto;box-shadow:0 24px 70px #10181438}.auth-modal-close{border:1px solid var(--line);background:var(--soft);width:34px;height:34px;color:var(--muted);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:12px;right:12px}.auth-modal-close:before,.auth-modal-close:after{content:"";background:currentColor;border-radius:999px;width:13px;height:2px;position:absolute}.auth-modal-close:before{transform:rotate(45deg)}.auth-modal-close:after{transform:rotate(-45deg)}.auth-choice-modal{gap:16px;display:grid}.auth-choice-modal h1{color:var(--ink);letter-spacing:0;margin:0;font-size:34px;line-height:1.12}.auth-choice-modal p{color:var(--muted);margin:0;line-height:1.55}.auth-choice-actions{flex-wrap:wrap;gap:12px;padding-top:6px;display:flex}.auth-choice-actions button{border:1px solid var(--green);background:var(--green);color:#fff;min-height:42px;font:inherit;border-radius:999px;padding:0 18px;font-weight:800}.auth-choice-actions .auth-secondary{border-color:var(--line);color:var(--green);background:0 0}.auth-choice-actions .auth-secondary:hover{border-color:var(--green);background:#187a4514}.auth-choice-actions .auth-danger{color:#fff;background:#b42318;border-color:#b42318}.auth-choice-actions .auth-danger:hover{background:#8f1d14;border-color:#8f1d14}.donate-hero{gap:18px;display:grid}.donate-eyebrow{color:var(--green);margin:0;font-size:14px;font-weight:700}.donate-hero h1{color:var(--ink);letter-spacing:0;margin:0;font-size:clamp(28px,4vw,44px);line-height:1.12}.donate-hero p{max-width:620px;color:var(--muted);margin:0;font-size:16px;line-height:1.5}.donate-address{border:1px solid var(--line);background:var(--panel);border-radius:8px;justify-content:space-between;align-items:center;gap:18px;margin-top:34px;padding:20px;display:flex}.donate-address div{gap:8px;min-width:0;display:grid}.donate-address span{color:var(--green);font-size:14px;font-weight:700}.donate-address strong{overflow-wrap:anywhere;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:18px;line-height:1.4}.donate-address button{background:var(--green);color:#fff;border:0;border-radius:999px;flex:none;min-height:40px;padding:0 18px;font-weight:700}.donate-address button:hover{background:var(--green-dark)}.article-card{border-bottom:1px solid var(--line);margin-top:-20px}.article-card button{width:100%;color:var(--text);text-align:left;background:0 0;border:0;gap:10px;padding:22px 0;display:grid}.article-card span{color:var(--green);font-size:14px;font-weight:700}.article-card h2{color:var(--ink);margin:0;font-size:28px;line-height:1.15}.article-card p{color:var(--muted);margin:0;line-height:1.5}.article-card small,.empty-state{color:var(--muted)}.footer{border-top:1px solid var(--line);background:var(--paper);justify-content:center;align-items:center;gap:10px;padding:40px 28px;display:flex}.footer button{border:1px solid var(--line);min-height:40px;color:var(--muted);background:0 0;border-radius:999px;padding:0 18px;font-weight:600;transition:all .18s}.footer button:hover{border-color:var(--green);color:var(--green);background:#187a4514}@media (width<=900px){.topbar{padding:16px}.search,.write{display:none}.top-actions{gap:12px}.reader-shell,.articles-page{grid-template-columns:1fr;width:min(780px,100% - 32px);margin-top:20px}.author-row{flex-wrap:wrap}.article-body{font-size:19px}}
