/* 保留件樣式(自正式站 index 抽出:公告 124-182/wishshop 953-1083)+ 嵌入容器 */
/* 最新消息 / 公告區 */
.news-sec{padding:22px 0 6px}
.news-in{max-width:960px;margin:0 auto;padding:0 20px}
.news-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.news-head h2{font-size:20px;font-weight:900;letter-spacing:-.3px;display:flex;align-items:center;gap:8px}
.visit-badge{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--c-line);border-radius:999px;padding:7px 14px;font-size:13.5px;color:var(--c-text-soft);box-shadow:var(--sh-sm)}
.visit-badge .vk{font-size:15px}
.visit-badge b{color:var(--c-orange);font-weight:800;font-variant-numeric:tabular-nums}
.news-list{display:flex;flex-direction:column;gap:12px}
/* [2026-07-10] 公告手風琴：預設收合只顯示標題（NN/g 準則+ARIA APG 模式+grid-rows 動畫） */
.news-item{background:#fff;border:1px solid var(--c-line);border-left:4px solid var(--c-orange);border-radius:16px;box-shadow:var(--sh-sm);transition:transform .16s ease,box-shadow .16s ease;overflow:hidden}
.news-item:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,.08)}
.news-item.soon{border-left-color:var(--c-orange);background:linear-gradient(100deg,var(--c-orange-soft),#fff 70%)}
.news-item .acc-h{margin:0}
.acc-btn{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;width:100%;padding:15px 18px;background:none;border:0;cursor:pointer;font:inherit;text-align:left;color:inherit;-webkit-tap-highlight-color:transparent}
.acc-btn:focus-visible{outline:2px solid var(--c-orange);outline-offset:-2px;border-radius:14px}
.acc-title{font-size:15.5px;font-weight:800;letter-spacing:-.2px;line-height:1.4}
.news-pill{font-size:12px;font-weight:800;letter-spacing:.3px;padding:5px 11px;border-radius:999px;white-space:nowrap}
.news-pill.soon{background:var(--c-orange);color:#fff}
.news-pill.gift{background:var(--c-green-bg);color:var(--c-green);border:1px solid var(--c-green)}
.news-pill.m
.acc-chev{flex:none;width:20px;height:20px;color:var(--c-text-muted);transition:transform .26s ease}
.news-item.open .acc-chev{transform:rotate(180deg)}
.acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s ease}
.news-item.open .acc-panel{grid-template-rows:1fr}
.acc-inner{overflow:hidden;min-height:0}
.acc-inner p{font-size:14px;color:var(--c-text-soft);line-height:1.6;padding:0 18px 16px}
@media (prefers-reduced-motion:reduce){.acc-panel,.acc-chev,.news-item{transition:none}}
/* 公告分類切換 */
.news-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.news-tab{font-size:13.5px;font-weight:700;padding:7px 15px;border-radius:999px;border:1px solid var(--c-line);background:#fff;color:var(--c-text-soft);cursor:pointer;transition:all .18s ease;white-space:nowrap}
.news-tab:hover{border-color:var(--c-orange);color:var(--c-orange)}
.news-tab.active{background:var(--c-orange);border-color:var(--c-orange);color:#fff}
.news-item[hidden]{display:none}
@media(max-width:640px){.news-tabs{gap:6px}.news-tab{font-size:12.5px;padding:6px 12px}}
/* 公告分頁（20 則全攤開頁面太長，改一頁 6 則） */
.news-pager{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin-top:18px}
.news-pg{min-width:36px;height:36px;padding:0 11px;border-radius:10px;border:1px solid var(--c-line);background:#fff;color:var(--c-text-soft);font-size:13.5px;font-weight:700;cursor:pointer;transition:all .18s ease}
.news-pg:hover:not(:disabled){border-color:var(--c-orange);color:var(--c-orange)}
.news-pg.on{background:var(--c-orange);border-color:var(--c-orange);color:#fff}
.news-pg:disabled{opacity:.4;cursor:default}
.news-count{font-size:12.5px;color:var(--c-text-muted);text-align:center;margin-top:8px}
@media(max-width:640px){.news-pg{min-width:32px;height:32px;padding:0 9px;font-size:12.5px}}
/* 數字說話 */
.stat-band{padding:14px 0 30px}
.stat-in{max-width:960px;margin:0 auto;padding:20px;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:linear-gradient(135deg,var(--c-ink),#1a1f2e);border-radius:22px;box-shadow:var(--sh-sm)}
.stat-cell{text-align:center;color:#fff;padding:8px 6px}
.stat-cell b{display:block;font-size:clamp(24px,4vw,34px);font-weight:900;letter-spacing:-1px;line-height:1;color:#fff}
.stat-cell b span{color:var(--c-orange);font-size:.7em;vertical-align:super}
.stat-cell .sl{display:block;margin-top:8px;font-size:12.5px;opacity:.72}
.stat-cell+.stat-cell{border-left:1px solid rgba(255,255,255,.1)}
@media(max-width:640px){.stat-in{grid-template-columns:repeat(2,1fr);gap:16px 10px}.stat-cell:nth-child(3){border-left:none}}
.news-item time{font-size:12.5px;color:var(--c-text-muted);white-space:nowrap;font-weight:600}
@media(max-width:640px){.acc-btn{grid-template-columns:auto 1fr auto;gap:9px;padding:13px 14px}.acc-btn time{display:none}.acc-title{font-size:14.5px}.acc-inner p{padding:0 14px 14px}}
/* 公告 + YT 兩欄並排（滿版：吃滿兩旁留白，公告靠左、YT 靠右）*/
.nv-row{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3.5vw,60px);align-items:center;max-width:1800px;margin:0 auto;padding:0 clamp(20px,4vw,60px)}
.nv-right .vwrap{max-width:none;margin:0}
.nv-vcap{margin-top:12px;font-size:14px;color:var(--c-text-soft);text-align:center;font-weight:600}
@media(max-width:860px){.nv-row{grid-template-columns:1fr;gap:20px;max-width:640px}}
.wishshop{flex:0 0 374px;position:relative;color:#FFF3E0;font-size:15px;line-height:1.6;
  background:linear-gradient(180deg,#101a30 0%,#0b1222 100%);border:1px solid rgba(255,154,60,.22);
  border-radius:20px;overflow:hidden;box-shadow:0 26px 70px rgba(10,10,20,.4),0 0 70px rgba(255,107,0,.10)}
.ws-awning{display:flex;height:24px}
.ws-awning i{flex:1}
.ws-awning i:nth-child(odd){background:repeating-linear-gradient(180deg,#FF6B00 0 12px,#ff8124 12px 24px)}
.ws-awning i:nth-child(even){background:repeating-linear-gradient(180deg,#0d1424 0 12px,#132038 12px 24px)}
.ws-lip{height:11px;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent)}
.ws-sign{text-align:center;padding:18px 18px 4px}
.ws-neon{font-size:27px;font-weight:900;letter-spacing:3px;color:#fff;
  text-shadow:0 0 4px #fff,0 0 12px #FF9A3C,0 0 24px #FF6B00,0 0 42px #FF6B00;animation:wsFlick 5.5s infinite}
@keyframes wsFlick{0%,97%,100%{opacity:1}96%{opacity:.72}98%{opacity:.86}}
.ws-tag{display:inline-block;margin-top:8px;font-size:12px;letter-spacing:1px;color:#FFB74D;
  border:1px solid rgba(255,154,60,.22);border-radius:999px;padding:5px 13px}
.ws-sub{color:#f4d9b8;font-size:13.5px;text-align:center;margin:12px 18px 2px;line-height:1.65;opacity:.92}
.ws-body{padding:6px 18px 20px}
.ws-q{margin-top:16px}
.ws-qh{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:#FFF3E0;margin-bottom:10px}
.ws-n{font-size:12px;width:19px;height:19px;border-radius:50%;display:grid;place-items:center;color:#0b1222;background:#FF9A3C;font-weight:900;flex:0 0 auto}
.ws-chips{display:flex;flex-wrap:wrap;gap:7px}
.ws-chip{font:inherit;font-size:12.5px;color:#f4d9b8;cursor:pointer;background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.10);border-radius:11px;padding:7px 11px;transition:.18s}
.ws-chip:hover{border-color:#FF9A3C;color:#fff;transform:translateY(-1px)}
.ws-chip.on{background:linear-gradient(135deg,#FF6B00,#FF9A3C);color:#1a0f04;border-color:transparent;
  box-shadow:0 6px 16px rgba(255,107,0,.35);font-weight:700}
.ws-ta{width:100%;min-height:66px;resize:vertical;font:inherit;font-size:13.5px;color:#FFF3E0;
  background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:10px 12px;line-height:1.55}
.ws-ta::placeholder{color:#6f7789}
.ws-ta:focus{outline:none;border-color:#FF9A3C;box-shadow:0 0 0 3px rgba(255,107,0,.14)}
.ws-drop{margin-top:20px;position:relative}
.ws-well{height:10px;border-radius:0 0 40px 40px/0 0 22px 22px;margin:0 28px -4px;
  background:radial-gradient(60% 100% at 50% 0,rgba(255,107,0,.5),transparent 70%)}
.ws-coin{position:absolute;left:50%;top:0;width:20px;height:20px;margin-left:-10px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#fff2cf,#FFB74D 60%,#c77a15);box-shadow:0 0 12px #FFB74D;opacity:0;pointer-events:none}
.ws-coin.go{animation:wsCoin .7s cubic-bezier(.5,0,.7,1) forwards}
@keyframes wsCoin{0%{opacity:1;top:-20px;transform:scale(1)}70%{opacity:1}100%{opacity:0;top:32px;transform:scale(.3)}}
.ws-cta{width:100%;font:inherit;font-weight:900;font-size:15.5px;letter-spacing:1px;cursor:pointer;color:#1a0f04;
  padding:14px;border:none;border-radius:14px;background:linear-gradient(135deg,#FF6B00,#FF9A3C);
  box-shadow:0 10px 26px rgba(255,107,0,.4),inset 0 1px 0 rgba(255,255,255,.4);transition:transform .15s,box-shadow .15s}
.ws-cta:hover{transform:translateY(-2px);box-shadow:0 15px 36px rgba(255,107,0,.5)}
.ws-cta:active{transform:translateY(0)}
.ws-cta:disabled{opacity:.65;cursor:default}
.ws-done{text-align:center;font-size:13px;font-weight:700;margin-top:12px;min-height:17px}
.ws-done.ok{color:#FFB74D}
.ws-done.warn{color:#ff9a7c}
.ws-foot{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:14px;font-size:12px;color:#9aa3b4;text-align:center}
.ws-spark{width:7px;height:7px;border-radius:50%;background:#FFB74D;box-shadow:0 0 8px #FFB74D;animation:wsPulse 2s infinite;flex:0 0 auto}
@keyframes wsPulse{50%{opacity:.4}}
/* 兩頁導覽(左上前進返回) */
.ws-nav{display:flex;align-items:center;gap:10px;padding:0 2px 10px;margin-bottom:6px;border-bottom:1px solid rgba(255,255,255,.08)}
.ws-navbtn{font:inherit;font-size:19px;font-weight:900;line-height:1;width:30px;height:30px;border-radius:9px;cursor:pointer;
  color:#FFB74D;background:rgba(255,255,255,.05);border:1px solid rgba(255,154,60,.25);transition:.15s;flex:0 0 auto}
.ws-navbtn:hover:not(:disabled){background:rgba(255,107,0,.2);color:#fff}
.ws-navbtn:disabled{opacity:.26;cursor:default}
.ws-navttl{flex:1;text-align:center;font-size:14px;font-weight:800;color:#FFF3E0;letter-spacing:1px}
.ws-page{animation:wsReveal .22s ease both}
/* 名稱輸入 */
.ws-name{width:100%;font:inherit;font-size:14px;color:#FFF3E0;background:rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.10);border-radius:12px;padding:11px 13px}
.ws-name::placeholder{color:#6f7789}
.ws-name:focus{outline:none;border-color:#FF9A3C;box-shadow:0 0 0 3px rgba(255,107,0,.14)}
/* 排行榜 */
.ws-lb-sort{display:flex;align-items:center;gap:8px;margin:2px 0 12px;font-size:12.5px;color:#9aa3b4}
.ws-lb-sortlbl{flex:0 0 auto}
.ws-sortbtn{font:inherit;font-size:12.5px;color:#f4d9b8;cursor:pointer;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10);border-radius:9px;padding:6px 11px;transition:.15s}
.ws-sortbtn.on{background:linear-gradient(135deg,#FF6B00,#FF9A3C);color:#1a0f04;border-color:transparent;font-weight:800}
.ws-lb-list{display:flex;flex-direction:column;gap:8px;max-height:430px;overflow-y:auto}
.ws-lb-empty{text-align:center;color:#9aa3b4;font-size:13px;padding:26px 8px;line-height:1.6}
.ws-lb-item{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.09);border-radius:12px;overflow:hidden}
.ws-lb-head{display:flex;align-items:center;gap:7px;padding:10px 11px;cursor:pointer}
.ws-lb-rank{font-size:12px;font-weight:900;color:#FF9A3C;min-width:16px;flex:0 0 auto}
.ws-lb-cat{font-size:10.5px;color:#f4d9b8;background:rgba(255,255,255,.06);border-radius:7px;padding:3px 7px;white-space:nowrap;flex:0 0 auto}
.ws-lb-official{font-size:10px;font-weight:900;color:#1a0f04;background:linear-gradient(135deg,#FFB74D,#FF9A3C);border-radius:7px;padding:3px 7px;white-space:nowrap;flex:0 0 auto}
.ws-lb-name{flex:1;font-size:13px;font-weight:700;color:#FFF3E0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.ws-vbtn{font:inherit;font-size:11.5px;color:#f4d9b8;cursor:pointer;background:rgba(255,255,255,.05);flex:0 0 auto;
  border:1px solid rgba(255,255,255,.10);border-radius:8px;padding:5px 7px;white-space:nowrap;transition:.15s}
.ws-vbtn b{font-weight:900;margin-left:2px}
.ws-vbtn.u:hover:not(.voted){border-color:#22C55E;color:#8fe0a8}
.ws-vbtn.n:hover:not(.voted){border-color:#E5484D;color:#f0a0a0}
.ws-vbtn.voted{opacity:.5;cursor:default}
.ws-lb-chev{font-size:11px;color:#9aa3b4;transition:transform .2s;flex:0 0 auto}
.ws-lb-item.open .ws-lb-chev{transform:rotate(180deg)}
.ws-lb-panel{padding:0 12px 12px;font-size:12.5px;color:#f4d9b8;line-height:1.6}
.ws-lb-panel p{margin:5px 0}
.ws-lb-panel b{color:#FFB74D}
@media(prefers-reduced-motion:reduce){.ws-neon,.ws-spark,.ws-coin.go,.ws-page{animation:none}}
.ws-toggle{display:none}
@media(max-width:860px){
  .hero-in{flex-direction:column-reverse;gap:26px}
  .wishshop{flex:none;width:100%;max-width:440px;margin:0 auto}
  .hero-copy{max-width:none;width:100%}
  /* 手機版:許願所預設收合成小招牌,點招牌才展開(電腦版不動) */
  .ws-sign{cursor:pointer;padding-bottom:12px}
  .ws-toggle{display:inline-flex;align-items:center;gap:5px;margin-top:11px;font-size:13px;font-weight:800;color:#FFB74D}
  .ws-tchev{transition:transform .22s}
  .wishshop.ws-collapsed .ws-body,.wishshop.ws-collapsed .ws-sub,.wishshop.ws-collapsed .ws-tag{display:none}
  .wishshop:not(.ws-collapsed) .ws-tchev{transform:rotate(180deg)}
  .wishshop:not(.ws-collapsed) .ws-body{animation:wsReveal .25s ease both}
}
@keyframes wsReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
/* 假輸入框(點了開浮動輸入) */
.ws-fake{display:block;text-align:left;cursor:pointer;font:inherit}
.ws-fake .ws-ph{color:#6f7789;font-size:13.5px;line-height:1.55}
.ws-fake.filled .ws-ph{color:#FFF3E0}
.ws-fake:hover{border-color:#FF9A3C}
/* 浮動輸入框 */
.ws-modal{position:fixed;inset:0;z-index:2000;display:flex;align-items:center;justify-content:center;padding:18px}
.ws-modal[hidden]{display:none}
.ws-modal-back{position:absolute;inset:0;background:rgba(5,8,16,.72);backdrop-filter:blur(3px)}
.ws-modal-card{position:relative;width:min(480px,100%);max-height:min(560px,86vh);display:flex;flex-direction:column;gap:14px;
  background:linear-gradient(180deg,#101a30 0%,#0b1222 100%);border:1px solid rgba(255,154,60,.35);border-radius:18px;
  padding:20px;box-shadow:0 24px 70px rgba(0,0,0,.6),0 0 60px rgba(255,107,0,.16);animation:wsPop .22s var(--ease,ease) both}
@keyframes wsPop{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
.ws-modal-title{font-size:16px;font-weight:900;color:#FFF3E0;letter-spacing:1px}
.ws-modal-title::before{content:'✦ ';color:#FF9A3C}
#wsModalTa{flex:1;min-height:150px;resize:none;font:inherit;font-size:15px;color:#FFF3E0;line-height:1.6;
  background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px 14px}
#wsModalIn{font:inherit;font-size:15px;color:#FFF3E0;background:rgba(0,0,0,.3);min-height:64px;
  border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:14px}
#wsModalTa::placeholder,#wsModalIn::placeholder{color:#6f7789}
#wsModalTa:focus,#wsModalIn:focus{outline:none;border-color:#FF9A3C;box-shadow:0 0 0 3px rgba(255,107,0,.15)}
.ws-modal-actions{display:flex;gap:10px}
.ws-modal-cancel{flex:0 0 auto;font:inherit;font-size:14px;color:#9aa3b4;background:transparent;
  border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:11px 18px;cursor:pointer}
.ws-modal-cancel:hover{color:#fff;border-color:#9aa3b4}
.ws-modal-send{flex:1;font:inherit;font-weight:900;font-size:15px;letter-spacing:1px;color:#1a0f04;cursor:pointer;
  border:none;border-radius:12px;padding:11px;background:linear-gradient(135deg,#FF6B00,#FF9A3C);
  box-shadow:0 8px 22px rgba(255,107,0,.4)}
.ws-modal-send:hover{transform:translateY(-1px)}
@media(max-width:860px){.ws-modal{align-items:flex-start;padding-top:9vh}}
.wishshop-zone{display:flex;justify-content:center;padding:8px 0 8px}
.wishshop-zone .wishshop{flex:0 1 440px;width:100%;max-width:440px}
.news-sec{color:#1c2430}
/* 首屏平台差異句(衡川 9/5 要求「Android/iOS 明確拆開」,新版保留於首屏) */
.hero-footnote.platform-inline{margin-top:10px;font-size:.8125rem;line-height:1.75;color:var(--subtle);display:block}
.hero-footnote.platform-inline strong{color:var(--text);font-weight:600}
