
:root{--bg:#fbfaf7;--ink:#191817;--muted:#6b6660;--line:#e6e0d5;--accent:#8a5a2b;--card:#fff;--radius:14px}
.scheme-dark{--bg:#141311;--ink:#f2ede4;--muted:#b6afa2;--line:#33302a;--card:#1d1b18;--accent:#d9a75c}
.scheme-partial-dark{--bg:#fbfaf7;--ink:#191817}
.scheme-partial-dark .site-head,.scheme-partial-dark .hero{background:#171512;color:#f5efe3}
.scheme-partial-dark .site-head a,.scheme-partial-dark .hero a{color:#f5efe3}
.scheme-sepia{--bg:#f4ead8;--ink:#3a2d1c;--muted:#7a6547;--line:#ddcba6;--card:#fbf3e2;--accent:#8a5a2b}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Georgia,'Times New Roman',serif;line-height:1.65;font-size:18px}
.density-compact body,.density-compact{font-size:16px;line-height:1.5}.density-roomy{font-size:20px;line-height:1.85}
a{color:var(--accent)}img{max-width:100%;height:auto;display:block}
.wrap{max-width:1120px;margin:0 auto;padding:0 20px}
.site-head{border-bottom:1px solid var(--line);padding:16px 0}.head-in{display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.brand-name{font-size:26px;font-weight:700;color:var(--ink);text-decoration:none}.brand img{max-height:44px}
.main-nav ul,.secondary-nav ul{list-style:none;display:flex;gap:18px;margin:0;padding:0;flex-wrap:wrap}.main-nav a,.secondary-nav a{color:var(--ink);text-decoration:none}
.btn{display:inline-block;padding:10px 18px;border-radius:999px;border:1px solid var(--accent);text-decoration:none;cursor:pointer;background:transparent;color:var(--accent);font:inherit}
.btn.solid{background:var(--accent);color:#fff}.icon-btn{background:none;border:1px solid var(--line);border-radius:999px;padding:8px 14px;color:var(--ink);cursor:pointer;font:inherit}
.secondary-nav{display:flex;gap:24px;justify-content:space-between;padding-top:12px;flex-wrap:wrap}.mini-form{display:flex;gap:8px}.mini-form input{padding:8px;border:1px solid var(--line);border-radius:8px}
.hero{padding:56px 0 36px;text-align:left}.hero h1{font-size:52px;line-height:1.08;margin:10px 0}.hero.size-small h1{font-size:36px}.hero.size-large h1{font-size:64px}
.hero .lede{font-size:21px;color:var(--muted);max-width:640px}
.slider{padding:10px 0 30px}.slider-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.slider-track .card{min-width:320px;scroll-snap-align:start}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;padding:24px 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.card-body{padding:18px}.card h3{margin:6px 0;font-size:22px;line-height:1.25}.card h3 a{color:var(--ink);text-decoration:none}
.tag{text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--accent);text-decoration:none;font-weight:700}
.meta{color:var(--muted);font-size:14px;display:flex;gap:12px;flex-wrap:wrap}
.post-head{max-width:820px;margin:0 auto;padding:44px 20px 10px}.post-head.center{text-align:center}.post-head h1{font-size:46px;line-height:1.12}
.content{max-width:740px;margin:0 auto;padding:10px 20px 40px}.content img{border-radius:10px}.content pre{overflow-x:auto;background:#171512;color:#f0e9da;padding:16px;border-radius:10px}
.post-layout{display:flex;gap:28px;max-width:1120px;margin:0 auto;align-items:flex-start}.jump-list{position:sticky;top:20px;min-width:200px;padding-top:20px}.jump-list ul{list-style:none;padding:0}.jump-list a{color:var(--muted);text-decoration:none;font-size:15px}
.progress{height:4px;background:var(--line);border-radius:4px}.progress span{display:block;height:100%;width:0;background:var(--accent)}
.share{display:flex;gap:14px;align-items:center;padding:16px 20px}.cta-box{border:1px solid var(--accent);border-radius:var(--radius);padding:28px;margin:26px auto;background:var(--card)}
.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.tier{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:var(--card)}.price{font-size:34px;font-weight:700}
.site-foot{border-top:1px solid var(--line);margin-top:40px;padding:36px 0}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr;gap:28px}.foot-base{display:flex;justify-content:space-between;color:var(--muted);font-size:14px;padding-top:18px}
.msg{display:none}.success-msg .msg.success,.error-msg .msg.error{display:inline}
input,textarea,select{font:inherit;padding:10px;border:1px solid var(--line);border-radius:8px;width:100%;background:var(--card);color:var(--ink)}label{display:block;margin:12px 0}
.narrow{max-width:560px}.avatar{border-radius:50%;width:72px;height:72px;object-fit:cover}
.archive-head{padding:44px 20px 4px}.error-wrap{text-align:center;padding:70px 20px}.error-code{font-size:70px;color:var(--accent);margin:0}
.pagination{display:flex;gap:18px;justify-content:center;padding:20px}.change{border-bottom:1px solid var(--line);padding:14px 0}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr}.hero h1{font-size:36px}.post-head h1{font-size:32px}.jump-list{display:none}}
@media print{.site-head,.site-foot,.share,.cta{display:none}.content{max-width:100%}}
.font-preset-serif{font-family:Georgia,serif}
.font-preset-sans{font-family:Helvetica,Arial,sans-serif}
.font-preset-editorial{font-family:'Playfair Display',Georgia,serif}
.font-preset-modern{font-family:'Inter',Helvetica,sans-serif}
.font-preset-classic{font-family:'Times New Roman',Times,serif}
.font-preset-news{font-family:'Source Serif Pro',Georgia,serif}
.font-preset-book{font-family:'Merriweather',Georgia,serif}
.font-preset-clean{font-family:'Open Sans',Helvetica,sans-serif}
.font-preset-bold{font-family:'Archivo',Helvetica,sans-serif;font-weight:600}
.font-preset-soft{font-family:'Lora',Georgia,serif}
.font-preset-tech{font-family:'IBM Plex Sans',Helvetica,sans-serif}
.font-preset-literary{font-family:'Libre Baskerville',Georgia,serif}
.font-preset-magazine{font-family:'Oswald',Helvetica,sans-serif}
.font-preset-minimal{font-family:'Work Sans',Helvetica,sans-serif}
.font-preset-warm{font-family:'Bitter',Georgia,serif}
.font-preset-sharp{font-family:'Barlow',Helvetica,sans-serif}
.font-preset-round{font-family:'Nunito',Helvetica,sans-serif}
.font-preset-typewriter{font-family:'Courier Prime','Courier New',monospace}
.hero-form{display:flex;gap:10px;max-width:520px}.hero-form input{flex:1}
