:root{
  --bg:#f7f1e7;
  --paper:#fffdf8;
  --wine:#570606;
  --wine2:#7a0909;
  --gold:#d4a43b;
  --gold2:#f5d37c;
  --ink:#2c1914;
  --muted:#846f66;
  --line:#ead8bd;
  --green:#15834b;
  --danger:#b42318;
  --shadow:0 8px 24px rgba(84,18,9,.07);
  --soft-shadow:0 4px 14px rgba(84,18,9,.06);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(#fbf8f2,#f6efe4);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
body.sheet-open{overflow:hidden}
a{text-decoration:none;color:inherit}
button,input{font:inherit}
button{cursor:pointer}
button:disabled{cursor:not-allowed}

/* Header */
.site-header{position:sticky;top:0;z-index:60;background:linear-gradient(120deg,#250202,var(--wine) 55%,#2a0202);box-shadow:0 4px 18px rgba(51,0,0,.25)}
.header-inner{max-width:1240px;height:78px;margin:auto;padding:8px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{min-width:0}
.brand img{max-height:62px;max-width:500px;display:block}
.header-actions{display:flex;gap:8px;margin-left:auto}
.header-link{padding:9px 13px;border-radius:10px;border:1px solid #dab75e;color:#3f1a03;background:linear-gradient(var(--gold2),var(--gold));font-weight:800;font-size:13px}
.header-link.outline{background:transparent;color:#f8e3b0}
.header-square-btn{display:none;width:42px;height:42px;border:1px solid #d7ad54;border-radius:12px;background:#fff8e8;color:var(--wine);font-size:24px;font-weight:900}
.draw-links-row{border-top:1px solid rgba(255,255,255,.09);background:rgba(0,0,0,.12)}
.draw-links-inner{max-width:1240px;margin:auto;padding:7px 20px;display:flex;gap:8px}
.draw-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:120px;padding:8px 15px;border:1px solid rgba(241,209,137,.34);border-radius:10px;color:#f8e4b4;background:rgba(255,255,255,.05);font-weight:850;font-size:14px}
.draw-link:hover{background:linear-gradient(var(--gold2),var(--gold));color:#4a1504;border-color:#e4bd5f}
.draw-link span{color:#ffd86d;font-size:11px}

/* Main layout */
main{max-width:1240px;margin:auto;padding:14px 20px 100px}
.home-section,.draw-overview-section{margin-top:20px}
.home-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:12px}
.home-section-head h2{margin:1px 0 0;color:var(--wine);font-size:24px;line-height:1.2}
.home-kicker{font-size:10px;letter-spacing:.16em;color:#b1843d;font-weight:900}
.section-more,.section-count{font-size:13px;color:var(--wine2);font-weight:800}
.text-button{border:0;background:transparent;padding:4px 0}

/* Top banner */
.hero{position:relative;overflow:hidden;border:1px solid #cfa34b;border-radius:14px;box-shadow:var(--shadow);background:#3e0202}
.ad-hero{height:118px}
.ad-slides,.ad-slide,.ad-slide picture{width:100%;height:100%;display:block}
.ad-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .28s ease}
.ad-slide.active{opacity:1;pointer-events:auto}
.ad-slide img{width:100%;height:100%;display:block;object-fit:cover}
.ad-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:36px;height:36px;border:1px solid rgba(255,233,171,.62);border-radius:50%;background:rgba(59,4,4,.7);color:#ffe29b;font-size:27px;line-height:1}
.ad-prev{left:10px}.ad-next{right:10px}
.ad-dots{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);display:flex;gap:6px;z-index:4}
.ad-dot{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.55)}
.ad-dot.active{width:18px;border-radius:999px;background:#ffd56d}
.ad-hero.single .ad-arrow,.ad-hero.single .ad-dots{display:none}

/* Lucky / notice */
.lucky-strip{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:10px;padding:9px 12px;border:1px solid #ecd095;border-radius:11px;background:#fff4df;overflow:hidden}
.lucky-icon{display:grid;place-items:center;width:28px;height:28px;flex:0 0 auto;border-radius:8px;background:var(--wine);color:#ffe7aa;font-weight:900;box-shadow:0 2px 8px rgba(87,6,6,.18);animation:luckyIconBreath 2.8s ease-in-out infinite}
.lucky-text{display:inline-block;font-weight:850;letter-spacing:1.5px;background:linear-gradient(90deg,#9e6706 0%,#d6a329 18%,#f5d77a 34%,#fff1ad 48%,#fff 50%,#fff1ad 52%,#f5d77a 66%,#d6a329 82%,#9e6706 100%);background-size:240% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:luckyShine 4s linear infinite,luckyBreath 2.8s ease-in-out infinite}
@keyframes luckyShine{0%{background-position:200% center}100%{background-position:-200% center}}
@keyframes luckyBreath{0%,100%{opacity:.9;transform:scale(1)}50%{opacity:1;transform:scale(1.025)}}
@keyframes luckyIconBreath{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}
.notice-marquee{display:flex;align-items:center;gap:10px;margin-top:9px;border:1px solid var(--line);border-radius:11px;background:var(--paper);padding:9px 12px;overflow:hidden}
.notice-marquee>b{flex:0 0 auto;color:var(--wine);font-size:13px}
.marquee-window{min-width:0;flex:1;overflow:hidden;white-space:nowrap}
.marquee-track{display:inline-block;min-width:100%;padding-left:100%;color:var(--muted);font-size:13px;animation:noticeScroll 22s linear infinite}
@keyframes noticeScroll{from{transform:translateX(0)}to{transform:translateX(-100%)}}

/* Latest draw cards */
.draw-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.draw-overview-card{background:var(--paper);border:1px solid var(--line);border-radius:15px;box-shadow:var(--soft-shadow);overflow:hidden}
.draw-overview-title{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 15px;border-bottom:1px solid #f0e3d0}
.draw-overview-title strong{color:var(--ink);font-size:17px}
.draw-overview-title a{color:var(--wine2);font-size:14px;font-weight:850}
.home-draw-numbers{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:17px 15px 6px}
.home-draw-ball{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fffaf0;color:var(--wine);border:5px solid #cf9f36;box-shadow:inset 0 0 0 2px #fff;font-weight:900;font-size:15px}
.home-draw-ball:nth-of-type(3n+1){border-color:#8b0c0c}
.home-draw-ball.special{border-color:#15834b;color:#145c37}
.draw-plus{font-size:23px;color:var(--wine2);font-weight:900;margin:0 -1px 0 2px}
.home-draw-zodiac{display:flex;gap:7px;flex-wrap:wrap;padding:0 15px;color:var(--muted);font-size:12px}
.home-draw-zodiac span{width:42px;text-align:center}
.home-draw-zodiac span.special{color:#216844}
.home-draw-meta{display:flex;gap:10px;flex-wrap:wrap;align-items:center;padding:10px 15px 15px;color:var(--muted);font-size:13px}
.home-draw-meta b{color:var(--wine2)}
.draw-empty{color:var(--muted);font-size:13px}
.draw-placeholder-body{display:flex;align-items:center;gap:12px;padding:18px 15px}
.placeholder-ball{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:4px solid #d8ba76;color:#b48b34;background:#fff9ec;font-weight:900}
.draw-placeholder-body div{display:grid;gap:3px}.draw-placeholder-body strong{color:var(--wine)}.draw-placeholder-body small{color:var(--muted)}

/* Hot / all brand tiles */
.brand-tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.brand-tile{min-width:0;min-height:72px;border:1px solid var(--line);border-radius:13px;background:var(--paper);box-shadow:var(--soft-shadow);padding:10px 12px;display:flex;align-items:center;gap:10px;text-align:left;color:var(--ink);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.brand-tile:hover{transform:translateY(-1px);border-color:#d6b368;box-shadow:0 7px 18px rgba(84,18,9,.09)}
.brand-tile.is-hot{border-color:#dfc07c}
.brand-tile-icon,.favorite-icon,.sheet-brand-icon{display:grid;place-items:center;overflow:hidden;flex:0 0 auto;background:#f4eee4;border-radius:9px;color:var(--wine);font-weight:900}
.brand-tile-icon{width:38px;height:38px}
.brand-tile-icon img,.favorite-icon img,.sheet-brand-icon img{width:100%;height:100%;object-fit:contain}
.brand-icon-fallback{background:linear-gradient(#fff7e5,#f1e2c2);border:1px solid #e2c181;color:#8b0c0c}
.brand-tile-text{min-width:0;display:grid;gap:2px;flex:1}
.brand-tile-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3b211b;font-size:15px}
.brand-tile-text small{color:var(--muted);font-size:11px}
.brand-tile-arrow{color:#a3816c;font-size:22px;line-height:1}
.empty-grid{grid-column:1/-1;color:var(--muted);font-size:13px;padding:14px}

/* Favorites */
.favorite-list{display:flex;gap:8px;flex-wrap:wrap}
.favorite-chip{border:1px solid #dec18e;background:#fff8eb;color:#690909;border-radius:11px;padding:8px 11px;font-weight:800;display:flex;align-items:center;gap:7px;box-shadow:var(--soft-shadow)}
.favorite-icon{width:26px;height:26px;border-radius:7px;font-size:11px}
.empty-state{color:var(--muted);font-size:13px}

/* Navigation controls */
.nav-section-head{margin-bottom:10px}
.category-scroll{display:flex;gap:7px;overflow-x:auto;padding:1px 0 9px;scrollbar-width:none}
.category-scroll::-webkit-scrollbar{display:none}
.category-pill{flex:0 0 auto;border:1px solid #dfc28e;border-radius:999px;background:#fff8ed;color:#785443;padding:7px 13px;font-weight:800;font-size:13px}
.category-pill.active{background:var(--wine);color:#ffe1a0;border-color:var(--wine)}
.search-section{margin-bottom:11px}
.search-wrap{height:46px;border:1px solid var(--line);border-radius:12px;background:var(--paper);box-shadow:var(--soft-shadow);display:flex;align-items:center;gap:8px;padding:0 13px}
.search-wrap span{font-size:24px;color:var(--wine)}
.search-wrap input{min-width:0;flex:1;border:0;outline:0;font-size:14px;background:transparent;color:var(--ink)}
.no-results{text-align:center;color:var(--muted);padding:28px 10px}

/* Community */
.community-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.community-card{border:1px solid var(--line);border-radius:12px;padding:13px;background:var(--paper);display:grid;gap:4px;box-shadow:var(--soft-shadow)}
.community-card strong{color:var(--wine)}
.community-card span{font-size:12px;color:var(--muted)}

/* Footer */
footer{background:#270202;color:#e9c787;border-top:2px solid #ad7b23;text-align:center;padding:26px 20px 90px;display:grid;gap:5px;font-size:13px}

/* Brand bottom sheet / modal */
.brand-sheet-overlay{position:fixed;inset:0;z-index:110;background:rgba(27,16,12,.58);backdrop-filter:blur(2px)}
.brand-sheet{position:fixed;z-index:120;left:50%;top:50%;transform:translate(-50%,-50%);width:min(600px,calc(100vw - 28px));max-height:min(78vh,760px);display:flex;flex-direction:column;background:#faf7f1;border:1px solid #ddc69d;border-radius:18px;box-shadow:0 28px 70px rgba(35,5,0,.3);overflow:hidden}
.brand-sheet[hidden],.brand-sheet-overlay[hidden]{display:none}
.brand-sheet-handle{display:none}
.brand-sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #eadfce;background:#fffdf8}
.brand-sheet-title-wrap{display:flex;align-items:center;gap:10px;min-width:0}
.brand-sheet-title-wrap h2{margin:0;color:var(--ink);font-size:23px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.brand-sheet-icon{flex:0 0 auto}.sheet-brand-icon{width:42px;height:42px;border-radius:10px}
.brand-sheet-tags{display:flex;gap:4px;margin-top:3px}.brand-sheet-tags span{font-size:10px;padding:2px 6px;border-radius:999px;background:#f1e1c2;color:#724d12}
.brand-sheet-header-actions{display:flex;gap:7px;flex:0 0 auto}
.sheet-fav,.sheet-close{width:40px;height:40px;border-radius:11px;border:1px solid #dfc38e;background:#fff8e9;color:var(--wine);font-size:22px;font-weight:900}
.sheet-fav.active{background:var(--wine);color:#ffd66c;border-color:var(--wine)}
.sheet-close{font-size:30px;line-height:1;color:#5d514b;background:#fff}
.brand-sheet-toolbar{display:grid;grid-template-columns:1fr auto;gap:8px;padding:11px 18px;border-bottom:1px solid #eadfce;background:#f8f1e5}
.sheet-fast-entry,.sheet-refresh{min-height:42px;border-radius:11px;font-weight:850}
.sheet-fast-entry{border:1px solid #b98928;background:linear-gradient(var(--gold2),var(--gold));color:#491704}
.sheet-fast-entry:disabled{opacity:.5}
.sheet-refresh{border:1px solid #d8c4a1;background:#fff;color:var(--wine);padding:0 14px}
.brand-sheet-body{min-height:0;overflow:auto;padding:12px 18px 18px}
.sheet-group+.sheet-group{margin-top:15px}
.sheet-group-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 3px 7px}
.sheet-group-title strong{color:var(--wine);font-size:14px}.sheet-group-title span{font-size:11px;color:var(--muted)}
.sheet-line-list{display:grid;gap:7px}
.sheet-line{min-height:58px;border:1px solid #eee3d2;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 13px;box-shadow:0 2px 8px rgba(84,18,9,.035)}
.sheet-line:hover{border-color:#d7b978;background:#fffaf0}
.sheet-line-name{font-weight:850;color:#31201b;font-size:15px}
.sheet-line-right{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.sheet-line-arrow{font-size:25px;color:#71635b}
.line-speed{font-size:11px;color:#846f66;padding:3px 7px;border-radius:999px;background:#f4eee6}
.line-speed.fastest{background:#fff0c7;color:#8a5c00;border:1px solid #e5c06e;font-weight:850}
.line-speed.down{background:#fff0ee;color:var(--danger)}
.line-speed.pending{color:#9b8b81}
.sheet-empty{text-align:center;color:var(--muted);padding:25px 0}
.brand-sheet-footer{padding:10px 18px;text-align:center;color:#9a7a66;font-size:12px;border-top:1px solid #eadfce;background:#fffaf2}

/* Mobile bottom navigation */
.mobile-bottom-nav{display:none}

/* Draw/history standalone pages */
.draw-page{max-width:980px}
.draw-topbar{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.draw-card{background:#fffdf8;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:var(--shadow);margin-top:12px}
.draw-card h1,.draw-card h2{color:var(--wine);margin-top:0}
.draw-number-list{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}
.draw-ball{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#6d0808;color:#ffe9a8;border:2px solid #d5a43a;font-weight:900}
.draw-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.draw-meta>div{background:#fff6e9;border:1px solid #ead6b1;border-radius:9px;padding:10px}
.draw-meta small{display:block;color:var(--muted);margin-bottom:4px}
.history-table{width:100%;border-collapse:collapse}.history-table th,.history-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left}
.api-note{padding:12px;border-radius:9px;background:#fff4df;border:1px solid #ecd095;color:#78531a}
.raw-box{white-space:pre-wrap;word-break:break-all;background:#281f1b;color:#f9ead0;padding:12px;border-radius:9px;max-height:360px;overflow:auto;font-size:12px}

@media(max-width:980px){
  .brand-tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .community-grid{grid-template-columns:repeat(2,1fr)}
  .header-actions{display:none}
  .header-square-btn{display:grid;place-items:center}
}

@media(max-width:760px){
  .site-header{position:sticky}
  .header-inner{height:64px;padding:7px 14px}
  .brand img{max-height:48px;max-width:255px}
  .header-square-btn{width:40px;height:40px}
  .draw-links-inner{padding:6px 10px;gap:7px}
  .draw-link{flex:1;min-width:0;padding:7px 10px;font-size:13px}
  main{padding:10px 12px 90px}
  .ad-hero{height:86px;border-radius:11px}
  .ad-arrow{width:30px;height:30px;font-size:22px}.ad-prev{left:6px}.ad-next{right:6px}
  .lucky-strip{margin-top:8px;padding:8px 10px}.lucky-icon{width:25px;height:25px;font-size:13px}.lucky-text{font-size:14px;letter-spacing:1px}
  .notice-marquee{margin-top:7px;padding:8px 10px}
  .home-section,.draw-overview-section{margin-top:18px}
  .home-section-head{margin-bottom:10px;padding:0 2px}.home-section-head h2{font-size:22px}.home-kicker{font-size:9px}
  .draw-overview-grid{grid-template-columns:1fr;gap:10px}
  .draw-overview-title{padding:11px 13px}.draw-overview-title strong{font-size:16px}
  .home-draw-numbers{gap:6px;padding:14px 13px 5px}.home-draw-ball{width:39px;height:39px;border-width:4px;font-size:14px}.home-draw-zodiac{padding:0 13px;gap:6px}.home-draw-zodiac span{width:39px}.home-draw-meta{padding:9px 13px 13px;font-size:12px}
  .brand-tile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .brand-tile{min-height:70px;padding:9px 8px;border-radius:12px;gap:7px;display:grid;grid-template-columns:34px minmax(0,1fr)}
  .brand-tile-icon{width:34px;height:34px;border-radius:8px}.brand-tile-text strong{font-size:14px}.brand-tile-text small{font-size:10px}.brand-tile-arrow{display:none}
  .favorite-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.favorite-chip{min-width:0;padding:8px;justify-content:flex-start}.favorite-chip>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.favorite-icon{width:25px;height:25px}
  .category-pill{padding:6px 12px;font-size:12px}
  .search-wrap{height:44px}
  .community-grid{grid-template-columns:1fr 1fr}.community-card{padding:11px}.community-card strong{font-size:13px}.community-card span{font-size:10px}
  footer{padding-bottom:82px}

  .brand-sheet{left:0;right:0;top:auto;bottom:0;transform:none;width:100%;max-height:82vh;border:0;border-radius:24px 24px 0 0;padding-bottom:env(safe-area-inset-bottom)}
  .brand-sheet-handle{display:block;width:44px;height:5px;border-radius:999px;background:#d7cec5;margin:8px auto 0}
  .brand-sheet-header{padding:12px 16px 13px}.brand-sheet-title-wrap h2{font-size:22px}.sheet-brand-icon{width:38px;height:38px}.sheet-fav,.sheet-close{width:38px;height:38px}.brand-sheet-toolbar{padding:10px 16px}.brand-sheet-body{padding:10px 16px 15px}.sheet-line{min-height:62px;padding:11px 13px}.sheet-line-name{font-size:15px}.brand-sheet-footer{padding:9px 16px}

  .mobile-bottom-nav{display:grid;grid-template-columns:repeat(6,1fr);position:fixed;left:0;right:0;bottom:0;z-index:90;background:#fffdf8;border-top:1px solid #d7bd88;box-shadow:0 -5px 18px rgba(84,18,9,.08);padding:6px 2px calc(6px + env(safe-area-inset-bottom))}
  .mobile-bottom-nav button,.mobile-bottom-nav a{border:0;background:transparent;color:#7d6e66;font-size:9px;display:grid;justify-items:center;gap:2px;padding:2px 0;line-height:1.1}
  .mobile-bottom-nav button span,.mobile-bottom-nav a span{font-size:18px;color:#68463c}.mobile-bottom-nav button.active,.mobile-bottom-nav a:active{color:var(--wine);font-weight:850}.mobile-bottom-nav button.active span{color:var(--wine)}

  .draw-meta{grid-template-columns:1fr}.history-table{font-size:12px}
}

@media(max-width:430px){
  .brand img{max-width:230px}
  .brand-tile-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .brand-tile{padding:8px 7px;grid-template-columns:31px minmax(0,1fr);min-height:66px}.brand-tile-icon{width:31px;height:31px}.brand-tile-text strong{font-size:13px}.brand-tile-text small{font-size:9px}
  .favorite-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-draw-ball{width:36px;height:36px}.home-draw-zodiac span{width:36px}
  .community-grid{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  .lucky-text,.lucky-icon,.marquee-track{animation:none}
  .marquee-track{padding-left:0}
  .brand-tile,.ad-slide{transition:none}
}

/* ===== V3 弹窗广告 ===== */
.popup-ad-overlay{position:fixed;inset:0;z-index:140;background:rgba(20,0,0,.62);display:flex;align-items:center;justify-content:center;padding:18px}.popup-ad-overlay[hidden]{display:none}.popup-ad{position:relative;width:min(680px,94vw);background:#fffdf8;border:1px solid #d4a43b;border-radius:18px;overflow:hidden;box-shadow:0 26px 70px rgba(0,0,0,.34)}.popup-ad-close{position:absolute;right:10px;top:10px;z-index:3;width:38px;height:38px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(45,2,2,.82);color:#fff1bd;font-size:26px;line-height:1}.popup-ad a{display:block;background:#3b0303}.popup-ad picture,.popup-ad img{display:block;width:100%}.popup-ad img{max-height:72vh;object-fit:contain}.popup-ad-footer{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;color:#6c4e44;font-size:12px;background:#fffaf1}.popup-ad-dots{display:flex;justify-content:center;gap:6px;padding:0 12px 10px;background:#fffaf1}.popup-ad-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:#d8c3a5}.popup-ad-dots button.active{background:#700909;transform:scale(1.25)}
@media(max-width:760px){.popup-ad-overlay{align-items:center;padding:14px}.popup-ad{width:min(94vw,520px);border-radius:16px}.popup-ad img{max-height:68vh}.popup-ad-close{width:36px;height:36px;font-size:24px}}
body.modal-open{overflow:hidden}


/* ===== FRONTEND CLEANUP V4 ===== */

/* 已取消的区域 */
.header-square-btn,
.draw-links-row,
.lucky-strip,
.search-section {
  display: none !important;
}

/* iframe 开奖 */
.draw-iframe-section {
  margin-top: 14px;
  width: 100%;
  overflow: hidden;
  background: #fffdf8;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: var(--soft-shadow);
}

.draw-iframe {
  display: block;
  width: 100%;
  height: 46px;
  border: 0;
  margin: 0;
  padding: 0;
  background: #fffdf8;
}

/* 手机上保持紧凑 */
@media (max-width: 760px) {
  .draw-iframe-section {
    margin-top: 10px;
    border-radius: 12px;
  }

  .draw-iframe {
    height: 46px;
  }
}


/* ===== 首页 Banner / 开奖最终修正 ===== */

/* 顶部广告改成扁横幅 */
.ad-hero,
.hero {
  margin-top: 12px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}

.ad-hero img,
.hero img {
  display: block !important;
  width: 100% !important;
  height: 105px !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
}

/* 开奖 iframe */
.draw-iframe-section {
  width: 100%;
  margin: 12px 0;
  background: #fffdf8;
  border: 1px solid #ead8bd;
  border-radius: 12px;
  overflow: hidden;
}

.draw-iframe {
  display: block;
  width: 100%;
  height: 46px;
  margin: 0;
  padding: 0;
  border: 0;
  background: #fffdf8;
}

/* H5 */
@media (max-width: 760px) {
  .ad-hero img,
  .hero img {
    height: 72px !important;
    object-fit: cover !important;
  }

  .draw-iframe-section {
    margin: 10px 0;
    border-radius: 10px;
  }

  .draw-iframe {
    height: 46px;
  }
}

.draw-iframe {
  height: 80px !important;
}

@media (max-width: 760px) {
  .draw-iframe {
    height: 80px !important;
  }
}


/* ===== 长顺开奖模块 ===== */

.cs-draw-card {
  margin: 12px 0;
  overflow: hidden;
  background: #fffdf8;
  border: 1px solid #ead8bd;
  border-radius: 12px;
  box-shadow: 0 5px 15px rgba(70, 8, 5, .07);
}

.cs-draw-head {
  min-height: 50px;
  padding: 8px 14px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;

  background: linear-gradient(
    120deg,
    #390404,
    #640909 55%,
    #400505
  );
}

.cs-draw-title {
  color: #f5d88d;
  font-size: 15px;
  font-weight: 900;
}

.cs-draw-sub {
  margin-top: 2px;
  color: rgba(255, 239, 204, .72);
  font-size: 11px;
}

.cs-draw-refresh {
  height: 29px;
  padding: 0 12px;

  border: 1px solid rgba(239, 202, 110, .48);
  border-radius: 7px;

  background: rgba(255, 255, 255, .06);
  color: #f7dc98;

  font-size: 12px;
  font-weight: 800;

  cursor: pointer;
}

.cs-draw-refresh:disabled {
  opacity: .55;
}

.cs-draw-body {
  padding: 12px 14px 10px;
}

.cs-draw-balls {
  min-height: 36px;

  display: flex;
  align-items: center;
  flex-wrap: wrap;

  gap: 7px;
}

.cs-draw-ball {
  width: 34px;
  height: 34px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;
  border: 1px solid #d1aa4d;

  background: radial-gradient(
    circle at 35% 28%,
    #fffdf4,
    #f2dda1 53%,
    #cfaa4a
  );

  color: #5d0808;

  font-size: 13px;
  font-weight: 900;

  box-shadow:
    0 2px 5px rgba(70, 8, 5, .12);
}

.cs-draw-ball.special {
  background: radial-gradient(
    circle at 35% 28%,
    #971b1b,
    #650909 58%,
    #3b0303
  );

  color: #ffe7a5;
  border-color: #c29437;
}

.cs-draw-plus {
  color: #a87b25;
  font-size: 17px;
  font-weight: 900;
}

.cs-draw-meta {
  margin-top: 9px;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;

  color: #88745a;
  font-size: 11px;
}

#drawTime {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.cs-next-draw {
  color: #750b0b;
  font-weight: 700;
}

.cs-draw-loading {
  color: #89775e;
  font-size: 12px;
}

@media (max-width: 760px) {

  .cs-draw-card {
    margin: 10px 0;
    border-radius: 10px;
  }

  .cs-draw-head {
    min-height: 46px;
    padding: 7px 10px;
  }

  .cs-draw-body {
    padding: 10px;
  }

  .cs-draw-balls {
    gap: 5px;
  }

  .cs-draw-ball {
    width: 30px;
    height: 30px;
    font-size: 12px;
  }

  .cs-draw-meta {
    font-size: 10px;
  }
}



/* ============================================================
   长顺资讯网 - 香港六合彩开奖 UI V3
   ============================================================ */

.lhc-panel {
  position: relative;

  width: 100%;
  min-height: 185px;

  margin: 12px 0;

  display: grid;
  grid-template-columns:
    150px
    minmax(500px, 1fr)
    minmax(300px, 430px);

  align-items: center;
  gap: 24px;

  padding: 20px 30px;

  background: #ffffff;

  border: 1px solid #eadac2;
  border-radius: 14px;

  box-shadow:
    0 6px 20px rgba(79, 13, 8, .06);

  overflow: hidden;
}


/* ==============================
   左侧六合彩圆形标识
   ============================== */

.lhc-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}

.lhc-logo-inner {
  width: 118px;
  height: 118px;

  position: relative;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    radial-gradient(
      circle at 40% 30%,
      #e15e3f 0%,
      #c42a18 45%,
      #8e150b 76%,
      #651007 100%
    );

  border: 8px solid #f5a37b;

  box-shadow:
    inset 0 0 0 3px
      rgba(255, 210, 177, .32),
    0 3px 8px
      rgba(75, 10, 5, .14);

  color: #fff;
}

.lhc-logo-inner::before,
.lhc-logo-inner::after {
  content: "";

  position: absolute;

  width: 7px;
  height: 7px;

  top: 20px;

  border-radius: 50%;

  background: #fff;

  box-shadow:
    16px -5px 0 #fff,
    32px -2px 0 #fff,
    47px 6px 0 #fff;
}

.lhc-logo-inner::before {
  left: 15px;
}

.lhc-logo-inner::after {
  display: none;
}

.lhc-logo-small {
  margin-top: 5px;

  font-size: 13px;
  font-weight: 800;

  line-height: 1;
}

.lhc-logo-inner strong {
  margin-top: 3px;

  font-size: 23px;
  font-weight: 900;

  letter-spacing: -1px;

  line-height: 1.1;

  text-shadow:
    0 2px 2px
    rgba(80, 5, 0, .22);
}

.lhc-logo-en {
  margin-top: 4px;

  font-size: 8px;
  font-weight: 800;

  letter-spacing: 2px;
}


/* ==============================
   中部开奖区
   ============================== */

.lhc-main {
  min-width: 0;
}

.lhc-topline {
  width: 100%;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 30px;
}

.lhc-heading {
  display: flex;
  align-items: center;

  gap: 24px;

  white-space: nowrap;
}

.lhc-title {
  color: #161616;

  font-size: 21px;
  font-weight: 800;
}

.lhc-period {
  color: #777;

  font-size: 17px;
  font-weight: 600;
}

.lhc-period strong {
  color: #e84a1c;

  font-size: 20px;
  font-weight: 800;
}

.lhc-frequency {
  color: #a1a1a1;

  font-size: 15px;
  font-weight: 700;

  white-space: nowrap;
}


/* ==============================
   开奖号码
   ============================== */

.lhc-number-row {
  min-height: 85px;

  margin-top: 20px;

  display: flex;
  align-items: flex-start;

  gap: 22px;

  white-space: nowrap;
}

.lhc-number-item {
  flex: 0 0 auto;

  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 9px;
}

.lhc-ball {
  width: 50px;
  height: 50px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  color: #fff;

  font-size: 21px;
  font-weight: 900;

  line-height: 1;

  box-shadow:
    inset 0 2px 3px
      rgba(255, 255, 255, .25),
    0 3px 6px
      rgba(0, 0, 0, .08);
}

.lhc-ball-red {
  background:
    linear-gradient(
      145deg,
      #ff4454,
      #f41f36 60%,
      #dc1028
    );
}

.lhc-ball-blue {
  background:
    linear-gradient(
      145deg,
      #20a7ef,
      #078edc 60%,
      #0878bd
    );
}

.lhc-ball-green {
  background:
    linear-gradient(
      145deg,
      #2bcf7b,
      #18b766 60%,
      #0e9c54
    );
}

.lhc-animal {
  min-height: 25px;

  color: #171717;

  font-size: 22px;
  font-weight: 800;

  line-height: 1;
}

.lhc-plus {
  flex: 0 0 auto;

  margin:
    12px -3px
    0 -2px;

  color: #161616;

  font-size: 30px;
  font-weight: 500;

  line-height: 1;
}

.lhc-bottom-info {
  min-height: 18px;

  margin-top: 1px;

  color: #a2a2a2;

  font-size: 11px;
}


/* ==============================
   右侧倒计时
   ============================== */

.lhc-countdown {
  min-height: 55px;

  display: flex;
  align-items: center;
  justify-content: flex-end;

  gap: 7px;

  flex-wrap: wrap;

  color: #777;

  font-size: 15px;
  font-weight: 600;

  white-space: nowrap;
}

.lhc-countdown-text {
  color: #797979;
}

.lhc-count-box {
  min-width: 46px;
  height: 46px;

  padding: 0 7px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 3px;

  background: #494955;

  color: #ffd11a;

  font-size: 20px;
  font-weight: 700;

  font-variant-numeric:
    tabular-nums;
}

.lhc-unit {
  color: #676767;

  font-size: 15px;
  font-weight: 600;
}

.lhc-state-normal {
  color: #999;
}

.lhc-state-error {
  color: #8a1111;
}


/* ==============================
   刷新按钮
   ============================== */

.lhc-refresh {
  position: absolute;

  right: 9px;
  top: 9px;

  width: 28px;
  height: 28px;

  padding: 0;

  border: 0;
  border-radius: 50%;

  background: transparent;

  color: #bbb;

  font-size: 19px;

  cursor: pointer;

  opacity: .45;

  transition:
    opacity .2s ease,
    transform .2s ease;
}

.lhc-refresh:hover {
  opacity: 1;
}

.lhc-refresh.loading {
  animation:
    lhcRotate 1s linear infinite;
}

@keyframes lhcRotate {
  to {
    transform:
      rotate(360deg);
  }
}

.lhc-loading {
  color: #999;

  font-size: 13px;
}


/* ============================================================
   平板
   ============================================================ */

@media (max-width: 1100px) {

  .lhc-panel {
    grid-template-columns:
      105px
      1fr;

    gap: 18px;

    padding: 18px;
  }

  .lhc-logo-inner {
    width: 90px;
    height: 90px;

    border-width: 6px;
  }

  .lhc-logo-inner strong {
    font-size: 18px;
  }

  .lhc-countdown {
    grid-column:
      1 / -1;

    justify-content: center;

    padding-top: 7px;

    border-top:
      1px solid #f0e6d7;
  }

}


/* ============================================================
   H5
   ============================================================ */

@media (max-width: 760px) {

  .lhc-panel {
    display: grid;

    grid-template-columns:
      64px 1fr;

    gap: 9px;

    min-height: 0;

    margin: 10px 0;

    padding: 12px 10px;

    border-radius: 10px;
  }


  /* 左侧LOGO */

  .lhc-logo {
    align-self:
      start;
  }

  .lhc-logo-inner {
    width: 58px;
    height: 58px;

    border-width: 4px;
  }

  .lhc-logo-inner::before {
    display: none;
  }

  .lhc-logo-small {
    font-size: 8px;
  }

  .lhc-logo-inner strong {
    font-size: 13px;
    letter-spacing: -1px;
  }

  .lhc-logo-en {
    margin-top: 1px;

    font-size: 5px;
    letter-spacing: .7px;
  }


  /* 标题 */

  .lhc-topline {
    align-items: flex-start;

    gap: 5px;
  }

  .lhc-heading {
    flex-direction: column;
    align-items: flex-start;

    gap: 3px;
  }

  .lhc-title {
    font-size: 15px;
  }

  .lhc-period {
    font-size: 11px;
  }

  .lhc-period strong {
    font-size: 14px;
  }

  .lhc-frequency {
    padding-top: 2px;

    font-size: 9px;
  }


  /* 球 */

  .lhc-number-row {
    grid-column:
      1 / -1;

    width: calc(100vw - 92px);

    min-height: 61px;

    margin-top: 10px;

    gap: 7px;

    overflow-x: auto;

    scrollbar-width: none;
  }

  .lhc-number-row::-webkit-scrollbar {
    display: none;
  }

  .lhc-number-item {
    gap: 5px;
  }

  .lhc-ball {
    width: 35px;
    height: 35px;

    font-size: 14px;
  }

  .lhc-animal {
    min-height: 17px;

    font-size: 14px;
  }

  .lhc-plus {
    margin:
      8px -1px
      0 -1px;

    font-size: 21px;
  }

  .lhc-bottom-info {
    display: none;
  }


  /* 倒计时 */

  .lhc-countdown {
    grid-column:
      1 / -1;

    min-height: 36px;

    margin-top: 2px;
    padding-top: 8px;

    justify-content: center;

    gap: 4px;

    border-top:
      1px solid #f1e7d9;

    white-space: normal;

    font-size: 10px;
  }

  .lhc-count-box {
    min-width: 30px;
    height: 29px;

    padding: 0 4px;

    font-size: 13px;
  }

  .lhc-unit {
    font-size: 10px;
  }

  .lhc-countdown-text {
    font-size: 10px;
  }


  /* 刷新 */

  .lhc-refresh {
    right: 4px;
    top: 4px;

    width: 24px;
    height: 24px;

    font-size: 16px;
  }

}



/* ============================================================
   长顺资讯网 - 香港六合彩开奖 UI V3
   ============================================================ */

.lhc-panel {
  position: relative;

  width: 100%;
  min-height: 185px;

  margin: 12px 0;

  display: grid;
  grid-template-columns:
    150px
    minmax(500px, 1fr)
    minmax(300px, 430px);

  align-items: center;
  gap: 24px;

  padding: 20px 30px;

  background: #ffffff;

  border: 1px solid #eadac2;
  border-radius: 14px;

  box-shadow:
    0 6px 20px rgba(79, 13, 8, .06);

  overflow: hidden;
}


/* ==============================
   左侧六合彩圆形标识
   ============================== */

.lhc-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}

.lhc-logo-inner {
  width: 118px;
  height: 118px;

  position: relative;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  background:
    radial-gradient(
      circle at 40% 30%,
      #e15e3f 0%,
      #c42a18 45%,
      #8e150b 76%,
      #651007 100%
    );

  border: 8px solid #f5a37b;

  box-shadow:
    inset 0 0 0 3px
      rgba(255, 210, 177, .32),
    0 3px 8px
      rgba(75, 10, 5, .14);

  color: #fff;
}

.lhc-logo-inner::before,
.lhc-logo-inner::after {
  content: "";

  position: absolute;

  width: 7px;
  height: 7px;

  top: 20px;

  border-radius: 50%;

  background: #fff;

  box-shadow:
    16px -5px 0 #fff,
    32px -2px 0 #fff,
    47px 6px 0 #fff;
}

.lhc-logo-inner::before {
  left: 15px;
}

.lhc-logo-inner::after {
  display: none;
}

.lhc-logo-small {
  margin-top: 5px;

  font-size: 13px;
  font-weight: 800;

  line-height: 1;
}

.lhc-logo-inner strong {
  margin-top: 3px;

  font-size: 23px;
  font-weight: 900;

  letter-spacing: -1px;

  line-height: 1.1;

  text-shadow:
    0 2px 2px
    rgba(80, 5, 0, .22);
}

.lhc-logo-en {
  margin-top: 4px;

  font-size: 8px;
  font-weight: 800;

  letter-spacing: 2px;
}


/* ==============================
   中部开奖区
   ============================== */

.lhc-main {
  min-width: 0;
}

.lhc-topline {
  width: 100%;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 30px;
}

.lhc-heading {
  display: flex;
  align-items: center;

  gap: 24px;

  white-space: nowrap;
}

.lhc-title {
  color: #161616;

  font-size: 21px;
  font-weight: 800;
}

.lhc-period {
  color: #777;

  font-size: 17px;
  font-weight: 600;
}

.lhc-period strong {
  color: #e84a1c;

  font-size: 20px;
  font-weight: 800;
}

.lhc-frequency {
  color: #a1a1a1;

  font-size: 15px;
  font-weight: 700;

  white-space: nowrap;
}


/* ==============================
   开奖号码
   ============================== */

.lhc-number-row {
  min-height: 85px;

  margin-top: 20px;

  display: flex;
  align-items: flex-start;

  gap: 22px;

  white-space: nowrap;
}

.lhc-number-item {
  flex: 0 0 auto;

  display: flex;
  flex-direction: column;
  align-items: center;

  gap: 9px;
}

.lhc-ball {
  width: 50px;
  height: 50px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;

  color: #fff;

  font-size: 21px;
  font-weight: 900;

  line-height: 1;

  box-shadow:
    inset 0 2px 3px
      rgba(255, 255, 255, .25),
    0 3px 6px
      rgba(0, 0, 0, .08);
}

.lhc-ball-red {
  background:
    linear-gradient(
      145deg,
      #ff4454,
      #f41f36 60%,
      #dc1028
    );
}

.lhc-ball-blue {
  background:
    linear-gradient(
      145deg,
      #20a7ef,
      #078edc 60%,
      #0878bd
    );
}

.lhc-ball-green {
  background:
    linear-gradient(
      145deg,
      #2bcf7b,
      #18b766 60%,
      #0e9c54
    );
}

.lhc-animal {
  min-height: 25px;

  color: #171717;

  font-size: 22px;
  font-weight: 800;

  line-height: 1;
}

.lhc-plus {
  flex: 0 0 auto;

  margin:
    12px -3px
    0 -2px;

  color: #161616;

  font-size: 30px;
  font-weight: 500;

  line-height: 1;
}

.lhc-bottom-info {
  min-height: 18px;

  margin-top: 1px;

  color: #a2a2a2;

  font-size: 11px;
}


/* ==============================
   右侧倒计时
   ============================== */

.lhc-countdown {
  min-height: 55px;

  display: flex;
  align-items: center;
  justify-content: flex-end;

  gap: 7px;

  flex-wrap: wrap;

  color: #777;

  font-size: 15px;
  font-weight: 600;

  white-space: nowrap;
}

.lhc-countdown-text {
  color: #797979;
}

.lhc-count-box {
  min-width: 46px;
  height: 46px;

  padding: 0 7px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 3px;

  background: #494955;

  color: #ffd11a;

  font-size: 20px;
  font-weight: 700;

  font-variant-numeric:
    tabular-nums;
}

.lhc-unit {
  color: #676767;

  font-size: 15px;
  font-weight: 600;
}

.lhc-state-normal {
  color: #999;
}

.lhc-state-error {
  color: #8a1111;
}


/* ==============================
   刷新按钮
   ============================== */

.lhc-refresh {
  position: absolute;

  right: 9px;
  top: 9px;

  width: 28px;
  height: 28px;

  padding: 0;

  border: 0;
  border-radius: 50%;

  background: transparent;

  color: #bbb;

  font-size: 19px;

  cursor: pointer;

  opacity: .45;

  transition:
    opacity .2s ease,
    transform .2s ease;
}

.lhc-refresh:hover {
  opacity: 1;
}

.lhc-refresh.loading {
  animation:
    lhcRotate 1s linear infinite;
}

@keyframes lhcRotate {
  to {
    transform:
      rotate(360deg);
  }
}

.lhc-loading {
  color: #999;

  font-size: 13px;
}


/* ============================================================
   平板
   ============================================================ */

@media (max-width: 1100px) {

  .lhc-panel {
    grid-template-columns:
      105px
      1fr;

    gap: 18px;

    padding: 18px;
  }

  .lhc-logo-inner {
    width: 90px;
    height: 90px;

    border-width: 6px;
  }

  .lhc-logo-inner strong {
    font-size: 18px;
  }

  .lhc-countdown {
    grid-column:
      1 / -1;

    justify-content: center;

    padding-top: 7px;

    border-top:
      1px solid #f0e6d7;
  }

}


/* ============================================================
   H5
   ============================================================ */

@media (max-width: 760px) {

  .lhc-panel {
    display: grid;

    grid-template-columns:
      64px 1fr;

    gap: 9px;

    min-height: 0;

    margin: 10px 0;

    padding: 12px 10px;

    border-radius: 10px;
  }


  /* 左侧LOGO */

  .lhc-logo {
    align-self:
      start;
  }

  .lhc-logo-inner {
    width: 58px;
    height: 58px;

    border-width: 4px;
  }

  .lhc-logo-inner::before {
    display: none;
  }

  .lhc-logo-small {
    font-size: 8px;
  }

  .lhc-logo-inner strong {
    font-size: 13px;
    letter-spacing: -1px;
  }

  .lhc-logo-en {
    margin-top: 1px;

    font-size: 5px;
    letter-spacing: .7px;
  }


  /* 标题 */

  .lhc-topline {
    align-items: flex-start;

    gap: 5px;
  }

  .lhc-heading {
    flex-direction: column;
    align-items: flex-start;

    gap: 3px;
  }

  .lhc-title {
    font-size: 15px;
  }

  .lhc-period {
    font-size: 11px;
  }

  .lhc-period strong {
    font-size: 14px;
  }

  .lhc-frequency {
    padding-top: 2px;

    font-size: 9px;
  }


  /* 球 */

  .lhc-number-row {
    grid-column:
      1 / -1;

    width: calc(100vw - 92px);

    min-height: 61px;

    margin-top: 10px;

    gap: 7px;

    overflow-x: auto;

    scrollbar-width: none;
  }

  .lhc-number-row::-webkit-scrollbar {
    display: none;
  }

  .lhc-number-item {
    gap: 5px;
  }

  .lhc-ball {
    width: 35px;
    height: 35px;

    font-size: 14px;
  }

  .lhc-animal {
    min-height: 17px;

    font-size: 14px;
  }

  .lhc-plus {
    margin:
      8px -1px
      0 -1px;

    font-size: 21px;
  }

  .lhc-bottom-info {
    display: none;
  }


  /* 倒计时 */

  .lhc-countdown {
    grid-column:
      1 / -1;

    min-height: 36px;

    margin-top: 2px;
    padding-top: 8px;

    justify-content: center;

    gap: 4px;

    border-top:
      1px solid #f1e7d9;

    white-space: normal;

    font-size: 10px;
  }

  .lhc-count-box {
    min-width: 30px;
    height: 29px;

    padding: 0 4px;

    font-size: 13px;
  }

  .lhc-unit {
    font-size: 10px;
  }

  .lhc-countdown-text {
    font-size: 10px;
  }


  /* 刷新 */

  .lhc-refresh {
    right: 4px;
    top: 4px;

    width: 24px;
    height: 24px;

    font-size: 16px;
  }

}

