/* =============================================================
   幸运抽奖 C 端样式
   ============================================================= */
.lucky-wrap{width:1000px;margin:0 auto;min-height:640px;padding:24px 0 40px;}

/* 页头 */
.lucky-head{background:linear-gradient(135deg,#ff7e5f 0%,#feb47b 100%);border-radius:8px;padding:28px 30px;color:#fff;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;writing-mode:horizontal-tb;box-shadow:0 4px 14px rgba(254,122,71,.25);}
.lucky-head > div{display:flex;flex-direction:column;flex:1 1 auto;min-width:0;align-items:flex-start;justify-content:center;}
.lucky-head h2{font-size:26px;margin:0;font-weight:700;white-space:nowrap;}
.lucky-head p{margin:6px 0 0;font-size:14px;opacity:.92;}
.lucky-head .lh-btn{background:#fff;color:#ff7e5f;padding:9px 22px;border-radius:22px;font-size:14px;text-decoration:none;font-weight:600;white-space:nowrap;flex:0 0 auto;margin-left:24px;}

/* 通用板块 */
.lucky-box{background:#fff;border:1px solid #f0f0f0;border-radius:8px;margin-top:18px;overflow:hidden;}
.lucky-box-h{padding:15px 22px;border-bottom:1px solid #f2f2f2;display:flex;align-items:center;justify-content:space-between;}
.lucky-box-h h3{margin:0;font-size:17px;color:#333;font-weight:600;}
.lucky-box-h h3 i{display:inline-block;width:4px;height:16px;background:#ff7e5f;border-radius:2px;margin-right:8px;vertical-align:-2px;}
.lucky-box-h a{font-size:13px;color:#999;text-decoration:none;}
.lucky-box-h a:hover{color:#ff7e5f;}
.lucky-box-b{padding:20px 22px;}

/* 进行中的期次卡片 */
.lk-card{display:flex;border:1px solid #f0f0f0;border-radius:8px;margin-bottom:16px;padding:20px;transition:box-shadow .2s;}
.lk-card:last-child{margin-bottom:0;}
.lk-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.06);}
.lk-card .lk-c-l{flex:0 0 210px;margin-right:24px;}
.lk-card .lk-c-prize{width:100%;height:150px;object-fit:cover;border-radius:6px;margin-bottom:12px;display:block;}
.lk-card .lk-c-prize-empty{background:#fafafa;border:1px dashed #e4e4e4;display:flex;align-items:center;justify-content:center;font-size:40px;color:#d9d9d9;}
.lk-card .lk-c-t{font-size:18px;font-weight:700;color:#ff7e5f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px;}
.lk-card .lk-c-theme{font-size:12px;color:#999;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px;}
.lk-card .lk-c-r{flex:1;min-width:0;}
.lk-card .lk-c-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;}
.lk-card .lk-c-date{font-size:12px;color:#aaa;}
.lk-card .lk-c-pn{font-size:20px;font-weight:700;color:#333;line-height:1.4;}
.lk-card .lk-c-pv{font-size:14px;color:#666;margin-top:4px;}
.lk-card .lk-c-pv em{font-style:normal;color:#ff7e5f;font-weight:700;font-size:16px;}
.lk-card .lk-c-desc{font-size:13px;color:#999;line-height:1.6;margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.lk-card .lk-c-meta{display:flex;flex-wrap:wrap;gap:6px 10px;margin-top:10px;}
.lk-card .lk-c-meta span{background:#f7f8fa;border:1px solid #eef0f3;border-radius:4px;padding:3px 9px;font-size:12px;color:#888;}
.lk-card .lk-c-meta span i{color:#ff7e5f;margin-right:3px;}
.lk-card .lk-state{display:inline-flex;align-items:center;gap:5px;padding:2px 10px;border-radius:10px;font-size:12px;}
.lk-state i{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;}
.lk-state-issuing{background:#e8f7ee;color:#1aa051;}
.lk-state-pending{background:#fff6e6;color:#d48806;}
.lk-card .lk-bar{height:8px;background:#f2f2f2;border-radius:4px;overflow:hidden;margin:12px 0 8px;}
.lk-card .lk-bar i{display:block;height:100%;background:linear-gradient(90deg,#ff7e5f,#feb47b);border-radius:4px;}
.lk-card .lk-bar-info{font-size:12px;color:#999;display:flex;justify-content:space-between;}
.lk-card .lk-mycodes{font-size:13px;color:#999;margin-top:10px;}
.lk-card .lk-mycodes em{font-style:normal;color:#ff7e5f;font-weight:700;}
.lk-card .lk-c-btn{margin-top:14px;text-align:right;}
.lk-card .lk-c-btn a{display:inline-block;padding:8px 24px;border-radius:20px;font-size:14px;text-decoration:none;}
.lk-btn-go{background:linear-gradient(135deg,#ff7e5f,#feb47b);color:#fff;}
.lk-btn-ghost{background:#fff;color:#ff7e5f;border:1px solid #ff7e5f;}

/* 历史表格 */
.lucky-table{width:100%;border-collapse:collapse;font-size:13px;}
.lucky-table th{background:#fafafa;color:#666;padding:11px 14px;text-align:center;border-bottom:1px solid #f0f0f0;font-weight:600;}
.lucky-table td{padding:12px 14px;text-align:center;border-bottom:1px solid #f5f5f5;color:#555;}
.lucky-table td:first-child,.lucky-table th:first-child{text-align:left;}
.lucky-table tr:last-child td{border-bottom:none;}

/* 规则列表 */
.lucky-rules{padding:6px 4px;}
.lucky-rules li{position:relative;padding:10px 10px 10px 30px;font-size:14px;line-height:1.7;color:#555;border-bottom:1px dashed #f2f2f2;}
.lucky-rules li:last-child{border-bottom:none;}
.lucky-rules li b{position:absolute;left:0;top:12px;width:20px;height:20px;line-height:20px;text-align:center;background:#ff7e5f;color:#fff;border-radius:50%;font-size:12px;font-weight:400;}

/* 我的幸运码 */
.lk-mine-empty{text-align:center;padding:50px 0;color:#999;}
.lk-mine-empty a{color:#ff7e5f;}
.lk-mine-group{border:1px solid #f0f0f0;border-radius:8px;margin-bottom:18px;overflow:hidden;}
.lk-mine-g-h{padding:13px 20px;background:#fafafa;display:flex;align-items:center;justify-content:space-between;}
.lk-mine-g-h .lt{font-weight:600;color:#333;font-size:15px;}
.lk-mine-g-h .lg-state{font-size:12px;}
.lk-mine-g-b{padding:16px 20px;}
.lk-code-grid{display:flex;flex-wrap:wrap;gap:8px;}
.lk-code{width:52px;height:40px;line-height:40px;text-align:center;background:#f7f8fa;border:1px solid #eef0f3;border-radius:6px;font-family:Consolas,Menlo,monospace;font-size:16px;color:#ff7e5f;font-weight:700;}
.lk-code.hot{background:linear-gradient(135deg,#ff7e5f,#feb47b);color:#fff;border:none;box-shadow:0 2px 8px rgba(254,122,71,.3);}

/* 兑奖页 */
.lk-claim-head{padding:24px;background:linear-gradient(135deg,#fff3ee,#ffe7dc);border-radius:8px;display:flex;align-items:center;}
.lk-claim-head .trophy{font-size:44px;margin-right:18px;}
.lk-claim-head h3{margin:0;font-size:20px;color:#d85a2e;}
.lk-claim-head p{margin:6px 0 0;font-size:14px;color:#a85c3e;}
.lk-fee-box{border:1px solid #f0c8b5;background:#fff8f4;border-radius:8px;padding:18px 22px;margin-top:18px;}
.lk-fee-box .fee-row{display:flex;justify-content:space-between;font-size:15px;padding:8px 0;border-bottom:1px dashed #f0d8cc;}
.lk-fee-box .fee-row:last-child{border-bottom:none;}
.lk-fee-box .fee-row b{color:#d85a2e;}
.lk-warn{background:#fff6e6;border:1px solid #ffe0a3;color:#a8670a;border-radius:6px;padding:10px 14px;font-size:13px;margin-top:12px;}

/* 按钮 */
.lk-btn{display:inline-block;padding:10px 30px;border:none;border-radius:22px;font-size:15px;cursor:pointer;text-decoration:none;}
.lk-btn-ok{background:linear-gradient(135deg,#ff7e5f,#feb47b);color:#fff;}
.lk-btn-ok:disabled{background:#ccc;cursor:not-allowed;}

/* 消息中心 */
.lk-msg{padding:0 22px;}
.lk-msg-item{padding:16px 0;border-bottom:1px solid #f2f2f2;}
.lk-msg-item:last-child{border-bottom:none;}
.lk-msg-title{font-size:14px;font-weight:600;color:#333;display:flex;align-items:center;}
.lk-msg-title i.dot{width:8px;height:8px;background:#ff4d4f;border-radius:50%;margin-left:8px;}
.lk-msg-time{font-size:12px;color:#aaa;margin-top:6px;}
.lk-msg-content{font-size:13px;color:#666;line-height:1.7;margin-top:6px;}
.lk-msg-read{opacity:.7;}

/* 分页 */
.lucky-pager{text-align:center;padding:16px;}
.lucky-pager a,.lucky-pager span{display:inline-block;padding:5px 12px;margin:0 3px;border:1px solid #e4e4e4;border-radius:4px;color:#666;font-size:13px;text-decoration:none;}
.lucky-pager .current{background:#ff7e5f;color:#fff;border-color:#ff7e5f;}