/* ============================================================================
   mz-act.css —— 每日签到/抽奖页（/activity/:id）与积分页（/jifen）共用皮肤
   ----------------------------------------------------------------------------
   品牌基准：米折红 #EE4444（hover 加深 #d63a3a），1120px 容器（.wraper），
   卡片白底圆角，区块标题与首页一致（左侧 3px 红条 + 加粗标题）。
   仅 activity / jifen 两个页面加载，不污染其它子页。
   注：注释内不出现连续的星号加斜杠序列，避免提前终结注释块。
   ============================================================================ */

/* ---------- 基础 ----------
   注意：body 只覆底色；字体不挂在 body 上（避免影响 header-lock 钉住的头部行高），
   统一挂在 .wraper 内容容器上（header 用 .header-wrap/.navibar-wrap，不受影响）。 */
body.mzact-page{background:#f5f6f8;}
.wraper{width:1120px;margin:0 auto;zoom:1;text-align:left;font:14px/1.6 "Microsoft Yahei",tahoma,arial,sans-serif;color:#333;}
.wraper:after{content:"";display:block;clear:both;height:0;visibility:hidden;}

/* ---------- 区块标题（与首页 .hd .mark 同款：红条 + 标题 + 右侧副链） ---------- */
.mz-sec{margin:24px auto 0;}
.mz-sec-hd{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px;}
.mz-sec-hd .mark{position:relative;padding-left:12px;font-size:20px;font-weight:700;color:#333;line-height:1.3;}
.mz-sec-hd .mark i{position:absolute;left:0;top:5px;width:4px;height:18px;background:#EE4444;border-radius:2px;}
.mz-sec-hd .sub{font-size:13px;color:#999;}
.mz-sec-hd .sub a{color:#EE4444;text-decoration:none;}
.mz-sec-hd .sub a:hover{text-decoration:underline;}

/* ---------- 通用卡片与按钮 ---------- */
.mz-card{background:#fff;border:1px solid #eee;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,.04);}
.mz-btn{display:inline-block;border:none;cursor:pointer;background:#EE4444;color:#fff;font-size:16px;font-weight:700;font-family:inherit;border-radius:24px;padding:12px 46px;line-height:1.4;text-decoration:none;transition:background .2s;}
.mz-btn:hover{background:#d63a3a;color:#fff;text-decoration:none;}
.mz-btn.disabled,.mz-btn[disabled]{background:#ccc;cursor:not-allowed;}
.mz-btn-sm{display:inline-block;cursor:pointer;border:1px solid #EE4444;background:#fff;color:#EE4444;font-size:13px;font-family:inherit;border-radius:16px;padding:5px 18px;line-height:1.5;text-decoration:none;transition:all .2s;}
.mz-btn-sm:hover{background:#EE4444;color:#fff;text-decoration:none;}
.mz-tag{display:inline-block;font-size:12px;line-height:20px;padding:0 10px;border-radius:10px;background:#fdecec;color:#EE4444;}

/* ============================
   活动页（/activity/:id）
   ============================ */

/* --- 页头：白底区块头 + 面包屑 + 「红色竖条 + 加粗活动名」，右侧灰色副标。
       替代早先那条全宽大红渐变横幅（与全站白底红点缀风格冲突） --- */
.mz-act-head{background:#fff;border-bottom:1px solid #eee;padding:18px 0 20px;}
.mz-act-head .mz-crumb{font-size:12px;color:#999;margin:0 0 14px;}
.mz-act-head .mz-crumb a{color:#666;text-decoration:none;}
.mz-act-head .mz-crumb a:hover{color:#EE4444;}
.mz-act-head .mz-crumb i{font-style:normal;margin:0 7px;color:#ccc;}
.mz-act-head .mz-crumb span{color:#333;}
.mz-act-head .mz-act-hd{margin-bottom:0;}
.mz-act-head .mz-act-hd .mark{font-size:22px;}
.mz-act-head .mz-act-hd .mark i{top:6px;height:20px;}
.mz-act-head .mz-act-hd .sub em{font-style:normal;margin-left:10px;color:#bbb;}

/* --- 主体舞台：居中面板 --- */
.mz-act-stage{width:1000px;margin:26px auto 0;padding:30px 36px 36px;}
.mz-act-stage .mz-act-status{display:flex;justify-content:center;gap:14px;margin-bottom:22px;}
.mz-act-status .st{min-width:150px;text-align:center;background:#faf7f7;border-radius:8px;padding:12px 10px;}
.mz-act-status .st b{display:block;font-size:22px;font-weight:800;color:#EE4444;line-height:1.3;}
.mz-act-status .st span{font-size:12px;color:#999;}
.mz-act-status .st b.done{color:#52b355;}

/* --- 签到阶梯 --- */
.mz-sign-grid{display:grid;grid-template-columns:repeat(9,1fr);gap:10px;}
.mz-sign-item{position:relative;text-align:center;border:1px solid #f0d9d9;border-radius:8px;padding:14px 4px 12px;background:#fffbfb;}
.mz-sign-item .d{font-size:13px;color:#666;}
.mz-sign-item .d b{display:block;font-size:18px;font-weight:800;color:#EE4444;line-height:1.4;}
.mz-sign-item .p{font-size:12px;color:#999;margin-top:2px;}
.mz-sign-item .p i{font-style:normal;font-size:16px;font-weight:700;color:#EE4444;}
.mz-sign-item .s{margin-top:8px;font-size:12px;line-height:20px;display:inline-block;padding:0 10px;border-radius:10px;background:#f2f2f2;color:#999;}
.mz-sign-item.on{border-color:#EE4444;background:#fff5f5;box-shadow:0 2px 8px rgba(238,68,68,.15);}
.mz-sign-item.on .s{background:#EE4444;color:#fff;}
.mz-sign-foot{text-align:center;margin-top:26px;}
.mz-sign-foot .mz-btn{padding:13px 64px;font-size:18px;}
.mz-sign-foot .tip{margin-top:12px;font-size:12px;color:#999;}

/* --- 幸运抽奖：装饰转盘 + 奖品列表 --- */
.mz-lot-stage{display:flex;align-items:center;justify-content:center;gap:56px;padding:6px 0 4px;}
.mz-wheel-wrap{position:relative;width:280px;height:280px;flex-shrink:0;}
.mz-wheel{width:100%;height:100%;border-radius:50%;background:
  conic-gradient(#fff 0deg 30deg,#fdecec 30deg 60deg,#fff 60deg 90deg,#fdecec 90deg 120deg,
  #fff 120deg 150deg,#fdecec 150deg 180deg,#fff 180deg 210deg,#fdecec 210deg 240deg,
  #fff 240deg 270deg,#fdecec 270deg 300deg,#fff 300deg 330deg,#fdecec 330deg 360deg);
  border:10px solid #EE4444;box-shadow:0 6px 22px rgba(238,68,68,.28),inset 0 0 0 4px #fff;
  transition:transform 3.6s cubic-bezier(.15,.85,.25,1);position:relative;}
.mz-wheel:before{content:"";position:absolute;left:50%;top:-16px;margin-left:-7px;border:7px solid transparent;border-top:14px solid #EE4444;}
.mz-go{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:92px;height:92px;border-radius:50%;border:5px solid #fff;cursor:pointer;
  background:radial-gradient(circle at 34% 30%,#ff7a6e,#EE4444 62%,#d63a3a);color:#fff;font-size:24px;font-weight:800;font-family:inherit;
  box-shadow:0 4px 14px rgba(238,68,68,.45);z-index:3;}
.mz-go:active{transform:translate(-50%,-50%) scale(.94);}
.mz-go[disabled]{opacity:.55;cursor:not-allowed;}
.mz-lot-prizes{flex:1;max-width:420px;}
.mz-lot-prizes .hd{font-size:16px;font-weight:700;color:#333;margin-bottom:12px;}
.mz-lot-prizes ul{margin:0;padding:0;list-style:none;}
.mz-lot-prizes li{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed #f0d9d9;padding:11px 4px;font-size:14px;color:#333;}
.mz-lot-prizes li:last-child{border-bottom:none;}
.mz-lot-prizes li em{font-style:normal;font-size:12px;color:#EE4444;}
.mz-lot-result{margin-top:20px;text-align:center;font-size:15px;font-weight:700;color:#EE4444;min-height:24px;}

/* --- 领券中心：票券卡 --- */
.mz-cpn-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.mz-cpn{position:relative;display:flex;align-items:center;border-radius:10px;background:linear-gradient(120deg,#fff5f5,#fff);border:1px solid #f3d7d7;overflow:hidden;}
.mz-cpn:before,.mz-cpn:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#f5f6f8;top:50%;margin-top:-8px;}
.mz-cpn:before{left:-8px;}
.mz-cpn:after{right:-8px;}
.mz-cpn .amt{width:180px;text-align:center;color:#EE4444;border-right:1px dashed #f0c9c9;padding:22px 0;flex-shrink:0;}
.mz-cpn .amt b{font-size:30px;font-weight:800;line-height:1.2;}
.mz-cpn .amt span{display:block;font-size:12px;color:#e88;}
.mz-cpn .info{flex:1;padding:0 18px 0 20px;}
.mz-cpn .info .n{font-size:16px;font-weight:700;color:#333;}
.mz-cpn .info .c{font-size:12px;color:#999;margin-top:4px;}
.mz-cpn .op{margin-right:20px;flex-shrink:0;}

/* --- 活动规则 --- */
.mz-act-rules{margin:26px auto 0;padding:22px 30px 26px;}
.mz-act-rules .hd{font-size:16px;font-weight:700;color:#333;margin-bottom:10px;}
.mz-act-rules p{margin:0 0 6px;font-size:13px;color:#888;line-height:1.9;}

/* ============================
   积分页（/jifen）
   ============================ */

/* --- 顶部：积分中心头部 --- */
.mz-jf-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#f0524f 0%,#EE4444 45%,#d63a3a 100%);color:#fff;padding:34px 0 40px;}
.mz-jf-hero .wraper{display:flex;align-items:center;justify-content:space-between;}
.mz-jf-hero .l .t{font-size:30px;font-weight:800;letter-spacing:2px;line-height:1.3;}
.mz-jf-hero .l .d{margin-top:8px;font-size:13px;color:rgba(255,255,255,.92);}
.mz-jf-hero .entries{display:flex;gap:14px;}
.mz-jf-hero .entries a{display:block;width:118px;text-align:center;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45);border-radius:8px;padding:12px 0 10px;color:#fff;text-decoration:none;font-size:13px;transition:background .2s;}
.mz-jf-hero .entries a b{display:block;font-size:20px;line-height:1.5;}
.mz-jf-hero .entries a:hover{background:rgba(255,255,255,.28);color:#fff;}

/* --- 兑换商品栅格：一行 4 个 --- */
.mz-goods-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding-bottom:36px;}
.mz-goods{background:#fff;border:1px solid #eee;border-radius:10px;overflow:hidden;transition:box-shadow .2s,transform .2s;}
.mz-goods:hover{box-shadow:0 6px 18px rgba(0,0,0,.09);transform:translateY(-2px);}
.mz-goods .pic{display:block;height:210px;background:#f7f7f7;}
.mz-goods .pic img{width:100%;height:100%;object-fit:cover;display:block;border:none;}
.mz-goods .bd{padding:14px 16px 16px;}
.mz-goods .bd .n{font-size:14px;font-weight:700;color:#333;line-height:1.5;height:42px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.mz-goods .bd .row{display:flex;align-items:center;justify-content:space-between;margin-top:10px;}
.mz-goods .bd .pts{font-size:12px;color:#999;}
.mz-goods .bd .pts b{font-size:20px;font-weight:800;color:#EE4444;margin-right:2px;}
.mz-goods .bd .stk{font-size:12px;color:#bbb;}
.mz-goods .bd .mz-btn-sm{display:block;text-align:center;margin-top:12px;border-radius:6px;padding:9px 0;font-size:14px;}
.mz-goods .bd .mz-btn-sm.off{border-color:#ddd;color:#bbb;background:#fafafa;cursor:not-allowed;}

/* --- 空状态 --- */
.mz-empty{grid-column:1 / -1;text-align:center;background:#fff;border:1px solid #eee;border-radius:10px;padding:70px 0;color:#999;font-size:14px;}
