/* ============================================================
   trashday.wiki — 「护林站告示板」皮肤（本作专属，勿与他站共用）
   母题：公园告示牌 + 拾荒清运手册 —— 纸卡、警示胶带、路标菱形、安全橙黄
   与官方美术对齐：白天卡通低多边形（蓝天/草地/红车/浣熊灰）
   ============================================================ */
:root{
  --sky:#eaf3f8; --sky-2:#dcecf4;
  --paper:#fffdf6; --paper-2:#f6efdd;
  --ink:#20303a; --ink-soft:#33474f; --muted:#607483;
  --grass:#2e7d4f; --grass-dk:#1d5c39; --pine:#173a2b;
  --wagon:#d5473a; --wagon-dk:#a83226;
  --sun:#f0a63c; --safety:#f7d354; --tape:rgba(247,211,84,.72);
  --line:#22333d; --hard:rgba(32,48,58,.16);
  --radius:14px; --radius-sm:9px; --maxw:1120px;
  --font:"Nunito",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --display:"Baloo 2","Nunito",system-ui,sans-serif;
  --mono:"Nunito",ui-monospace,Menlo,Consolas,monospace;
  color-scheme:light;
}
*{box-sizing:border-box}
html{background:var(--sky)}
body{margin:0;color:var(--ink-soft);font:17px/1.74 var(--font);background:var(--sky);
  -webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--grass-dk);text-decoration:none;text-underline-offset:3px}
a:hover{color:var(--wagon);text-decoration:underline}
a:focus-visible{outline:3px dashed var(--sun);outline-offset:2px}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}
.skip{position:absolute;left:-9999px}
.skip:focus{left:8px;top:8px;background:var(--safety);color:var(--ink);border:2px solid var(--line);padding:8px 12px;z-index:60}
.muted{color:var(--muted)}

/* ---------- ribbon（顶部条款条，如启用） ---------- */
.ribbon{background:var(--safety);border-bottom:2px solid var(--line)}
.ribbon .wrap{padding:8px 20px;font:800 13px/1.4 var(--font);color:var(--ink)}

/* ---------- topbar ---------- */
.topbar{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:3px solid var(--line)}
.topbar .bar{display:flex;align-items:center;gap:16px;min-height:66px}
.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font:800 21px/1 var(--display);letter-spacing:.01em}
.brand img{width:42px;height:42px;border-radius:10px;border:2px solid var(--line);box-shadow:0 3px 0 var(--hard)}
.brand span{white-space:nowrap}
.nav{margin-left:auto;display:flex;align-items:center;gap:12px}
.nav ul{display:flex;gap:4px;margin:0;padding:0;list-style:none;flex-wrap:wrap}
.nav li{position:relative}
.nav a{color:var(--ink);font:800 15px/1 var(--font);letter-spacing:.01em;padding:10px 11px;display:inline-block;
  border-radius:10px;white-space:nowrap}
.nav a:hover{background:var(--paper-2);text-decoration:none;color:var(--grass-dk)}
.nav .active > a{color:var(--grass-dk);background:var(--paper-2)}
.nav .kids{display:none;position:absolute;top:100%;left:0;min-width:238px;background:var(--paper);
  border:2px solid var(--line);padding:8px;border-radius:var(--radius-sm);flex-direction:column;
  box-shadow:0 6px 0 var(--hard)}
.nav .kids a{color:var(--ink);font:700 13.5px/1.35 var(--font);padding:8px 10px;border-radius:8px}
.nav .kids a:hover{background:var(--paper-2);color:var(--grass-dk)}
/* 下拉父项与面板之间禁止留死区：间距一变就必须同步加这条 hover 桥 */
.nav li.has-kids::after{content:"";position:absolute;left:-8px;right:-8px;top:100%;height:14px;z-index:39}
.nav li.has-kids > a::after{content:" ▾";opacity:.6}
.nav li.has-kids:hover .kids,.nav li.has-kids:focus-within .kids{display:flex}
.nav .cta{background:var(--wagon);color:#fff9ef;border:2px solid var(--line);box-shadow:0 4px 0 var(--hard);padding:9px 14px}
.nav .cta:hover{background:var(--wagon-dk);color:#fff}
@media (max-width:900px){
  .topbar .bar{flex-wrap:wrap;padding:10px 0}
  .nav{margin-left:0;width:100%;overflow-x:auto;gap:8px}
  .nav ul{flex-wrap:nowrap;white-space:nowrap}
  /* 窄屏不展开下拉子项（13 篇会顶掉首屏）—— Guides 直通 /guides/ 索引页 */
  .nav .kids{display:none}
  .nav li.has-kids > a::after{content:""}
  .nav .cta{box-shadow:none}
}

/* ---------- hero（告示板：官方大图 + 警示胶带压边 + 标题分行） ---------- */
.hero{position:relative;background:var(--hero) center/cover no-repeat,var(--pine)}
.hero::before{content:"";position:absolute;inset:0;
  background:linear-gradient(98deg,rgba(13,26,32,.82) 0%,rgba(13,26,32,.58) 42%,rgba(13,26,32,.2) 72%,rgba(13,26,32,.06) 100%)}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:10px;
  background:repeating-linear-gradient(45deg,var(--safety) 0 12px,var(--line) 12px 24px)}
.hero-in{position:relative;padding:86px 20px 72px;max-width:730px}
.eyebrow{display:inline-block;margin:0 0 16px;background:var(--safety);color:var(--ink);
  border:2px solid var(--line);border-radius:999px;padding:7px 13px;font:800 11.5px/1 var(--font);
  letter-spacing:.16em;text-transform:uppercase;transform:rotate(-1.4deg);box-shadow:0 3px 0 rgba(10,20,26,.35)}
.hero h1{font:800 clamp(42px,7.8vw,72px)/1 var(--display);letter-spacing:.005em;margin:0 0 8px;
  color:#fffdf4;text-shadow:0 4px 0 rgba(10,22,28,.4)}
.hero h1 .sub{display:block;font:700 clamp(18px,3.2vw,26px)/1.2 var(--display);color:var(--safety);
  margin-top:12px;text-shadow:none}
.lead{color:#e9f0e6;font-size:19px;max-width:56ch;margin:14px 0 0;
  text-shadow:0 1px 0 rgba(10,22,28,.45)}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.btn{display:inline-block;background:var(--wagon);color:#fff9ef;border:2px solid var(--line);
  font:800 15.5px/1 var(--font);padding:14px 19px;border-radius:12px;box-shadow:0 5px 0 var(--hard)}
.btn:hover{background:var(--wagon-dk);color:#fff;text-decoration:none;transform:translateY(1px);box-shadow:0 4px 0 var(--hard)}
.btn.ghost{background:rgba(23,58,43,.66);color:#f3f7ee;border-color:rgba(243,247,238,.6);box-shadow:none}
.btn.ghost:hover{background:rgba(23,58,43,.88);color:#fff}

/* ---------- facts strip（清运站值班牌） ---------- */
.facts-strip{background:var(--pine);border-bottom:3px solid var(--line)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:rgba(243,247,238,.18)}
.fact{background:var(--pine);padding:15px 16px}
.fact-k{display:block;font:800 11px/1.4 var(--font);letter-spacing:.15em;text-transform:uppercase;color:#a9cdb6}
.fact-v{display:block;margin-top:5px;font:700 22px/1.15 var(--display);color:#fffdf4;font-variant-numeric:tabular-nums}

/* ---------- section heads（路标菱形 + 虚线裁边） ---------- */
.section-head{margin:48px 0 6px}
.overline{display:inline-flex;align-items:center;gap:9px;font:800 11.5px/1 var(--font);
  letter-spacing:.18em;text-transform:uppercase;color:var(--grass-dk)}
.overline::before{content:"";width:10px;height:10px;background:var(--wagon);border:2px solid var(--line);
  border-radius:3px;transform:rotate(45deg)}
.section-head h2{font:700 clamp(25px,3.7vw,33px)/1.15 var(--display);margin:10px 0 0;padding-bottom:12px;
  color:var(--ink);border-bottom:2px dashed rgba(34,51,61,.3)}
.count-pill{font:800 13px/1 var(--font);color:var(--ink);background:var(--safety);border:2px solid var(--line);
  border-radius:999px;padding:4px 10px;margin-left:10px;vertical-align:middle}

/* ---------- 纸卡（贴胶带） ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(242px,1fr));gap:18px;margin:20px 0 8px}
.card{position:relative;display:flex;flex-direction:column;background:var(--paper);color:var(--ink);
  border:2px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 6px 0 var(--hard);
  transition:transform .12s ease,box-shadow .12s ease}
.card::before{content:"";position:absolute;top:9px;left:13px;width:58px;height:15px;background:var(--tape);
  border-left:2px solid rgba(34,51,61,.55);border-right:2px solid rgba(34,51,61,.55);
  transform:rotate(-4deg);z-index:2;border-radius:2px}
.card:hover{transform:translateY(-3px);box-shadow:0 9px 0 var(--hard);text-decoration:none}
.card .thumb{position:relative;display:block;background:var(--sky-2)}
.card .thumb img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block;border-bottom:2px solid var(--line)}
.pill-tag{position:absolute;left:9px;bottom:9px;background:var(--safety);color:var(--ink);
  border:2px solid var(--line);font:800 10.5px/1 var(--font);letter-spacing:.12em;text-transform:uppercase;
  padding:5px 9px;border-radius:999px}
.card-body{padding:14px 16px 16px}
.card h3{margin:0 0 7px;font:700 19px/1.25 var(--display);color:var(--ink)}
.card p{margin:0 0 10px;color:var(--muted);font-size:14.5px}
.card .go{color:var(--wagon-dk);font:800 12px/1 var(--font);letter-spacing:.06em;text-transform:uppercase}
a.card:hover h3{color:var(--grass-dk)}
.card .stamp{display:block;color:#8798a1;font:700 11.5px/1 var(--font);margin-top:10px}
.card.sm .card-body{padding:12px 14px 15px}
.card.sm h3{font-size:16.5px}
.all-guides{margin-top:56px}

/* ---------- article ---------- */
.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 248px;gap:46px;align-items:start;padding-top:22px}
article{padding:6px 0 48px;max-width:74ch}
article h1{font:800 clamp(30px,4.8vw,46px)/1.08 var(--display);color:var(--ink);margin:8px 0 10px}
article h2{margin-top:42px;font:700 26px/1.2 var(--display);color:var(--ink);padding-bottom:12px;
  border-bottom:2px dashed rgba(34,51,61,.3)}
article h3{margin-top:27px;font:700 20px/1.3 var(--display);color:var(--grass-dk)}
article p{margin:15px 0}
article ul,article ol{margin:15px 0;padding-left:24px}
article li{margin:8px 0}
article ul{list-style:none;padding-left:6px}
article ul li{position:relative;padding-left:22px}
article ul li::before{content:"";position:absolute;left:0;top:.56em;width:8px;height:8px;background:var(--sun);
  border:2px solid var(--line);border-radius:2px;transform:rotate(45deg)}
article ol li::marker{color:var(--wagon-dk);font-weight:800;font-family:var(--font)}
article img.zoom{border:2px solid var(--line);border-radius:12px;cursor:zoom-in;display:block;margin:20px 0;
  box-shadow:0 6px 0 var(--hard)}
article img.zoom.open{max-width:min(1200px,96vw)}
blockquote{border-left:5px solid var(--sun);margin:20px 0;padding:8px 18px;color:var(--ink-soft);
  background:var(--paper-2);border-radius:0 10px 10px 0}
code{font-family:var(--mono);background:#e7eef2;border:1px solid rgba(34,51,61,.25);padding:2px 6px;
  border-radius:6px;font-size:.92em}

/* 表格 = 清运清单纸 */
.tbl-wrap{overflow-x:auto;margin:20px 0;border:2px solid var(--line);border-radius:12px;background:var(--paper);
  box-shadow:0 6px 0 var(--hard)}
table{border-collapse:collapse;width:100%;font-size:15px;color:var(--ink)}
th,td{border-bottom:1px solid #d8ded2;padding:10px 12px;text-align:left;vertical-align:top}
th{background:var(--grass-dk);color:#f3f8ef;font:800 12.5px/1.3 var(--font);letter-spacing:.08em;text-transform:uppercase;
  border-bottom:2px solid var(--line)}
tbody tr:nth-child(even){background:#f8f5ea}
tbody tr:hover{background:var(--paper-2)}
td strong{color:var(--wagon-dk)}

/* callout = 告示牌贴条 */
.callout{border:2px solid var(--line);border-left:9px solid var(--sky-2);background:var(--paper);
  padding:13px 16px;margin:20px 0;border-radius:12px;box-shadow:0 5px 0 var(--hard)}
.callout p{margin:6px 0}
.callout p:first-child{margin-top:0}
.callout p:last-child{margin-bottom:0}
.callout strong{color:var(--ink)}
.callout.note{border-left-color:#4b9fd4}
.callout.tip{border-left-color:var(--grass)}
.callout.warning,.callout.warn{border-left-color:var(--wagon)}

/* quick answer / crumbs / toc */
.quick-answer{position:relative;background:var(--paper-2);border:2px solid var(--line);border-radius:var(--radius);
  padding:17px 19px 15px;margin:20px 0 28px;box-shadow:0 6px 0 var(--hard)}
.quick-answer::before{content:"";position:absolute;top:-2px;left:18px;width:64px;height:15px;background:var(--tape);
  border-left:2px solid rgba(34,51,61,.55);border-right:2px solid rgba(34,51,61,.55);transform:rotate(-3deg);
  border-radius:2px}
.qa-stamp{display:inline-block;font:800 11px/1 var(--font);letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink);background:var(--safety);border:2px solid var(--line);padding:5px 9px;border-radius:999px;
  transform:rotate(-1.2deg);margin:4px 0 8px}
.quick-answer p{margin:0;font-size:16.5px;color:var(--ink)}
.crumb{font:800 12px/1.5 var(--font);letter-spacing:.04em;color:var(--muted);padding-top:16px;display:block}
.crumb a{color:var(--muted)}
.crumb .here{color:var(--grass-dk)}
.crumb .sep{padding:0 7px;opacity:.55}
.toc{position:sticky;top:92px;margin-top:22px;background:var(--paper);border:2px solid var(--line);
  border-radius:12px;padding:15px 16px;box-shadow:0 6px 0 var(--hard)}
.toc .overline{display:block;margin-bottom:11px}
.toc-list{display:flex;flex-direction:column;gap:8px}
.toc-list a{color:var(--ink);font:700 14px/1.4 var(--font);padding-left:16px;position:relative}
.toc-list a::before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;background:var(--sun);
  border:2px solid var(--line);border-radius:2px;transform:rotate(45deg)}
.toc-list a:hover{color:var(--grass-dk);text-decoration:none}

/* ---------- footer（值班室门板） ---------- */
.foot{background:var(--pine);padding:28px 0 30px;margin-top:36px}
.foot::before{content:"";display:block;height:10px;
  background:repeating-linear-gradient(45deg,var(--safety) 0 12px,var(--line) 12px 24px);margin:-28px 0 26px}
.foot .muted{color:#9db8a9;font:700 12.5px/1.7 var(--font)}
.foot-links a{color:#f3f8ef;font:800 13.5px/1 var(--font)}
.foot-links{padding:14px 0}
.disclaimer{color:#b9cdc0;font-size:13.5px;max-width:88ch}

/* ---------- ad slot（Adsterra：桌面指针门控；移动端不加载） ---------- */
.ad-slot{margin:32px auto;max-width:var(--maxw)}
.ad-label{margin:0 0 8px;font:800 11px/1 var(--font);letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}
.ad-inner{min-height:90px;border:2px dashed rgba(34,51,61,.35);border-radius:12px;background:var(--paper);overflow:hidden}
@media (hover: hover) and (pointer: fine){ .ad-slot{display:block} }
@media not all and (hover: hover) and (pointer: fine){ .ad-slot{display:none} }

@media (max-width:860px){
  .article-grid{grid-template-columns:1fr;gap:0}
  .toc{position:static;margin:22px 0 0}
  .hero-in{padding:60px 20px 48px}
  .facts{grid-template-columns:repeat(auto-fit,minmax(136px,1fr))}
  .card:hover{transform:none}
}
