/* 百色市田阳区智析云科技 · 官网样式 v3.4「小店收银台」
   本站专用样式。概念:社区科技小店的柜台——出纸口走出一张小票,票头就是店名;
   一句大白话像小票一样逐字打出来;可下单的项目是一张张带撕口的取货票;
   业务是小票上的明细行;工商信息是一张长票;联系方式是撕下来的底联;页脚是票尾。
   分节标题印在票头上;票都靠首屏出纸口那条左轴,说明放在右边做旁注。
   ⚠ pay.php / return.php 仍使用 .hero .hero-bg .hero-inner .hero-solo .hero-sub .hero-actions
     .btn .btn-primary .btn-ghost .wrap,这些类名的规则不能删。 */
@font-face{font-family:"ZX Display";src:url("/assets/fonts/display.woff2") format("woff2");font-weight:500 900;font-display:swap}
:root{
  --bg:#f4f2ec;--bg-2:#e9e5da;--card:#ffffff;--receipt:#fffefa;
  --ink:#17172a;--ink-2:#45455a;--ink-3:#5d5d71;
  --line:#dfdace;--line-2:#c4beaf;
  --indigo:#3933ad;--indigo-ink:#2b2786;--indigo-soft:#e8e7fa;
  --wrap:1240px;--head:68px;
  --ease:cubic-bezier(.22,.8,.2,1);
  --sans:"Microsoft YaHei","PingFang SC","Hiragino Sans GB",-apple-system,"Segoe UI","Noto Sans CJK SC",Arial,sans-serif;
  --display:"ZX Display",var(--sans);
  --mono:ui-monospace,"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
  /* 小票撕口:底边朝下的锯齿 / 顶边朝上的锯齿 */
  --zig:conic-gradient(from -45deg at bottom,#0000,#000 1deg 90deg,#0000 91deg) bottom/14px 9px repeat-x;
  --zig-top:conic-gradient(from 135deg at top,#0000,#000 1deg 90deg,#0000 91deg) top/14px 9px repeat-x;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--head) + 18px);scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}
a{color:var(--indigo);text-decoration:none}
h1,h2,h3{margin:0;line-height:1.3;font-family:var(--display)}
p{margin:0;text-wrap:pretty}
.nw{white-space:nowrap}
.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 32px}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.02em}
.ph{color:var(--ink-3)}
:focus-visible{outline:2px solid var(--indigo);outline-offset:3px;border-radius:4px}
::selection{background:var(--indigo);color:#fff}

.link-u{color:var(--ink);font-weight:600;background:linear-gradient(var(--indigo),var(--indigo)) 0 100%/0% 2px no-repeat,linear-gradient(var(--line-2),var(--line-2)) 0 100%/100% 1px no-repeat;padding-bottom:2px;transition:background-size .35s var(--ease),color .2s}
.link-u:hover,.link-u:focus-visible{background-size:100% 2px,100% 1px;color:var(--indigo-ink)}
.link-hit{position:relative}
.link-hit::before{content:"";position:absolute;inset:-11px -6px}

/* ---------- 顶栏(不透明) ---------- */
.site-head{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid transparent;transition:border-color .3s}
.site-head.scrolled{border-bottom-color:var(--line)}
.site-head .head-inner{display:flex;align-items:center;justify-content:space-between;height:var(--head);gap:20px}
.brand{display:flex;align-items:center;min-height:44px;color:var(--ink);min-width:0}
.brand-name{font-family:var(--display);font-size:16px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.01em}
.brand-name::before{content:"";display:inline-block;width:16px;height:5px;border-radius:3px;background:var(--ink);margin-right:10px;vertical-align:3px;box-shadow:inset 0 -2px 0 #33334a}
.nav-links{display:flex;align-items:center;gap:2px}
.nav-links a{position:relative;display:inline-flex;align-items:center;min-height:44px;color:var(--ink-2);font-size:15px;padding:0 14px;transition:color .2s}
/* 当前分节:字下面一道短线,原地从中间展开 */
.nav-links a::after{content:"";position:absolute;left:50%;bottom:9px;width:22px;height:2px;margin-left:-11px;border-radius:1px;background:var(--indigo);transform:scaleX(0);transition:transform .28s var(--ease)}
.nav-links a:hover{color:var(--indigo-ink)}
.nav-links a.on{color:var(--indigo-ink);font-weight:700}
.nav-links a:hover::after,.nav-links a:focus-visible::after,.nav-links a.on::after{transform:scaleX(1)}
.nav-toggle{display:none;height:44px;padding:0 18px;border:1px solid var(--line-2);background:var(--card);border-radius:10px;box-shadow:0 3px 0 var(--line-2);color:var(--ink);font:inherit;font-size:14px;font-weight:700;letter-spacing:.12em;text-indent:.12em;cursor:pointer;transition:transform .1s,box-shadow .1s,color .2s,border-color .2s}
.nav-toggle:hover{border-color:var(--indigo);color:var(--indigo-ink)}
.nav-toggle[aria-expanded="true"]{transform:translateY(2px);box-shadow:0 1px 0 var(--line-2);color:var(--indigo-ink)}

/* ---------- 按钮:收银机按键(硬底边,按下沉下去) ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;height:50px;padding:0 28px;border-radius:10px;border:1px solid transparent;font-size:15px;font-weight:700;white-space:nowrap;cursor:pointer;text-decoration:none!important;transition:background .2s,color .2s,border-color .2s,transform .1s,box-shadow .1s}
.btn-primary{background:var(--indigo);color:#fff;box-shadow:0 4px 0 var(--indigo-ink)}
.btn-primary:hover{background:#4640bf}
.btn-primary:active{transform:translateY(3px);box-shadow:0 1px 0 var(--indigo-ink)}
.btn-ghost{background:var(--card);color:var(--ink);border-color:var(--line-2);box-shadow:0 4px 0 var(--line-2)}
.btn-ghost:hover{border-color:var(--indigo);color:var(--indigo-ink)}
.btn-ghost:active{transform:translateY(3px);box-shadow:0 1px 0 var(--line-2)}
.btn-brand{background:var(--indigo);color:#fff}
.btn-sm{height:40px;padding:0 16px;font-size:14px}

/* ---------- 开头:左边出纸口走出的小票(票头=店名),右边一句大白话 ---------- */
.intro{padding:56px 0 88px}
.intro-grid{display:grid;grid-template-columns:minmax(0,460px) minmax(0,1fr);gap:80px;align-items:center}
.intro-big{font-family:var(--display);font-size:clamp(34px,3.9vw,54px);font-weight:700;line-height:1.24;letter-spacing:-.01em;color:var(--ink)}
.intro-big .pl{display:block}
.intro-big .pl>span{display:inline-block;white-space:nowrap}
.intro-lead{margin-top:26px;font-size:17px;line-height:1.9;color:var(--ink-2);max-width:30em}
.intro-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:36px}

.receipt{position:relative;padding-top:6px}
.intro .receipt{margin-left:12px}
.rc-slot{position:absolute;left:-12px;right:-12px;top:0;height:16px;border-radius:9px;background:var(--ink);box-shadow:inset 0 -5px 0 #33334a;z-index:2}
.rc-feed{position:relative;margin:8px 8px 0;overflow:hidden;padding-bottom:28px;filter:drop-shadow(0 14px 18px rgba(23,23,42,.16)) drop-shadow(0 1px 1px rgba(23,23,42,.12));z-index:1}
.rc-paper{background:var(--receipt);padding:28px 26px 36px;font-size:15px;-webkit-mask:linear-gradient(#000,#000) top/100% calc(100% - 9px) no-repeat,var(--zig);mask:linear-gradient(#000,#000) top/100% calc(100% - 9px) no-repeat,var(--zig)}
.rc-title{text-align:center;font-size:19px;font-weight:800;letter-spacing:.06em;line-height:1.5}
.rc-title span{display:block}
.rc-sub{text-align:center;font-size:12.5px;color:var(--ink-3);margin-top:6px;letter-spacing:.12em}
.rc-paper dl,.stub dl{margin:16px 0 0;border-top:1.5px dashed var(--line-2)}
.rc-paper dl div,.stub dl div{padding:10px 0;border-bottom:1.5px dashed var(--line-2)}
.rc-paper dt,.stub dt{font-size:12.5px;color:var(--ink-3)}
.rc-paper dd,.stub dd{margin:2px 0 0;color:var(--ink);line-height:1.65}
.rc-row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px}
.rc-row dt{flex:none;white-space:nowrap}
.rc-row dd{margin:0 0 0 auto;text-align:right;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em}
.rc-row dd.mono{font-family:var(--mono)}

/* ---------- 分节 ---------- */
.sec{padding:84px 0}
.sec-alt{background:var(--bg-2)}
.sec-title{font-size:clamp(26px,2.8vw,34px);font-weight:700;margin-bottom:26px;letter-spacing:-.01em}
.sec-title::after{content:"";display:block;width:44px;margin-top:12px;border-bottom:2px dashed var(--indigo)}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:40px;align-items:end;margin-bottom:34px}
.sec-head .sec-title{margin:0}
.sec-head .sec-lead{margin:0}
.sec-lead{color:var(--ink-2);margin-bottom:26px;max-width:42em}
.note{margin-top:22px;font-size:14px;color:var(--ink-3)}
.note .link-u{display:inline-block;line-height:1.6}
/* 宽屏:左边标题栏(随滚动停住),右边一张票 */
.split-head .sec-lead{margin:0;text-wrap:balance}
.sec-title.slip-title{text-align:center;font-size:clamp(20px,2vw,24px);font-weight:800;letter-spacing:.12em;text-indent:.12em;margin:0 0 14px;padding-bottom:12px;border-bottom:1.5px dashed var(--line-2)}
.sec-title.slip-title::after{display:none}

/* ---------- 业务:印在一张小票上的明细(「项目 / 计价」两栏,说明另起一行) ---------- */
.slip-wrap{max-width:760px;filter:drop-shadow(0 1px 0 var(--line-2)) drop-shadow(0 10px 16px rgba(23,23,42,.07))}
.biz-paper{background:var(--receipt);padding:22px 28px 34px;-webkit-mask:linear-gradient(#000,#000) top/100% calc(100% - 9px) no-repeat,var(--zig);mask:linear-gradient(#000,#000) top/100% calc(100% - 9px) no-repeat,var(--zig)}
.biz-head{display:flex;justify-content:space-between;font-size:13px;color:var(--ink-3);letter-spacing:.12em;padding-bottom:8px;border-bottom:1.5px dashed var(--line-2)}
.biz{list-style:none;margin:0;padding:0}
.biz li{padding:18px 0 16px;border-bottom:1.5px dashed var(--line-2)}
.biz li:last-child{border-bottom:0;padding-bottom:4px}
.biz-line{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.biz h3{font-size:20px;font-weight:800}
.biz-tag{font-size:14px;font-weight:700;color:var(--indigo-ink);white-space:nowrap}
.biz p{margin-top:6px;color:var(--ink-2);font-size:15px;max-width:40em}

/* ---------- 取货票:整张可点;撕口用遮罩,投影放在外层 ---------- */
.goods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.good{--stub:112px;--notch:10px;display:flex;color:inherit;filter:drop-shadow(0 1px 0 var(--line-2)) drop-shadow(0 6px 12px rgba(23,23,42,.06))}
.good:focus-visible{border-radius:14px;outline-offset:3px}
@media (min-width:1041px){.good{--stub:100px}}
.good-in{flex:1 1 auto;display:grid;grid-template-columns:minmax(0,1fr) var(--stub);min-height:132px;background:var(--card);border-radius:14px;-webkit-mask:radial-gradient(circle var(--notch) at calc(100% - var(--stub)) 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle var(--notch) at calc(100% - var(--stub)) 100%,#0000 98%,#000) bottom/100% 51% no-repeat;mask:radial-gradient(circle var(--notch) at calc(100% - var(--stub)) 0,#0000 98%,#000) top/100% 51% no-repeat,radial-gradient(circle var(--notch) at calc(100% - var(--stub)) 100%,#0000 98%,#000) bottom/100% 51% no-repeat}
.good-main{display:flex;flex-direction:column;padding:18px 18px 18px 20px;min-width:0}
.good-sn{font-family:var(--mono);font-size:12px;color:var(--ink-3);letter-spacing:.06em}
.good-name{font-family:var(--display);font-size:17px;font-weight:800;margin:2px 0 6px;color:var(--ink)}
.good-desc{font-size:14px;color:var(--ink-2);line-height:1.7;text-wrap:pretty}
/* 悬停:撕口线变靛蓝,票根从下往上填色;按下时「下单」键沉下去 */
.good-stub{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:16px 10px;border-left:2px dashed var(--line-2);background:linear-gradient(var(--indigo-soft),var(--indigo-soft)) 0 100%/100% 0% no-repeat;transition:background-size .35s var(--ease),border-color .2s}
.good:hover .good-stub,.good:focus-visible .good-stub{background-size:100% 100%;border-left-color:var(--indigo)}
.good-price{font-family:var(--display);font-size:28px;font-weight:900;color:var(--indigo-ink);font-variant-numeric:tabular-nums;line-height:1}
.good-go{display:inline-flex;align-items:center;height:40px;padding:0 18px;border-radius:9px;background:var(--card);color:var(--indigo-ink);border:1px solid var(--line-2);font-size:14px;font-weight:700;box-shadow:0 3px 0 var(--line-2);transition:transform .1s,box-shadow .1s,background-color .2s,color .2s,border-color .2s}
.good:focus-visible .good-go{background:var(--indigo);border-color:var(--indigo);color:#fff;box-shadow:0 3px 0 var(--indigo-ink)}
@media (hover:hover){.good:hover .good-go{background:var(--indigo);border-color:var(--indigo);color:#fff;box-shadow:0 3px 0 var(--indigo-ink)}}
@media (hover:none){.good:active .good-stub{background-size:100% 100%;border-left-color:var(--indigo);transition-duration:.06s}}
.good:active .good-go{transform:translateY(2px);box-shadow:0 1px 0 var(--indigo-ink)}
.goods-empty{color:var(--ink-3)}
.stub-notes{margin-top:30px;padding-top:16px;border-top:1.5px dashed var(--line-2);display:grid;gap:4px;font-size:14px;color:var(--ink-2)}
.stub-notes p{position:relative;padding-left:16px}
.stub-notes p::before{content:"·";position:absolute;left:0;top:0;color:var(--indigo);font-weight:900}

/* ---------- 工商信息:一张长票 ---------- */
.slip-long{background:var(--receipt);padding:27px 28px 34px;-webkit-mask:var(--zig-top),var(--zig),linear-gradient(#000,#000) center/100% calc(100% - 18px) no-repeat;mask:var(--zig-top),var(--zig),linear-gradient(#000,#000) center/100% calc(100% - 18px) no-repeat}
.table-wrap{overflow-x:auto}
table.info{width:100%;border-collapse:collapse;font-size:15px}
table.info th{width:132px;text-align:left;font-weight:500;color:var(--ink-3);font-size:14px;padding:12px 16px 12px 0;border-bottom:1.5px dashed var(--line-2);vertical-align:top}
table.info td{padding:12px 0;border-bottom:1.5px dashed var(--line-2)}
table.info td.scope{font-size:14px;color:var(--ink-2);line-height:1.8}

/* ---------- 联系:撕下来的底联(顶边是撕口) ---------- */
.stub-wrap{max-width:520px;filter:drop-shadow(0 1px 0 var(--line-2)) drop-shadow(0 10px 16px rgba(23,23,42,.07))}
.stub{background:var(--receipt);padding:22px 26px 20px;-webkit-mask:var(--zig-top),linear-gradient(#000,#000) bottom/100% calc(100% - 9px) no-repeat;mask:var(--zig-top),linear-gradient(#000,#000) bottom/100% calc(100% - 9px) no-repeat}
.stub dl{border-top:0}
.stub dl div:last-child{border-bottom:0}
.stub dd{font-size:16px}
.stub .rc-row dd{font-weight:400}
.stub dd.ph{color:var(--ink-3);font-size:15px;letter-spacing:.12em}

/* ---------- 页脚:票尾(撕口在上,居中逐行) ---------- */
.site-foot{padding:28px 0 0;filter:drop-shadow(0 -1px 0 var(--line-2)) drop-shadow(0 -6px 14px rgba(23,23,42,.05))}
.foot-inner{max-width:460px;margin:0 auto;background:var(--receipt);padding:38px 28px 40px;font-size:14px;color:var(--ink-2);text-align:center;line-height:2;-webkit-mask:var(--zig-top),linear-gradient(#000,#000) bottom/100% calc(100% - 9px) no-repeat;mask:var(--zig-top),linear-gradient(#000,#000) bottom/100% calc(100% - 9px) no-repeat}
.foot-rows{margin:0 0 10px;text-align:left}
.foot-rows .rc-row{padding:8px 0;border-bottom:1.5px dashed var(--line-2)}
.foot-rows dt{font-size:13px;color:var(--ink-3)}
.foot-rows .rc-row dd{font-weight:500}
.foot-name{font-family:var(--display);font-weight:800;color:var(--ink);font-size:15px;padding-bottom:10px;margin-bottom:10px!important;border-bottom:1.5px dashed var(--line-2)}
.site-foot a{color:var(--ink-2);background:linear-gradient(var(--indigo),var(--indigo)) 0 100%/0% 1px no-repeat,linear-gradient(var(--line-2),var(--line-2)) 0 100%/100% 1px no-repeat;transition:background-size .3s var(--ease),color .2s}
.site-foot a:hover,.site-foot a:focus-visible{background-size:100% 1px,100% 1px;color:var(--indigo-ink)}

/* ---------- 付款页 / 回跳页 / 404 共用的提示块 ---------- */
.hero{position:relative;background:var(--bg-2);border-bottom:1px solid var(--line);color:var(--ink)}
.hero-bg{display:none}
.hero-inner{max-width:var(--wrap);margin:0 auto;padding:84px 32px}
.hero-inner.hero-solo{display:block;max-width:720px}
.hero h1{font-family:var(--display);font-size:32px;font-weight:900;color:var(--ink)}
.hero-sub{color:var(--ink-2);font-size:16px;line-height:1.9;max-width:560px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
/* PHP 里写死的标题色原本配深色底,这里映射成浅底可读的颜色 */
.hero h1[style*="#fca5a5"]{color:#b42318!important}
.hero h1[style*="#86efac"]{color:var(--indigo-ink)!important}
.hero h1[style*="#6ee7b7"]{color:#15803d!important}
.hero h1[style*="#fbbf24"]{color:#b45309!important}

.hero{min-height:100vh!important;min-height:100svh!important;display:flex;flex-direction:column;justify-content:center;background:none;border:0;padding:40px 16px max(80px,10vh);filter:drop-shadow(0 12px 16px rgba(23,23,42,.12))}
.hero-sub{text-wrap:balance;word-break:keep-all;overflow-wrap:break-word;overflow-wrap:anywhere}
.hero .hero-inner.hero-solo::before{content:"百色市田阳区智析云科技有限公司";display:block;font-family:var(--display);font-weight:800;font-size:15px;letter-spacing:.04em;color:var(--ink);padding-bottom:12px;margin-bottom:22px;border-bottom:1.5px dashed var(--line-2)}
.hero::before{content:"";position:relative;z-index:1;display:block;max-width:484px;height:16px;margin:0 auto -6px;border-radius:9px;background:var(--ink);box-shadow:inset 0 -5px 0 #33334a}
.hero .hero-inner.hero-solo{max-width:460px;padding:44px 28px 52px!important;background:var(--receipt);-webkit-mask:linear-gradient(#000,#000) top/100% calc(100% - 9px) no-repeat,var(--zig);mask:linear-gradient(#000,#000) top/100% calc(100% - 9px) no-repeat,var(--zig)}

/* ---------- 404:打出一张「查无此页」的小票 ---------- */
body.p404{min-height:100vh;display:flex;flex-direction:column}
body.p404 main{flex:1;display:flex;align-items:center;padding:56px 0}
.p404 .receipt{max-width:420px;margin:0 auto;width:100%}
.p404 .rc-paper{text-align:center;padding:30px 26px 40px}
.p404-code{font-family:var(--mono);font-size:13px;color:var(--ink-3);letter-spacing:.2em}
.p404 h1{font-size:clamp(26px,3.4vw,34px);font-weight:900;margin:10px 0 8px}
.p404 .rc-paper p{color:var(--ink-2)}
.p404 .btn{margin-top:22px}

/* ---------- 入场编排(只在首屏,一次性;减少动态时整段关闭)
   先走纸(按行一格一格吐出来),再逐字打出那句话 ---------- */
@media (prefers-reduced-motion:no-preference){
  .js .rc-feed>.rc-paper{animation:zx-feed 1s steps(16,end) .1s both}
  .js .intro-big .pl>span{animation:zx-type .3s steps(6,end) .45s both}
  .js .intro-big .pl:nth-child(2)>span{animation-duration:.35s;animation-timing-function:steps(7,end);animation-delay:.8s}
  .js .intro-big .pl:nth-child(3)>span{animation-duration:.35s;animation-timing-function:steps(7,end);animation-delay:1.2s}
  .js .intro-lead{animation:zx-fade .45s ease 1.55s both}
  .js .intro-actions{animation:zx-fade .45s ease 1.65s both}
}
@keyframes zx-type{from{clip-path:inset(-10% 100% -10% 0)}to{clip-path:inset(-10% 0 -10% 0)}}
@keyframes zx-fade{from{opacity:0}to{opacity:1}}
@keyframes zx-feed{from{transform:translateY(-101%)}to{transform:none}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important;animation:none!important}
}

/* ---------- 宽屏:票占前两列(和首屏出纸口同一条左轴),旁注占第三列;和取货票同一套三列网格(间距 18px 要和 .goods 一起改) ---------- */
@media (min-width:1041px){
  .split{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:18px;align-items:start}
  .split>:first-child{grid-column:1 / 3}
  .split-head{grid-column:3;position:sticky;top:calc(var(--head) + 28px);padding-left:24px}
  .slip-wrap{max-width:none}
  .sec-head{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:18px}
  .sec-head .sec-lead{grid-column:2 / -1}
  /* 导航当前项:按下去的收银键;其余仍是文字 */
  .nav-links a.on{background:var(--card);border-radius:8px;box-shadow:inset 0 0 0 1px var(--line-2),0 1px 0 var(--line-2);transform:translateY(1px)}
  .nav-links a.on::after{transform:scaleX(0)}
}
@media (min-width:901px) and (max-width:1040px){
  .sec-head{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px}
}
@media (min-width:901px) and (max-width:1100px){
  .intro-grid{grid-template-columns:minmax(0,410px) minmax(0,1fr);gap:56px}
}

/* ---------- 窄屏 ---------- */
@media (max-width:1040px){
  .goods{grid-template-columns:repeat(2,minmax(0,1fr))}
  .goods>.good:last-child:nth-child(odd){grid-column:1 / -1;justify-self:center;width:calc(50% - 9px)}
  .split-head{margin-top:22px;max-width:760px}
  .slip-long{max-width:760px}
}
@media (max-width:900px){
  html:not(.js) .site-head .head-inner{flex-wrap:wrap;height:auto;padding-top:12px;padding-bottom:6px}
  html:not(.js) .nav-links{flex-wrap:wrap;margin-left:-14px}
  .js .nav-toggle{display:block}
  /* 手机菜单:从顶栏下面吐出一张带撕口的小票 */
  .js .nav-links{position:absolute;left:0;right:0;top:var(--head);background:var(--receipt);flex-direction:column;align-items:stretch;padding:6px 18px 30px;-webkit-mask:linear-gradient(#000,#000) top/100% calc(100% - 9px) no-repeat,var(--zig);mask:linear-gradient(#000,#000) top/100% calc(100% - 9px) no-repeat,var(--zig);clip-path:inset(0 0 100% 0);visibility:hidden;transition:clip-path .3s steps(6,end),visibility 0s .3s}
  .js .nav-links.open{clip-path:inset(0 0 0 0);visibility:visible;transition:clip-path .3s steps(6,end)}
  .js .site-head::before{content:"";position:fixed;left:0;right:0;top:var(--head);bottom:0;background:rgba(23,23,42,.32);opacity:0;visibility:hidden;transition:opacity .25s,visibility 0s .25s}
  .menu-open .site-head::before{opacity:1;visibility:visible;transition:opacity .25s}
  .js .nav-links a{min-height:56px;padding:0 4px;font-family:var(--display);font-size:19px;font-weight:800;color:var(--ink);border-bottom:1.5px dashed var(--line-2)}
  .js .nav-links a:last-child{border-bottom:0}
  .js .nav-links a::after{display:none}
  .js .nav-links a.on{color:var(--indigo)}
  .js .nav-links a:hover{color:var(--indigo-ink)}
  .sec-head{grid-template-columns:1fr;gap:12px}
  /* 首屏改单列:先出小票(票头=店名),再那句话;小票和文字同一条左轴 */
  .intro-grid{grid-template-columns:1fr;gap:44px}
  .intro-big{font-size:clamp(34px,7vw,56px)}
  .intro .receipt{max-width:440px;width:100%;justify-self:start;margin-left:12px}
}
@media (max-width:760px){
  .goods{grid-template-columns:1fr}
  .goods>.good:last-child:nth-child(odd){grid-column:auto;justify-self:stretch;width:auto}
}
@media (max-width:600px){
  .wrap{padding:0 18px}
  .brand-name{font-size:14px}
  .intro{padding:36px 0 60px}
  .intro-big{font-size:clamp(30px,9.6vw,44px)}
  .intro-lead{font-size:16px}
  .intro-actions{gap:14px}
  .rc-slot{left:-6px;right:-6px}
  .intro .receipt{margin:0 6px;width:auto;max-width:440px;justify-self:stretch}
  .intro .rc-paper{padding:20px 20px 28px}
  .intro .rc-paper dl>div:not(.rc-row){display:none}
  .rc-title{font-size:17px}
  .split-head{margin-top:18px}
  .biz-paper{padding:16px 16px 28px}
  .slip-long{padding:21px 16px 30px}
  .foot-inner{padding:32px 16px 36px}
  .hero{padding:36px 12px 56px}
  .hero .hero-inner.hero-solo{padding:36px 18px 44px!important;width:calc(100% - 16px)}
  .hero .hero-inner.hero-solo::before{font-size:14px}
  .sec{padding:56px 0}
  /* 取货票压紧:整张票就是链接,票根里只留价钱和一个「下单 ›」 */
  .goods{gap:12px}
  .good{--stub:92px}
  .good-in{min-height:0}
  .good-main{padding:14px 14px 15px 16px}
  .good-name{font-size:16px;margin:1px 0 4px}
  .good-desc{font-size:13.5px;line-height:1.65}
  .good-stub{gap:6px;padding:12px 8px}
  .good-price{font-size:26px}
  .good-go{height:auto;padding:0;border:0;background:none!important;box-shadow:none!important;color:var(--indigo-ink)!important;font-size:13px}
  .good-go::after{content:"";width:5px;height:5px;margin-left:5px;border:solid currentColor;border-width:1.5px 1.5px 0 0;transform:rotate(45deg)}
  .biz h3{font-size:18px}
  /* 工商信息:标签在上、值在下 */
  table.info,table.info tbody,table.info th,table.info td{display:block;width:auto}
  table.info tr{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 12px;padding:11px 0;border-bottom:1.5px dashed var(--line-2)}
  table.info th,table.info td{padding:0;border:0}
  table.info th{font-size:13px;flex:none}
  table.info td{margin-left:auto;text-align:right}
  table.info tr:nth-child(7),table.info tr:nth-child(8){display:block}
  table.info tr:nth-child(7) th,table.info tr:nth-child(8) th{margin-bottom:2px}
  table.info tr:nth-child(7) td,table.info tr:nth-child(8) td{text-align:left}
  .stub{padding:20px 18px 16px}
  .stub dd{font-size:15px}
  .hero-inner{padding:56px 18px}
  .hero h1{font-size:25px}
}
@media (max-width:360px){
  .brand-name{font-size:13px;letter-spacing:0}
  .brand-name::before{margin-right:7px}
}
@media (max-width:340px){
  .brand-name{font-size:12.5px}
  .brand-name::before{display:none}
}
