/* ============================================================
   truckful.wiki — 「乡野派件板」皮肤（本作专属，勿与他站共用）
   母题：牛皮纸派件票 + 虚线公路 + 路标圆点 + 仪表读数
   ============================================================ */
:root{
  --night:#141a21; --night-2:#1b232c; --panel:#1b232c;
  --paper:#f2e6cf; --paper-2:#e3d3b4; --paper-ink:#241c14;
  --ink:#efe5d2; --ink-dim:#9fadb8; --muted:#9fadb8;
  --rust:#cf5a2f; --rust-dk:#a4431f; --amber:#f0b357; --moss:#7d9a56; --teal:#4d929a;
  --line:#2b3742; --border:#2b3742; --hard:#0b1015;
  --radius:3px; --radius-sm:2px; --maxw:1120px;
  --font:"Source Sans 3",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --display:"Oswald","Arial Narrow",system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  color-scheme:dark;
}
*{box-sizing:border-box}
html{background:var(--night)}
body{margin:0;color:var(--ink);font:17px/1.72 var(--font);background:var(--night);
  -webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:var(--amber);text-decoration:none;text-underline-offset:3px}
a:hover{text-decoration:underline;color:var(--rust)}
a:focus-visible{outline:2px dashed var(--amber);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(--paper);color:var(--paper-ink);padding:8px 12px;z-index:50}
.muted{color:var(--ink-dim)}

/* 虚线公路：全站主分隔母题 */
.road{height:4px;background:repeating-linear-gradient(90deg,var(--line) 0 18px,transparent 18px 34px)}

/* ---------- ribbon ---------- */
.ribbon{background:var(--rust-dk);color:#fff8ec}
.ribbon .wrap{padding:7px 20px;font:600 13px/1.4 var(--mono);letter-spacing:.02em}

/* ---------- topbar ---------- */
.topbar{position:sticky;top:0;z-index:40;background:var(--night-2);
  border-bottom:4px solid transparent;
  border-image:repeating-linear-gradient(90deg,var(--rust) 0 16px,var(--amber) 16px 32px) 4}
.topbar .bar{display:flex;align-items:center;gap:16px;min-height:64px}
.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font:700 19px/1 var(--display);
  letter-spacing:.02em;text-transform:uppercase}
.brand img{width:40px;height:40px;border-radius:var(--radius);border:1px solid var(--line)}
.brand span{white-space:nowrap}
.nav{margin-left:auto;display:flex;align-items:center;gap:14px}
.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:600 15px/1 var(--display);letter-spacing:.04em;text-transform:uppercase;
  padding:10px 10px;display:inline-block;border-radius:var(--radius)}
.nav a:hover{background:#22303c;text-decoration:none;color:var(--paper)}
.nav .active > a{color:var(--amber)}
.nav .kids{display:none;position:absolute;top:100%;left:0;min-width:230px;background:var(--paper);
  border:1px solid #b9a888;padding:8px;border-radius:var(--radius);flex-direction:column;
  box-shadow:0 6px 0 rgba(0,0,0,.4)}
.nav .kids a{color:var(--paper-ink);font:600 13px/1.3 var(--mono);text-transform:none;padding:7px 9px}
.nav .kids a:hover{background:var(--paper-2);color:var(--rust-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:.7}
.nav li.has-kids:hover .kids,.nav li.has-kids:focus-within .kids{display:flex}
.nav .cta{background:var(--rust-dk);color:#fff8ec;border:2px solid var(--hard);font-family:var(--display);
  box-shadow:0 4px 0 var(--hard);padding:9px 14px}
.nav .cta:hover{background:#8d3717;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}
  .nav .kids{position:static;display:flex;border:0;box-shadow:none;background:transparent;padding:0 0 0 8px}
  .nav .kids a{color:var(--ink-dim)}
  .nav .cta{box-shadow:none}
}

/* ---------- hero ---------- */
.hero{position:relative;border-bottom:4px solid transparent;
  border-image:repeating-linear-gradient(90deg,var(--line) 0 18px,transparent 18px 34px) 4;
  background:var(--hero) center/cover no-repeat,var(--night-2)}
.hero::before{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(15,20,26,.90) 0%,rgba(15,20,26,.74) 40%,rgba(15,20,26,.38) 66%,rgba(15,20,26,.12) 100%)}
.hero-in{position:relative;padding:80px 20px 64px;max-width:760px}
.eyebrow{font:600 12px/1 var(--mono);letter-spacing:.22em;text-transform:uppercase;color:var(--amber);
  margin:0 0 14px}
.hero h1{font:700 clamp(38px,7.4vw,66px)/1 var(--display);text-transform:uppercase;letter-spacing:.01em;
  margin:0 0 6px;color:#fff8ec;text-shadow:0 3px 0 rgba(0,0,0,.45)}
.hero h1 .sub{display:block;font-size:clamp(17px,3.1vw,25px);font-weight:600;letter-spacing:.05em;
  color:var(--amber);text-transform:none;margin-top:12px}
.lead{color:#d7cdb9;font-size:18.5px;max-width:56ch}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.btn{display:inline-block;background:var(--rust-dk);color:#fff8ec;border:2px solid var(--hard);
  font:600 15px/1 var(--display);text-transform:uppercase;letter-spacing:.05em;padding:13px 18px;
  border-radius:var(--radius);box-shadow:0 5px 0 var(--hard)}
.btn:hover{background:#8d3717;color:#fff;text-decoration:none;transform:translateY(1px);box-shadow:0 4px 0 var(--hard)}
.btn.ghost{background:rgba(20,26,33,.72);color:var(--paper);border-color:rgba(242,230,207,.55);box-shadow:none}
.btn.ghost:hover{background:rgba(20,26,33,.9);color:#fff}

/* ---------- facts strip（仪表读数） ---------- */
.facts-strip{background:var(--night-2);border-bottom:1px solid var(--line)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:1px;background:var(--line)}
.fact{background:var(--night-2);padding:14px 16px}
.fact-k{display:block;font:600 11px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim)}
.fact-v{display:block;margin-top:5px;font:600 22px/1.15 var(--display);letter-spacing:.01em;color:var(--paper);
  font-variant-numeric:tabular-nums}

/* ---------- section heads（虚线公路 + 路标） ---------- */
.section-head{margin:44px 0 4px}
.overline{display:inline-flex;align-items:center;gap:8px;font:600 11.5px/1 var(--mono);
  letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}
.overline::before{content:"";width:9px;height:9px;border:2px solid var(--amber);border-radius:50%}
.section-head h2{font:700 clamp(24px,3.6vw,32px)/1.15 var(--display);text-transform:uppercase;
  letter-spacing:.01em;margin:10px 0 0;padding-bottom:12px;color:#fff8ec;
  border-bottom:4px solid transparent;
  border-image:repeating-linear-gradient(90deg,var(--line) 0 16px,transparent 16px 30px) 4}
.count-pill{font:600 13px/1 var(--mono);color:var(--night);background:var(--amber);
  border-radius:999px;padding:4px 9px;margin-left:10px;vertical-align:middle}

/* ---------- 派件单卡片 ---------- */
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(238px,1fr));gap:18px;margin:20px 0 8px}
.card{position:relative;display:flex;flex-direction:column;background:var(--paper);color:var(--paper-ink);
  border:1px solid #b9a888;border-left:5px solid var(--rust);border-radius:var(--radius);
  overflow:hidden;box-shadow:0 6px 0 rgba(0,0,0,.42)}
.card::before{content:"";position:absolute;left:11px;top:11px;width:11px;height:11px;border-radius:50%;
  background:var(--night);border:2px solid #b9a888;z-index:2}
.card:hover{transform:translateY(-2px);box-shadow:0 8px 0 rgba(0,0,0,.42);text-decoration:none}
.card .thumb{position:relative;display:block;background:var(--night-2)}
.card .thumb img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}
.pill-tag{position:absolute;left:8px;bottom:8px;background:var(--night);color:var(--paper);
  font:600 10.5px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;padding:5px 8px;
  border-radius:var(--radius-sm)}
.card-body{padding:13px 15px 16px}
.card h3{margin:0 0 7px;font:600 19px/1.2 var(--display);text-transform:uppercase;letter-spacing:.01em;
  color:var(--paper-ink)}
.card p{margin:0 0 10px;color:#4a3f31;font-size:14.5px}
.card .go{color:var(--rust-dk);font:600 12px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase}
.card .stamp{display:block;color:#5f5340;font:600 11px/1 var(--mono);margin-top:9px}
a.card:hover h3{color:var(--rust-dk)}
.card.sm .card-body{padding:11px 14px 14px}
.card.sm h3{font-size:16px}
.all-guides{margin-top:52px}

/* ---------- article ---------- */
.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 244px;gap:44px;align-items:start;
  padding-top:22px}
article{padding:6px 0 46px;max-width:74ch}
article h1{font:700 clamp(28px,4.6vw,44px)/1.1 var(--display);text-transform:uppercase;
  letter-spacing:.01em;color:#fff8ec;margin:6px 0 10px}
article h2{margin-top:40px;font:700 25px/1.2 var(--display);text-transform:uppercase;letter-spacing:.01em;
  color:#fff8ec;padding-bottom:12px;border-bottom:4px solid transparent;
  border-image:repeating-linear-gradient(90deg,var(--line) 0 16px,transparent 16px 30px) 4}
article h3{margin-top:26px;font:600 20px/1.25 var(--display);letter-spacing:.01em;color:var(--amber)}
article p{margin:14px 0}
article ul,article ol{margin:14px 0;padding-left:24px}
article li{margin:7px 0}
article ul{list-style:none;padding-left:6px}
article ul li{position:relative;padding-left:20px}
article ul li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;
  border:2px solid var(--moss)}
article ol li::marker{color:var(--amber);font-family:var(--mono);font-weight:600}
article img.zoom{border:1px solid #b9a888;border-radius:var(--radius);cursor:zoom-in;display:block;margin:18px 0;
  box-shadow:0 6px 0 rgba(0,0,0,.35)}
article img.zoom.open{max-width:min(1200px,96vw)}
blockquote{border-left:4px dashed var(--amber);margin:20px 0;padding:6px 18px;color:#d8cfbb;
  background:rgba(27,35,44,.6)}
code{font-family:var(--mono);background:#22303c;padding:2px 6px;border-radius:var(--radius-sm);font-size:.92em}

/* 表格 = 派件清单纸 */
.tbl-wrap{overflow-x:auto;margin:18px 0;border:1px solid #b9a888;border-radius:var(--radius);
  background:var(--paper);box-shadow:0 6px 0 rgba(0,0,0,.35)}
table{border-collapse:collapse;width:100%;font-size:15px;color:var(--paper-ink)}
th,td{border-bottom:1px solid #cdbb9b;padding:10px 12px;text-align:left;vertical-align:top}
th{background:var(--night-2);color:#fff3dd;font:600 12px/1.3 var(--mono);letter-spacing:.12em;
  text-transform:uppercase;border-bottom:2px solid var(--rust)}
tbody tr:nth-child(even){background:rgba(227,211,180,.42)}
tbody tr:hover{background:var(--paper-2)}
td strong{color:var(--rust-dk)}

/* callout = 派件单上的注意事项条 */
.callout{border-left:5px solid var(--teal);background:var(--paper);color:var(--paper-ink);
  padding:13px 16px;margin:20px 0;border-radius:0 var(--radius) var(--radius) 0;
  box-shadow:0 5px 0 rgba(0,0,0,.32)}
.callout p{margin:6px 0}
.callout p:first-child{margin-top:0}
.callout p:last-child{margin-bottom:0}
.callout strong{color:var(--rust-dk)}
.callout.warning,.callout.warn{border-left-color:var(--rust)}
.callout.tip{border-left-color:var(--moss)}
.callout.note{border-left-color:var(--teal)}

/* quick answer / crumbs / toc */
.quick-answer{position:relative;background:var(--paper);color:var(--paper-ink);border:1px solid #b9a888;
  border-radius:var(--radius);padding:16px 18px 14px;margin:20px 0 26px;box-shadow:0 6px 0 rgba(0,0,0,.35);
  border-top:4px solid var(--rust)}
.qa-stamp{display:inline-block;font:600 11px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;
  color:var(--rust-dk);border:2px solid var(--rust);padding:4px 8px;border-radius:var(--radius-sm);
  transform:rotate(-1.5deg);margin-bottom:8px}
.quick-answer p{margin:0;font-size:16.5px}
.crumb{font:600 12px/1 var(--mono);letter-spacing:.06em;color:var(--ink-dim);padding-top:16px;display:block}
.crumb a{color:var(--ink-dim)}
.crumb .here{color:var(--amber)}
.crumb .sep{padding:0 6px;opacity:.6}
.toc{position:sticky;top:88px;margin-top:22px;background:var(--night-2);border:1px solid var(--line);
  border-left:4px solid var(--rust);border-radius:var(--radius);padding:14px 16px}
.toc .overline{display:block;margin-bottom:10px}
.toc-list{display:flex;flex-direction:column;gap:7px}
.toc-list a{color:var(--ink);font:600 13.5px/1.35 var(--mono);padding-left:14px;position:relative}
.toc-list a::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;
  background:var(--amber)}
.toc-list a:hover{color:var(--amber);text-decoration:none}

/* ---------- footer ---------- */
.foot{border-top:4px solid transparent;
  border-image:repeating-linear-gradient(90deg,var(--line) 0 18px,transparent 18px 34px) 4;
  background:var(--night-2);padding:26px 0;margin-top:34px}
.foot .muted{color:var(--ink-dim);font:400 12.5px/1.6 var(--mono)}
.foot-links a{color:var(--ink);font:600 13px/1 var(--mono)}
.foot-links{padding:12px 0}
.disclaimer{color:#8b97a1;font-size:13px;max-width:88ch}

/* ---------- ad slot（Adsterra：桌面指针门控；移动端不加载） ---------- */
.ad-slot{margin:30px auto;max-width:var(--maxw)}
.ad-label{margin:0 0 8px;font:600 11px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim)}
.ad-inner{min-height:90px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--night-2);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:56px 20px 44px}
  .facts{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}
  .card:hover{transform:none}
}
