/* 十一月通行证 + 月卡（month-pass.js）。骨架用 autumn-pass.css 的 sapass-*，这里只换成十一月的夜蓝配色、
   加里程碑条和月卡区。背景全是代码画的（星点 + 渐变），不用 AI 图；名字和美术以后定。 */

/* 浮窗 */
.samonth-chip{border-color:#b9c6ec5c;background:linear-gradient(100deg,rgba(24,32,66,.92),rgba(44,36,78,.88));color:#e8edff}
.samonth-chip .sapass-chip-text small{color:#c2cdf2}
.samonth-chip .sapass-ring{background:conic-gradient(#f2c46b calc(var(--p)*360deg),rgba(255,255,255,.15) 0)}
.samonth-chip .sapass-ring::before{background:#1c2448}
.samonth-chip .sapass-ring svg{fill:#f2c46b}
.samonth-chip[data-state=ready]{animation:samonth-glow 2.2s ease-in-out infinite}
.samonth-chip[data-state=ready] small{color:#ffe08a}
.samonth-chip[data-state=done] small{color:#bfe6c4}
.samonth-chip[data-state=over]{filter:saturate(.4);opacity:.85}
.samonth-chip:focus-visible{outline-color:#f2c46b}
@keyframes samonth-glow{0%,100%{box-shadow:0 6px 22px rgba(0,0,0,.34),0 0 0 0 rgba(242,196,107,0)}50%{box-shadow:0 6px 22px rgba(0,0,0,.34),0 0 0 6px rgba(242,196,107,.3)}}

/* 卡 */
.samonth-card{border-color:#c9d2ee;background:#f5f7fd;color:#232a44}
.samonth-card::backdrop{background:rgba(8,12,30,.62)}
.samonth-hero{height:210px;background:radial-gradient(ellipse at 78% 18%,rgba(242,196,107,.35),rgba(242,196,107,0) 32%),
 linear-gradient(160deg,#121a3c 0%,#24306a 55%,#3b3a7a 100%)}
.samonth-hero::after{background:linear-gradient(0deg,rgba(10,14,34,.45),rgba(10,14,34,0) 50%)}
.samonth-sky{position:absolute;inset:0;pointer-events:none}
.samonth-dot{position:absolute;width:var(--s);height:var(--s);fill:#f6e3b0;opacity:var(--o);left:var(--x);top:var(--y);animation:samonth-twinkle var(--d) ease-in-out infinite}
@keyframes samonth-twinkle{0%,100%{transform:scale(1)}50%{transform:scale(.6);opacity:.2}}
.samonth-card .sapass-title{color:#eef2ff}
.samonth-card .sapass-title small{color:#f2c46b}
.samonth-card .sapass-title p{color:#d6dcf5}
.samonth-card .sapass-close{background:rgba(12,16,38,.5);color:#eef2ff}
.samonth-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.samonth-card .sapass-stat{border-color:#d6dcf0}
.samonth-card .sapass-stat small,.samonth-card .sapass-stat span{color:#69729a}
.samonth-card .sapass-stat strong{color:#2f3f8f}
.samonth-card .sapass-line{color:#3a4266}
.samonth-card .sapass-flash{background:#e8edfd;color:#2f3f8f}
.samonth-card .sapass-primary{background:linear-gradient(120deg,#2f3f8f,#5560b8);box-shadow:0 6px 16px rgba(47,63,143,.28)}
.samonth-card .sapass-ghost{border-color:#bcc6e6;color:#2f3f8f}

/* 里程碑条 */
.samonth-track{display:grid;gap:8px;padding:12px 16px 14px;border:1px solid #d6dcf0;border-radius:14px;background:#fff}
.samonth-track h3{margin:0;font-size:13px;color:#3a4266}
.samonth-bar{--p:0;height:8px;border-radius:99px;background:linear-gradient(90deg,#f2c46b calc(var(--p)*100%),#e3e7f4 0)}
.samonth-nodes{position:relative;height:46px}
.samonth-node{position:absolute;left:calc(var(--at)*100%);top:0;display:grid;justify-items:center;gap:1px;transform:translateX(-50%);
 font-size:11px;color:#69729a;text-align:center;white-space:nowrap}
.samonth-node:last-child{transform:translateX(-100%);justify-items:end}
.samonth-node::before{content:"";width:10px;height:10px;margin:-17px 0 4px;border-radius:50%;background:#fff;border:2px solid #cfd5ea;box-sizing:border-box}
.samonth-node[data-reached]::before{background:#f2c46b;border-color:#d9a23a}
.samonth-node b{font-size:12px;color:#3a4266}
.samonth-node[data-reached] b{color:#b07a12}
.samonth-node i{font-style:normal;font-size:10px;padding:0 5px;border-radius:6px;background:#3f8a4f;color:#fff}

/* 月卡 */
.samonth-plus{display:grid;gap:6px;padding:14px 16px;border:1px solid #e6cf9a;border-radius:14px;background:linear-gradient(110deg,#fff9ea,#fdf0d2)}
.samonth-plus[data-owned]{border-color:#c9b7f0;background:linear-gradient(110deg,#f5f0ff,#ebe6fb)}
.samonth-plus b{font-size:14px;color:#6a4a0e}
.samonth-plus[data-owned] b{color:#4b3a8f}
.samonth-plus p{margin:0;font-size:12.5px;line-height:1.65;color:#4f4636;text-wrap:pretty}
.samonth-plus .samonth-note{color:#8a7a5a}
.samonth-plus .sapass-primary{justify-self:start;background:linear-gradient(120deg,#b07a12,#d9a23a);box-shadow:0 6px 16px rgba(176,122,18,.25)}
.samonth-makeup{border-color:#c8d0ec;background:#eef1fb}
.samonth-makeup b{color:#2f3f8f}
.samonth-makeup p{color:#4a5274}

/* 日历 */
.samonth-card .sapass-day{border-color:#dde2f2;color:#3a4266}
.samonth-card button.sapass-day{font:inherit;cursor:pointer}
.samonth-card .sapass-day>b{color:#69729a}
.samonth-card .sapass-mini{fill:#d9a23a}
.samonth-card .sapass-reward em{color:#2f3f8f}
.samonth-card .sapass-day[data-weekend]{border-color:#cfc3ef;background:linear-gradient(160deg,#f6f2ff,#e9e2fb)}
.samonth-card .sapass-day[data-weekend] .sapass-reward em{color:#4b3a8f}
.samonth-card .sapass-day[data-today]{outline-color:#5560b8}
.samonth-card .sapass-day[data-status=missed]{border-color:#c9cde0;background:#f1f2f7}
.samonth-card .sapass-day[data-status=missed] .sapass-mark{background:#8a90ad}
.samonth-card .sapass-day[data-pick]{outline:2px solid #d9a23a;outline-offset:1px}
.samonth-card .sapass-day[data-pick] .sapass-mark{background:#d9a23a}
.samonth-card .sapass-rules summary{color:#3a4266}
.samonth-card .sapass-rules ul{color:#3a4266}
@media (max-width:600px){
 .samonth-hero{height:170px}
 .samonth-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .samonth-card .sapass-stat strong{font-size:20px}
 .samonth-node small{display:none}
 .samonth-nodes{height:30px}
}

/* 领奖弹窗 */
.samonth-popup{background:radial-gradient(ellipse at top,#e6ebff,#f8f9ff 62%)}
.samonth-popup-star{fill:#d9a23a}
.samonth-popup .sapass-gifts .sa-welcome-points strong{color:#2f3f8f}
.samonth-popup .sa-primary{border-color:#26337a;background:linear-gradient(180deg,#3d4ca6,#26337a)}
@media (prefers-reduced-motion:reduce){.samonth-chip,.samonth-dot{animation:none!important}}
