/* ═══════════════════════════════════════════════════════════════
   series/ 共用樣式 —— 「一個企劃一頁」的手機優先銷售頁（2026-09-27）
   跟主站同一套 CIS：宣紙底、粉紫玻璃、思源宋體標題。
   設計寬度 390px；所有區塊左右 18px 留白；按鈕最矮 52px。
   ═══════════════════════════════════════════════════════════════ */
:root{
  --paper:#f7f2fb;--ink:#2a2140;--ink-2:#5b5273;--cin:#a25cc7;--gold:#d86fa6;
  --line:rgba(162,92,199,.18);--glass:rgba(255,255,255,.55);--glass-2:rgba(255,255,255,.35);
  --grad:linear-gradient(135deg,#ff9ecf 0%,#b48cff 55%,#7fd3ff 100%);
  --night:#1a1030;--night-2:#2a1b4d;
  --serif:"Noto Serif TC","Songti TC",serif;--sans:"Noto Sans TC","PingFang TC",system-ui,sans-serif;
  --radius:22px;--gutter:18px;
  --hl:rgba(255,158,207,.55);--hl-2:rgba(180,140,255,.14);--key-bg:rgba(255,255,255,.72);
  /* 報告雜誌色票：每章輪一個主色；宮位／星曜標籤色；四化四色 */
  --c1:#d86fa6;--c2:#8b6fd8;--c3:#3fa7c9;--c4:#e0935a;--c5:#5aa876;--c6:#c85a7a;
  --pal-bg:rgba(139,111,216,.14);--pal-fg:#6a4fc0;--star-bg:rgba(216,111,166,.14);--star-fg:#b04a86;
  --lu:#2f9e6a;--quan:#d6533f;--ke:#3b82c4;--ji:#6b5b73;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans);overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(60% 40% at 15% 10%,rgba(255,158,207,.35),transparent 70%),
             radial-gradient(50% 40% at 90% 30%,rgba(180,140,255,.35),transparent 70%),
             radial-gradient(60% 50% at 50% 100%,rgba(127,211,255,.25),transparent 70%)}
img,video{display:block;max-width:100%}
button{font:inherit;cursor:pointer}
a{color:var(--cin)}
h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;line-height:1.35;letter-spacing:.02em}
h2{font-size:24px}
p{margin:0}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ── 頂部列 ── */
.s-top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 var(--gutter);
  background:rgba(247,242,251,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.s-top b{font-family:var(--serif);font-size:17px;letter-spacing:.06em}
.s-top a{font-size:13px;text-decoration:none;color:var(--ink-2)}
.s-demo{position:fixed;right:12px;top:64px;z-index:30;background:#2a1b4d;color:#ffd0ec;font-size:11px;padding:6px 10px;border-radius:999px;letter-spacing:.08em;opacity:.9}

/* ── 區塊 ── */
.s-sec{padding:34px var(--gutter)}
.s-sec+.s-sec{padding-top:6px}
.s-kicker{font-size:12px;letter-spacing:.2em;color:var(--cin);margin-bottom:8px;font-weight:600}
.s-lead{color:var(--ink-2);margin-top:10px;font-size:15px}
.s-glass{background:var(--glass);border:1px solid rgba(255,255,255,.7);border-radius:var(--radius);
  box-shadow:0 10px 30px rgba(120,80,170,.12);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:20px}

/* ── 影片區（首屏／處境／轉變） ── */
.s-hero{position:relative;margin:0;background:var(--night);color:#fff}
.s-hero .s-vid{position:relative;aspect-ratio:4/5;overflow:hidden}
.s-hero video,.s-hero img.poster{width:100%;height:100%;object-fit:cover}
.s-hero .s-vid::after{content:"";position:absolute;inset:auto 0 0 0;height:62%;
  background:linear-gradient(to top,rgba(26,16,48,.98) 0%,rgba(26,16,48,.75) 45%,transparent 100%)}
.s-hero .s-copy{position:absolute;left:0;right:0;bottom:0;padding:0 var(--gutter) 26px;z-index:2}
.s-hero h1{font-size:30px;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.4)}
.s-hero .s-sub{margin-top:10px;color:rgba(255,255,255,.82);font-size:15px}
.s-hero .s-btn{margin-top:18px;width:100%}
.s-clip{margin:0;border-radius:var(--radius);overflow:hidden;background:var(--night);position:relative}
.s-clip video,.s-clip img{width:100%;aspect-ratio:1/1;object-fit:cover}
.s-clip.tall video,.s-clip.tall img{aspect-ratio:4/5}
.s-clip figcaption{position:absolute;left:0;right:0;bottom:0;padding:18px;color:#fff;font-family:var(--serif);font-size:20px;
  background:linear-gradient(to top,rgba(26,16,48,.92),transparent)}

/* ── 按鈕 ── */
.s-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 22px;border:0;border-radius:999px;
  background:var(--grad);color:#fff;font-weight:700;font-size:16px;letter-spacing:.04em;box-shadow:0 10px 24px rgba(180,120,220,.35);text-decoration:none}
.s-btn:active{transform:translateY(1px)}
.s-btn.ghost{background:var(--glass);color:var(--cin);border:1px solid var(--line);box-shadow:none}
.s-btn[disabled]{opacity:.55;pointer-events:none}
.s-dock{position:fixed;left:0;right:0;bottom:0;z-index:25;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));
  background:rgba(247,242,251,.8);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);
  transform:translateY(110%);transition:transform .35s}
.s-dock.on{transform:none}
.s-dock .s-btn{width:100%}
body.has-dock{padding-bottom:84px}

/* ── 信任小列 ── */
.s-trust{display:flex;align-items:center;gap:10px;padding:14px var(--gutter);font-size:14px;color:var(--ink-2);border-bottom:1px solid var(--line)}
.s-trust i{width:8px;height:8px;border-radius:50%;background:#ff7ec2;box-shadow:0 0 0 4px rgba(255,126,194,.25);animation:s-pulse 1.8s infinite}
@keyframes s-pulse{50%{box-shadow:0 0 0 8px rgba(255,126,194,.08)}}
.s-trust[hidden]{display:none}

/* ── 四宮卡 ── */
.s-cards{display:grid;gap:14px;margin-top:18px}
.s-card{background:var(--glass);border:1px solid rgba(255,255,255,.7);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(120,80,170,.12)}
.s-card img{width:100%;aspect-ratio:3/2;object-fit:cover}
.s-card .s-cb{padding:14px 16px 16px}
.s-card h3{font-size:18px;display:flex;align-items:baseline;gap:8px}
.s-card h3 small{font:600 12px/1 var(--sans);letter-spacing:.14em;color:var(--cin)}
.s-card p{margin-top:6px;color:var(--ink-2);font-size:14px}
.s-card .s-star{margin-top:8px;font-size:13px;color:var(--cin);min-height:1.2em}

/* ── 大限時間軸 ── */
.s-tl{margin-top:18px;display:flex;gap:10px;overflow-x:auto;padding:6px 2px 14px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.s-tl::-webkit-scrollbar{display:none}
.s-tl .s-dec{flex:0 0 108px;scroll-snap-align:start;background:var(--glass-2);border:1px solid var(--line);border-radius:18px;padding:12px 10px;text-align:center;position:relative}
.s-tl .s-dec b{display:block;font-family:var(--serif);font-size:17px}
.s-tl .s-dec span{display:block;font-size:12px;color:var(--ink-2);margin-top:2px}
.s-tl .s-dec em{display:block;font-style:normal;font-size:12px;margin-top:8px;color:var(--cin)}
.s-tl .s-dec.now{background:var(--grad);color:#fff;border-color:transparent;box-shadow:0 10px 24px rgba(180,120,220,.35)}
.s-tl .s-dec.now span,.s-tl .s-dec.now em{color:rgba(255,255,255,.9)}
.s-tl .s-dec .lock{position:absolute;top:8px;right:10px;font-size:12px;opacity:.75}
.s-tl .s-dec.sig{border-color:rgba(216,111,166,.55);box-shadow:0 0 0 1px rgba(216,111,166,.35),0 8px 20px rgba(216,111,166,.18)}
.s-tl .s-dec.sig em{color:#d86fa6;font-weight:700}
.s-months .s-dec{flex-basis:84px}

/* ── 報告目錄（上鎖） ── */
.s-toc{display:grid;gap:12px;margin-top:18px}
.s-ch{display:flex;gap:12px;align-items:flex-start;background:var(--glass);border:1px solid rgba(255,255,255,.7);border-radius:18px;padding:14px 14px 14px 12px;position:relative;overflow:hidden}
.s-ch .n{flex:0 0 34px;height:34px;border-radius:50%;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:700;font-size:14px}
.s-ch h3{font-size:16px}
.s-ch p{font-size:13px;color:var(--ink-2);margin-top:4px}
.s-ch.locked .s-fake{margin-top:8px;display:grid;gap:6px;filter:blur(3px);opacity:.55}
.s-ch.locked .s-fake i{display:block;height:9px;border-radius:5px;background:linear-gradient(90deg,#cbb6e6,#f2c6e3)}
.s-ch.locked::after{content:"🔒 付費解鎖";position:absolute;right:12px;top:12px;font-size:12px;color:var(--cin);background:rgba(255,255,255,.8);padding:3px 8px;border-radius:999px}
.s-ch.open .s-body{margin-top:8px;font-size:15px;white-space:pre-wrap}

/* ── 命盤（十二宮方格） ── */
.s-board{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(4,1fr);gap:4px;aspect-ratio:1/1;margin-top:18px}
.s-board .pal{background:var(--glass-2);border:1px solid var(--line);border-radius:10px;padding:5px 5px 4px;font-size:10px;line-height:1.3;overflow:hidden;position:relative;transition:box-shadow .4s,background .4s}
.s-board .pal b{display:block;font-size:11px;font-family:var(--serif);color:var(--ink)}
.s-board .pal s{text-decoration:none;color:var(--cin);display:block;font-size:10px}
.s-board .pal .hua{color:#d86fa6;font-weight:700}
.s-board .pal.lit{background:linear-gradient(135deg,rgba(255,158,207,.55),rgba(180,140,255,.55));box-shadow:0 0 0 2px rgba(216,111,166,.6),0 8px 22px rgba(216,111,166,.35)}
.s-board .pal.dim{opacity:.55}
.s-board .center{grid-area:2/2/4/4;display:grid;place-items:center;text-align:center;font-family:var(--serif);color:var(--ink-2);font-size:12px;padding:8px}
.s-board .center b{font-size:14px;color:var(--ink)}

/* ── 表單 ── */
.s-form{display:grid;gap:14px}
.s-field label{display:block;font-size:13px;color:var(--ink-2);margin-bottom:6px}
.s-field input,.s-field select{width:100%;min-height:48px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.75);padding:0 14px;font:inherit;color:var(--ink)}
.s-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.s-seg{display:flex;gap:8px}
.s-seg button{flex:1;min-height:46px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.75);color:var(--ink-2)}
.s-seg button.on{background:var(--grad);color:#fff;border-color:transparent}
.s-note{font-size:12px;color:var(--ink-2)}
.s-err{color:#c2385f;font-size:14px;min-height:1.4em}

/* ── 預告頁 ── */
.s-preview .s-tag{display:inline-block;font-size:12px;letter-spacing:.14em;color:#fff;background:var(--grad);padding:4px 10px;border-radius:999px}
.s-preview .s-teaser{margin-top:14px;font-size:16px;line-height:1.85;white-space:pre-wrap}
.s-preview .s-teaser .cut{display:block;margin-top:10px;color:var(--cin);font-family:var(--serif)}
.s-price{margin-top:18px;background:var(--glass);border:1px solid rgba(255,255,255,.7);border-radius:var(--radius);padding:18px}
.s-price .p{font-family:var(--serif);font-size:30px;color:var(--cin)}
.s-price .p small{font-size:14px;color:var(--ink-2);margin-left:6px}
.s-price ul{margin:10px 0 0;padding-left:18px;color:var(--ink-2);font-size:14px}
.s-check{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--ink-2);margin-top:12px}
.s-check input{margin-top:4px;width:18px;height:18px}

/* ── 生成中／報告 ── */
.s-gen{text-align:center;padding:40px var(--gutter)}
.s-gen .s-clip{max-width:260px;margin:0 auto 22px}
.s-gen .st{font-family:var(--serif);font-size:18px;min-height:1.5em}
.s-gen .bar{height:6px;border-radius:3px;background:rgba(162,92,199,.15);margin:16px auto 0;max-width:260px;overflow:hidden}
.s-gen .bar i{display:block;height:100%;width:0;background:var(--grad);transition:width .6s}
.s-report h2{font-size:22px}
.s-report .s-sum{font-family:var(--serif);font-size:18px;line-height:1.8;margin-top:14px}
.s-report .s-meta{font-size:12px;color:var(--ink-2);margin-top:10px}
.s-report .s-toc{margin-top:22px}
.s-mail{margin-top:22px;font-size:14px;color:var(--ink-2)}

/* ── FAQ ── */
.s-faq details{border-bottom:1px solid var(--line);padding:12px 0}
.s-faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between}
.s-faq summary::after{content:"＋";color:var(--cin)}
.s-faq details[open] summary::after{content:"－"}
.s-faq details p{margin-top:8px;color:var(--ink-2);font-size:14px}

/* ── 誠實承諾範例 ── */
.s-quote{margin-top:14px;border-left:3px solid var(--gold);padding:6px 0 6px 14px;font-size:15px}
.s-quote mark{background:rgba(255,158,207,.35);border-radius:4px;padding:0 3px}

.s-foot{padding:30px var(--gutter) 60px;font-size:12px;color:var(--ink-2);text-align:center}
/* ── 報告排版（engine.js rich()）：章標＋輔標、分段、粗體螢光、底色、引言、重點框、條列 ── */
.s-report .s-sum{margin-top:16px;background:var(--grad);color:#fff;border-radius:var(--radius);padding:18px 18px 4px;font-family:var(--serif);font-size:18px;line-height:1.8}
.s-report .s-sum p{margin:0 0 14px}
.s-report .s-sum strong{background:none;color:#fff;text-decoration:underline;text-underline-offset:4px}
.s-report .s-sum mark{background:rgba(255,255,255,.25);color:#fff}
.s-chap{margin-top:18px;background:var(--glass);border:1px solid rgba(255,255,255,.7);border-radius:var(--radius);padding:18px 18px 6px;box-shadow:0 10px 30px rgba(120,80,170,.08)}
.s-chap header{display:flex;gap:14px;align-items:flex-start;padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--line)}
.s-chap .n{font-family:var(--serif);font-size:30px;line-height:1;color:var(--cin);font-weight:700;min-width:38px}
.s-chap h3{font-size:20px;line-height:1.35}
.s-chap .sub{font-size:14px;color:var(--ink-2);margin-top:4px;line-height:1.5}
.s-rich p{margin:0 0 14px;font-size:16px;line-height:1.95}
.s-rich strong{font-weight:700;color:var(--ink);background:linear-gradient(transparent 60%,var(--hl) 0);padding:0 1px}
.s-rich mark{background:var(--hl-2);color:inherit;padding:1px 6px;border-radius:4px;font-weight:600}
.s-rich h4{font-size:15px;margin:18px 0 8px;color:var(--cin);letter-spacing:.06em}
.s-pull{margin:18px 0;padding:14px 16px 14px 46px;position:relative;font-family:var(--serif);font-size:19px;line-height:1.7;font-weight:600;color:var(--ink);background:var(--hl-2);border-radius:var(--radius)}
.s-pull::before{content:"“";position:absolute;left:12px;top:-2px;font-size:48px;color:var(--cin);font-family:Georgia,serif}
.s-key{margin:14px 0;padding:12px 14px 12px 40px;position:relative;background:var(--key-bg);border-left:4px solid var(--cin);border-radius:0 var(--radius) var(--radius) 0;font-size:15px;line-height:1.8}
.s-key::before{content:"★";position:absolute;left:14px;top:12px;color:var(--cin)}
.s-list{margin:0 0 14px;padding:0;list-style:none}
.s-list li{position:relative;padding:9px 0 9px 22px;border-bottom:1px dashed var(--line);font-size:15px;line-height:1.8}
.s-list li:last-child{border-bottom:0}
.s-list li::before{content:"";position:absolute;left:4px;top:19px;width:8px;height:8px;border-radius:50%;background:var(--cin)}
/* ── 雜誌化報告（docs/SERIES-GUIDE.md 的編輯規範）── */
.s-mast{display:flex;justify-content:space-between;align-items:center;padding:8px 0 10px;margin-bottom:12px;border-bottom:2px solid var(--ink);font:700 11px/1 var(--sans);letter-spacing:.28em;color:var(--ink)}
.s-report .s-sum .lede-k{display:inline-block;font:700 11px/1 var(--sans);letter-spacing:.24em;opacity:.8;margin-bottom:10px}
.s-toc{counter-reset:chap}
.s-chap{--acc:var(--c1)}
.s-chap:nth-child(6n+2){--acc:var(--c2)}.s-chap:nth-child(6n+3){--acc:var(--c3)}.s-chap:nth-child(6n+4){--acc:var(--c4)}.s-chap:nth-child(6n+5){--acc:var(--c5)}.s-chap:nth-child(6n+6){--acc:var(--c6)}
.s-chap{border-top:4px solid var(--acc)}
.s-chap .n{color:var(--acc);font-size:40px}
.s-chap .kick{display:block;font:700 10px/1 var(--sans);letter-spacing:.3em;color:var(--acc);margin-bottom:6px}
.s-chap header{border-bottom-color:color-mix(in srgb,var(--acc) 35%,transparent)}
.s-chap .s-rich>p:first-child::first-letter{float:left;font-family:var(--serif);font-size:48px;line-height:.9;margin:6px 8px 0 0;color:var(--acc);font-weight:700}
.s-chap .s-pull{background:color-mix(in srgb,var(--acc) 12%,transparent)}
.s-chap .s-pull::before,.s-chap .s-key::before{color:var(--acc)}
.s-chap .s-key{border-left-color:var(--acc)}
.s-chap .s-list li::before{background:var(--acc)}
.t-pal{display:inline-block;padding:0 6px;margin:0 1px;border-radius:6px;background:var(--pal-bg);color:var(--pal-fg);font-weight:700;font-size:.92em;line-height:1.5}
.t-star{display:inline-block;padding:0 6px;margin:0 1px;border-radius:6px;background:var(--star-bg);color:var(--star-fg);font-weight:700;font-size:.92em;line-height:1.5}
.t-star.minor{font-weight:600;opacity:.9}
.t-br{font-size:.72em;font-weight:700;color:var(--ink-2);border:1px solid var(--line);border-radius:4px;padding:0 3px;margin:0 2px;vertical-align:1px}
.t-hua{display:inline-block;font-style:normal;font-size:.78em;font-weight:700;color:#fff;border-radius:4px;padding:0 4px;margin-left:3px;vertical-align:1px;background:var(--ji)}
.t-hua.lu{background:var(--lu)}.t-hua.quan{background:var(--quan)}.t-hua.ke{background:var(--ke)}.t-hua.ji{background:var(--ji)}
.s-notecard{margin:14px 0 16px;padding:14px 16px;border-radius:var(--radius);background:linear-gradient(135deg,color-mix(in srgb,var(--acc,var(--cin)) 14%,transparent),color-mix(in srgb,var(--acc,var(--cin)) 4%,transparent));border:1px dashed color-mix(in srgb,var(--acc,var(--cin)) 55%,transparent)}
.s-notecard .nc-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.s-notecard .nc-kicker{font:700 10px/1 var(--sans);letter-spacing:.24em;color:#fff;background:var(--acc,var(--cin));padding:5px 8px;border-radius:4px}
.s-notecard .nc-pal{font-family:var(--serif);font-size:18px;color:var(--ink)}
.s-notecard .nc-stars{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.s-notecard .nc-star .t-star,.s-notecard .nc-star .t-pal{font-size:14px;padding:2px 8px}
.s-notecard p{margin:0;font-size:15px;line-height:1.8;color:var(--ink)}
/* ── 3D 動態命盤（engine.js renderBoard）── */
.s-board.live{position:relative;transform-style:preserve-3d;transform:perspective(900px) rotateX(14deg);animation:s-sway 9s ease-in-out infinite alternate;margin:26px 4px 10px;will-change:transform}
.s-board.live.drag{animation:none;transition:transform .12s linear}
@keyframes s-sway{0%{transform:perspective(900px) rotateX(17deg) rotateY(-8deg)}100%{transform:perspective(900px) rotateX(11deg) rotateY(8deg)}}
.s-board.live .pal{transition:transform .5s;box-shadow:0 6px 14px rgba(0,0,0,.08)}
.s-board.live .pal.lit{transform:translateZ(18px);animation:s-litpulse 2.8s ease-in-out infinite}
@keyframes s-litpulse{50%{filter:brightness(1.12);box-shadow:0 0 0 2px var(--c1),0 0 26px color-mix(in srgb,var(--c1) 55%,transparent)}}
.s-board.live .center{transform:translateZ(6px)}
.s-board .flow-lbl{display:inline-block;margin-top:4px;font:700 11px/1.4 var(--sans);color:var(--c1);letter-spacing:.04em}
.s-board .flows{grid-area:1/1/5/5;width:100%;height:100%;pointer-events:none;overflow:visible;transform:translateZ(30px);z-index:3}
.fl-glow{fill:none;stroke-width:9;opacity:.16;stroke-linecap:round}
.fl-base{fill:none;stroke-width:2.4;stroke-linecap:round;stroke-dasharray:7 9;animation:s-dash 1.2s linear infinite;opacity:.9}
@keyframes s-dash{to{stroke-dashoffset:-32}}
.fl-dot{filter:drop-shadow(0 0 5px currentColor)}
.fl-ring{fill:none;stroke-width:2.2;transform-box:fill-box;transform-origin:center;animation:s-ring 2.4s ease-out infinite}
.fl-ring.d2{animation-delay:1.2s}
@keyframes s-ring{0%{transform:scale(.35);opacity:.95}100%{transform:scale(1.45);opacity:0}}
.s-board .pal.h-lu::after,.s-board .pal.h-quan::after,.s-board .pal.h-ke::after,.s-board .pal.h-ji::after{content:"";position:absolute;top:5px;right:5px;width:7px;height:7px;border-radius:50%;animation:s-hua 1.8s ease-in-out infinite}
.s-board .pal.h-lu::after{background:var(--lu);color:var(--lu)}.s-board .pal.h-quan::after{background:var(--quan);color:var(--quan)}
.s-board .pal.h-ke::after{background:var(--ke);color:var(--ke)}.s-board .pal.h-ji::after{background:var(--ji);color:var(--ji)}
@keyframes s-hua{0%,100%{box-shadow:0 0 0 0 currentColor}50%{box-shadow:0 0 0 5px transparent;transform:scale(1.25)}}
[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
@media (min-width:640px){body{max-width:480px;margin:0 auto;box-shadow:0 0 60px rgba(120,80,170,.15)}.s-dock,.s-top{max-width:480px;margin:0 auto}.s-dock{left:50%;transform:translate(-50%,110%)}.s-dock.on{transform:translate(-50%,0)}}
.s-gift{margin:0 0 4px;padding:10px 12px;border-radius:12px;background:linear-gradient(135deg,rgba(255,214,120,.22),rgba(255,160,200,.18));border:1px dashed rgba(200,150,60,.45);font-size:13.5px;line-height:1.65}
.s-gift b{color:inherit;font-weight:800}
