/* ============================================================
   tem_question 社区福利入口卡片样式（首页+详情页共用）
   主题色：每张卡片独立配色
   ============================================================ */
.qn-community-entries{
    display:grid;grid-template-columns:repeat(2,1fr);gap:10px;
    font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
}
.qn-community-entries .com-card{
    display:flex;align-items:center;gap:10px;
    padding:14px 16px;border-radius:14px;
    text-decoration:none;color:#fff;
    transition:all 0.2s ease;
    box-shadow:0 6px 16px rgba(0,0,0,0.08);
}
.qn-community-entries .com-card:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 24px rgba(0,0,0,0.12);
}
.qn-community-entries .com-icon{font-size:28px;flex-shrink:0;}
.qn-community-entries .com-text{flex:1;min-width:0;}
.qn-community-entries .com-title{
    font-size:15px;font-weight:700;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.qn-community-entries .com-sub{
    font-size:11px;opacity:0.92;margin-top:3px;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.qn-community-entries .com-arrow{font-size:18px;opacity:0.8;flex-shrink:0;}

/* 签到卡片：橙红渐变 */
.qn-community-entries .com-sign{
    background:linear-gradient(135deg,#ff9a56,#ff6b35);
}
/* 挑战赛卡片：金橙渐变 */
.qn-community-entries .com-challenge{
    background:linear-gradient(135deg,#ffecd2,#fcb69f);
    color:#5d2e0c;
}
.qn-community-entries .com-challenge .com-sub{color:#8b4513;}
/* 7日任务卡片：蓝紫渐变 */
.qn-community-entries .com-onboarding{
    background:linear-gradient(135deg,#667eea,#764ba2);
}
/* 邀请好友卡片：绿色渐变 */
.qn-community-entries .com-invite{
    background:linear-gradient(135deg,#11998e,#38ef7d);
}

/* 详情页底部 CTA */
.qn-detail-cta{
    max-width:480px;margin:15px auto;
    font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
}
.qn-detail-cta .cta-row{
    display:flex;gap:10px;
}
.qn-detail-cta .cta-item{
    flex:1;display:flex;align-items:center;gap:8px;
    padding: 6px 7px;border-radius:12px;
    text-decoration:none;color:#fff;font-size:13px;font-weight:600;
    transition:all 0.2s;box-shadow:0 4px 12px rgba(0,0,0,0.08);
}
.qn-detail-cta .cta-item:hover{transform:translateY(-1px);}
.qn-detail-cta .cta-icon{font-size:20px;}
.qn-detail-cta .cta-text{flex:1;}
.qn-detail-cta .cta-share{
    background:linear-gradient(135deg,#11998e,#38ef7d);
}
.qn-detail-cta .cta-checkin{
    background:linear-gradient(135deg,#ff9a56,#ff6b35);
}
.qn-detail-cta .cta-challenge{
    background:linear-gradient(135deg,#667eea,#764ba2);
}

/* 移动端响应式 */
@media (max-width:480px){
    .qn-community-entries{grid-template-columns:1fr;}
}

/* ============================================================
   【V2 重设计】社区福利模块（wb 欢迎条 + ce 卡片）
   仅首页使用，详情页 CTA 仍复用上方 qn-* 类
   ============================================================ */
.wb-ce-wrap{
    font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
    width:100%;max-width:none;margin:20px 0 0;padding:0;
    box-sizing:border-box;
}

/* ------ 顶部城市欢迎条 ------ */
.wb-welcome{
    position:relative;overflow:hidden;
    background:linear-gradient(120deg,#3b4b82 0%,#4e5aa3 40%,#6c6cc7 75%,#8a7ce0 100%);
    color:#fff;border-radius:18px;padding:16px 22px;
    display:flex;align-items:center;gap:16px;
    box-shadow:0 10px 28px rgba(78,90,163,0.35);
    margin-bottom:16px;
}
.wb-welcome::before,
.wb-welcome::after{
    content:"";position:absolute;border-radius:50%;filter:blur(4px);opacity:.22;
}
.wb-welcome::before{
    width:180px;height:180px;background:#fff;top:-90px;right:-50px;
}
.wb-welcome::after{
    width:120px;height:120px;background:#c9d6ff;bottom:-60px;left:-30px;
}
.wb-wb-left{
    width:52px;height:52px;border-radius:16px;flex-shrink:0;
    background:rgba(255,255,255,.18);backdrop-filter:blur(6px);
    display:flex;align-items:center;justify-content:center;font-size:28px;
    border:1px solid rgba(255,255,255,.25);
}
.wb-wb-text{flex:1;min-width:0;z-index:1;}
.wb-wb-title{
    font-size:18px;font-weight:700;letter-spacing:.3px;
    display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
}
.wb-wb-title .wb-city{
    background:rgba(255,255,255,.15);padding:2px 10px;border-radius:10px;
    font-size:13px;font-weight:500;
}
.wb-wb-sub{
    font-size:12px;margin-top:4px;opacity:.88;
    display:flex;align-items:center;gap:10px;flex-wrap:wrap;
}
.wb-wb-right{
    display:flex;align-items:center;gap:10px;z-index:1;flex-shrink:0;
}
.wb-date-badge{
    background:rgba(255,255,255,.15);padding:8px 14px;border-radius:12px;
    text-align:center;font-size:12px;line-height:1.3;
    border:1px solid rgba(255,255,255,.2);
}
.wb-date-badge strong{display:block;font-size:15px;font-weight:700;}
.wb-cta-btn{
    display:inline-flex;align-items:center;gap:6px;
    padding:9px 16px;border-radius:12px;
    background:#fff;color:#3b4b82;font-weight:700;font-size:13px;
    text-decoration:none;box-shadow:0 6px 16px rgba(0,0,0,.1);
    transition:transform .18s ease;
}
.wb-cta-btn:hover{transform:translateY(-1px);}
.wb-cta-btn .wb-cta-pill{
    background:linear-gradient(135deg,#ff9a56,#ff6b35);
    color:#fff;font-size:11px;padding:2px 7px;border-radius:8px;font-weight:600;
}

/* ------ 社区福利 4 卡网格（V2 ce-* 类） ------ */
.ce-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:14px;
    margin-bottom:16px;
}
.ce-card{
    position:relative;overflow:hidden;
    display:block;padding:18px 18px 16px;border-radius:18px;
    text-decoration:none;color:#fff;
    box-shadow:0 8px 22px rgba(0,0,0,.08);
    transition:transform .22s ease, box-shadow .22s ease;
    min-height:138px;box-sizing:border-box;
}
.ce-card:hover{
    transform:translateY(-3px);
    box-shadow:0 14px 30px rgba(0,0,0,.14);
}
.ce-corner-tag{
    position:absolute;top:10px;right:12px;
    font-size:11px;padding:3px 8px;border-radius:10px;
    background:rgba(255,255,255,.22);font-weight:600;letter-spacing:.3px;
}
.ce-top{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.ce-icon{
    width:44px;height:44px;border-radius:14px;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;font-size:24px;
    background:rgba(255,255,255,.22);
    border:1px solid rgba(255,255,255,.28);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.ce-text{flex:1;min-width:0;}
.ce-title{font-size:16px;font-weight:700;letter-spacing:.2px;}
.ce-sub{
    font-size:12px;margin-top:3px;opacity:.92;
    overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.ce-foot{
    margin-top:4px;
    padding-top:12px;border-top:1px solid rgba(255,255,255,.18);
    display:flex;align-items:center;justify-content:space-between;gap:10px;
}
.ce-progress{
    flex:1;min-width:0;
}
.ce-prog-text{
    font-size:11px;opacity:.92;display:flex;justify-content:space-between;margin-bottom:4px;
}
.ce-prog-track{
    height:6px;border-radius:3px;background:rgba(255,255,255,.22);overflow:hidden;
}
.ce-prog-fill{
    height:100%;border-radius:3px;
    background:rgba(255,255,255,.7);transition:width .4s ease;
}
.ce-arrow{
    flex-shrink:0;width:30px;height:30px;border-radius:10px;
    display:flex;align-items:center;justify-content:center;
    background:rgba(255,255,255,.18);font-size:14px;font-weight:700;
}

/* 签到卡：橙红 */
.ce-sign{background:linear-gradient(135deg,#ff8a4d 0%,#ff5a1f 60%,#ff3f6c 120%);}
.ce-sign .ce-prog-fill{background:linear-gradient(90deg,#ffe0c2,#fff);}
/* 挑战赛卡：金橙 */
.ce-challenge{background:linear-gradient(135deg,#ffd26e 0%,#ffb03a 55%,#ff7d3a 115%);color:#5c2f00;}
.ce-challenge .ce-corner-tag{background:rgba(92,47,0,.18);color:#5c2f00;}
.ce-challenge .ce-top .ce-icon{background:rgba(92,47,0,.14);border-color:rgba(92,47,0,.22);}
.ce-challenge .ce-foot{border-top-color:rgba(92,47,0,.22);}
.ce-challenge .ce-sub{color:#8a4a0f;}
.ce-challenge .ce-prog-track{background:rgba(92,47,0,.2);}
.ce-challenge .ce-prog-fill{background:linear-gradient(90deg,#fff,#ffefc0);}
.ce-challenge .ce-arrow{background:rgba(92,47,0,.16);}
/* 新手任务卡：蓝紫 */
.ce-onboarding{background:linear-gradient(135deg,#5b7be8 0%,#6c56d9 55%,#8a3ec4 115%);}
/* 邀请好友卡：青绿 */
.ce-invite{background:linear-gradient(135deg,#0fbd8e 0%,#15d4a2 55%,#38ef7d 115%);}

/* ============================================================
   【V2 重设计】海南悬赏问答模块（bn-* 类，金色主题）
   ============================================================ */
.bn-wrap{
    font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif;
    width:100%;max-width:none;margin:20px 0 30px;padding:0;box-sizing:border-box;
    --bn-gold:#d4a33a;--bn-gold-2:#e8c062;--bn-deep:#1c1200;--bn-text:#2a1d08;--bn-muted:#6b5a3a;
}
/* 顶部标题栏 */
.bn-head{
    position:relative;overflow:hidden;
    background:linear-gradient(120deg,#3a2e12 0%,#725016 50%,#a9792a 100%);
    color:#fff;border-radius:18px 18px 0 0;padding:18px 26px;
    display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
    box-shadow:0 8px 24px rgba(169,121,42,.25);
}
.bn-head::before{
    content:"";position:absolute;width:360px;height:360px;border-radius:50%;
    background:radial-gradient(circle,rgba(255,220,140,.25) 0%,transparent 70%);
    top:-220px;right:-80px;pointer-events:none;
}
.bn-head-left{display:flex;align-items:center;gap:14px;z-index:1;}
.bn-emblem{
    width:48px;height:48px;border-radius:14px;flex-shrink:0;
    display:flex;align-items:center;justify-content:center;font-size:26px;
    background:linear-gradient(135deg,#ffd97a,#c9932d);
    color:#3a2e12;box-shadow:0 6px 14px rgba(201,147,45,.35);
}
.bn-title-text h2{
    margin:0;padding:0;font-size:20px;font-weight:800;letter-spacing:.4px;
    display:flex;align-items:center;gap:8px;color:#ffffff;
}
.bn-title-text h2 .bn-title-deco{
    font-size:11px;font-weight:600;letter-spacing:1px;
    padding:2px 8px;border-radius:8px;
    background:linear-gradient(135deg,#ffd97a,#f0b750);color:#3a2e12;
}
.bn-title-text .bn-subtitle{font-size:12px;margin-top:4px;opacity:.85;}
.bn-head-right{display:flex;align-items:center;gap:14px;z-index:1;flex-wrap:wrap;}
.bn-stat-pill{
    background:rgba(255,255,255,.1);padding:7px 14px;border-radius:12px;
    font-size:12px;display:flex;align-items:center;gap:6px;
    border:1px solid rgba(255,255,255,.14);
}
.bn-stat-pill strong{font-size:15px;font-weight:800;color:#ffd97a;}
.bn-more-link{
    color:#fff;text-decoration:none;font-size:13px;font-weight:600;
    padding:7px 14px;border-radius:10px;
    background:rgba(255,255,255,.1);transition:background .2s;
    border:1px solid rgba(255,255,255,.18);
}
.bn-more-link:hover{background:rgba(255,255,255,.18);}

/* 主体：左侧规则 + 右侧问题列表 */
.bn-body{
    display:grid;grid-template-columns:34% 1fr;gap:16px;
    background:#fff;border:1px solid #efdfc1;border-top:none;
    border-radius:0 0 18px 18px;padding:20px;
    box-shadow:0 12px 30px rgba(169,121,42,.12);
}

/* -- 左侧规则区 -- */
.bn-rule-side{
    background:linear-gradient(180deg,#fff8e8 0%,#fff4dc 100%);
    border:1px solid #f5e4bf;border-radius:14px;padding:18px 18px 16px;
    display:flex;flex-direction:column;gap:14px;
}
.bn-hero-icon{
    width:72px;height:72px;margin:-46px auto 0;border-radius:22px;
    display:flex;align-items:center;justify-content:center;font-size:38px;
    background:linear-gradient(135deg,#ffe8a8,#e9b454);
    color:#6a4a0d;box-shadow:0 10px 22px rgba(201,147,45,.32);
    border:3px solid #fff;
}
.bn-rule-title{
    text-align:center;font-size:15px;font-weight:700;color:#5a4310;letter-spacing:.2px;
}
.bn-rule-sum{
    display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:2px 0 4px;
}
.bn-sum-card{
    background:#fff;border:1px solid #f0ddb0;border-radius:12px;padding:10px 12px;text-align:center;
}
.bn-sum-label{font-size:11px;color:#8a6a26;}
.bn-sum-value{font-size:18px;font-weight:800;margin-top:3px;}
.bn-sum-card.bn-s-cash .bn-sum-value{color:#d8452a;}
.bn-sum-card.bn-s-point .bn-sum-value{color:#0f9e6f;}
.bn-rule-list{
    display:flex;flex-direction:column;gap:8px;
}
.bn-rule-item{
    display:flex;gap:10px;align-items:flex-start;
    background:#fff;padding:10px 12px;border-radius:10px;
    border:1px dashed #f0ddb0;
    font-size:12px;color:#5a4310;line-height:1.55;
}
.bn-rule-item .bn-ri-num{
    flex-shrink:0;width:20px;height:20px;border-radius:6px;
    display:flex;align-items:center;justify-content:center;font-weight:800;font-size:12px;
    background:linear-gradient(135deg,#ffd97a,#e9b454);color:#5a4310;
}
.bn-ask-btn{
    display:flex;align-items:center;justify-content:center;gap:6px;
    margin-top:2px;padding:11px 16px;border-radius:12px;
    background:linear-gradient(135deg,#d48a1a,#e66a1f);
    color:#fff;text-decoration:none;font-weight:700;font-size:14px;
    box-shadow:0 8px 18px rgba(230,106,31,.28);
    transition:transform .18s;
}
.bn-ask-btn:hover{transform:translateY(-1px);}

/* -- 右侧列表 -- */
.bn-list-side{
    display:flex;flex-direction:column;gap:10px;
    min-width:0;
}
.bn-item{
    display:flex;align-items:stretch;gap:12px;
    padding:12px;border-radius:14px;
    background:#fff;border:1px solid #f0e5cb;
    text-decoration:none;color:inherit;
    transition:all .2s ease;position:relative;
}
.bn-item:hover{
    border-color:#e0c074;
    transform:translateY(-1px);
    box-shadow:0 10px 22px rgba(169,121,42,.14);
    background:#fffbf2;
}
.bn-item-rank{
    position:absolute;top:0;left:0;width:28px;height:28px;
    border-radius:14px 0 12px 0;
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,#ffd97a,#e6b84f);
    color:#5a4310;font-weight:800;font-size:13px;
}
.bn-item:nth-child(n+4) .bn-item-rank{
    background:#f0e2bf;color:#8a6a26;
}
.bn-thumb{
    flex-shrink:0;width:82px;height:82px;border-radius:12px;margin-left:22px;
    background:#f3e7c7 center/cover no-repeat;
    border:1px solid #ecdcba;
}
.bn-thumb-fallback{
    display:flex;align-items:center;justify-content:center;
    background:linear-gradient(135deg,#fff1c9,#efd68a);color:#8a6a26;font-size:30px;font-weight:800;
}
.bn-item-main{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:6px;}
.bn-item-title{
    font-size:14px;font-weight:700;color:#2a1f08;line-height:1.35;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.bn-item-desc{
    font-size:12px;color:#8a7541;line-height:1.4;
    display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;
}
.bn-item-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.bn-reward{
    font-size:12px;font-weight:700;padding:3px 9px;border-radius:8px;
}
.bn-reward.bn-cash{
    background:linear-gradient(135deg,#ffe4dc,#ffc1b1);color:#c73213;
}
.bn-reward.bn-point{
    background:linear-gradient(135deg,#dffbe7,#a9efc0);color:#0d7d4e;
}
.bn-views{
    font-size:11px;color:#9d854a;margin-left:auto;
    display:inline-flex;align-items:center;gap:3px;
}

/* ------ 响应式：平板/移动端 ------ */
@media (max-width:960px){
    .ce-grid{grid-template-columns:repeat(2,1fr);}
    .bn-body{grid-template-columns:1fr;}
    .bn-hero-icon{margin:-10px auto 0;}
}
@media (max-width:600px){
    .wb-welcome{padding:14px 16px;border-radius:14px;flex-direction:column;align-items:flex-start;gap:12px;}
    .wb-wb-right{width:100%;justify-content:space-between;}
    .wb-date-badge{display:none;}
    .ce-grid{grid-template-columns:1fr 1fr;gap:10px;}
    .ce-card{padding:14px;min-height:128px;border-radius:14px;}
    .ce-icon{width:36px;height:36px;border-radius:12px;font-size:20px;}
    .ce-title{font-size:14px;}
    .ce-sub{font-size:11px;}
    .bn-head{padding:14px 18px;border-radius:14px 14px 0 0;}
    .bn-title-text h2{font-size:17px;}
    .bn-head-right{width:100%;justify-content:space-between;}
    .bn-body{padding:14px;border-radius:0 0 14px 14px;}
    .bn-thumb{width:64px;height:64px;border-radius:10px;margin-left:20px;}
    .bn-item-title{font-size:13px;}
    .bn-item-desc{display:none;}
}
@media (max-width:420px){
    .ce-grid{grid-template-columns:1fr;}
    .bn-stat-pill{display:none;}
}

/* ------ 悬赏模块：空列表 fallback ------ */
.bn-empty{
    min-height:220px;padding:40px 20px;text-align:center;border-radius:14px;
    background:linear-gradient(135deg,rgba(255,215,120,0.12) 0%,rgba(255,255,255,0.92) 100%);
    border:1px dashed var(--bn-gold);
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;
}
.bn-empty-icon{font-size:42px;line-height:1;filter:drop-shadow(0 2px 4px rgba(198,143,32,0.25));}
.bn-empty-title{font-size:16px;font-weight:600;color:var(--bn-text);letter-spacing:0.3px;}
.bn-empty-sub{font-size:12.5px;color:var(--bn-muted);}
.bn-empty-btn{
    margin-top:8px;padding:9px 20px;border-radius:999px;cursor:pointer;
    background:linear-gradient(90deg,#E8C062,#D4A33A);color:#3C2700;font-weight:600;font-size:13px;
    box-shadow:0 3px 10px rgba(212,163,58,0.35);transition:transform .15s ease, box-shadow .15s ease;
}
.bn-empty-btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(212,163,58,0.45);}
@media (max-width:600px){
    .bn-empty{min-height:180px;padding:28px 16px;gap:8px;border-radius:12px;}
    .bn-empty-icon{font-size:34px;}
    .bn-empty-title{font-size:14px;}
    .bn-empty-sub{font-size:11.5px;}
    .bn-empty-btn{padding:8px 18px;font-size:12.5px;}
}

/* ===== 天气 / 潮汐 / 赶海 海南 19 市县切换条 ===== */
.wb-weather-row{
    margin-top:12px;
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    padding:10px 12px;
    background:rgba(255,255,255,0.12);
    border-radius:10px;
    color:#fff;
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,0.06);
}
.wb-wh-cell{
    flex:1 1 0;
    min-width:0;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:4px;
    min-height:46px;
}
.wb-wh-label{
    font-size:11px;
    opacity:0.85;
    line-height:1.2;
}
.wb-wh-v{
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:wrap;
}

/* 城市列：较窄固定宽度，给 select */
.wb-wh-city{
    flex:0 0 110px;
    justify-content:center;
}
.wb-wh-select{
    width:100%;
    background:rgba(255,255,255,0.1);
    color:#fff;
    border:1px solid rgba(255,255,255,0.25);
    padding:6px 8px;
    border-radius:8px;
    font-size:12px;
    line-height:1.4;
    outline:none;
    cursor:pointer;
    transition:border-color .15s ease, background .15s ease;
    appearance:none;
    -webkit-appearance:none;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path fill='none' stroke='rgba(255,255,255,0.9)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M1 1l4 4 4-4'/></svg>");
    background-repeat:no-repeat;
    background-position:right 8px center;
    padding-right:24px;
    font-family:inherit;
}
.wb-wh-select:hover{
    border-color:rgba(255,255,255,0.45);
    background-color:rgba(255,255,255,0.16);
}
.wb-wh-select option{
    background:#2a3450;
    color:#fff;
}

/* 天气列：左图标 + 右温度/风 */
.wb-wh-weather{
    flex-direction:row;
    align-items:center;
    gap:10px;
    min-height:auto;
}
.wb-wh-w-icon{
    font-size:26px;
    line-height:1;
    flex-shrink:0;
    filter:drop-shadow(0 1px 2px rgba(0,0,0,0.25));
}
.wb-wh-w-main{
    display:flex;
    flex-direction:column;
    gap:2px;
    min-width:0;
}
.wb-wh-w-temp{
    font-size:13px;
    line-height:1.2;
    display:flex;
    align-items:baseline;
    flex-wrap:wrap;
    gap:3px;
}
.wb-wh-w-temp b{
    font-size:18px;
    font-weight:700;
    letter-spacing:-0.3px;
}
.wb-wh-w-unit{
    font-size:12px;
    opacity:0.9;
}
.wb-wh-w-temp em{
    font-style:normal;
    font-size:12px;
    opacity:0.92;
}
.wb-wh-w-sub{
    font-size:11px;
    opacity:0.82;
    line-height:1.2;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.wb-wh-dot{
    display:inline-block;
    margin:0 4px;
    opacity:0.55;
}

/* 潮汐列 */
.wb-wh-tide-row{
    gap:8px;
}
.wb-wh-tide-cur{
    font-size:13px;
    font-weight:600;
    line-height:1.2;
}
.wb-wh-tide-next{
    font-size:11px;
    opacity:0.82;
    line-height:1.2;
}

/* 赶海列 */
.wb-wh-gh-time{
    font-size:11px;
    opacity:0.82;
    line-height:1.2;
}
.wb-wh-gh-grade{
    display:inline-block;
    padding:2px 8px;
    border-radius:999px;
    font-size:11.5px;
    font-weight:600;
    line-height:1.5;
    letter-spacing:0.2px;
    border:1px solid transparent;
    white-space:nowrap;
}
/* 4 档评分色彩，同时 class 中文名/通用名两种写法兜底 */
.wb-gh-grade-极佳, .wb-wh-gh-grade[data-grade="极佳"]{
    background:rgba(16,185,129,0.22);
    color:#a7f3d0;
    border-color:rgba(16,185,129,0.4);
}
.wb-gh-grade-适宜, .wb-wh-gh-grade[data-grade="适宜"]{
    background:rgba(250,204,21,0.18);
    color:#fde68a;
    border-color:rgba(250,204,21,0.35);
}
.wb-gh-grade-一般, .wb-wh-gh-grade[data-grade="一般"]{
    background:rgba(249,115,22,0.18);
    color:#fed7aa;
    border-color:rgba(249,115,22,0.35);
}
.wb-gh-grade-不宜, .wb-wh-gh-grade[data-grade="不宜"]{
    background:rgba(239,68,68,0.18);
    color:#fecaca;
    border-color:rgba(239,68,68,0.35);
}
.wb-gh-grade---, .wb-wh-gh-grade[data-grade="--"]{
    background:rgba(255,255,255,0.1);
    color:rgba(255,255,255,0.85);
    border-color:rgba(255,255,255,0.18);
}

/* 天气条响应式 */
@media (max-width:600px){
    .wb-weather-row{
        gap:8px;
        padding:10px;
    }
    .wb-wh-city{
        flex:1 1 100%;
        order:-1;
    }
    .wb-wh-select{
        padding:7px 24px 7px 10px;
        font-size:12.5px;
    }
    .wb-wh-cell{
        flex:1 1 calc(50% - 8px);
        min-height:42px;
    }
    .wb-wh-w-icon{font-size:23px;}
    .wb-wh-w-temp b{font-size:16px;}
}
@media (max-width:420px){
    .wb-weather-row{
        gap:10px;
        padding:12px 10px;
    }
    .wb-wh-cell{
        flex:1 1 100%;
        min-height:0;
    }
    .wb-wh-w-icon{font-size:22px;}
    .wb-wh-weather{gap:8px;}
    .wb-wh-w-temp b{font-size:17px;}
}
