@import url("/s/fonts.css");
:root{
  --bg:#fffbea;--card:#fff;--ink:#17130a;--ink-2:#3f3a2c;--muted:#7a7262;--line:#efe6c8;--line-2:#e2d6ad;
  --sun:#ffd23f;--sun-d:#f5b700;--pink:#ff5c8a;--blue:#3a7bff;--mint:#22c38e;
  --font:Rubik,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;--wrap:1140px;--r:20px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16.5px/1.65 var(--font);-webkit-font-smoothing:antialiased}
img,svg{display:block;max-width:100%}
a{color:inherit}
p{margin:0 0 1em}
h1,h2,h3{margin:0;font-weight:800;line-height:1.12;letter-spacing:-.015em}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 24px}

.hd{position:sticky;top:0;z-index:20;background:var(--sun);border-bottom:3px solid var(--ink)}
.hd .wrap{display:flex;align-items:center;gap:20px;min-height:64px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;flex:none}
.logo i{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--ink);color:var(--sun);font:800 20px/1 var(--font);font-style:normal;transform:rotate(-6deg)}
.logo b{font-size:20px;font-weight:800}
.nav{display:flex;gap:6px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}
.nav::-webkit-scrollbar{display:none}
.nav a{padding:7px 13px;border-radius:999px;text-decoration:none;font-weight:600;font-size:15px;white-space:nowrap;border:2px solid transparent}
.nav a:hover{border-color:var(--ink)}
.nav a[aria-current]{background:var(--ink);color:var(--sun)}

.hero{padding:40px 0 16px}
.crumbs{display:flex;gap:8px;font-size:13.5px;color:var(--muted);margin-bottom:14px}
.crumbs a{text-decoration:none;color:var(--ink-2)}
.sticker{display:inline-block;background:var(--pink);color:#fff;font-weight:800;font-size:13px;padding:5px 12px;border-radius:10px;transform:rotate(-2deg);margin-bottom:14px}
.hero h1{font-size:clamp(32px,5vw,56px);max-width:880px;margin-bottom:14px}
.lede{font-size:19px;color:var(--ink-2);max-width:760px}
.meta{font-size:13.5px;color:var(--muted)}
.legend{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:13.5px;color:var(--muted);margin:12px 0 0}
.mark{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.mark.ok{background:#d7f7ea;color:#0f7a56}
.mark.fan{background:#e3ebff;color:#2a56c6}

.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:10px 0 24px}
.meme{position:relative;display:flex;flex-direction:column;gap:8px;background:var(--card);border:2.5px solid var(--ink);border-radius:var(--r);padding:20px;box-shadow:5px 5px 0 var(--ink);text-decoration:none;transition:transform .12s,box-shadow .12s}
a.meme:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}
.meme .q{font-size:20px;font-weight:800;line-height:1.2}
.meme p{margin:0;font-size:15px;color:var(--ink-2);line-height:1.5}
.meme .when{font-size:13px;color:var(--muted)}
.meme:nth-child(3n+1){background:#fff}
.meme:nth-child(3n+2){background:#fff5f8}
.meme:nth-child(3n+3){background:#f2f7ff}

.cols{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start;padding:12px 0 10px}
.art{background:var(--card);border:2.5px solid var(--ink);border-radius:var(--r);padding:28px 32px;box-shadow:6px 6px 0 var(--ink)}
.art h2{font-size:clamp(22px,2.6vw,28px);margin:30px 0 12px}
.art h2:first-child{margin-top:0}
.art p,.art li{font-size:16.5px;line-height:1.7}
.art ul,.art ol{padding-left:22px;margin:0 0 1.1em}
.art li{margin-bottom:7px}
.art a{color:var(--blue);text-underline-offset:3px}
.tip{padding:14px 16px;border-radius:14px;background:#fff1b8;border:2px dashed var(--sun-d);margin:6px 0 1.2em;font-size:15.5px;line-height:1.55}
.list{list-style:none;padding:0;margin:0 0 1.2em}
.list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:12px 0;border-top:2px solid var(--line)}
.list li:first-child{border-top:0}
.list b{display:block;font-size:17px}
.list span{display:block;font-size:14.5px;color:var(--ink-2)}
.src{margin-top:26px;padding-top:16px;border-top:2px solid var(--line);font-size:14px;color:var(--muted)}
.src h2{font-size:16px;margin:0 0 8px}
.src ol{padding-left:20px;margin:0}
.src a{color:var(--ink-2)}

.rail{display:flex;flex-direction:column;gap:16px;position:sticky;top:82px}
.rbox{background:var(--card);border:2.5px solid var(--ink);border-radius:var(--r);padding:16px 18px}
.rbox h3{font-size:13px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.rbox ul{list-style:none;margin:0;padding:0}
.rbox li a{display:block;padding:8px 0;border-top:2px solid var(--line);text-decoration:none;font-weight:600;font-size:15px;line-height:1.35}
.rbox li:first-child a{border-top:0;padding-top:0}
.rbox li a:hover,.rbox li a[aria-current]{color:var(--pink)}
.ad{border-style:dashed;box-shadow:none}
.ad small{display:block;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.ad .it{padding:10px 0;border-top:2px solid var(--line)}
.ad .it:first-of-type{border-top:0;padding-top:2px}
.ad b{display:block;font-size:15.5px}
.ad p{font-size:13px;color:var(--muted);margin:2px 0 8px;line-height:1.4}
.btn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:40px;padding:0 16px;border-radius:12px;background:var(--ink);color:var(--sun);text-decoration:none;font-weight:800;font-size:14px}
.btn:hover{background:var(--pink);color:#fff}
.ad .note2{font-size:11.5px;margin:6px 0 0;color:var(--muted)}

.faq details{border:2px solid var(--ink);border-radius:14px;margin-bottom:8px;background:#fff}
.faq summary{padding:14px 16px;cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--pink);font-weight:800}
.faq details[open] summary::after{content:"–"}
.faq details p{padding:0 16px 14px;margin:0;color:var(--ink-2)}

.ft{margin-top:34px;background:var(--ink);color:#e9e3cf;padding:30px 0 20px;font-size:14px}
.ft-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:28px}
.ft p{margin:10px 0 0;line-height:1.6;max-width:520px}
.ft h2{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:#a69f87;margin-bottom:10px}
.ft nav{display:flex;flex-direction:column;gap:7px}
.ft a{color:#fff;text-decoration:none}
.ft a:hover{color:var(--sun)}
.ft .logo b{color:#fff}
.ft-bar{margin-top:22px;padding-top:14px;border-top:1px solid #3a3424;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#a69f87;font-size:13px}

@media (max-width:980px){.cols{grid-template-columns:minmax(0,1fr)}.rail{position:static}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.hd .wrap{flex-wrap:wrap;gap:0;padding-top:10px}.nav{flex-basis:100%;margin:6px -24px 0;padding:0 16px 8px}.ft-grid{grid-template-columns:1fr 1fr}.ft-grid>div:first-child{grid-column:1/-1}}
@media (max-width:600px){.wrap{padding:0 16px}.nav{margin:6px -16px 0;padding:0 8px 8px}.art{padding:20px 18px;box-shadow:4px 4px 0 var(--ink)}.art p,.art li{font-size:16px}.grid{grid-template-columns:minmax(0,1fr)}.ft-grid{grid-template-columns:1fr}.list li{grid-template-columns:minmax(0,1fr)}}
.meme .mark{align-self:flex-start}
