/*
PRIMEFORGE_LIFE_HEADER_V1:
  CIVILIZATION_INFO:
    CIVILIZATION_ID: KGEN-PRIME-CIVILIZATION
    CIVILIZATION_NAME: KLINE ODYSSEY
    GALAXY: Internet
    PLANET: GitHub
    REPO: klineodyssey/kline-odyssey
    CHAIN_NETWORK: BNB Smart Chain
    SURVIVAL_RULE: 沒有質量，就沒有位置
  STRUCTURE_COORDINATE:
    ROOT_STRUCTURE: /K線西遊記
    CITY_STRUCTURE: /K線西遊記/temples/12345
    CURRENT_LIFE_COORDINATE: /modules/kgen-12345-core.css
  FILE_CERTIFICATE:
    FILE: kgen-12345-core.css
    PATH: /modules/kgen-12345-core.css
    PRODUCT_ID: KGEN-12345-HEART-UI
    LIFE_LAYER: SKIN
    LIFE_TYPE: Skin Runtime Lifeform
    VERSION: 12345-TEMPLE-V10.48.0-LIFE-STANDARD-REGENERATION
    BUILD: 20260525-V10.48.0-LIFE-STANDARD-REGENERATION
    BIRTH: 2026-05-25
    BASE_FROM: KGEN_12345_V10_47_1_LAYOUT_REAL_FIX_FULL_GITHUB_READY.zip
    UPGRADE_FROM: 12345-TEMPLE-V10.47.1-LAYOUT-REAL-FIX
    DEATH: ACTIVE
    GROWTH_STAGE: IMMORTAL_REGENERATION_STANDARDIZATION
  TAXONOMY:
    DOMAIN: KGENVERSE
    KINGDOM: FinancialLifeform
    PHYLUM: AppearanceOrganism
    CLASS: SkinRuntime
    ORDER: CSSOrgan
    FAMILY: PrimeForgeLife
    GENUS: KGEN12345
    SPECIES: kgen-12345-core.css
    CELL: Visual Skin Cell
    ORGAN: Skin / Appearance Organ
    DNA: CSS-SKIN-DNA
  IMMUNE_SYSTEM:
    VIRUS_SCAN: ENABLED
    HASH_VALIDATION: REQUIRED
    UNKNOWN_ORGAN_BLOCK: TRUE
    PATCH_DRIFT_BLOCK: TRUE
    VERSION_FILENAME_BLOCK: TRUE
    SELF_HEALING: ENABLED
  REGENERATION:
    EMBRYO_MODE: GZIP_BASE64
    CAN_REBUILD_FROM_EMBRYO: TRUE
    REJUVENATION: ENABLED
    IMMORTALITY_CLASS: WUKONG_LONGEVITY
  SECURITY_FINGERPRINT:
    FINAL_SHA256: FILLED_IN_SHA256SUMS

*/

/*
============================================================
FILE_CERTIFICATE:
  FILE: modules/kgen-12345-core.css
  PRODUCT_ID: KGEN-12345-HEART-UI
  VERSION: 12345-TEMPLE-V10.42.6-V10.2-MODULAR-ASSET-GOVERNANCE
  BUILD: 20260520-V10.42.6-MODULAR-ASSET-GOVERNANCE
  BIRTH: 2026-05-20
  BASE_FROM: inline <style> blocks of index_12345_Heart_UI_V10_2_FESTIVAL_RUNTIME_LOCK.html
  DEATH: ACTIVE
  PURPOSE: V10.2 stable layout CSS module.
  ASSET_RULE: CSS may only reference ../assets/bull-front.png, ../assets/bear-rear.png, ../assets/heart.png, ../assets/warp-core.png
============================================================
*/

/* ===== SOURCE_STYLE: inline-style ===== */

        :root { --gold: #ffd778; --cyan: #00f2ff; --bg: #000; --energy: #ffcc00; --panel: rgba(20, 20, 0, 0.9); --red:#ff4444; }
        body, html { margin: 0; padding: 0; background: var(--bg); color: #fff; font-family: 'Noto Sans TC', sans-serif; overflow: hidden; height: 100vh; }

        /* 🏛️ 頂部：品牌與 500 席位數據模組 (肌肉組織 1) */
        .hud-top { position: fixed; top: 15px; width: 96%; left: 2%; display: flex; justify-content: space-between; z-index: 100; pointer-events: none; }
        .brand-section { border-left: 5px solid var(--gold); padding-left: 15px; background: linear-gradient(90deg, var(--panel), transparent); }
        .brand-name { font-size: 26px; color: var(--gold); text-shadow: 0 0 15px var(--gold); white-space: nowrap; }
        .sys-st { font-family: 'Orbitron'; font-size: 12px; color: var(--cyan); letter-spacing: 1px; }

        .monitor-data { display: flex; gap: 20px; }
        .data-box { background: var(--panel); border: 1px solid #332200; padding: 10px; border-top: 2px solid var(--gold); }
        .grid-500 { display: grid; grid-template-columns: repeat(25, 6px); gap: 3px; margin-top: 5px; }
        .dot { width: 6px; height: 6px; background: #1a1a00; border-radius: 1px; }
        .dot.on { background: var(--energy); box-shadow: 0 0 8px var(--energy); }

        /* 🚀 左側：曲速引擎肌肉 (操作點往上，下方填滿黃色階圖) */
        .warp-engine { position: fixed; right: 8px; bottom: 260px; z-index: 150; width: 100px; text-align: center; left: auto; top: auto; transform: none; }
        .warp-rail { 
            height: 450px; width: 30px; background: #111; border: 3px solid var(--energy); 
            position: relative; margin: 0 auto; border-radius: 8px; overflow: hidden;
            box-shadow: 0 0 20px rgba(255, 204, 0, 0.2);
        }
        #energy-fill { 
            position: absolute; bottom: 0; width: 100%; 
            background: linear-gradient(to top, #ff8800, var(--energy), #fff); 
            transition: height 0.15s cubic-bezier(0.17, 0.67, 0.83, 0.67); 
            z-index: 5;
        }
        .rail-step { position: absolute; width: 100%; height: 2px; background: rgba(0,0,0,0.4); z-index: 10; }

        #warp-thumb { 
            width: 70px; height: 35px; background: #fff; position: absolute; 
            left: -20px; bottom: 33%; cursor: pointer; border-radius: 6px; 
            box-shadow: 0 0 30px #fff, 0 0 15px var(--cyan); 
            border: 3px solid var(--cyan); z-index: 30;
        }
        .warp-range { position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-appearance: slider-vertical; opacity: 0; cursor: pointer; z-index: 40; }
        .warp-val-text { margin-top: 25px; color: var(--energy); font-family: 'Orbitron'; font-size: 18px; text-shadow: 0 0 10px var(--energy); }

        /* 🧚 核心圓窗：物理連動肌肉 (方向盤轉，窗跟著轉) */
        #core-anchor { position: fixed; top: 45%; left: 50%; transform: translate(-50%, -50%); width: 420px; height: 420px; z-index: 50; }
        #core-window { 
            width: 100%; height: 100%; border-radius: 50%; border: 15px double var(--gold);
            overflow: hidden; background: #000; position: relative; 
            box-shadow: 0 0 80px rgba(255, 215, 120, 0.3);
            transition: transform 0.05s linear; /* 🎡 物理連動 */
        }
        #fairy-img { width: 100%; height: 100%; object-fit: cover; }
        #cam-view { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; }
        #mini-thumb { 
            position: absolute; top: 30px; right: 30px; width: 100px; height: 100px; 
            border-radius: 50%; border: 3px solid var(--gold); display: none; z-index: 110;
            background: url('../assets/bull-front.png') center/cover;
            box-shadow: 0 0 25px var(--gold);
        }
        #wish-label { 
            position: absolute; bottom: 50px; left: 50px; z-index: 85; 
            color: #fff; font-weight: 900; font-size: 24px; 
            text-shadow: 2px 2px 10px #000, 0 0 15px var(--cyan);
        }

        /* 🧬 GA 演化矩陣 (右側肌肉) */
        .ga-matrix{left:18px; position: fixed; right:auto; top:420px; transform: none; width: 180px; background: var(--panel); border: 1px solid var(--energy); padding: 15px; z-index: 100; font-family: 'Orbitron'; }
        .ga-stat { font-size: 11px; margin-bottom: 10px; color: var(--cyan); }
        .ga-bar { height: 6px; background: #111; margin-top: 4px; overflow: hidden; border-radius: 3px; }
        .ga-progress { height: 100%; background: var(--energy); width: 0%; transition: width 0.5s; }

        /* 🎡 方向盤 */
        .steer-zone{ position: fixed; bottom:225px; width: 100%; text-align: center; z-index: 100; }
        .angle-readout { font-family: 'Orbitron'; font-size: 56px; color: var(--cyan); text-shadow: 0 0 30px var(--cyan); }
        .steer-slider { width: 75%; max-width: 900px; cursor: pointer; height: 12px; accent-color: var(--gold); }

        /* 🛠️ 控制台 */
        .footer-terminal { 
            position: fixed; bottom: 0; width: 100%; background: #000; padding: 20px; 
            border-top: 4px solid var(--gold);
            display: grid; grid-template-columns: repeat(4, 1fr);
            gap: 12px; z-index: 100;
        }
        .term-btn {
            background: #0a0a0a; border: 1px solid #444; color: #fff;
            padding: 20px 5px; font-weight: 900; cursor: pointer; transition: 0.2s;
            font-size: 14px; border-radius: 4px;
            width: 100%; max-width: 100%;
            text-align: center;
            box-sizing: border-box;
        }
        .term-btn:hover { background: var(--gold); color: #000; }
        .term-btn.active-kgen { border-color: var(--energy); color: var(--energy); box-shadow: inset 0 0 15px rgba(255, 204, 0, 0.2); }
        .term-btn.btn-rec { border-color: var(--red); color: var(--red); box-shadow: inset 0 0 12px rgba(255, 68, 68, 0.20); }

        /* 手機：底部按鈕避免跑出畫面 */
        @media (max-width: 720px) {
          .footer-terminal{ grid-template-columns: repeat(2, 1fr); padding: 12px; gap: 10px; }
          .term-btn{ padding: 16px 6px; font-size: 13px; }
        }

        /* 方向盤（圓形）— 預設隱藏，按鈕開啟 */
        .wheel-wrap{
            position: fixed; left: 50%; bottom: 125px; transform: translateX(-50%);
            width: 160px; height: 160px; z-index: 120;
            display:none;
        }
        .wheel{
            width:160px; height:160px; border-radius:50%;
            border:4px solid rgba(255,215,120,.8);
            box-shadow:0 0 30px rgba(0,242,255,.25), inset 0 0 25px rgba(255,215,120,.15);
            position:relative;
            background:radial-gradient(circle at 35% 30%, rgba(255,255,255,.08), rgba(0,0,0,.55) 55%, rgba(0,0,0,.85));
            user-select:none;
            touch-action:none;
        }
        .wheel::before{ content:""; position:absolute; inset:16px; border-radius:50%; border:2px dashed rgba(0,242,255,.35); opacity:.9; }
        .wheel-hub{ position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:52px; height:52px; border-radius:50%;
            border:2px solid rgba(255,204,0,.85); box-shadow:0 0 18px rgba(255,204,0,.35); background:rgba(0,0,0,.65);
            display:flex; align-items:center; justify-content:center; font-family:'Orbitron'; font-size:12px; color:var(--gold);
        }
        .wheel-knob{ position:absolute; left:50%; top:6px; transform:translateX(-50%); width:18px; height:18px; border-radius:50%;
            background:var(--cyan); box-shadow:0 0 18px rgba(0,242,255,.7);
        }

        
canvas#galaxy-bg { position: fixed; inset: 0; z-index: 1; }

#core-window{
  box-shadow: 0 0 90px rgba(255, 170, 0, 0.35), 0 0 28px rgba(0,242,255,0.16) !important;
}
#fairy-img{
  animation: heartPulseImg 1.25s ease-in-out infinite;
}
@keyframes heartPulseImg{
  0%,100%{ transform: scale(1); filter: drop-shadow(0 0 0 rgba(255,215,120,0)); }
  18%{ transform: scale(1.035); filter: drop-shadow(0 0 14px rgba(255,215,120,.35)); }
  42%{ transform: scale(0.985); }
  58%{ transform: scale(1.05); filter: drop-shadow(0 0 24px rgba(255,215,120,.42)); }
}

    
        /* NAV buttons */
        .nav-btn{ pointer-events:auto; display:inline-flex; align-items:center; justify-content:center;
            min-width:220px; padding:10px 14px; border-radius:10px; font-weight:900; text-decoration:none;
            border:1px solid rgba(255,215,120,.6); background:rgba(20,20,0,.85); color:#fff;
            box-shadow:0 0 18px rgba(255,215,120,.18); 
  width: 280px;
  max-width: 90%;
  text-align: center;
}
        .nav-gold{ background:rgba(255,215,120,.92); color:#111; }
        .nav-cyan{ background:rgba(0,242,255,.92); border-color:rgba(0,242,255,.6); }
  /* --- HOTFIX: ensure button text is visible on dark swap buttons (mobile/in-app) --- */
  .nav-btn{ color:#fff; }
  .nav-gold, .nav-cyan{ color:#111; }
  .nav-swap{
    background: rgba(0,0,0,.38);
    color:#fff !important;
    border-color: rgba(255,215,120,.38);
    text-shadow: 0 0 10px rgba(0,0,0,.55);
  }
  .nav-swap .dot{ box-shadow: 0 0 12px rgba(255,215,120,.55); }

        .nav-audio{ cursor:pointer; background:rgba(255,255,255,.12); color:#fff; border-color:rgba(255,255,255,.2); }
        .nav-audio.on{ background:rgba(255,68,68,.18); border-color:rgba(255,68,68,.6); }
        .nav-help{ cursor:pointer; background:rgba(0,242,255,.14); border-color:rgba(0,242,255,.35); color:#fff; }
    
        .prog-wrap{ position:relative; width:100%; height:14px; border-radius:999px; overflow:hidden;
            background:rgba(255,255,255,.10); border:1px solid rgba(255,215,120,.25); margin-top:8px; }
        .prog-fill{ height:100%; width:0%; background:linear-gradient(90deg, rgba(0,242,255,.8), rgba(255,215,120,.9)); box-shadow:0 0 18px rgba(255,215,120,.25); transition:width .35s ease; }
        .prog-txt{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:11px; letter-spacing:.5px; color:#111; font-weight:900; mix-blend-mode:screen; }
    
        @media (max-width: 520px){ .brand-name{font-size:22px;} .hud-top{top:10px;} }
        @media (max-width: 420px){ .brand-name{font-size:20px;} }
    
#brand-badge{
  position:fixed;
  left: 44px;
  top: 90px;
  z-index:260;
  padding:6px 10px;
  border:1px solid rgba(255,215,128,.7);
  border-radius:10px;
  background:rgba(0,0,0,.55);
  color:#ffd79a;
  font-weight:800;
  letter-spacing:.08em;
  font-size:12px;
  text-shadow:0 0 10px rgba(255,215,128,.3);
}



    /* ==== Guide Modal ==== */
    .guide-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;z-index:9999;align-items:center;justify-content:center;padding:18px;}
    .guide-modal.show{display:flex;}
    .guide-card{width:min(720px,96vw);max-height:86vh;overflow:auto;background:rgba(10,14,18,.96);border:1px solid rgba(255,215,120,.35);border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.55);}
    .guide-header{display:flex;align-items:center;justify-content:space-between;padding:14px 14px 10px 14px;border-bottom:1px solid rgba(255,215,120,.18)}
    .guide-title{font-weight:800;letter-spacing:.5px;color:#ffd88a}
    .guide-close{background:transparent;border:0;color:#ffd88a;font-size:18px;padding:6px 10px;border-radius:10px}
    .guide-close:active{transform:scale(.98)}
    .guide-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid rgba(255,215,120,.14)}
    .guide-tab{background:rgba(255,255,255,.06);border:1px solid rgba(255,215,120,.22);color:#ffe6b8;padding:8px 10px;border-radius:12px;font-weight:700}
    .guide-tab:active{transform:scale(.98)}
    .guide-body{padding:14px;color:#e9eef7;line-height:1.55}
    .guide-body h3{margin:0 0 10px 0;color:#ffd88a}
    .guide-body h4{margin:14px 0 8px 0;color:#ffe6b8}
    .guide-body hr{border:0;border-top:1px solid rgba(255,215,120,.14);margin:14px 0}
    .guide-body .muted{opacity:.85}
    .qa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}
    .qa-btn{background:rgba(0,200,255,.08);border:1px solid rgba(0,200,255,.28);color:#d6f6ff;padding:10px;border-radius:12px;font-weight:800;text-align:left}
    .qa-btn:active{transform:scale(.98)}
    @media (max-width:520px){ .qa-grid{grid-template-columns:1fr;} }


    .bar{height:14px; background:#eee; border-radius:999px; overflow:hidden; width:100%;}
    .bar > div{height:100%; background:#111; width:0%;}
    .kv{display:grid; grid-template-columns: 160px 1fr; gap:6px 10px; align-items:center;}


  .nav-swap{
    width: 100%;
    background: rgba(0,0,0,.35);
    border: 1px solid rgba(255,215,120,.32);
  }
  .nav-swap:hover{ filter: brightness(1.05); }


/* --- Swap buttons readability (v2.20.0) --- */
.nav-btn.swap-bnb{ background: rgba(255, 205, 0, .95) !important; color:#111 !important; border:1px solid rgba(0,0,0,.35) !important; text-shadow:none !important; }
.nav-btn.swap-usdt{ background: rgba(35, 205, 120, .95) !important; color:#111 !important; border:1px solid rgba(0,0,0,.35) !important; text-shadow:none !important; }
.nav-btn.swap-bnb:hover,.nav-btn.swap-usdt:hover{ filter: brightness(1.04); }


/* HOTFIX: make swap button labels always readable */
.nav-swap, .nav-swap span{
  color:#fff !important;
  opacity:1 !important;
  font-weight:900 !important;
  text-shadow:0 0 10px rgba(0,0,0,.85), 0 0 14px rgba(0,255,255,.25);
}

/* ===== COORD PANEL (V2.20.4) ===== */
#coord-panel{
  position: fixed;
  right: 90px; /* 右移：更靠近曲速縱桿，但保留間距避免互壓 */
  bottom:315px; /* 往上：不要貼到底部按鈕列 */
  left: auto;
  transform: none;
  width: min(360px, 92vw);
  max-width: 360px;
  padding: 10px 12px;
  border: 1px solid rgba(255, 215, 0, .35);
  border-radius: 10px;
  background: rgba(0,0,0,.55);
  box-shadow: 0 0 18px rgba(255,215,0,.12);
  max-height: 220px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 30;
}
#coord-panel .cp-title{
  display:flex;align-items:center;justify-content:space-between;
  font-weight:900;letter-spacing:.5px;
  color:#ffd27a;
  margin-bottom:8px;
}
#coord-panel .cp-grid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:8px 10px;
  font-size:13px;
  line-height:1.25;
}
#coord-panel .cp-row{
  padding:8px 10px;
  border-radius:12px;
  border:1px solid rgba(255,200,80,.25);
  background:rgba(0,0,0,.35);
}
#coord-panel .cp-k{
  opacity:.85; font-size:12px;
}
#coord-panel .cp-v{
  margin-top:2px;
  font-weight:900;
  color:#8af3ff;
  word-break:break-word;
}
#coord-panel .cp-v .muted{opacity:.75; font-weight:700; color:#cfd7ff;}
#coord-panel input{
  width:100%;
  border-radius:10px;
  padding:8px 10px;
  border:1px solid rgba(255,200,80,.35);
  background:rgba(0,0,0,.35);
  color:#eaf7ff;
  outline:none;
  font-weight:900;
}
#coord-panel .cp-actions{
  display:flex;
  gap:10px;
  margin-top:10px;
}
#coord-panel .cp-actions button{
  flex:1;
  border-radius:12px;
  padding:10px 12px;
  border:1px solid rgba(255,200,80,.45);
  background:rgba(0,0,0,.35);
  color:#eaf7ff;
  font-weight:900;
}
#coord-panel .cp-actions button:hover{filter:brightness(1.08);}

#coord-modal{
  position:fixed; inset:0;
  z-index:100001;
  display:none;
  background:rgba(0,0,0,.72);
  pointer-events:auto;
}
#coord-modal .cm-box{
  z-index:100002;
  position:absolute;
  left:50%; top:50%;
  transform:translate(-50%,-50%);
  width:min(720px, calc(100vw - 22px));
  height:min(78vh, 680px);
  border-radius:16px;
  border:1px solid rgba(255,200,80,.55);
  background:rgba(0,0,0,.82);
  box-shadow:0 0 30px rgba(255,190,60,.14);
  overflow:hidden;
}
#coord-modal .cm-head{
  display:flex; align-items:center; gap:10px;
  padding:12px 12px;
  border-bottom:1px solid rgba(255,200,80,.25);
}
#coord-modal .cm-head b{color:#ffd27a;}
#coord-modal .cm-head input{
  flex:1;
  border-radius:12px;
  padding:10px 12px;
  border:1px solid rgba(255,200,80,.35);
  background:rgba(0,0,0,.35);
  color:#eaf7ff;
  outline:none;
  font-weight:900;
}
#coord-modal .cm-head button{
  border-radius:12px;
  padding:10px 12px;
  border:1px solid rgba(255,200,80,.35);
  background:rgba(0,0,0,.35);
  color:#eaf7ff;
  font-weight:900;
}
#coord-modal .cm-list{
  height:calc(100% - 56px);
  overflow:auto;
  padding:10px 12px;
}
#coord-modal .cm-item{
  display:grid;
  grid-template-columns: 110px 1fr;
  gap:8px 12px;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid rgba(255,200,80,.20);
  background:rgba(0,0,0,.30);
  margin-bottom:10px;
}
#coord-modal .cm-item:hover{filter:brightness(1.08); cursor:pointer;}
#coord-modal .cm-item .cm-v{font-weight:900; color:#8af3ff;}
#coord-modal .cm-item .cm-n{font-weight:900; color:#ffd27a;}
#coord-modal .cm-item .cm-d{opacity:.86; font-size:12px; margin-top:2px;}


/* AUTO 狀態徽章：移入駕駛艙座標面板時改成內嵌樣式 */
.auto-badge.in-cockpit{
  position: static !important;
  left: auto !important;
  bottom: auto !important;
  margin: 0 0 8px 0 !important;
  padding: 6px 10px !important;
  border-radius: 8px !important;
  font-weight: 800;
  display: inline-block;
}

/* ====== 手機窄螢幕：防止左下儀表板與右下駕駛艙互相碰撞 ====== */
@media (max-width: 520px){
  #coord-panel{ right: 12px; bottom: 420px; width: min(360px, 94vw); }
}

/* ====== V2.22.8 ADD: Resource bars + Toast + AutoTag ====== */
.resource-bars{
  position: fixed;
  left: 18px;
  top: 150px;
  width: 300px;
  max-width: 64vw;
  z-index: 120;
  display:flex;
  flex-direction:column;
  gap:8px;
  pointer-events:none;
}
.resource-bars .rb{
  background: rgba(10,10,14,0.72);
  border: 1px solid rgba(255,215,0,0.45);
  border-radius: 10px;
  padding: 8px 10px;
  box-shadow: 0 0 14px rgba(0,0,0,0.5);
}

.resource-bars .rb-note{
  font-family: Orbitron, system-ui, -apple-system, "Segoe UI", Arial;
  font-size: 11px;
  opacity: .85;
  color: rgba(255,215,0,0.85);
  text-shadow: 0 0 10px rgba(255,215,0,0.25);
  padding-left: 6px;
  pointer-events:none;
}

.resource-bars .rb .row{
  display:flex; align-items:center; justify-content:space-between;
  font-family:'Orbitron';
  font-size:11px;
  letter-spacing:0.4px;
}
.resource-bars .rb .bar{
  height:8px; border-radius:999px;
  background: rgba(255,255,255,0.06);
  overflow:hidden;
  margin-top:6px;
}
.resource-bars .rb .fill{
  height:100%;
  width:0%;
  background: var(--cyan);
  transition: width .45s ease;
}
.resource-bars .rb.kgen .fill{ background: var(--gold); }
.resource-bars .rb small{ color:#9cc; opacity:.9; }

/* Auto Tag (near steering) */
#autoTag{
  position: fixed;
  left: 50%;
  bottom: 156px;
  transform: translateX(-50%);
  z-index: 130;
  font-family:'Orbitron';
  font-weight:900;
  font-size:12px;
  color: #fff;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid rgba(0,255,255,0.55);
  background: rgba(0,0,0,0.55);
  box-shadow: 0 0 18px rgba(0,255,255,0.18);
  pointer-events:none;
}
#autoTag.short{
  border-color: rgba(255,120,120,0.65);
  box-shadow: 0 0 18px rgba(255,120,120,0.18);
}

/* Toast */
#toast{
  position: fixed;
  left: 50%;
  bottom: 92px;
  transform: translateX(-50%);
  z-index: 200;
  width: min(520px, 92vw);
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,215,0,0.45);
  background: rgba(0,0,0,0.68);
  color: #fff;
  font-family: "Noto Sans TC";
  font-weight: 900;
  font-size: 13px;
  letter-spacing: .4px;
  display:none;
}
#toast.show{ display:block; }


/* --- UFO Music System --- */
.nav-btn.nav-music{ border-color:#3ad6ff; box-shadow:0 0 16px rgba(58,214,255,.22); }
.nav-btn.nav-music-ctl{ padding:10px 12px; min-width:72px; }
.tiny-btn{
  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,215,80,.55);
  color:#ffe4a1;
  padding:6px 10px;
  border-radius:10px;
  font-weight:800;
  cursor:pointer;
}
.tiny-btn:active{ transform:translateY(1px); }

/* v2.48.0: hide legacy AUTO debug UI */
#autoTag, #autoBadge{ display:none !important; }

/* ===== V2.9.0 layout retune ===== */
/* GA 移到中間上方 */
.ga-matrix{
  left: 50% !important;
  right: auto !important;
  top: 150px !important;
  transform: translateX(-50%) !important;
  width: 180px !important;
  z-index: 140 !important;
}

/* 主圖置中 */
#core-anchor{
  left: 50% !important;
  top: 52% !important;
  transform: translate(-50%, -50%) !important;
  margin-left: 0 !important;
}

/* 手機時同步 */
@media (max-width: 720px){
  .ga-matrix{
    left: 50% !important;
    right: auto !important;
    top: 150px !important;
    transform: translateX(-50%) !important;
  }
  #core-anchor{
    left: 50% !important;
    top: 52% !important;
    transform: translate(-50%, -50%) !important;
  }
}


/* ===== V2.9.0 move E=mc² into 質量 row ===== */
.resource-bars .rb-note{
  display:none !important;
}
.resource-bars .rb.kgen .row span::after{
  content:"｜E = mc²";
  color: rgba(255,215,120,.88);
  margin-left: 6px;
  font-family: Orbitron, sans-serif;
  font-size: 10px;
}


/* ===== V2.9.0 MASTER left block ===== */
:root{
  --left-x-master: 18px;
  --left-w-master: 300px;
}

/* already-confirmed changes */
.resource-bars .rb-note{ display:none !important; }
.resource-bars .rb.kgen .row span::after{
  content:"｜E = mc²";
  color: rgba(255,215,120,.88);
  margin-left: 6px;
  font-family: Orbitron, sans-serif;
  font-size: 10px;
}

/* left K-line engine + chart */
#kline-engine-panel,
#kline-chart-panel{
  position: fixed;
  left: var(--left-x-master);
  width: var(--left-w-master);
  max-width: var(--left-w-master);
  background: rgba(4,10,16,.90);
  border: 1px solid rgba(255,215,120,.34);
  border-radius: 14px;
  box-shadow: 0 0 18px rgba(0,242,255,.06), inset 0 0 18px rgba(255,215,120,.03);
  box-sizing: border-box;
  overflow: hidden;
  z-index: 122;
}
#kline-engine-panel{
  top: 350px;
  padding: 10px;
}
#kline-chart-panel{
  left: 50% !important;
  transform: translateX(-50%);
  top: 350px;
  padding: 10px;
  height: 210px;
  max-height: 210px;
}
#kline-engine-panel .ke-head,
#kline-chart-panel .kc-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  color: var(--gold);
  font-weight:900;
  font-size:14px;
  margin-bottom:8px;
}
#kline-engine-panel .ke-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
#kline-engine-panel .ke-cell{
  min-height:54px;
  border:1px solid rgba(255,215,120,.22);
  border-radius:12px;
  padding:6px 8px;
  background:rgba(0,0,0,.22);
}
#kline-engine-panel .ke-label{
  font-size:10px;
  color:rgba(255,255,255,.78);
  line-height:1.0;
}
#kline-engine-panel .ke-value{
  margin-top:4px;
  font-family:'Orbitron',sans-serif;
  font-size:15px;
  color:var(--cyan);
  font-weight:900;
  line-height:1.0;
}
#kline-engine-panel .ke-value.right{ text-align:right; }

#kline-canvas{
  width:100%;
  height:92px;
  display:block;
  border-radius:10px;
  background:
    linear-gradient(180deg, rgba(0,242,255,.03), rgba(0,0,0,.06)),
    repeating-linear-gradient(to right, rgba(255,255,255,.05) 0, rgba(255,255,255,.05) 1px, transparent 1px, transparent 32px),
    repeating-linear-gradient(to bottom, rgba(255,255,255,.06) 0, rgba(255,255,255,.06) 1px, transparent 1px, transparent 24px),
    rgba(0,0,0,.22);
  box-shadow: inset 0 0 16px rgba(0,242,255,.08);
}
#kline-chart-panel .kc-foot{
  margin-top:6px;
  padding-top:6px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  justify-content:space-between;
  gap:8px;
  font-size:11px;
  line-height:1.05;
  color:#fff;
}
#moon-match{
  margin-top:5px;
  padding-top:5px;
  border-top:1px solid rgba(255,255,255,.08);
  font-size:11px;
  line-height:1.05;
}
#moon-match-title{
  color:var(--gold);
  font-weight:900;
  margin-bottom:2px;
}
#moon-match .addr{
  color:var(--cyan);
  font-family:'Orbitron',sans-serif;
  font-size:10px;
}

/* keep GA centered above main image */
.ga-matrix{
  left: 50% !important;
  right: auto !important;
  top: 150px !important;
  transform: translateX(-50%) !important;
  width: 180px !important;
  z-index: 140 !important;
}

/* keep core image centered */
#core-anchor{
  left: 50% !important;
  top: 52% !important;
  transform: translate(-50%, -50%) !important;
  margin-left: 0 !important;
}

@media (max-width:720px){
  .ga-matrix{
    left: 50% !important;
    top: 150px !important;
    transform: translateX(-50%) !important;
  }
  #core-anchor{
    left: 50% !important;
    top: 52% !important;
    transform: translate(-50%, -50%) !important;
  }
  #kline-engine-panel,
  #kline-chart-panel{
    left: var(--left-x-master);
    width: var(--left-w-master);
    max-width: var(--left-w-master);
  }
  #kline-engine-panel{ top: 350px; }
  #kline-chart-panel{ left: 50% !important; transform: translateX(-50%); top: 350px; height: 210px; max-height: 210px; }
}


/* ===== V2.9.0 True K-line mode ===== */
#kline-engine-panel .ke-head,
#kline-chart-panel .kc-head{
  letter-spacing:.3px;
}
#kline-chart-panel .kc-head .live-tag{
  color: var(--cyan);
  font-size: 11px;
  font-family: 'Orbitron', sans-serif;
}


/* ===== V2.9.0 live ticker + symbol switch ===== */
#kline-engine-panel .ke-live-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid rgba(255,255,255,.08);
}
#kline-engine-panel .ke-live-price{
  font-family:'Orbitron',sans-serif;
  color:var(--gold);
  font-size:16px;
  font-weight:900;
}
#kline-engine-panel .ke-live-symbol{
  color:var(--cyan);
  font-size:11px;
  font-family:'Orbitron',sans-serif;
}


/* ===== V2.9.0 market mode switch ===== */
#ke-symbol, #ke-market{
  z-index:9999;
  pointer-events:auto;
  position:relative;
}

#ke-market{
  background:#081018;
  color:#7ff3ff;
  border:1px solid rgba(255,215,120,.28);
  border-radius:8px;
  padding:2px 6px;
  font-family:Orbitron,sans-serif;
  font-size:11px;
  margin-right:6px;
}


/* ===== V2.9.0 single K-line engine ===== */
#ke-symbol{
  position:relative;
  z-index:9999;
  pointer-events:auto;
}
#kline-engine-panel .ke-live-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin-top:8px;
  padding-top:8px;
  border-top:1px solid rgba(255,255,255,.08);
}
#kline-engine-panel .ke-live-price{
  font-family:'Orbitron',sans-serif;
  color:var(--gold);
  font-size:16px;
  font-weight:900;
}
#kline-engine-panel .ke-live-symbol{
  color:var(--cyan);
  font-size:11px;
  font-family:'Orbitron',sans-serif;
}


#oracle-plus-dashboard{
  margin-top:10px;
  padding:8px;
  border:1px solid rgba(127,243,255,.18);
  border-radius:8px;
  font-size:12px;
  background:rgba(3,8,18,.35);
}


/* ===== V2.9.0 FAQ ===== */
#faq-box{
  margin-top:10px;
  font-size:12px;
  color:#ffd98a;
}
.faq-item{
  border:1px solid rgba(255,215,120,0.25);
  border-radius:10px;
  margin-bottom:6px;
  overflow:hidden;
}
.faq-q{
  padding:8px 10px;
  cursor:pointer;
  background:rgba(0,0,0,0.35);
  font-weight:900;
}
.faq-q:hover{
  background:rgba(255,215,120,0.08);
}
.faq-a{
  display:none;
  padding:8px 10px;
  color:#ddd;
  background:rgba(0,0,0,0.25);
  line-height:1.5;
}


/* ===== V3.2.0 onboarding + order fx ===== */
.quickstart-card{
  margin-top:10px;
  padding:10px 12px;
  border:1px solid rgba(255,215,120,.28);
  border-radius:12px;
  background:rgba(255,215,120,.08);
  color:#fff5cf;
  line-height:1.45;
  font-size:12px;
}
.quickstart-card .qs-title{
  color:var(--gold);
  font-family:'Orbitron',sans-serif;
  font-size:12px;
  font-weight:900;
  margin-bottom:6px;
}
.quickstart-card ol{
  margin:6px 0 0 18px;
  padding:0;
}
.quickstart-card li{ margin:4px 0; }
.quickstart-card .hl{ color:var(--cyan); font-weight:900; }
#order-fx{
  position:fixed;
  inset:0;
  z-index:99998;
  display:none;
  pointer-events:none;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle, rgba(255,215,120,.18), rgba(0,0,0,.0) 55%);
}
#order-fx.show{ display:flex; animation:fxFade .9s ease forwards; }
#order-fx .fx-card{
  min-width:240px;
  max-width:86vw;
  padding:18px 22px;
  border-radius:18px;
  text-align:center;
  border:1px solid rgba(255,215,120,.55);
  background:rgba(0,0,0,.72);
  box-shadow:0 0 28px rgba(255,215,120,.18), 0 0 48px rgba(0,242,255,.10);
}
#order-fx .fx-title{
  font-family:'Orbitron',sans-serif;
  font-size:20px;
  font-weight:900;
  color:var(--gold);
  text-shadow:0 0 12px rgba(255,215,120,.35);
}
#order-fx .fx-sub{
  margin-top:8px;
  font-size:13px;
  color:#dffbff;
}
@keyframes fxFade{
  0%{opacity:0; transform:scale(.92);}
  18%{opacity:1; transform:scale(1);}
  100%{opacity:0; transform:scale(1.04);}
}


/* ===== V3.2.0 fixed version HUD ===== */
#versionHUD{
  position:fixed;
  top:10px;
  left:12px;
  padding:6px 10px;
  border:1px solid rgba(0,242,255,.35);
  border-radius:10px;
  background:rgba(0,0,0,.42);
  color:#8be9ff;
  font-family:'Orbitron', monospace;
  font-size:12px;
  letter-spacing:1px;
  opacity:.92;
  z-index:99999;
  box-shadow:0 0 14px rgba(0,242,255,.12);
  pointer-events:none;
}


/* ===== V3.2.0 round history tracker ===== */
.history-modal{
  position:fixed; inset:0; display:none; align-items:center; justify-content:center;
  background:rgba(0,0,0,.72); z-index:99997; padding:18px;
}
.history-modal.show{ display:flex; }
.history-card{
  width:min(960px, 96vw);
  max-height:88vh;
  overflow:auto;
  border-radius:18px;
  border:1px solid rgba(255,215,120,.38);
  background:rgba(6,10,18,.96);
  box-shadow:0 24px 60px rgba(0,0,0,.55);
}
.history-head{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:14px 16px; border-bottom:1px solid rgba(255,215,120,.16);
}
.history-title{
  color:#ffd88a; font-weight:900; letter-spacing:.5px; font-family:'Orbitron',sans-serif;
}
.history-body{ padding:14px 16px 18px 16px; color:#e9eef7; }
.history-note{
  margin-bottom:12px; padding:10px 12px; border-radius:12px;
  background:rgba(255,215,120,.08); border:1px solid rgba(255,215,120,.18);
  line-height:1.5; font-size:13px; color:#ffeec8;
}
.history-controls{
  display:grid; grid-template-columns:1.1fr .9fr .9fr .9fr .9fr; gap:8px; margin-bottom:12px;
}
.history-controls input, .history-controls button{
  border-radius:12px; padding:10px 12px; font-weight:900;
  border:1px solid rgba(255,215,120,.28); background:rgba(0,0,0,.35); color:#eef8ff;
}
.history-grid{
  display:grid; grid-template-columns:1.2fr .8fr; gap:12px;
}
.history-panel{
  border:1px solid rgba(255,215,120,.18); border-radius:14px;
  background:rgba(0,0,0,.22); padding:12px;
}
.history-panel h3{
  margin:0 0 10px 0; color:#ffd88a; font-size:15px; letter-spacing:.3px;
}
.history-kv{
  display:grid; grid-template-columns:140px 1fr; gap:8px 10px; font-size:13px;
}
.history-k{
  color:#ffe6b8; opacity:.9;
}
.history-v{
  color:#d8f9ff; word-break:break-all;
}
.addr-line{
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
}
.addr-chip{
  display:inline-flex; align-items:center; gap:8px; padding:6px 10px;
  border-radius:999px; border:1px solid rgba(0,242,255,.24);
  background:rgba(0,242,255,.08); color:#d5fbff; font-family:'Orbitron',sans-serif; font-size:11px;
}
.mini-btn{
  border-radius:10px; padding:6px 9px; border:1px solid rgba(255,215,120,.26);
  background:rgba(0,0,0,.25); color:#fff; font-weight:800; cursor:pointer;
}
.status-pill{
  display:inline-flex; align-items:center; gap:6px; padding:5px 10px;
  border-radius:999px; font-size:11px; font-weight:900; letter-spacing:.4px;
  border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.06); color:#fff;
}
.status-ok{ border-color:rgba(60,220,120,.35); background:rgba(60,220,120,.12); color:#d8ffe6; }
.status-warn{ border-color:rgba(255,215,120,.35); background:rgba(255,215,120,.12); color:#fff0ca; }
.status-bad{ border-color:rgba(255,110,110,.35); background:rgba(255,110,110,.12); color:#ffdede; }
.history-list{
  display:flex; flex-direction:column; gap:8px;
}
.history-item{
  border:1px solid rgba(255,215,120,.14); border-radius:12px; padding:10px 12px;
  background:rgba(0,0,0,.20); cursor:pointer;
}
.history-item:hover{ filter:brightness(1.05); }
.history-item .top{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
}
.history-item .rid{
  color:#ffd88a; font-weight:900; font-family:'Orbitron',sans-serif;
}
.history-item .desc{
  margin-top:6px; color:#d6f7ff; font-size:12px; line-height:1.45;
}
.history-empty{
  padding:20px 12px; text-align:center; opacity:.78;
}
@media (max-width: 820px){
  .history-controls{ grid-template-columns:1fr 1fr; }
  .history-grid{ grid-template-columns:1fr; }
}


/* ===== V3.7.4 chain live panel ===== */
.chain-live-panel{
  position:fixed;
  right:18px;
  top:520px;
  z-index:215;
  width:min(360px, 88vw);
  background:rgba(8,12,20,.92);
  border:1px solid rgba(255,215,120,.28);
  border-radius:14px;
  padding:12px;
  box-shadow:0 12px 30px rgba(0,0,0,.35);
}
.chain-live-panel .cl-head{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  color:#ffd88a; font-weight:900; font-family:'Orbitron',sans-serif; font-size:13px;
  margin-bottom:10px;
}
.chain-live-panel .cl-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:8px;
}
.chain-live-panel .cl-item{
  border:1px solid rgba(255,215,120,.14);
  border-radius:12px;
  padding:8px 10px;
  background:rgba(0,0,0,.22);
}
.chain-live-panel .cl-k{
  font-size:10px; color:#ffe6b8; opacity:.88;
}
.chain-live-panel .cl-v{
  margin-top:4px; font-size:13px; color:#d8f9ff; font-weight:900; word-break:break-all;
}
.chain-live-panel .cl-row{
  margin-top:10px; display:flex; gap:8px; flex-wrap:wrap;
}
.chain-live-panel .cl-btn{
  flex:1; min-width:110px;
  border-radius:10px; padding:8px 10px;
  border:1px solid rgba(255,215,120,.24);
  background:rgba(0,0,0,.28); color:#fff; font-weight:800; cursor:pointer;
}
.chain-live-panel .cl-note{
  margin-top:8px; font-size:11px; color:#cfe8ff; opacity:.86; line-height:1.45;
}
@media (max-width: 820px){
  .chain-live-panel{
    top:auto; bottom:96px; right:12px; width:min(360px,92vw);
  }
}


/* ===== V3.7.4 bet panel ===== */
.bet-live-panel{
  position:fixed;
  right:18px;
  top:760px;
  z-index:216;
  width:min(360px, 88vw);
  background:rgba(8,12,20,.94);
  border:1px solid rgba(0,242,255,.22);
  border-radius:14px;
  padding:12px;
  box-shadow:0 12px 30px rgba(0,0,0,.35);
}
.bet-live-panel .bp-head{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  color:#8be9ff; font-weight:900; font-family:'Orbitron',sans-serif; font-size:13px;
  margin-bottom:10px;
}
.bet-live-panel .bp-note{
  font-size:11px; line-height:1.45; color:#d8f9ff; opacity:.88; margin-bottom:10px;
}
.bet-live-panel .bp-input{
  width:100%; box-sizing:border-box; border-radius:12px; padding:10px 12px;
  border:1px solid rgba(255,215,120,.22); background:rgba(0,0,0,.28); color:#fff; font-weight:900; outline:none;
}
.bet-live-panel .bp-grid{ display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:10px; }
.bet-live-panel .bp-btn{
  border-radius:12px; padding:10px 12px; cursor:pointer;
  border:1px solid rgba(255,215,120,.24); font-weight:900; background:rgba(0,0,0,.28); color:#fff;
}
.bet-live-panel .bp-btn.approve{ background:rgba(255,215,120,.14); color:#ffe9b8; }
.bet-live-panel .bp-btn.buy{ background:rgba(60,220,120,.16); color:#d8ffe6; }
.bet-live-panel .bp-btn.sell{ background:rgba(255,110,110,.16); color:#ffdede; }
.bet-live-panel .bp-status{ margin-top:10px; min-height:18px; font-size:12px; color:#cfe8ff; }
@media (max-width: 820px){ .bet-live-panel{ top:auto; bottom:96px; right:12px; width:min(360px,92vw);} }


/* ===== V3.7.4 leaderboard panel ===== */
.board-panel{
  position:fixed;
  right:18px;
  top:980px;
  z-index:217;
  width:min(360px,88vw);
  background:rgba(10,14,24,.96);
  border:1px solid rgba(255,215,120,.22);
  border-radius:14px;
  padding:12px;
  box-shadow:0 12px 30px rgba(0,0,0,.35);
}
.board-head{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  color:#ffd88a; font-weight:900; font-family:'Orbitron',sans-serif; font-size:13px; margin-bottom:10px;
}
.board-note{font-size:11px; line-height:1.45; color:#d8f9ff; opacity:.88; margin-bottom:10px;}
.board-list{display:flex; flex-direction:column; gap:8px; max-height:260px; overflow:auto;}
.board-row{
  border:1px solid rgba(255,215,120,.14);
  border-radius:12px; padding:8px 10px; background:rgba(0,0,0,.22);
  display:flex; align-items:center; justify-content:space-between; gap:8px;
}
.board-rank{color:#ffd88a; font-weight:900; width:28px;}
.board-addr{color:#d8f9ff; font-family:'Orbitron',sans-serif; font-size:11px; flex:1;}
.board-score{color:#8be9ff; font-weight:900;}
.board-actions{display:flex; gap:8px; margin-top:10px;}
.board-btn{
  flex:1; border-radius:10px; padding:8px 10px; border:1px solid rgba(255,215,120,.24);
  background:rgba(0,0,0,.28); color:#fff; font-weight:800; cursor:pointer;
}
@media (max-width:820px){
  .board-panel{ top:auto; bottom:96px; right:12px; width:min(360px,92vw); }
}


/* ===== V3.7.4 UI fix ===== */
#versionHUD{ display:none !important; }

#kline-engine-panel .ke-head{
  align-items:flex-start;
}
#kline-engine-panel .ke-head-right{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  min-width:92px;
}
#kline-engine-panel .ke-mode-line{
  font-size:11px;
  color:var(--cyan);
  line-height:1;
  white-space:nowrap;
  text-align:center;
  margin-top:1px;
}

#btn-swap-bnb, #btn-swap-usdt{
  font-weight:900;
}


/* ===== V3.7.4 FORTUNE PANEL enrich ===== */
.bet-live-panel .bp-kv{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:8px 10px;
  margin-bottom:10px;
}
.bet-live-panel .bp-k{
  font-size:11px;
  color:#ffe6b8;
  opacity:.88;
}
.bet-live-panel .bp-v{
  font-size:12px;
  color:#d8f9ff;
  font-weight:900;
  word-break:break-all;
}


#fairy-img{
  animation: heartBeat 1.2s ease-in-out infinite !important;
  filter: drop-shadow(0 0 16px rgba(255,190,60,.35)) !important;
}
@keyframes heartBeat{
  0%,100%{ transform: scale(1); }
  20%{ transform: scale(1.05); }
  40%{ transform: scale(0.97); }
  60%{ transform: scale(1.08); }
}



/* === 12345 Temple Music System V7.19 === */
#temple-audio-console{
  position:fixed; right:16px; bottom:112px; z-index:260;
  width:min(320px,92vw); padding:10px 12px; border-radius:14px;
  background:rgba(0,0,0,.78); border:1px solid rgba(255,215,120,.58);
  box-shadow:0 0 24px rgba(255,215,120,.16), inset 0 0 18px rgba(0,242,255,.06);
  backdrop-filter:blur(8px); color:#fff; font-size:12px;
}
#temple-audio-console .ta-head{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--gold);font-family:'Orbitron',sans-serif;font-weight:900;margin-bottom:8px}
#temple-audio-console .ta-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}
#temple-audio-console button{pointer-events:auto;cursor:pointer;border-radius:10px;border:1px solid rgba(255,215,120,.42);background:rgba(0,0,0,.46);color:#ffe29a;padding:7px 9px;font-weight:900}
#temple-audio-console input{width:100%;accent-color:#ffd978}
#temple-audio-console .ta-now{color:#7ff3ff;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#temple-audio-console.ta-mini{width:auto;right:14px;bottom:90px;padding:8px 10px}
#temple-audio-console.ta-mini .ta-row,#temple-audio-console.ta-mini .ta-now,#temple-audio-console.ta-mini .ta-volume{display:none}
@media(max-width:700px){#temple-audio-console{left:12px;right:12px;bottom:96px;width:auto}.footer-terminal{padding-bottom:96px}}


/* ===== SOURCE_STYLE: v56-fullscreen-style ===== */

#bet-live-panel.v56-fullscreen{
  position:fixed !important;
  inset:18px 12px 18px 12px !important;
  width:auto !important;
  max-width:none !important;
  height:auto !important;
  max-height:none !important;
  z-index:10060 !important;
  padding:18px !important;
  overflow:auto !important;
  border-radius:20px !important;
  background:rgba(8,10,18,.96) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.65) !important;
}
#bet-live-panel.v56-fullscreen .bp-head{
  position:sticky; top:0; z-index:2; background:rgba(8,10,18,.96);
  padding-bottom:10px;
}
#bet-live-panel.v56-fullscreen::before{
  content:"";
  position:fixed; inset:0;
  background:rgba(0,0,0,.68);
  z-index:-1;
}


/* ===== SOURCE_STYLE: v58-image-style ===== */

#core-window{
  animation: v58TempleSpin 36s linear infinite;
}
#fairy-img{
  animation: v58Pulse 1.8s ease-in-out infinite;
  object-position:center center;
}
@keyframes v58TempleSpin{
  from{ transform: rotate(0deg); }
  to{ transform: rotate(360deg); }
}
@keyframes v58Pulse{
  0%,100%{ transform: scale(1); filter: saturate(1.02) drop-shadow(0 0 0 rgba(255,215,120,0)); }
  50%{ transform: scale(1.035); filter: saturate(1.08) drop-shadow(0 0 18px rgba(255,215,120,.28)); }
}


/* ===== SOURCE_STYLE: v72-upgrade-style ===== */

/* ===== V7.2 真升級：保留 V5.9 原系統，只新增左下移動與角色翻面 ===== */
#move-joystick-wrap{
  position:fixed;
  left:18px;
  bottom:118px;
  width:128px;
  height:128px;
  z-index:175;
  border-radius:50%;
  border:1px solid rgba(255,215,120,.28);
  background:radial-gradient(circle at 35% 30%, rgba(255,255,255,.08), rgba(0,0,0,.55) 55%, rgba(0,0,0,.85));
  box-shadow:0 0 18px rgba(255,215,120,.12), inset 0 0 18px rgba(0,0,0,.35);
  touch-action:none;
  user-select:none;
  -webkit-user-select:none;
}
#move-joystick-wrap::before{
  content:"MOVE";
  position:absolute;
  top:-22px;
  left:50%;
  transform:translateX(-50%);
  font-family:'Orbitron',sans-serif;
  font-size:11px;
  color:#ffe39a;
  text-shadow:0 0 12px rgba(255,215,120,.35);
}
#move-joystick-base{
  position:absolute;
  inset:14px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.10);
}
#move-joystick-knob{
  position:absolute;
  width:48px;
  height:48px;
  left:40px;
  top:40px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 35%, #fff0bb, #f2d57a 48%, #c99d27 100%);
  box-shadow:0 0 16px rgba(255,215,120,.28);
}
#move-joystick-label{
  position:absolute;
  width:100%;
  text-align:center;
  bottom:-26px;
  left:0;
  font-size:10px;
  color:#d8f6ff;
  opacity:.92;
}

/* 中央角色翻面與位移使用獨立 transform 變數，避免破壞原版 */
#core-anchor.v72-character{
  --v72-move-x: 0px;
  --v72-move-y: 0px;
  --v72-face-x: 1;
  transform: translate(calc(-50% + var(--v72-move-x)), calc(-50% + var(--v72-move-y))) !important;
}
#fairy-img.v72-character{
  transform: scaleX(var(--v72-face-x));
  transform-origin:center center;
  transition: transform .22s ease;
  will-change: transform;
}

/* 讓中下方向切換時，角色正反面提示更明顯 */
#wish-label.v72-side-label{
  text-shadow:0 0 12px rgba(255,215,120,.28);
}


/* ===== SOURCE_STYLE: v57-single-modal-style ===== */

/* one single modal in v5.7 */
#chainToggleBtn,#betToggleBtn{display:none !important;}
#temple-single-modal{position:fixed;inset:0;background:rgba(0,0,0,.78);z-index:10090;display:none;padding:14px;}
#temple-single-modal.show{display:block;}
#temple-single-modal .tsm-card{max-width:980px;height:calc(100vh - 28px);margin:0 auto;background:rgba(8,10,18,.96);border:1px solid rgba(255,215,120,.28);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.68);overflow:auto;}
#temple-single-modal .tsm-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:rgba(8,10,18,.96);border-bottom:1px solid rgba(255,215,120,.12);}
#temple-single-modal .tsm-title{color:#ffd978;font-weight:900;letter-spacing:.4px;}
#temple-single-modal .tsm-body{padding:16px;display:grid;grid-template-columns:1.1fr .9fr;gap:12px;}
@media (max-width:860px){#temple-single-modal .tsm-body{grid-template-columns:1fr;}}
#temple-single-modal .tsm-box{border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.04);padding:12px;}
#temple-single-modal .tsm-box h3{margin:0 0 8px;color:#ffd978;font-size:16px;}
#temple-single-modal .tsm-flow{font-size:13px;line-height:1.8;color:#e6eef8;}
#temple-single-modal .tsm-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;}
@media (max-width:640px){#temple-single-modal .tsm-grid{grid-template-columns:1fr;}}
#temple-single-modal .tsm-grid .nav-btn{min-height:52px;}
#temple-single-modal .tsm-status{margin-top:10px;color:#7ff3ff;font-size:12px;line-height:1.7;}


/* ===== SOURCE_STYLE: kgen-12345-heart-live-v730-style ===== */

  #kgen-heart-live-panel{
    position:fixed; left:18px; top:92px; z-index:100500;
    width:min(390px, calc(100vw - 36px)); max-height:72vh; overflow:auto;
    padding:12px; border-radius:16px;
    border:1px solid rgba(255,215,120,.55);
    background:rgba(5,8,15,.90); color:#fff;
    box-shadow:0 0 30px rgba(255,215,120,.16), inset 0 0 22px rgba(0,242,255,.05);
    backdrop-filter:blur(8px); box-sizing:border-box;
    font-family:'Noto Sans TC', system-ui, sans-serif;
  }
  #kgen-heart-live-panel .kh-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;}
  #kgen-heart-live-panel .kh-title{color:#ffd778;font-family:'Orbitron',sans-serif;font-weight:900;font-size:13px;letter-spacing:.6px;}
  #kgen-heart-live-panel .kh-pill{font-size:11px;color:#8af3ff;border:1px solid rgba(0,242,255,.28);border-radius:999px;padding:4px 8px;background:rgba(0,242,255,.08);}
  #kgen-heart-live-panel .kh-grid{display:grid;grid-template-columns:118px 1fr;gap:6px 8px;font-size:12px;line-height:1.35;}
  #kgen-heart-live-panel .kh-k{color:#ffe6b8;opacity:.9;}
  #kgen-heart-live-panel .kh-v{color:#d8f9ff;font-weight:900;word-break:break-all;}
  #kgen-heart-live-panel input,#kgen-heart-live-panel select{
    width:100%;box-sizing:border-box;border-radius:10px;padding:9px 10px;
    border:1px solid rgba(255,215,120,.28);background:rgba(0,0,0,.38);color:#fff;font-weight:900;outline:none;
  }
  #kgen-heart-live-panel .kh-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
  #kgen-heart-live-panel button{
    border-radius:12px;padding:10px 9px;border:1px solid rgba(255,215,120,.34);
    background:rgba(0,0,0,.42);color:#fff;font-weight:900;cursor:pointer;
  }
  #kgen-heart-live-panel button.kh-gold{background:rgba(255,215,120,.90);color:#111;border-color:rgba(255,215,120,.85);}
  #kgen-heart-live-panel button.kh-cyan{background:rgba(0,242,255,.16);border-color:rgba(0,242,255,.44);color:#d8fbff;}
  #kgen-heart-live-panel button.kh-red{background:rgba(255,80,80,.14);border-color:rgba(255,80,80,.38);color:#ffdede;}
  #kgen-heart-live-panel .kh-log{margin-top:10px;padding:9px 10px;border-radius:12px;background:rgba(0,0,0,.34);border:1px solid rgba(255,255,255,.10);font-size:12px;line-height:1.45;color:#dfe9ff;min-height:38px;white-space:pre-wrap;}
  #kgen-heart-live-panel .kh-mini{font-size:11px;opacity:.86;line-height:1.45;margin-top:8px;color:#ffeec8;}
  #kgen-heart-toggle{position:fixed;left:18px;top:52px;z-index:100501;border-radius:999px;padding:8px 12px;border:1px solid rgba(255,215,120,.55);background:rgba(0,0,0,.72);color:#ffd778;font-weight:900;box-shadow:0 0 18px rgba(255,215,120,.16);}
  @media(max-width:720px){#kgen-heart-live-panel{left:10px;right:10px;top:86px;width:auto;max-height:62vh;}#kgen-heart-live-panel .kh-actions{grid-template-columns:1fr;}#kgen-heart-toggle{left:10px;top:50px;}}


/* ===== SOURCE_STYLE: kgen-12345-ui-control-v740-style ===== */

  :root{
    --k12345-core-x: 0px;
    --k12345-core-y: 0px;
    --k12345-core-scale: 1;
    --k12345-core-rotate: 0deg;
  }

  /* 中央角色/核心：由左下移動鍵與下方橫桿共同控制 */
  #core-anchor{
    transform:
      translate(-50%, -50%)
      translate(var(--k12345-core-x), var(--k12345-core-y))
      scale(var(--k12345-core-scale))
      rotate(var(--k12345-core-rotate)) !important;
    transition: transform .18s ease, filter .18s ease;
    will-change: transform;
  }
  #core-window{
    transform-origin: 50% 50%;
  }

  /* 讓 Heart 面板真正可以收起，不再一直擋畫面 */
  #kgen-heart-live-panel{
    max-height: min(72vh, 680px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
  }
  body.k12345-heart-collapsed #kgen-heart-live-panel{
    display: none !important;
  }
  #kgen-heart-toggle{
    display:flex !important;
    align-items:center;
    gap:6px;
    pointer-events:auto !important;
    user-select:none;
  }
  #kgen-heart-toggle::after{
    content:'展開/收合';
    font-size:11px;
    opacity:.82;
  }

  /* 左下角色移動控制器：12345 專屬，16888 不需要 */
  #k12345-move-pad{
    position: fixed;
    left: 18px;
    bottom: 118px;
    z-index: 100620;
    width: 176px;
    padding: 10px;
    border-radius: 16px;
    border: 1px solid rgba(255,215,120,.50);
    background: rgba(0,0,0,.72);
    box-shadow: 0 0 22px rgba(255,215,120,.14), inset 0 0 18px rgba(0,242,255,.05);
    backdrop-filter: blur(8px);
    color: #fff;
    font-family: 'Noto Sans TC', system-ui, sans-serif;
    box-sizing: border-box;
  }
  #k12345-move-pad .move-title{
    color:#ffd778;
    font-family:'Orbitron', sans-serif;
    font-size:12px;
    font-weight:900;
    letter-spacing:.5px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:8px;
  }
  #k12345-move-pad .move-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap:6px;
  }
  #k12345-move-pad button{
    min-height:36px;
    border-radius:10px;
    border:1px solid rgba(0,242,255,.35);
    background:rgba(0,0,0,.45);
    color:#dffbff;
    font-weight:900;
    cursor:pointer;
    box-shadow: inset 0 0 12px rgba(0,242,255,.08);
  }
  #k12345-move-pad button:active{
    transform: scale(.96);
    background:rgba(255,215,120,.82);
    color:#111;
  }
  #k12345-move-pad .move-status{
    margin-top:8px;
    padding:6px 8px;
    border-radius:10px;
    background:rgba(255,255,255,.06);
    color:#8af3ff;
    font-family:'Orbitron', sans-serif;
    font-size:11px;
    line-height:1.45;
  }
  #k12345-move-pad .move-row{
    display:flex;
    gap:6px;
    margin-top:7px;
  }
  #k12345-move-pad .move-row button{
    flex:1;
    min-height:30px;
    font-size:11px;
    border-color:rgba(255,215,120,.32);
    color:#ffe9b8;
  }

  /* 下方橫桿狀態提示：確認滑桿真的在控制核心 */
  #k12345-slider-status{
    position: fixed;
    left:50%;
    bottom: 198px;
    transform: translateX(-50%);
    z-index: 100610;
    padding: 6px 12px;
    border-radius: 999px;
    border:1px solid rgba(0,242,255,.38);
    background:rgba(0,0,0,.62);
    color:#dffbff;
    font-family:'Orbitron', sans-serif;
    font-size:12px;
    font-weight:900;
    pointer-events:none;
    box-shadow:0 0 16px rgba(0,242,255,.15);
  }

  @media(max-width:720px){
    body.k12345-heart-collapsed #kgen-heart-live-panel{display:none !important;}
    #kgen-heart-toggle{top:46px !important; left:10px !important;}
    #k12345-move-pad{
      left: 10px;
      bottom: 104px;
      width: 156px;
      padding:8px;
    }
    #k12345-move-pad .move-title{font-size:11px;}
    #k12345-move-pad button{min-height:32px;font-size:12px;}
    #k12345-slider-status{
      bottom: 190px;
      font-size:11px;
      max-width:72vw;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .steer-zone{bottom:220px !important;}
  }


/* ===== SOURCE_STYLE: kgen-12345-ui-v750-final-style ===== */

  :root{
    --k12345-core-x: 0px;
    --k12345-core-y: 0px;
    --k12345-core-scale: 1;
    --k12345-core-rotate: 0deg;
  }

  /* 左上收合按鈕與面板：下移，避免遮住 KGEN 標題與背景字 */
  #kgen-heart-toggle{
    top: 84px !important;
    left: 14px !important;
    z-index: 100650 !important;
    padding: 7px 11px !important;
    border-radius: 999px !important;
    background: rgba(0,0,0,.78) !important;
    border: 1px solid rgba(255,215,120,.62) !important;
    color: #ffd778 !important;
    box-shadow: 0 0 18px rgba(255,215,120,.16), inset 0 0 10px rgba(0,242,255,.08) !important;
  }
  #kgen-heart-live-panel{
    top: 126px !important;
    left: 14px !important;
    max-height: min(64vh, 620px) !important;
  }
  body.k12345-heart-collapsed #kgen-heart-live-panel{display:none !important;}
  #kgen-heart-toggle::after{
    content:' 收合';
    font-size:11px;
    opacity:.78;
  }
  body.k12345-heart-collapsed #kgen-heart-toggle::after{content:' 展開';}

  /* 核心圖：取消舊版自動旋轉，只接受 joystick + 橫桿的靜態 transform */
  #core-window{
    animation: none !important;
    transform: none !important;
    transition: none !important;
  }
  #core-anchor{
    transform:
      translate(-50%, -50%)
      translate(var(--k12345-core-x), var(--k12345-core-y))
      scale(var(--k12345-core-scale))
      rotate(var(--k12345-core-rotate)) !important;
    transition: transform .08s linear !important;
    will-change: transform;
    transform-origin: 50% 50%;
  }

  /* 左下移動器：按住控制，並避開底部按鈕 */
  #k12345-move-pad{
    left: 14px !important;
    bottom: 150px !important;
    width: 160px !important;
    z-index: 100630 !important;
    touch-action: none;
  }
  #k12345-move-pad button{
    user-select:none;
    -webkit-user-select:none;
    touch-action:none;
  }
  #k12345-move-pad button.k12345-holding{
    background: rgba(255,215,120,.88) !important;
    color:#111 !important;
    box-shadow: 0 0 18px rgba(255,215,120,.32) !important;
  }
  #k12345-slider-status{
    bottom: 214px !important;
    z-index: 100625 !important;
  }

  @media(max-width:720px){
    #kgen-heart-toggle{top:78px !important; left:10px !important;}
    #kgen-heart-live-panel{top:118px !important; left:10px !important; right:10px !important; width:auto !important; max-height:58vh !important;}
    #k12345-move-pad{left:10px !important; bottom:142px !important; width:148px !important;}
    #k12345-slider-status{bottom:202px !important;}
    .steer-zone{bottom:230px !important;}
  }


/* ===== SOURCE_STYLE: kgen-12345-ui-v760-final-style ===== */

  :root{
    --k12345-core-x: 0px;
    --k12345-core-y: 0px;
    --k12345-core-scale: 1;
    --k12345-core-rotate: 0deg;
  }

  /* Heart 面板：不要再擋住最上方背景字與標題；手機預設收合 */
  #kgen-heart-toggle{
    top: 118px !important;
    left: 12px !important;
    z-index: 100900 !important;
    background: rgba(0,0,0,.78) !important;
    border-color: rgba(255,215,120,.72) !important;
    color: #ffe08a !important;
    box-shadow: 0 0 18px rgba(255,215,120,.20) !important;
  }
  #kgen-heart-live-panel{
    top: 160px !important;
    left: 12px !important;
    width: min(360px, calc(100vw - 24px)) !important;
    max-height: 50vh !important;
    z-index: 100899 !important;
  }
  body.k12345-heart-collapsed #kgen-heart-live-panel{
    display:none !important;
  }
  body.k12345-heart-collapsed #kgen-heart-toggle::after{content:' 展開' !important;}
  body:not(.k12345-heart-collapsed) #kgen-heart-toggle::after{content:' 收合' !important;}

  /* 隱藏上一版方形移動鍵，恢復原本圓形搖桿 */
  #k12345-move-pad{display:none !important;}
  #move-joystick-wrap{
    display:block !important;
    left: 18px !important;
    bottom: 126px !important;
    z-index: 100760 !important;
    touch-action:none !important;
    pointer-events:auto !important;
  }
  #move-joystick-label{
    color:#8af3ff !important;
    font-family:'Orbitron',sans-serif !important;
    font-size:10px !important;
  }

  /* 核心主圖：橫桿角度與搖桿位移都作用在 core-anchor；覆蓋舊 v72-character transform */
  #core-anchor,
  #core-anchor.v72-character{
    transform:
      translate(calc(-50% + var(--k12345-core-x)), calc(-50% + var(--k12345-core-y)))
      scale(var(--k12345-core-scale))
      rotate(var(--k12345-core-rotate)) !important;
    transform-origin:50% 50% !important;
    transition: transform .08s linear !important;
    will-change: transform !important;
  }
  #core-window{
    animation:none !important;
    transform:none !important;
  }

  #k12345-slider-status{
    bottom: 206px !important;
    z-index: 100750 !important;
  }
  .steer-zone{bottom:226px !important;}

  @media(max-width:720px){
    #kgen-heart-toggle{top:112px !important; left:10px !important;}
    #kgen-heart-live-panel{
      top:150px !important;
      left:10px !important;
      right:10px !important;
      width:auto !important;
      max-height:48vh !important;
    }
    #move-joystick-wrap{left:12px !important; bottom:122px !important;}
    .steer-zone{bottom:222px !important;}
    #k12345-slider-status{bottom:198px !important; max-width:74vw; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
  }


/* ===== SOURCE_STYLE: kgen-12345-ui-v780-final-style ===== */

  /* 16888 的 Pool Balance / 進度是廣寒宮功能，12345 不顯示舊 web3-panel */
  #web3-panel{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  /* 左上操作區塊移到 E=mc² 資源條下面，不擋上方背景字 */
  #kgen-heart-toggle{
    top: 312px !important;
    left: 18px !important;
    z-index: 100900 !important;
    pointer-events:auto !important;
    background: rgba(0,0,0,.78) !important;
    border: 1px solid rgba(255,215,120,.65) !important;
    color:#ffe08a !important;
    box-shadow: 0 0 18px rgba(255,215,120,.20) !important;
  }
  #kgen-heart-live-panel{
    top: 352px !important;
    left: 18px !important;
    width: min(380px, 92vw) !important;
    max-height: 52vh !important;
    overflow-y:auto !important;
    z-index: 100890 !important;
    pointer-events:auto !important;
  }
  body.k12345-heart-collapsed #kgen-heart-live-panel{
    display:none !important;
  }
  body.k12345-heart-collapsed #kgen-heart-toggle::after{ content:' 展開'; }
  body:not(.k12345-heart-collapsed) #kgen-heart-toggle::after{ content:' 收合'; }

  /* 原本圓形遙桿保留：按住拖曳控制角色移動 */
  #move-joystick-wrap{
    display:block !important;
    pointer-events:auto !important;
    touch-action:none !important;
    z-index:100760 !important;
  }
  #k12345-move-pad{ display:none !important; }

  /* 中下橫桿控制主核心角度，不自轉 */
  #core-anchor,
  #core-anchor.v72-character{
    transform:
      translate(calc(-50% + var(--k12345-core-x, 0px)), calc(-50% + var(--k12345-core-y, 0px)))
      scale(var(--k12345-core-scale, 1))
      rotate(var(--k12345-core-rotate, 0deg)) !important;
    transform-origin:50% 50% !important;
    transition: transform .08s linear !important;
    will-change: transform !important;
  }
  #core-window{
    animation:none !important;
    transform:none !important;
  }

  @media(max-width:720px){
    #kgen-heart-toggle{ top: 326px !important; left:10px !important; }
    #kgen-heart-live-panel{
      top: 366px !important;
      left:10px !important;
      right:10px !important;
      width:auto !important;
      max-height:46vh !important;
    }
  }


/* ===== SOURCE_STYLE: kh-v711-hotfix-style ===== */

  /* 右下音樂小窗與右上入口重複，右下取消；音樂系統仍可由按鈕/首次點擊觸發 */
  #temple-audio-console{ display:none !important; }
  /* 12345 不是 16888 pool 進度，隱藏舊進度條，但保留 Heart 血庫餘額 */
  #web3-panel .prog-wrap, #prog-fill, #prog-txt{ display:none !important; }
  /* 左下錢包/玩法/操作區要保留，但不能壓過方向盤 */
  #web3-panel{ left:14px !important; bottom:260px !important; max-height:260px !important; }
  @media(max-width:700px){
    #web3-panel{ left:10px !important; right:10px !important; bottom:260px !important; width:auto !important; max-height:260px !important; }
    .angle-readout{ font-size:44px !important; }
  }


/* ===== SOURCE_STYLE: kgen12345-v712-final-css ===== */

  /* 左下交易 / 錢包 / 玩法區塊：固定恢復，不再消失 */
  #bet-live-panel.bet-live-panel{
    display:block !important;
    left:18px !important;
    right:auto !important;
    top:auto !important;
    bottom:132px !important;
    width:min(375px, calc(100vw - 36px)) !important;
    z-index:650 !important;
    max-height:42vh !important;
    overflow:auto !important;
    border-color:rgba(255,215,120,.42) !important;
    box-shadow:0 0 22px rgba(255,215,120,.20), 0 14px 42px rgba(0,0,0,.52) !important;
  }
  #bet-live-panel .bp-head span:first-child::after{content:'｜Wallet / Heart'; color:#7ff3ff; margin-left:6px; font-size:11px;}
  #chain-live-panel{display:none !important;}
  #guideUnifiedBtn{font-weight:900 !important;}
  .guide-title{color:#ffe39a !important;}
  #walletHub{z-index:99999 !important;}
  @media (max-width:820px){
    #bet-live-panel.bet-live-panel{
      left:12px !important;
      bottom:128px !important;
      width:min(340px, calc(100vw - 24px)) !important;
      max-height:38vh !important;
    }
  }


/* ===== SOURCE_STYLE: inline-style ===== */

  :root{--v714Panel:rgba(7,10,14,.88);--v714Line:rgba(255,215,120,.58);--v714Cyan:#7ff3ff;--v714Gold:#ffd978;}
  #bet-live-panel.bet-live-panel{
    position:fixed !important;
    left:18px !important;
    bottom:116px !important;
    width:min(390px,calc(100vw - 36px)) !important;
    max-height:min(58vh,560px) !important;
    overflow:auto !important;
    -webkit-overflow-scrolling:touch !important;
    z-index:460 !important;
    background:linear-gradient(180deg,rgba(9,14,20,.93),rgba(0,0,0,.86)) !important;
    border:1px solid var(--v714Line) !important;
    border-radius:16px !important;
    box-shadow:0 12px 45px rgba(0,0,0,.65),0 0 24px rgba(255,215,120,.12) !important;
    padding:12px !important;
  }
  #bet-live-panel.v714-collapsed{height:auto !important; max-height:52px !important; overflow:hidden !important; padding-bottom:8px !important;}
  #bet-live-panel .bp-head{position:sticky;top:0;background:rgba(7,10,14,.92);z-index:2;padding-bottom:8px;}
  #bet-live-panel .bp-head span:first-child{font-size:13px !important;color:var(--v714Gold) !important;}
  #v714-toggle-panel{border-radius:10px;padding:5px 10px;border:1px solid rgba(255,215,120,.45);background:rgba(255,215,120,.16);color:#ffe7a0;font-weight:900;}
  .v714-steps{margin:10px 0;padding:10px;border:1px solid rgba(127,243,255,.22);border-radius:12px;background:rgba(0,242,255,.06);font-size:12px;line-height:1.65;color:#eaffff;}
  .v714-cupbox{margin:10px 0;padding:10px;border:1px solid rgba(255,215,120,.38);border-radius:14px;background:rgba(255,215,120,.07);}
  .v714-cup-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;}
  .v714-cup{min-height:38px;border-radius:12px;border:1px solid rgba(255,215,120,.45);background:rgba(255,255,255,.05);color:#fff;font-weight:900;}
  .v714-cup.done{background:linear-gradient(135deg,rgba(255,215,120,.35),rgba(0,242,255,.15));color:#ffeaa8;box-shadow:0 0 18px rgba(255,215,120,.25);}
  .v714-events{display:grid;grid-template-columns:1fr;gap:8px;margin:10px 0;}
  .v714-event{border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:9px;background:rgba(255,255,255,.045);font-size:12px;line-height:1.5;}
  .v714-event b{color:var(--v714Gold);}
  .v714-event button{float:right;border:1px solid rgba(127,243,255,.35);border-radius:10px;background:rgba(0,242,255,.12);color:#dff;font-weight:900;padding:5px 8px;}
  #guide-modal .guide-card{max-height:74vh !important; overflow:auto !important;}
  #guide-modal .guide-body h3{color:var(--v714Gold);}
  #guide-modal .guide-body code{color:var(--v714Cyan);word-break:break-all;}
  @media(max-width:640px){
    #bet-live-panel.bet-live-panel{left:10px !important;right:10px !important;bottom:114px !important;width:auto !important;max-height:52vh !important;}
    #bet-live-panel.v714-collapsed{max-height:48px !important;}
    #guide-modal .guide-card{width:calc(100vw - 30px) !important;}
  }


/* ===== SOURCE_STYLE: v715-human-panel-css ===== */

  :root { --v715-panel-w: min(390px, 92vw); }
  #v715-left-dock,
  #v715-right-dock{
    position:fixed; z-index:10090; pointer-events:auto;
    border:1px solid rgba(255,215,120,.72); color:#ffd978;
    background:rgba(0,0,0,.82); backdrop-filter:blur(8px);
    border-radius:16px; padding:10px 12px; font-weight:900;
    box-shadow:0 0 18px rgba(255,215,120,.24), inset 0 0 14px rgba(255,215,120,.08);
    font-size:13px; letter-spacing:.5px;
  }
  #v715-left-dock{left:14px; bottom:118px;}
  #v715-right-dock{right:14px; bottom:118px;}
  #web3-panel.v715-panel{
    left:14px!important; right:auto!important; bottom:106px!important;
    width:var(--v715-panel-w)!important; max-height:62vh!important;
    overflow:auto!important; z-index:10091!important;
    padding:12px!important; border-radius:16px!important;
  }
  #web3-panel.v715-collapsed{display:none!important;}
  #web3-panel .v715-close-bad{display:none!important;}
  #v715-cup-status{
    margin:8px 0 6px 0; padding:8px;
    border:1px solid rgba(255,215,120,.35); border-radius:12px;
    background:rgba(255,215,120,.06); font-size:12px; line-height:1.55;
  }
  #v715-cup-status b{color:#ffd978;}
  #v715-cup-log{color:#dfe9ff; opacity:.92; margin-top:4px;}
  #temple-modal.v715-right-sheet{
    inset:auto 14px 106px auto!important; width:min(520px,92vw)!important; height:auto!important;
    background:transparent!important; padding:0!important; z-index:10092!important;
  }
  #temple-modal.v715-right-sheet > div{
    max-width:100%!important; margin:0!important; max-height:70vh; overflow:auto;
  }
  #guide-modal .guide-title::after{content:'｜12345 五指山悟空財神殿'; color:#7ff3ff; margin-left:6px; font-size:12px;}
  @media (max-width: 760px){
    #v715-left-dock{left:12px; bottom:96px;}
    #v715-right-dock{right:12px; bottom:96px;}
    #web3-panel.v715-panel{left:10px!important; bottom:88px!important; width:calc(100vw - 20px)!important; max-height:58vh!important;}
    #temple-modal.v715-right-sheet{left:10px!important; right:10px!important; bottom:88px!important; width:calc(100vw - 20px)!important;}
  }


/* ===== SOURCE_STYLE: kgen12345-v716-human-buttons-css ===== */

  /* 版號統一：V7.16 */
  #ver-st::after{content:'';}

  /* 舊的左右浮動按鈕會蓋字，隱藏，改用新的側邊人類按鈕 */
  #v715-left-dock,
  #v715-right-dock{display:none!important;}

  #v716-side-actions{
    position:fixed!important;
    left:10px!important;
    right:10px!important;
    bottom:205px!important;
    z-index:2147483000!important;
    display:flex!important;
    justify-content:space-between!important;
    gap:10px!important;
    pointer-events:none!important;
  }
  #v716-side-actions button{
    pointer-events:auto!important;
    min-width:112px!important;
    max-width:42vw!important;
    padding:10px 12px!important;
    border-radius:16px!important;
    border:1px solid rgba(255,215,120,.85)!important;
    color:#ffe39b!important;
    background:linear-gradient(180deg,rgba(12,15,20,.92),rgba(0,0,0,.82))!important;
    box-shadow:0 0 18px rgba(255,215,120,.28), inset 0 0 14px rgba(0,242,255,.08)!important;
    font-family:'Orbitron','Noto Sans TC',sans-serif!important;
    font-weight:900!important;
    font-size:13px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }
  #v716-rules-btn{transform:translateY(-38px)!important;} /* 右下再上一點，不壓右下資訊 */

  /* 左下操作面板：平常隱藏，點按鈕才展開；收合才是唯一關閉 */
  body:not(.v716-ops-open) #web3-panel{display:none!important;}
  body.v716-ops-open #web3-panel{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    bottom:112px!important;
    width:min(430px,calc(100vw - 24px))!important;
    max-height:66vh!important;
    overflow:auto!important;
    z-index:2147483001!important;
    border-radius:18px!important;
    padding:12px!important;
    background:linear-gradient(180deg,rgba(7,10,15,.96),rgba(0,0,0,.90))!important;
    border:1px solid rgba(255,215,120,.75)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.68),0 0 24px rgba(255,215,120,.2)!important;
  }
  #web3-panel .v715-close-bad,
  #web3-panel button:empty{display:none!important;}
  #v715-collapse-ops,
  #v716-collapse-ops{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:12px!important;
    padding:7px 10px!important;
    border:1px solid rgba(255,215,120,.55)!important;
    background:rgba(255,215,120,.14)!important;
    color:#ffe3a0!important;
    font-weight:900!important;
  }

  /* 右下規則活動頁：點按鈕才開，並往上放，不壓底部文字 */
  body:not(.v716-rules-open) #temple-modal{display:none!important;}
  body.v716-rules-open #temple-modal{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    bottom:165px!important;
    top:auto!important;
    width:auto!important;
    max-height:62vh!important;
    overflow:auto!important;
    z-index:2147483002!important;
    background:transparent!important;
    padding:0!important;
  }
  body.v716-rules-open #temple-modal > div{
    max-width:100%!important;
    margin:0!important;
    max-height:62vh!important;
    overflow:auto!important;
    border-radius:18px!important;
  }

  /* 客服/導覽如果被打開，位置置中，避免蓋住上方主要資料 */
  #guide-modal.show .guide-card{
    width:min(560px,calc(100vw - 28px))!important;
    max-height:68vh!important;
    overflow:auto!important;
    margin:12vh auto 0 auto!important;
  }

  @media(max-width:760px){
    #v716-side-actions{bottom:192px!important;}
    #v716-side-actions button{min-width:104px!important;font-size:12px!important;padding:9px 10px!important;}
    #v716-rules-btn{transform:translateY(-44px)!important;}
    body.v716-ops-open #web3-panel{bottom:96px!important;max-height:62vh!important;}
    body.v716-rules-open #temple-modal{bottom:150px!important;max-height:58vh!important;}
  }


/* ===== SOURCE_STYLE: kgen-12345-v790-final-style ===== */

  /* 左下交易 / 錢包 / 玩法區塊：保留，不能拿掉 */
  #web3-panel{
    display:block !important;
    position:fixed !important;
    left:16px !important;
    bottom:255px !important;
    top:auto !important;
    width:min(385px, 92vw) !important;
    max-height:310px !important;
    overflow-y:auto !important;
    z-index:165 !important;
    pointer-events:auto !important;
    background:linear-gradient(180deg, rgba(10,12,18,.92), rgba(0,0,0,.76)) !important;
    border:1px solid rgba(255,215,120,.58) !important;
    box-shadow:0 0 22px rgba(255,215,120,.12), inset 0 0 18px rgba(0,242,255,.05) !important;
  }
  #web3-panel::before{
    content:'錢包 / 金額 / 神殿玩法';
    display:block;
    color:#ffd978;
    font-family:'Orbitron',sans-serif;
    font-weight:900;
    letter-spacing:.5px;
    margin-bottom:8px;
    border-bottom:1px solid rgba(255,215,120,.18);
    padding-bottom:6px;
  }
  /* 12345 不用 16888 Pool Balance 與進度條 */
  #web3-panel .prog-wrap,
  #web3-panel #prog-fill,
  #web3-panel #prog-txt{ display:none !important; }

  /* 右下狀態角度不能固定，要跟橫桿同步 */
  #coord-panel #cp-deg-num,
  #ang-val{ color:#61f7ff !important; text-shadow:0 0 12px rgba(0,242,255,.65); }

  /* 中央核心：方向由橫桿控制，不自動一直轉 */
  #core-window{
    animation:none !important;
    transition:transform .08s linear !important;
    transform-origin:center center !important;
    will-change:transform !important;
  }
  #fairy-img{
    opacity:1 !important;
    display:block !important;
    visibility:visible !important;
    object-fit:cover !important;
  }

  /* 原來的圓形遙桿保留；控制主圖 X/Y，不是只按一下 */
  #move-joystick-wrap{
    left:18px !important;
    bottom:118px !important;
    z-index:190 !important;
    pointer-events:auto !important;
  }

  /* 神殿音樂面板位置，不擋主畫面 */
  #music-panel{
    right:14px !important;
    top:410px !important;
    max-height:330px !important;
    overflow:auto !important;
  }

  @media(max-width:720px){
    #web3-panel{
      left:12px !important;
      right:auto !important;
      bottom:245px !important;
      width:min(360px, 92vw) !important;
      max-height:280px !important;
    }
    #move-joystick-wrap{ bottom:118px !important; }
  }


/* ===== SOURCE_STYLE: kgen12345-v713-walletfix-css ===== */

  #walletHub{z-index:2147483647 !important;}
  #kgen-heart-toggle{top:92px !important;}
  #kgen-heart-live-panel{top:142px !important; max-height:62vh !important; overflow:auto !important;}
  #bet-live-panel.bet-live-panel,#web3-panel{display:block !important;}


/* ===== SOURCE_STYLE: kgen12345-v717-footer8-standard-css ===== */

  /* 只保留底部 8 個標準按鈕當主入口；其他左右浮動入口不再干擾畫面 */
  #v715-left-dock,
  #v715-right-dock,
  #v716-side-actions,
  #music-panel{display:none!important;}

  body{padding-bottom:128px!important;}

  .footer-terminal{
    position:fixed!important;
    left:0!important; right:0!important; bottom:0!important;
    z-index:2147483200!important;
    display:grid!important;
    grid-template-columns:repeat(4, minmax(0,1fr))!important;
    gap:8px!important;
    padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px))!important;
    background:linear-gradient(180deg, rgba(0,0,0,.58), rgba(0,0,0,.94))!important;
    border-top:1px solid rgba(255,215,120,.72)!important;
    box-shadow:0 -18px 38px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.08)!important;
    backdrop-filter:blur(10px)!important;
    pointer-events:auto!important;
  }
  .footer-terminal .term-btn{
    min-height:46px!important;
    border-radius:10px!important;
    border:1px solid rgba(255,215,120,.34)!important;
    background:linear-gradient(180deg,rgba(8,11,18,.92),rgba(0,0,0,.82))!important;
    color:#eaf5ff!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.25!important;
    padding:8px 6px!important;
    box-shadow:inset 0 0 16px rgba(0,242,255,.05)!important;
    white-space:normal!important;
    pointer-events:auto!important;
  }
  .footer-terminal .term-btn:nth-child(n+5){
    border-color:rgba(255,215,120,.76)!important;
    color:#ffe39b!important;
    background:linear-gradient(180deg,rgba(33,25,8,.92),rgba(0,0,0,.86))!important;
    box-shadow:0 0 14px rgba(255,215,120,.12), inset 0 0 15px rgba(255,215,120,.08)!important;
  }
  .footer-terminal .term-btn.k17-wallet-btn{background:linear-gradient(180deg,rgba(5,47,38,.95),rgba(0,0,0,.86))!important;border-color:rgba(0,255,191,.55)!important;color:#b8fff3!important;}
  .footer-terminal .term-btn.k17-fortune-btn{background:linear-gradient(180deg,rgba(67,42,6,.95),rgba(0,0,0,.86))!important;border-color:rgba(255,213,111,.9)!important;color:#ffe39b!important;}
  .footer-terminal .term-btn.k17-rules-btn{background:linear-gradient(180deg,rgba(27,32,67,.95),rgba(0,0,0,.86))!important;border-color:rgba(121,177,255,.7)!important;color:#d9e9ff!important;}
  .footer-terminal .term-btn.k17-guide-btn{background:linear-gradient(180deg,rgba(28,62,66,.95),rgba(0,0,0,.86))!important;border-color:rgba(95,245,255,.72)!important;color:#c9fbff!important;}

  /* 左下錢包/聖盃操作頁：點底部按鈕才展開，位置統一，不能遮底部 8 鍵文字 */
  body:not(.k17-ops-open) #web3-panel{display:none!important;}
  body.k17-ops-open #web3-panel{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    right:auto!important;
    bottom:124px!important;
    width:min(430px,calc(100vw - 24px))!important;
    max-height:60vh!important;
    overflow:auto!important;
    z-index:2147483300!important;
    border-radius:18px!important;
    padding:12px!important;
    background:linear-gradient(180deg,rgba(6,9,15,.97),rgba(0,0,0,.92))!important;
    border:1px solid rgba(255,215,120,.74)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.72),0 0 24px rgba(255,215,120,.18)!important;
  }
  #web3-panel .k17-panel-head{
    position:sticky; top:0; z-index:2;
    display:flex!important; align-items:center!important; justify-content:space-between!important; gap:8px!important;
    padding:6px 0 10px!important;
    background:linear-gradient(180deg,rgba(6,9,15,.98),rgba(6,9,15,.82))!important;
    color:#ffd978!important; font-weight:900!important;
    border-bottom:1px solid rgba(255,215,120,.18)!important;
    margin-bottom:8px!important;
  }
  .k17-close-btn{
    border:1px solid rgba(255,215,120,.55)!important;
    background:rgba(255,215,120,.12)!important;
    color:#ffe39b!important;
    border-radius:10px!important;
    padding:7px 10px!important;
    font-weight:900!important;
  }

  /* 右下規則/活動頁：點底部按鈕才展開，比舊版再上移，避免卡住右下資訊 */
  body:not(.k17-rules-open) #temple-modal{display:none!important;}
  body.k17-rules-open #temple-modal{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:150px!important;
    width:auto!important;
    max-height:58vh!important;
    overflow:auto!important;
    z-index:2147483290!important;
    background:transparent!important;
    padding:0!important;
  }
  body.k17-rules-open #temple-modal > div{
    max-width:100%!important;
    margin:0!important;
    max-height:58vh!important;
    overflow:auto!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(7,10,16,.97),rgba(0,0,0,.92))!important;
    border:1px solid rgba(255,215,120,.64)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.72),0 0 24px rgba(255,215,120,.18)!important;
  }

  @media(max-width:760px){
    body{padding-bottom:138px!important;}
    .footer-terminal{grid-template-columns:repeat(4, minmax(0,1fr))!important;gap:7px!important;padding:9px 10px calc(10px + env(safe-area-inset-bottom,0px))!important;}
    .footer-terminal .term-btn{min-height:44px!important;font-size:11px!important;padding:7px 4px!important;}
    body.k17-ops-open #web3-panel{left:10px!important;bottom:122px!important;width:calc(100vw - 20px)!important;max-height:56vh!important;}
    body.k17-rules-open #temple-modal{left:10px!important;right:10px!important;bottom:142px!important;max-height:54vh!important;}
  }


/* ===== SOURCE_STYLE: kgen12345-v718-final-layout-css ===== */

  /* 左上 logo 與 Heart 展開鈕互相遮擋：直接移除小 logo，保留主標題 */
  #brand-badge{display:none!important;}
  #kgen-heart-toggle{
    top:86px!important;
    left:22px!important;
    z-index:2147483000!important;
    max-width:calc(100vw - 44px)!important;
  }
  @media(max-width:760px){#kgen-heart-toggle{top:86px!important;left:14px!important;}}

  /* 預設不要讓舊的左下/右下小窗蓋住方向盤、橫桿與文字 */
  #v715-left-dock,#v715-right-dock,#v716-side-actions,#music-panel{display:none!important;}
  body:not(.k18-ops-open) #web3-panel{display:none!important;}
  body:not(.k18-rules-open) #temple-modal{display:none!important;}
  body:not(.k18-audio-open) #temple-audio-console{display:none!important;}

  /* 左下操作窗：點底部「錢包聖盃 / 發財金」才展開，位置在方向盤與橫桿之上 */
  body.k18-ops-open #web3-panel{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    right:auto!important;
    bottom:268px!important;
    width:min(440px,calc(100vw - 24px))!important;
    max-height:42vh!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:2147483300!important;
    border-radius:18px!important;
    padding:12px!important;
    background:linear-gradient(180deg,rgba(6,9,15,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(255,215,120,.74)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.72),0 0 24px rgba(255,215,120,.18)!important;
  }
  #web3-panel .k18-panel-head{
    position:sticky;top:0;z-index:4;
    display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;
    padding:7px 0 10px!important;margin-bottom:8px!important;
    background:linear-gradient(180deg,rgba(6,9,15,.99),rgba(6,9,15,.84))!important;
    color:#ffd978!important;font-weight:900!important;border-bottom:1px solid rgba(255,215,120,.18)!important;
  }
  .k18-close-btn{
    border:1px solid rgba(255,215,120,.55)!important;background:rgba(255,215,120,.12)!important;
    color:#ffe39b!important;border-radius:10px!important;padding:7px 10px!important;font-weight:900!important;
  }
  .k18-section-mark{outline:2px solid rgba(0,242,255,.42); box-shadow:0 0 18px rgba(0,242,255,.18); border-radius:12px;}

  /* 右下規則/活動窗：同樣用按鈕展開，位置上移，不遮右下資料與底部八鍵 */
  body.k18-rules-open #temple-modal{
    display:block!important;position:fixed!important;
    left:auto!important;right:12px!important;top:auto!important;bottom:268px!important;
    width:min(460px,calc(100vw - 24px))!important;max-height:42vh!important;overflow:auto!important;
    z-index:2147483290!important;background:transparent!important;padding:0!important;
  }
  body.k18-rules-open #temple-modal > div{
    max-width:100%!important;margin:0!important;max-height:42vh!important;overflow:auto!important;
    border-radius:18px!important;background:linear-gradient(180deg,rgba(7,10,16,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(255,215,120,.64)!important;box-shadow:0 18px 55px rgba(0,0,0,.72),0 0 24px rgba(255,215,120,.18)!important;
  }

  /* 神殿音響面板：由右上「五指山神殿音響」按鈕開啟，不常駐右下 */
  body.k18-audio-open #temple-audio-console{
    display:block!important;position:fixed!important;right:12px!important;bottom:268px!important;
    width:min(420px,calc(100vw - 24px))!important;max-height:38vh!important;overflow:auto!important;
    z-index:2147483310!important;border-radius:18px!important;
  }
  #temple-audio-console .ta-close, #temple-audio-console .ta-mini-btn{pointer-events:auto!important;}

  /* 底部八鍵保持主控台，避免被舊窗覆蓋 */
  .footer-terminal{z-index:2147483200!important;}
  .footer-terminal .term-btn{pointer-events:auto!important;}

  @media(max-width:760px){
    body.k18-ops-open #web3-panel{left:10px!important;right:10px!important;width:auto!important;bottom:258px!important;max-height:40vh!important;}
    body.k18-rules-open #temple-modal{left:10px!important;right:10px!important;width:auto!important;bottom:258px!important;max-height:40vh!important;}
    body.k18-audio-open #temple-audio-console{left:10px!important;right:10px!important;width:auto!important;bottom:258px!important;max-height:38vh!important;}
  }


/* ===== SOURCE_STYLE: kgen12345-v719-final-fix-css ===== */

  /* 版號與上方：避免左上小 logo 擋 12345 Heart 展開 */
  #brand-badge{display:none!important;}
  #kgen-heart-toggle{
    top:92px!important;
    left:18px!important;
    z-index:2147483000!important;
  }

  /* 底部不再出現神殿音響小窗；音響只能從右上「五指山神殿音響」開啟 */
  #temple-audio-console{display:none!important;}
  body.k18-audio-open #temple-audio-console{display:none!important;}

  /* 舊浮窗全部預設收起，避免遮字、遮方向盤 */
  #v715-left-dock,#v715-right-dock,#v716-side-actions{display:none!important;}
  body:not(.k19-ops-open) #web3-panel{display:none!important;}
  body:not(.k19-rules-open) #temple-modal{display:none!important;}
  body:not(.k19-audio-open) #music-panel{display:none!important;}

  /* 左下操作窗：只由底部「錢包聖盃 / 發財金」展開，固定在方向橫桿上方 */
  body.k19-ops-open #web3-panel{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    right:auto!important;
    bottom:338px!important;
    width:min(440px,calc(100vw - 24px))!important;
    max-height:36vh!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:2147483300!important;
    border-radius:18px!important;
    padding:12px!important;
    background:linear-gradient(180deg,rgba(6,9,15,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(255,215,120,.74)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.72),0 0 24px rgba(255,215,120,.18)!important;
  }
  #web3-panel .k19-panel-head{
    position:sticky;top:0;z-index:4;
    display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;
    padding:7px 0 10px!important;margin-bottom:8px!important;
    background:linear-gradient(180deg,rgba(6,9,15,.99),rgba(6,9,15,.84))!important;
    color:#ffd978!important;font-weight:900!important;border-bottom:1px solid rgba(255,215,120,.18)!important;
  }
  .k19-close-btn{
    border:1px solid rgba(255,215,120,.55)!important;background:rgba(255,215,120,.12)!important;
    color:#ffe39b!important;border-radius:10px!important;padding:7px 10px!important;font-weight:900!important;
  }
  .k19-section-mark{outline:2px solid rgba(0,242,255,.42); box-shadow:0 0 18px rgba(0,242,255,.18); border-radius:12px;}

  /* 右下規則/活動窗：同樣按底部「規則活動」展開，位置上移 */
  body.k19-rules-open #temple-modal{
    display:block!important;position:fixed!important;
    left:auto!important;right:12px!important;top:auto!important;bottom:338px!important;
    width:min(460px,calc(100vw - 24px))!important;max-height:36vh!important;overflow:auto!important;
    z-index:2147483290!important;background:transparent!important;padding:0!important;
  }
  body.k19-rules-open #temple-modal > div{
    max-width:100%!important;margin:0!important;max-height:36vh!important;overflow:auto!important;
    border-radius:18px!important;background:linear-gradient(180deg,rgba(7,10,16,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(255,215,120,.64)!important;box-shadow:0 18px 55px rgba(0,0,0,.72),0 0 24px rgba(255,215,120,.18)!important;
  }

  /* 右上五指山神殿音響：打開既有 music-panel，放右上，不在右下 */
  body.k19-audio-open #music-panel{
    display:block!important;
    position:fixed!important;
    right:12px!important;
    top:154px!important;
    bottom:auto!important;
    left:auto!important;
    width:min(360px,calc(100vw - 24px))!important;
    max-height:42vh!important;
    overflow:auto!important;
    z-index:2147483310!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(7,10,16,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(255,215,120,.72)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.72),0 0 24px rgba(255,215,120,.18)!important;
  }

  .footer-terminal{z-index:2147483200!important;}
  .footer-terminal .term-btn{pointer-events:auto!important;}

  @media(max-width:760px){
    #kgen-heart-toggle{top:92px!important;left:14px!important;}
    body.k19-ops-open #web3-panel{left:10px!important;right:10px!important;width:auto!important;bottom:318px!important;max-height:34vh!important;}
    body.k19-rules-open #temple-modal{left:10px!important;right:10px!important;width:auto!important;bottom:318px!important;max-height:34vh!important;}
    body.k19-audio-open #music-panel{left:10px!important;right:10px!important;top:148px!important;width:auto!important;max-height:42vh!important;}
  }


/* ===== SOURCE_STYLE: kgen12345-v720-layout-audio-hotfix-css ===== */

  /* V7.20：版號 */
  #ver-st::after{content:"";}

  /* 移除底部或舊版神殿音響小窗，只保留右上五指山神殿音響按鈕觸發 */
  #temple-audio-console,
  .ta-head,
  .ta-row,
  .ta-volume{
    display:none!important;
  }

  /* 右上音響面板：點「五指山神殿音響」才展開 */
  body:not(.k20-audio-open) #music-panel{
    display:none!important;
  }
  body.k20-audio-open #music-panel{
    display:block!important;
    position:fixed!important;
    right:12px!important;
    top:154px!important;
    left:auto!important;
    bottom:auto!important;
    width:min(360px,calc(100vw - 24px))!important;
    max-height:44vh!important;
    overflow:auto!important;
    z-index:2147483600!important;
    border-radius:18px!important;
    padding:12px!important;
    background:linear-gradient(180deg,rgba(7,10,16,.98),rgba(0,0,0,.95))!important;
    border:1px solid rgba(255,215,120,.76)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.74),0 0 24px rgba(255,215,120,.18)!important;
  }

  /* 左下悟空心臟操作窗：保持在方向橫桿上方，不藏到底部 */
  body.k20-ops-open #web3-panel,
  body.k19-ops-open #web3-panel,
  body.k18-ops-open #web3-panel,
  body.k17-ops-open #web3-panel{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    right:auto!important;
    bottom:232px!important;
    width:min(440px,calc(100vw - 24px))!important;
    max-height:38vh!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:2147483500!important;
  }

  /* 右下規則/活動操作窗：高度與左下操作窗對齊，按底部規則活動才展開 */
  body:not(.k20-rules-open) #temple-modal{
    display:none!important;
  }
  body.k20-rules-open #temple-modal,
  body.k19-rules-open #temple-modal{
    display:block!important;
    position:fixed!important;
    right:12px!important;
    left:auto!important;
    top:auto!important;
    bottom:232px!important;
    width:min(460px,calc(100vw - 24px))!important;
    max-height:38vh!important;
    overflow:auto!important;
    z-index:2147483490!important;
    background:transparent!important;
    padding:0!important;
  }
  body.k20-rules-open #temple-modal > div,
  body.k19-rules-open #temple-modal > div{
    max-width:100%!important;
    margin:0!important;
    max-height:38vh!important;
    overflow:auto!important;
    border-radius:18px!important;
  }

  /* 前後左右方向盤：移到方向橫桿上方，不壓到下方8鍵 */
  #wheel-wrap{
    display:block!important;
    position:fixed!important;
    left:82px!important;
    bottom:238px!important;
    transform:none!important;
    width:128px!important;
    height:128px!important;
    z-index:2147483400!important;
    pointer-events:auto!important;
  }
  #wheel-wrap .wheel{
    width:128px!important;
    height:128px!important;
  }
  #wheel-wrap .wheel-hub{
    width:44px!important;
    height:44px!important;
    font-size:10px!important;
  }

  /* 方向橫桿保持在方向盤下方 */
  .steer-zone{
    z-index:2147483300!important;
  }

  /* 底部8鍵不遮操作窗 */
  .footer-terminal{
    z-index:2147483200!important;
  }

  @media(max-width:760px){
    body.k20-ops-open #web3-panel,
    body.k19-ops-open #web3-panel{
      left:10px!important;
      right:10px!important;
      width:auto!important;
      bottom:224px!important;
      max-height:36vh!important;
    }
    body.k20-rules-open #temple-modal,
    body.k19-rules-open #temple-modal{
      left:10px!important;
      right:10px!important;
      width:auto!important;
      bottom:224px!important;
      max-height:36vh!important;
    }
    body.k20-audio-open #music-panel{
      left:10px!important;
      right:10px!important;
      width:auto!important;
      top:142px!important;
      max-height:44vh!important;
    }
    #wheel-wrap{
      left:18px!important;
      bottom:228px!important;
      width:116px!important;
      height:116px!important;
    }
    #wheel-wrap .wheel{
      width:116px!important;
      height:116px!important;
    }
  }


/* ===== SOURCE_STYLE: kgen12345-v721-stable-repair-css ===== */

  /* V7.21 只做穩定修復：不再疊舊客服、不再打亂原本攝影/錄影功能 */
  #brand-badge{display:none!important;}
  #temple-audio-console{display:none!important;}
  body:not(.k21-audio-open) #music-panel{display:none!important;}
  body:not(.k21-ops-open) #web3-panel{display:none!important;}
  body:not(.k21-rules-open) #temple-modal{display:none!important;}

  /* 左下悟空心臟操作窗：方向橫桿上方，不能藏到底部 */
  body.k21-ops-open #web3-panel{
    display:block!important;
    position:fixed!important;
    left:12px!important;
    right:auto!important;
    bottom:258px!important;
    width:min(430px,calc(100vw - 24px))!important;
    max-height:40vh!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:2147483600!important;
    border-radius:18px!important;
    padding:12px!important;
    background:linear-gradient(180deg,rgba(5,9,15,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(255,215,120,.76)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.74),0 0 24px rgba(255,215,120,.18)!important;
  }
  #web3-panel .k21-panel-head,
  #temple-modal .k21-panel-head,
  #music-panel .k21-panel-head{
    position:sticky!important;
    top:0!important;
    z-index:5!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    padding:8px 0 10px!important;
    margin-bottom:8px!important;
    background:linear-gradient(180deg,rgba(5,9,15,.99),rgba(5,9,15,.86))!important;
    color:#ffd978!important;
    border-bottom:1px solid rgba(255,215,120,.22)!important;
    font-weight:900!important;
    font-size:13px!important;
  }
  .k21-close-btn{
    pointer-events:auto!important;
    border:1px solid rgba(255,215,120,.58)!important;
    background:rgba(255,215,120,.14)!important;
    color:#ffe39b!important;
    border-radius:11px!important;
    padding:7px 11px!important;
    font-weight:900!important;
    cursor:pointer!important;
  }

  /* 右下規則/活動窗：與左下操作窗同高度、同尺寸邏輯 */
  body.k21-rules-open #temple-modal{
    display:block!important;
    position:fixed!important;
    left:auto!important;
    right:12px!important;
    top:auto!important;
    bottom:258px!important;
    width:min(430px,calc(100vw - 24px))!important;
    max-height:40vh!important;
    overflow:auto!important;
    z-index:2147483590!important;
    background:transparent!important;
    padding:0!important;
  }
  body.k21-rules-open #temple-modal > div{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    max-height:40vh!important;
    overflow:auto!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(5,9,15,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(255,215,120,.70)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.74),0 0 24px rgba(255,215,120,.18)!important;
  }

  /* 右上神殿音響：只由右上「五指山神殿音響」按鈕展開，不在右下浮出 */
  body.k21-audio-open #music-panel{
    display:block!important;
    position:fixed!important;
    right:12px!important;
    top:154px!important;
    left:auto!important;
    bottom:auto!important;
    width:min(360px,calc(100vw - 24px))!important;
    max-height:44vh!important;
    overflow:auto!important;
    z-index:2147483610!important;
    border-radius:18px!important;
    padding:12px!important;
    background:linear-gradient(180deg,rgba(5,9,15,.98),rgba(0,0,0,.94))!important;
    border:1px solid rgba(255,215,120,.76)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.74),0 0 24px rgba(255,215,120,.18)!important;
  }

  /* 兩個圓形控制器：左下是前後左右移動；右下是旋轉多空。兩者同高度、在橫桿上方 */
  #move-joystick-wrap{
    display:block!important;
    position:fixed!important;
    left:18px!important;
    bottom:224px!important;
    right:auto!important;
    width:118px!important;
    height:118px!important;
    z-index:2147483450!important;
    pointer-events:auto!important;
  }
  #move-joystick-wrap::before{content:"MOVE"!important;}
  #move-joystick-base{inset:13px!important;}
  #move-joystick-knob{
    left:35px!important;
    top:35px!important;
    width:48px!important;
    height:48px!important;
  }

  #wheel-wrap{
    display:block!important;
    position:fixed!important;
    right:18px!important;
    left:auto!important;
    bottom:224px!important;
    transform:none!important;
    width:118px!important;
    height:118px!important;
    z-index:2147483450!important;
    pointer-events:auto!important;
  }
  #wheel-wrap::before{
    content:"方向 / 多空";
    position:absolute;
    top:-24px;
    left:50%;
    transform:translateX(-50%);
    color:#ffe39b;
    font-family:'Orbitron','Noto Sans TC',sans-serif;
    font-size:10px;
    white-space:nowrap;
    text-shadow:0 0 10px rgba(255,215,120,.35);
  }
  #wheel-wrap .wheel{
    width:118px!important;
    height:118px!important;
  }
  #wheel-wrap .wheel-hub{
    width:42px!important;
    height:42px!important;
    font-size:9px!important;
  }
  #wheel-wrap .wheel-knob{
    width:16px!important;
    height:16px!important;
  }

  .steer-zone{bottom:194px!important;z-index:2147483300!important;}
  .angle-readout{font-size:50px!important;}
  .footer-terminal{z-index:2147483200!important; padding:10px!important; gap:8px!important;}
  .footer-terminal .term-btn{pointer-events:auto!important; padding:12px 6px!important; min-height:54px!important; line-height:1.2!important;}

  /* 避免舊版導覽失控疊滿畫面 */
  #guide-modal{z-index:2147483620!important;}
  #guide-modal .guide-card{max-height:78vh!important;}
  .k21-highlight{outline:2px solid rgba(0,242,255,.48)!important; box-shadow:0 0 18px rgba(0,242,255,.25)!important;}

  @media(max-width:760px){
    body.k21-ops-open #web3-panel{
      left:10px!important;
      right:10px!important;
      width:auto!important;
      bottom:252px!important;
      max-height:40vh!important;
    }
    body.k21-rules-open #temple-modal{
      left:10px!important;
      right:10px!important;
      width:auto!important;
      bottom:252px!important;
      max-height:40vh!important;
    }
    body.k21-rules-open #temple-modal > div{max-height:40vh!important;}
    body.k21-audio-open #music-panel{
      left:10px!important;
      right:10px!important;
      top:144px!important;
      width:auto!important;
      max-height:44vh!important;
    }
    #move-joystick-wrap{left:14px!important;bottom:222px!important;width:108px!important;height:108px!important;}
    #move-joystick-knob{left:30px!important;top:30px!important;}
    #wheel-wrap{right:14px!important;bottom:222px!important;width:108px!important;height:108px!important;}
    #wheel-wrap .wheel{width:108px!important;height:108px!important;}
    .steer-zone{bottom:194px!important;}
    .footer-terminal{grid-template-columns:repeat(4,1fr)!important;}
    .footer-terminal .term-btn{font-size:11px!important;padding:10px 2px!important;}
  }


/* ===== SOURCE_STYLE: kgen12345-v7212-countdown-css ===== */

  .kgen-countdown-grid{
    margin-top:10px;
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
  }
  .kgen-countdown-card{
    border:1px solid rgba(255,215,120,.38);
    background:rgba(0,0,0,.42);
    border-radius:12px;
    padding:8px 10px;
    color:#ffe39b;
    font-size:12px;
    line-height:1.45;
  }
  .kgen-countdown-card b{ color:#66f7ff; }
  .kgen-mini-wallet-note{
    margin-top:6px;
    color:#66f7ff;
    font-size:11px;
    opacity:.95;
  }


/* ===== SOURCE_STYLE: kgen12345-v7213-human-countdown-qa-css ===== */

  #kgen-human-activity-panel{
    margin-top:10px;
    border:1px solid rgba(255,215,120,.45);
    background:linear-gradient(180deg,rgba(10,14,22,.82),rgba(0,0,0,.78));
    border-radius:14px;
    padding:10px;
    color:#ffe39b;
    font-size:12px;
    line-height:1.55;
  }
  #kgen-human-activity-panel .title{
    font-weight:900;
    color:#ffd978;
    margin-bottom:8px;
  }
  .kgen-human-row{
    display:grid;
    grid-template-columns:1fr auto;
    gap:8px;
    align-items:center;
    border-top:1px solid rgba(255,215,120,.16);
    padding:7px 0;
  }
  .kgen-human-row:first-of-type{border-top:0}
  .kgen-human-row .name{font-weight:800;color:#fff2ba}
  .kgen-human-row .desc{font-size:11px;color:#cfeff2;opacity:.95;margin-top:2px}
  .kgen-human-row .time{
    color:#66f7ff;
    font-weight:900;
    white-space:nowrap;
    text-align:right;
  }
  #kgen-question-answer-box{
    margin-top:10px;
    border:1px solid rgba(102,247,255,.35);
    background:rgba(0,20,30,.45);
    border-radius:12px;
    padding:9px;
    color:#fff;
    font-size:12px;
  }
  #kgen-question-answer-box .q{
    color:#66f7ff;
    font-weight:900;
    margin-bottom:4px;
  }
  #kgen-question-answer-box .a{
    color:#ffe39b;
    font-weight:800;
  }


/* ===== SOURCE_STYLE: kgen12345-v860-palace-style ===== */

  #kgen-v860-wallet-status{
    position:fixed; left:12px; top:56px; z-index:2147483601;
    max-width:min(520px, calc(100vw - 24px));
    padding:8px 10px; border-radius:12px;
    border:1px solid rgba(255,215,120,.55);
    background:rgba(0,0,0,.76); color:#eaffff;
    font-size:12px; line-height:1.45; box-shadow:0 0 24px rgba(255,215,120,.14);
    display:none; pointer-events:auto;
  }
  #kgen-v860-ritual-open{
    position:fixed; right:14px; bottom:154px; z-index:2147483500;
    border:1px solid rgba(255,215,120,.72); border-radius:999px;
    background:linear-gradient(135deg,rgba(255,215,120,.96),rgba(255,145,30,.92));
    color:#160b00; font-weight:1000; padding:10px 14px;
    box-shadow:0 0 26px rgba(255,215,120,.28); cursor:pointer;
  }
  #kgen-v860-ritual-modal{
    position:fixed; inset:0; z-index:2147483600; display:none;
    background:radial-gradient(circle at 50% 25%, rgba(255,215,120,.22), rgba(0,0,0,.78) 62%, rgba(0,0,0,.92));
    align-items:center; justify-content:center; padding:16px; box-sizing:border-box;
  }
  #kgen-v860-ritual-modal.v860-show{display:flex;}
  .v860-palace{
    width:min(920px, 96vw); max-height:88vh; overflow:auto;
    border-radius:24px; border:1px solid rgba(255,215,120,.62);
    background:linear-gradient(180deg,rgba(12,8,18,.96),rgba(0,0,0,.92));
    box-shadow:0 30px 88px rgba(0,0,0,.78), 0 0 46px rgba(255,215,120,.18), inset 0 0 30px rgba(0,242,255,.04);
    color:#fff; font-family:'Noto Sans TC', system-ui, sans-serif;
  }
  .v860-head{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:14px 16px; border-bottom:1px solid rgba(255,215,120,.20); position:sticky; top:0; background:rgba(10,8,16,.97); z-index:2;}
  .v860-title{color:#ffd978; font-weight:1000; letter-spacing:.08em; text-shadow:0 0 18px rgba(255,215,120,.22);}
  .v860-close,.v860-tab,.v860-btn{border-radius:12px; border:1px solid rgba(255,215,120,.36); background:rgba(0,0,0,.36); color:#fff; padding:9px 11px; font-weight:900; cursor:pointer;}
  .v860-close{color:#ffd978;}
  .v860-body{padding:14px 16px 18px;}
  .v860-tabs{display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-bottom:12px;}
  .v860-tab.v860-active{background:rgba(255,215,120,.88); color:#130b00;}
  .v860-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px;}
  .v860-card{border:1px solid rgba(255,215,120,.24); border-radius:18px; padding:12px; background:rgba(255,255,255,.045);}
  .v860-card h3{margin:0 0 8px; color:#ffd978; font-size:16px;}
  .v860-card p,.v860-card li{font-size:13px; line-height:1.68; color:#e9f5ff;}
  .v860-field{width:100%; box-sizing:border-box; border-radius:12px; border:1px solid rgba(255,215,120,.32); background:rgba(0,0,0,.36); color:#fff; padding:11px 12px; font-weight:900; outline:none; margin-top:8px;}
  .v860-zodiac{display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin-top:8px;}
  .v860-zodiac button{border-radius:12px; border:1px solid rgba(255,215,120,.28); background:rgba(0,0,0,.30); color:#fff3be; padding:8px 6px; font-weight:900; cursor:pointer;}
  .v860-zodiac button.v860-picked{background:rgba(0,242,255,.18); border-color:rgba(0,242,255,.55); color:#dffcff;}
  .v860-action{background:linear-gradient(135deg, rgba(255,215,120,.95), rgba(0,242,255,.35)); color:#110b00; border-color:rgba(255,215,120,.8);}
  .v860-log{margin-top:10px; border-radius:14px; border:1px solid rgba(0,242,255,.22); background:rgba(0,20,30,.34); color:#dffcff; padding:10px; font-size:12px; line-height:1.6; white-space:pre-wrap;}
  .v860-muted{opacity:.86; color:#cfe8ff; font-size:12px; line-height:1.6;}
  @media(max-width:720px){
    #kgen-v860-ritual-open{right:10px; bottom:138px; padding:9px 11px; font-size:12px;}
    .v860-grid{grid-template-columns:1fr;}
    .v860-tabs{grid-template-columns:1fr;}
    .v860-zodiac{grid-template-columns:repeat(2,1fr);}
  }


/* ===== SOURCE_STYLE: kgen12345-v863-wallet-sync-css ===== */

  .kgen-wallet-sync-banner{
    margin-top:8px;padding:8px 10px;border-radius:12px;
    border:1px solid rgba(0,242,255,.32);background:rgba(0,242,255,.08);
    color:#d8fbff;font-size:12px;line-height:1.45;font-weight:800;
  }
  .kgen-tx-warning{
    margin-top:8px;padding:8px 10px;border-radius:12px;
    border:1px solid rgba(255,215,120,.35);background:rgba(255,215,120,.08);
    color:#fff1c8;font-size:12px;line-height:1.45;font-weight:800;
  }


/* ===== SOURCE_STYLE: kgen12345-v873-spirit-lamp-style ===== */

  #kgen-13-spirit-record{margin-top:10px;padding:10px;border:1px solid rgba(255,215,120,.28);border-radius:12px;background:rgba(0,0,0,.28);font-size:11px;line-height:1.45;color:#ffeec8;}
  #kgen-13-spirit-record b{color:#ffd778;}
  #kgen-13-spirit-record .row{display:grid;grid-template-columns:72px 1fr;gap:6px;margin:2px 0;}
  #kgen-13-spirit-record .empty{opacity:.78;color:#d8f9ff;}
  #kgen-13-spirit-select{width:100%;margin-top:8px;background:#060606;color:#ffeec8;border:1px solid rgba(255,215,120,.35);border-radius:10px;padding:8px;font-weight:900;}
  #kgen-13-spirit-note{font-size:11px;color:#d8f9ff;opacity:.9;margin-top:6px;line-height:1.45;}


/* ===== SOURCE_STYLE: kgen12345-v874-style ===== */

  #kh-approve-current,#kh-approve-unlimited{min-height:42px;}
  #bp-approve-unlimited{background:rgba(255,215,120,.20); color:#fff0c2;}
  #kgen-v874-approve-note{margin-top:7px;font-size:11px;line-height:1.45;color:#d8f9ff;opacity:.92;}
  #kgen-v874-approve-note b{color:#ffd778;}


/* ===== SOURCE_STYLE: kgen12345-v875-style ===== */

  #kgen-v875-tools{margin:8px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  #kgen-v875-tools button{min-height:38px;border-radius:10px;border:1px solid rgba(255,215,120,.55);background:rgba(0,20,24,.78);color:#eaffff;font-weight:900;cursor:pointer;}
  #kgen-v875-allowance-line,#kgen-v875-receipt-line{font-size:11px;line-height:1.45;color:#d8f9ff;margin-top:6px;word-break:break-all;}
  #kgen-v875-allowance-line b,#kgen-v875-receipt-line b{color:#ffd778;}


/* ===== SOURCE_STYLE: kgen12345-v876-style ===== */

  #kgen-v876-service-card{position:fixed;right:18px;top:116px;z-index:310;width:min(330px,90vw);border:1px solid rgba(255,215,120,.62);border-radius:16px;background:rgba(3,8,12,.92);box-shadow:0 0 24px rgba(255,215,120,.15);padding:12px;color:#eef;font-size:12px;line-height:1.5;display:none;backdrop-filter:blur(8px)}
  #kgen-v876-service-card .svc-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;color:#ffd778;font-weight:900}
  #kgen-v876-service-card .svc-face{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#ffe89a,#9b5b00 70%,#111);box-shadow:0 0 18px rgba(255,215,120,.45);font-size:24px}
  #kgen-v876-service-card button{border:1px solid rgba(255,215,120,.5);border-radius:10px;background:rgba(255,215,120,.12);color:#ffeec8;font-weight:900;padding:7px 10px;margin-top:8px;cursor:pointer}
  .kgen-v876-minirow{font-size:11px;color:#d8fbff;line-height:1.5;margin-top:5px;word-break:break-all}
  .kgen-v876-minirow b{color:#ffd778}
  .kgen-v876-countdown{color:#7ff3ff;font-weight:900}
  #kgen-heart-live-panel .kh-actions button[data-v876-ready="1"]{outline:1px solid rgba(127,243,255,.26)}


/* ===== SOURCE_STYLE: kgen12345-v879-clean-service-style ===== */

  /* V8.7.9: 不再用全畫面客服 overlay，避免封印神殿按鍵 */
  .kgen-v879-passive-layer,
  .kgen-v879-passive-layer * { pointer-events: none !important; }

  #kgen-v879-service-card{
    position:fixed;
    right:14px;
    bottom:92px;
    z-index:99980;
    width:min(340px,92vw);
    max-height:45vh;
    overflow:auto;
    -webkit-overflow-scrolling:touch;
    display:none;
    border:1px solid rgba(255,215,120,.62);
    border-radius:16px;
    background:rgba(4,8,14,.94);
    box-shadow:0 0 26px rgba(255,215,120,.16), inset 0 0 18px rgba(0,242,255,.04);
    color:#eefaff;
    padding:12px;
    font-size:12px;
    line-height:1.55;
    pointer-events:auto;
    backdrop-filter:blur(8px);
  }
  #kgen-v879-service-card.show{display:block;}
  #kgen-v879-service-card .v879-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#ffd778;font-weight:900;margin-bottom:8px;}
  #kgen-v879-service-card .v879-title{display:flex;align-items:center;gap:8px;}
  #kgen-v879-service-card .v879-face{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:radial-gradient(circle,#fff2b0,#ac6b00 72%,#101010);box-shadow:0 0 14px rgba(255,215,120,.38);}
  #kgen-v879-service-card .v879-msg{white-space:pre-wrap;word-break:break-word;color:#eafaff;}
  #kgen-v879-service-card .v879-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
  #kgen-v879-service-card button{pointer-events:auto;border:1px solid rgba(255,215,120,.42);border-radius:10px;background:rgba(0,0,0,.32);color:#ffeec8;font-weight:900;padding:8px 10px;cursor:pointer;}
  #kgen-v879-service-card button:active{transform:scale(.98);}
  #kgen-v879-float-btn{
    position:fixed;
    right:14px;
    bottom:24px;
    z-index:99979;
    pointer-events:auto;
    border:1px solid rgba(255,215,120,.58);
    border-radius:999px;
    background:rgba(255,215,120,.92);
    color:#111;
    padding:9px 13px;
    font-weight:900;
    box-shadow:0 0 20px rgba(255,215,120,.22);
  }
  @media(max-width:720px){#kgen-v879-service-card{right:10px;left:10px;width:auto;bottom:84px;}#kgen-v879-float-btn{right:10px;bottom:18px;}}


/* ===== SOURCE_STYLE: kgen-v880-cup-ny-style ===== */

#kgen-heart-live-panel .kh-cupbox{margin-top:10px;padding:9px 10px;border:1px solid rgba(255,215,120,.28);border-radius:12px;background:rgba(255,215,120,.07);}
#kgen-heart-live-panel .kh-cup-title{display:flex;justify-content:space-between;gap:8px;align-items:center;color:#ffd778;font-weight:900;font-size:12px;}
#kgen-heart-live-panel .kh-cup-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:8px;}
#kgen-heart-live-panel .kh-cup-row button{min-height:34px;padding:8px 6px;font-size:12px;border-radius:10px;border:1px solid rgba(255,215,120,.35);background:rgba(0,0,0,.36);color:#fff;font-weight:900;}
#kgen-heart-live-panel .kh-cup-row button.done{background:linear-gradient(135deg,rgba(255,215,120,.50),rgba(0,242,255,.18));color:#ffe9a8;box-shadow:0 0 15px rgba(255,215,120,.18);}
#kgen-heart-live-panel .kh-cup-status{margin-top:7px;font-size:12px;color:#8af3ff;line-height:1.4;white-space:pre-wrap;}
#kgen-heart-live-panel .kh-ny-countdown{margin-top:8px;padding:8px 9px;border:1px solid rgba(0,242,255,.22);border-radius:11px;background:rgba(0,242,255,.06);font-size:12px;line-height:1.45;color:#d8fbff;}
#kgen-heart-live-panel .kh-ny-countdown b{color:#ffd778;}


/* ===== SOURCE_STYLE: kgen12345-v890-wallet-bridge-style ===== */

  #kgenWalletBridgeHub{position:fixed;inset:0;z-index:2147483000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.62);pointer-events:auto;}
  #kgenWalletBridgeHub .kwb-card{width:min(560px,94vw);max-height:86vh;overflow:auto;border:1px solid rgba(255,215,120,.7);border-radius:18px;background:rgba(8,10,18,.97);color:#fff;padding:14px;box-shadow:0 22px 72px rgba(0,0,0,.78);font-family:system-ui,-apple-system,BlinkMacSystemFont,'Noto Sans TC',sans-serif;}
  #kgenWalletBridgeHub .kwb-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;}
  #kgenWalletBridgeHub .kwb-title{font-weight:900;color:#ffd978;font-size:16px;}
  #kgenWalletBridgeHub button{pointer-events:auto;touch-action:manipulation;border-radius:12px;border:1px solid rgba(255,215,120,.45);background:rgba(255,215,120,.12);color:#fff;font-weight:900;padding:10px 12px;}
  #kgenWalletBridgeHub .kwb-x{min-width:44px;background:rgba(255,255,255,.08);}
  #kgenWalletBridgeHub .kwb-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
  #kgenWalletBridgeHub .kwb-primary{background:linear-gradient(180deg,#ffe28a,#d3a93b);color:#111;}
  #kgenWalletBridgeHub .kwb-url{width:100%;box-sizing:border-box;margin-top:10px;padding:10px;border-radius:10px;border:1px solid rgba(255,215,120,.35);background:#05070b;color:#9ff;font-size:12px;}
  #kgenWalletBridgeHub .kwb-note{margin-top:10px;line-height:1.55;color:#dff;border:1px solid rgba(80,220,255,.3);background:rgba(40,180,220,.08);border-radius:12px;padding:10px;font-size:12px;}


/* ===== SOURCE_STYLE: kgen-v894-hud-bsc-chain-style ===== */

  :root{
    --kgen-left-x:18px;
    --kgen-panel-w:min(390px, calc(100vw - 36px));
  }

  /* 品牌字不再封印：原本多版補丁把 #brand-badge display:none，這裡解封 */
  #brand-badge{
    display:block!important;
    position:fixed!important;
    left:18px!important;
    top:72px!important;
    z-index:150!important;
    padding:5px 12px!important;
    border:1px solid rgba(255,215,128,.55)!important;
    border-radius:12px!important;
    background:linear-gradient(90deg,rgba(0,0,0,.38),rgba(0,0,0,.12))!important;
    color:rgba(255,217,136,.96)!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    font-size:12px!important;
    text-shadow:0 0 14px rgba(255,215,128,.55),0 0 24px rgba(0,242,255,.22)!important;
    box-shadow:0 0 18px rgba(255,215,128,.10)!important;
    pointer-events:none!important;
    white-space:nowrap!important;
  }
  #brand-badge::after{
    content:'｜Where the Market Becomes the Myth';
    color:rgba(0,242,255,.72);
    margin-left:8px;
    font-size:10px;
    letter-spacing:.04em;
  }

  /* 左上 Heart 收合/展開：與下方窗同寬，並下移，不壓品牌 */
  #kgen-heart-toggle{
    left:var(--kgen-left-x)!important;
    top:108px!important;
    width:var(--kgen-panel-w)!important;
    height:38px!important;
    padding:0 14px!important;
    border-radius:14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    text-align:left!important;
    z-index:2147482600!important;
    box-sizing:border-box!important;
    background:linear-gradient(90deg,rgba(12,14,20,.92),rgba(0,0,0,.72))!important;
    border:1px solid rgba(255,215,120,.65)!important;
    color:#ffd778!important;
    font-size:14px!important;
    font-weight:950!important;
    box-shadow:0 0 18px rgba(255,215,120,.16)!important;
  }
  #kgen-heart-toggle::after{
    content:'展開 / 收合';
    font-size:12px;
    color:rgba(255,255,255,.82);
    font-weight:800;
  }
  #kgen-heart-live-panel{
    left:var(--kgen-left-x)!important;
    top:154px!important;
    width:var(--kgen-panel-w)!important;
    z-index:2147482500!important;
  }

  /* 左上重複訊息與長錯誤不再佔據品牌區：只留右側訊息中心 */
  .kgen-left-toast,
  #top-status,
  #status-line,
  #kgenStatusLine,
  #kgenTopMessage,
  #kgenLiveToast,
  .kgen-debug-status{
    display:none!important;
  }

  /* 右上訊息 / Toast 小型化：不遮右側按鈕，只作 HUD 跑馬燈 */
  #kgenToastWrap{
    right:12px!important;
    top:612px!important;
    width:280px!important;
    max-width:calc(100vw - 24px)!important;
    pointer-events:none!important;
    z-index:2147482400!important;
  }
  #kgenToastWrap .kgen-toast{
    width:100%!important;
    min-height:28px!important;
    max-height:58px!important;
    overflow:hidden!important;
    padding:7px 10px!important;
    border-radius:10px!important;
    font-size:11px!important;
    line-height:1.35!important;
    opacity:.92!important;
    background:rgba(0,0,0,.78)!important;
    box-shadow:0 0 16px rgba(0,242,255,.12)!important;
  }
  #kgenMsgCenterBtn{
    width:280px!important;
    max-width:90%!important;
    min-width:0!important;
    min-height:38px!important;
    height:38px!important;
    padding:0 12px!important;
    border-radius:10px!important;
    box-sizing:border-box!important;
  }
  #kgenMsgPanel{
    z-index:2147483001!important;
  }

  /* 目前鏈提示膠囊 */
  #kgenBscGuardPill{
    position:fixed;
    left:18px;
    top:42px;
    z-index:2147482601;
    min-width:168px;
    max-width:calc(100vw - 36px);
    height:26px;
    padding:0 10px;
    border-radius:999px;
    border:1px solid rgba(0,242,255,.45);
    background:rgba(0,0,0,.72);
    color:#bffcff;
    display:flex;
    align-items:center;
    gap:6px;
    font-size:11px;
    font-weight:900;
    pointer-events:none;
    box-shadow:0 0 16px rgba(0,242,255,.14);
  }
  #kgenBscGuardPill.ok{border-color:rgba(0,255,153,.5);color:#d8ffef;}
  #kgenBscGuardPill.bad{border-color:rgba(255,77,77,.62);color:#ffd9d9;}
  #kgenBscGuardPill.warn{border-color:rgba(255,204,0,.6);color:#fff2b8;}

  @media(max-width:720px){
    :root{--kgen-left-x:10px;--kgen-panel-w:calc(100vw - 20px);}
    #brand-badge{left:10px!important;top:70px!important;max-width:calc(100vw - 20px);overflow:hidden;text-overflow:ellipsis;}
    #brand-badge::after{display:none;}
    #kgen-heart-toggle{left:10px!important;top:104px!important;width:calc(100vw - 20px)!important;}
    #kgen-heart-live-panel{left:10px!important;right:10px!important;top:148px!important;width:auto!important;max-height:60vh!important;}
    #kgenBscGuardPill{left:10px;top:40px;}
    #kgenToastWrap{right:10px!important;top:602px!important;width:260px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v895-ascii-wallet-hud-clean-style ===== */

  /* ===== 左上清場：不再顯示重複訊息，只保留品牌與 Heart toggle ===== */
  #kgenToastWrap{display:none!important;visibility:hidden!important;pointer-events:none!important;}
  .kgen-toast{display:none!important;}
  .kgen-left-toast,#top-status,#status-line,#kgenStatusLine,#kgenTopMessage,#kgenLiveToast,.kgen-debug-status,
  [id*="TopMessage"],[id*="LiveToast"],[class*="debug-status"]{display:none!important;visibility:hidden!important;}

  /* ===== 品牌字恢復，不被 Heart toggle 壓住 ===== */
  #brand-badge{
    display:block!important;position:fixed!important;left:14px!important;top:62px!important;z-index:2147482300!important;
    max-width:min(560px,calc(100vw - 28px))!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
    padding:4px 10px!important;border-radius:10px!important;border:1px solid rgba(255,215,120,.45)!important;
    background:rgba(0,0,0,.36)!important;color:rgba(255,222,145,.95)!important;font-weight:950!important;font-size:12px!important;
    text-shadow:0 0 14px rgba(255,215,120,.55)!important;pointer-events:none!important;
  }
  #brand-badge::after{content:' 花果山台灣';color:rgba(0,242,255,.72);margin-left:6px;}

  /* ===== Heart 展開/收合對齊左下操作窗，避免壓品牌 ===== */
  #kgen-heart-toggle{
    left:14px!important;top:94px!important;width:min(390px,calc(100vw - 28px))!important;height:38px!important;
    z-index:2147482400!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
    padding:0 14px!important;border-radius:14px!important;background:rgba(0,0,0,.78)!important;border:1px solid rgba(255,215,120,.62)!important;
    color:#ffd778!important;font-weight:950!important;font-size:14px!important;box-shadow:0 0 18px rgba(255,215,120,.15)!important;
  }
  #kgen-heart-toggle::after{content:'展開 / 收合';font-size:12px;color:rgba(255,255,255,.82);}
  #kgen-heart-live-panel{top:140px!important;left:14px!important;width:min(390px,calc(100vw - 28px))!important;z-index:2147482350!important;}

  /* ===== 右側訊息中心：跟右側選單同款，不蓋按鈕 ===== */
  #kgenMsgCenterBtn{
    position:fixed!important;right:18px!important;top:560px!important;width:225px!important;max-width:calc(100vw - 36px)!important;
    height:38px!important;min-width:0!important;padding:0 12px!important;border-radius:10px!important;
    background:linear-gradient(180deg,rgba(10,70,72,.88),rgba(5,34,36,.88))!important;
    border:1px solid rgba(0,242,255,.38)!important;color:#e8ffff!important;font-size:13px!important;font-weight:950!important;
    box-shadow:0 0 14px rgba(0,242,255,.14)!important;z-index:2147482450!important;pointer-events:auto!important;
  }
  #kgenMsgPanel{right:18px!important;top:606px!important;z-index:2147483100!important;max-height:min(420px,calc(100vh - 620px))!important;}
  @media(max-width:720px){
    #brand-badge{left:10px!important;top:58px!important;max-width:calc(100vw - 20px)!important;font-size:11px!important;}
    #kgen-heart-toggle{left:10px!important;top:88px!important;width:calc(100vw - 20px)!important;}
    #kgen-heart-live-panel{left:10px!important;right:10px!important;top:132px!important;width:auto!important;max-height:60vh!important;}
    #kgenMsgCenterBtn{right:10px!important;top:540px!important;width:190px!important;height:36px!important;font-size:12px!important;}
    #kgenMsgPanel{right:10px!important;top:584px!important;max-height:360px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v896-hud-wallet-image-sync-style ===== */

  :root{
    --kgen-right-x:18px;
    --kgen-nav-w:280px;
    --kgen-left-x:18px;
    --kgen-left-w:280px;
  }

  /* 右上導覽列統一寬度 */
  #universe-nav{right:var(--kgen-right-x)!important;align-items:flex-end!important;z-index:220!important;}
  #universe-nav .nav-btn{width:var(--kgen-nav-w)!important;max-width:var(--kgen-nav-w)!important;box-sizing:border-box!important;}

  /* 訊息紀錄：在五指山神殿音響下面，和上方按鈕對齊 */
  #kgenMsgCenterBtn{
    position:fixed!important;
    right:var(--kgen-right-x)!important;
    top:575px!important;
    width:var(--kgen-nav-w)!important;
    max-width:var(--kgen-nav-w)!important;
    min-width:var(--kgen-nav-w)!important;
    height:38px!important;
    padding:0 14px!important;
    border-radius:10px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:6px!important;
    z-index:2147482500!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    box-sizing:border-box!important;
    pointer-events:auto!important;
  }
  #kgenMsgCenterBtn .kgen-msg-badge{margin-left:4px!important;flex:0 0 auto!important;}
  #kgenMsgPanel{
    position:fixed!important;
    right:var(--kgen-right-x)!important;
    top:620px!important;
    width:var(--kgen-nav-w)!important;
    max-width:var(--kgen-nav-w)!important;
    max-height:min(380px,calc(100vh - 640px))!important;
    box-sizing:border-box!important;
    z-index:2147482501!important;
  }

  /* 左上重複浮動訊息全部退場，只保留 Heart toggle / Heart panel / message center */
  #kgenToastWrap,
  #toast,
  #status,
  #top-status,
  #status-line,
  #kgenStatusLine,
  #kgenTopMessage,
  #kgenLiveToast,
  .kgen-left-toast,
  .kgen-debug-status,
  [id*="TopMessage"],
  [id*="LiveToast"],
  [class*="debug-status"]{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* 12345 Heart 展開/收合：和左上視窗對齊，下移，不擋品牌字 */
  #kgen-heart-toggle{
    position:fixed!important;
    left:var(--kgen-left-x)!important;
    top:78px!important;
    width:var(--kgen-left-w)!important;
    height:36px!important;
    border-radius:999px!important;
    z-index:260!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    box-sizing:border-box!important;
    white-space:nowrap!important;
    pointer-events:auto!important;
  }
  #kgen-heart-live-panel{
    position:fixed!important;
    left:var(--kgen-left-x)!important;
    top:122px!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    max-height:calc(100vh - 188px)!important;
    overflow:auto!important;
    z-index:250!important;
    box-sizing:border-box!important;
  }

  /* 左下操作窗與其他小窗避免互壓 */
  #web3-panel,
  .wallet-panel,
  .kgen-wallet-panel{
    max-width:var(--kgen-left-w)!important;
    box-sizing:border-box!important;
  }

  /* 中央主圖永遠可見，不被舊層蓋成黑洞 */
  #core-window{overflow:hidden!important;background:radial-gradient(circle,rgba(255,210,100,.22),rgba(0,0,0,.15) 58%,rgba(0,0,0,.55))!important;}
  #fairy-img{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    position:relative!important;
    z-index:2!important;
    pointer-events:none!important;
  }
  #wish-label{z-index:4!important;position:absolute!important;}

  /* 手機窄版：右側按鈕維持同寬，避免訊息變短 */
  @media(max-width:720px){
    :root{--kgen-right-x:12px;--kgen-nav-w:190px;--kgen-left-x:12px;--kgen-left-w:255px;}
    #kgenMsgCenterBtn{top:575px!important;height:36px!important;font-size:12px!important;}
    #kgenMsgPanel{top:616px!important;max-height:330px!important;}
    #kgen-heart-toggle{top:74px!important;}
    #kgen-heart-live-panel{top:116px!important;max-height:calc(100vh - 184px)!important;}
  }


/* ===== SOURCE_STYLE: kgen-v898-unified-heart-camera-style ===== */

:root{
  --kgen-left-x:18px;
  --kgen-left-w:min(410px, calc(100vw - 36px));
  --kgen-heart-toggle-top:70px;
  --kgen-bars-top:118px;
  --kgen-heart-panel-top:214px;
}

/* 左上：品牌 + Heart 展開收合，合併成同一顆正式 HUD 長按鈕 */
#kgen-heart-toggle{
  position:fixed!important;
  left:var(--kgen-left-x)!important;
  top:var(--kgen-heart-toggle-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  min-height:42px!important;
  height:auto!important;
  padding:8px 14px!important;
  box-sizing:border-box!important;
  border-radius:16px!important;
  border:1px solid rgba(255,215,120,.62)!important;
  background:linear-gradient(180deg, rgba(18,16,10,.92), rgba(0,0,0,.78))!important;
  color:#ffd778!important;
  font-weight:950!important;
  font-size:13px!important;
  line-height:1.25!important;
  letter-spacing:.35px!important;
  text-align:left!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  z-index:100650!important;
  box-shadow:0 0 22px rgba(255,215,120,.18), inset 0 0 16px rgba(0,242,255,.045)!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  pointer-events:auto!important;
}
#kgen-heart-toggle .kgen-heart-title{
  display:block!important;
  font-size:14px!important;
  color:#ffe39a!important;
  text-shadow:0 0 8px rgba(255,215,120,.36)!important;
}
#kgen-heart-toggle .kgen-heart-sub{
  display:block!important;
  margin-top:2px!important;
  font-size:11px!important;
  color:#8ff7ff!important;
  font-weight:900!important;
  opacity:.95!important;
}
#kgen-heart-toggle .kgen-heart-state{
  flex:0 0 auto!important;
  border:1px solid rgba(255,215,120,.38)!important;
  border-radius:999px!important;
  padding:5px 9px!important;
  color:#fff2be!important;
  background:rgba(255,215,120,.08)!important;
  font-size:12px!important;
}

/* 避免上方品牌或版本 debug 壓住新長按鈕，但保留主標題背景可見 */
#brand-badge,
.kgen-left-toast,
.kgen-debug-status,
#kgenTopMessage,
#kgenLiveToast,
[id*="TopMessage"],
[id*="LiveToast"],
[class*="debug-status"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.hud-top .brand-section{z-index:42!important; pointer-events:none!important;}
.hud-top .brand-name{opacity:.62!important; text-shadow:0 0 12px rgba(255,215,120,.28)!important;}
.hud-top #ver-st,.hud-top #sys-clock{opacity:.78!important;}

/* 左側資源條與 Heart 操作窗同寬、往下排列，不互相壓住 */
.resource-bars{
  position:fixed!important;
  left:var(--kgen-left-x)!important;
  top:var(--kgen-bars-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  z-index:100520!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  pointer-events:none!important;
}
.resource-bars .rb{
  display:block!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  background:rgba(5,8,15,.78)!important;
  border:1px solid rgba(255,215,120,.42)!important;
  border-radius:12px!important;
  padding:7px 10px!important;
}
.resource-bars .bar{
  display:block!important;
  height:9px!important;
  margin-top:7px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  overflow:hidden!important;
}
.resource-bars .fill{
  display:block!important;
  min-width:5px!important;
  height:100%!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(0,242,255,.85),rgba(255,215,120,.88))!important;
  box-shadow:0 0 12px rgba(0,242,255,.35)!important;
}

#kgen-heart-live-panel{
  position:fixed!important;
  left:var(--kgen-left-x)!important;
  top:var(--kgen-heart-panel-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  max-height:calc(100vh - 290px)!important;
  overflow:auto!important;
  z-index:100500!important;
  box-sizing:border-box!important;
}
#kgen-heart-live-panel .kh-title{
  font-size:16px!important;
  line-height:1.35!important;
  color:#ffe49b!important;
  text-shadow:0 0 8px rgba(255,215,120,.32)!important;
}
#kgen-heart-live-panel .kh-grid{
  font-size:13px!important;
  grid-template-columns:118px 1fr!important;
}
#kgen-heart-live-panel button{font-size:13px!important;}

/* 下方前鏡 / 後鏡是多空鏡頭，確保可點且不被遮罩吃掉 */
.footer-terminal .term-btn{pointer-events:auto!important; position:relative!important; z-index:100200!important;}
.footer-terminal .term-btn[data-kgen-camera="front"],
.footer-terminal .term-btn[data-kgen-camera="back"]{
  border-color:rgba(0,242,255,.45)!important;
  box-shadow:inset 0 0 14px rgba(0,242,255,.05)!important;
}

/* 相機小提示 */
#kgenCameraToast{
  position:fixed;left:50%;bottom:92px;transform:translateX(-50%);
  width:min(520px,calc(100vw - 24px));z-index:2147482600;
  border:1px solid rgba(0,242,255,.42);border-radius:16px;
  background:rgba(0,0,0,.88);color:#dff;padding:11px 14px;
  font-size:13px;font-weight:900;line-height:1.55;text-align:center;
  box-shadow:0 0 24px rgba(0,242,255,.18);pointer-events:none;display:none;
}

@media(max-width:720px){
  :root{
    --kgen-left-x:10px;
    --kgen-left-w:min(380px, calc(100vw - 20px));
    --kgen-heart-toggle-top:74px;
    --kgen-bars-top:124px;
    --kgen-heart-panel-top:218px;
  }
  #kgen-heart-toggle{font-size:12px!important;min-height:44px!important;}
  #kgen-heart-toggle .kgen-heart-title{font-size:13px!important;}
  #kgen-heart-toggle .kgen-heart-sub{font-size:10px!important;}
  #kgen-heart-live-panel{max-height:calc(100vh - 300px)!important;}
}


/* ===== SOURCE_STYLE: kgen-v899-panel-cup-camera-ny-style ===== */

:root{
  --kgen-left-x:18px;
  --kgen-left-w:min(420px, 36vw, calc(100vw - 36px));
  --kgen-heart-toggle-top:72px;
  --kgen-bars-top:126px;
  --kgen-heart-panel-top:222px;
}

#kgen-heart-toggle{
  left:var(--kgen-left-x)!important;
  top:var(--kgen-heart-toggle-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  min-height:46px!important;
  padding:9px 15px!important;
  z-index:2147481200!important;
}
#kgen-heart-toggle .kgen-heart-title{font-size:15px!important;line-height:1.22!important;}
#kgen-heart-toggle .kgen-heart-sub{font-size:11px!important;line-height:1.25!important;}

.resource-bars{
  left:var(--kgen-left-x)!important;
  top:var(--kgen-bars-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  grid-template-columns:1fr!important;
  z-index:2147481050!important;
  gap:7px!important;
  pointer-events:none!important;
}
.resource-bars .rb{min-height:40px!important;padding:6px 9px!important;box-sizing:border-box!important;}
.resource-bars .rb .row{font-size:12px!important;line-height:1.2!important;}
.resource-bars .rb .bar{display:block!important;height:8px!important;opacity:1!important;visibility:visible!important;}
.resource-bars .rb .fill{display:block!important;min-width:5px!important;height:100%!important;opacity:1!important;visibility:visible!important;}

#kgen-heart-live-panel{
  left:var(--kgen-left-x)!important;
  top:var(--kgen-heart-panel-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  max-height:calc(100vh - 282px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  padding-bottom:78px!important;
  scrollbar-width:thin!important;
  z-index:2147481000!important;
}
#kgen-heart-live-panel .kh-title{font-size:17px!important;line-height:1.32!important;}
#kgen-heart-live-panel .kh-grid{grid-template-columns:124px 1fr!important;font-size:13px!important;}
#kgen-heart-live-panel .kh-log{max-height:88px!important;overflow:auto!important;}
#kgen-heart-live-panel .kh-ny-countdown,
#kh-ny-countdown,
.kh-ny-countdown{
  min-height:48px!important;
  font-variant-numeric:tabular-nums!important;
  transition:none!important;
  animation:none!important;
  will-change:auto!important;
}
#kgen-heart-live-panel *{animation-duration:0s!important;}
#kgen-heart-live-panel button{touch-action:manipulation!important;}
#kgen-heart-live-panel .kh-cup-row button.done,
#kgen-heart-live-panel .kh-cup-row button.kgen-cup-ok{
  background:linear-gradient(135deg,rgba(255,215,120,.58),rgba(0,242,255,.20))!important;
  color:#fff1b8!important;
  box-shadow:0 0 16px rgba(255,215,120,.20)!important;
}

#kgenCameraPanelV899{
  position:fixed;
  left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(620px,calc(100vw - 26px));
  max-height:min(74vh,680px);
  overflow:auto;
  z-index:2147483005;
  border:1px solid rgba(255,215,120,.52);
  border-radius:22px;
  background:rgba(4,5,10,.96);
  color:#fff;
  box-shadow:0 0 60px rgba(0,0,0,.72),0 0 28px rgba(255,215,120,.18);
  padding:16px;
  pointer-events:auto;
  backdrop-filter:blur(10px);
}
#kgenCameraPanelV899.kgen-hidden{display:none!important;}
.kgen-cam-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:10px;margin-bottom:12px;color:#ffd778;font-weight:950;}
.kgen-cam-close{border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;padding:7px 12px;font-weight:900;cursor:pointer;}
.kgen-cam-visual{height:220px;border-radius:18px;border:1px solid rgba(0,242,255,.24);background:radial-gradient(circle at 50% 45%, rgba(255,215,120,.36), rgba(0,242,255,.12) 34%, rgba(0,0,0,.74) 70%);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:12px;}
.kgen-cam-orb{width:150px;height:150px;border-radius:999px;border:2px solid rgba(255,215,120,.75);box-shadow:0 0 36px rgba(255,215,120,.34), inset 0 0 35px rgba(0,242,255,.12);display:flex;align-items:center;justify-content:center;font-size:54px;background:rgba(0,0,0,.38);}
.kgen-cam-body{font-size:14px;line-height:1.75;color:rgba(255,255,255,.9);}
.kgen-cam-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;}
.kgen-cam-actions button{border:1px solid rgba(255,215,120,.35);border-radius:12px;background:rgba(255,215,120,.09);color:#fff;font-weight:900;padding:11px;cursor:pointer;}

@media(max-width:720px) and (orientation:landscape){
  :root{--kgen-left-x:10px;--kgen-left-w:min(345px, calc(52vw));--kgen-heart-toggle-top:72px;--kgen-bars-top:126px;--kgen-heart-panel-top:222px;}
  #kgen-heart-live-panel{max-height:calc(100vh - 292px)!important;padding-bottom:96px!important;}
  #kgen-heart-toggle .kgen-heart-title{font-size:13px!important;}
  #kgen-heart-toggle .kgen-heart-sub{font-size:10.5px!important;}
}
@media(max-width:720px) and (orientation:portrait){
  :root{--kgen-left-x:10px;--kgen-left-w:calc(100vw - 20px);--kgen-heart-toggle-top:76px;--kgen-bars-top:130px;--kgen-heart-panel-top:226px;}
  #kgen-heart-live-panel{max-height:calc(100vh - 300px)!important;}
}


/* ===== SOURCE_STYLE: kgen-v900-camera-core-merge-style ===== */

:root{
  --kgen-left-x:18px;
  --kgen-left-w:min(410px, 34vw, calc(100vw - 36px));
  --kgen-heart-toggle-top:96px;
  --kgen-bars-top:154px;
  --kgen-heart-panel-top:248px;
}

/* 左上整組下移，讓背景 K線西遊記・花果山台灣品牌字正常透出 */
#kgen-heart-toggle{
  top:var(--kgen-heart-toggle-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  min-height:46px!important;
  padding:9px 14px!important;
  z-index:100650!important;
}
#kgen-heart-toggle .kgen-heart-title{font-size:15px!important;line-height:1.15!important;}
#kgen-heart-toggle .kgen-heart-sub{font-size:11.5px!important;line-height:1.15!important;}

.resource-bars{
  top:var(--kgen-bars-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  box-sizing:border-box!important;
}
.resource-bars .rb{min-height:42px!important;}
.resource-bars .bar{height:8px!important;}

#kgen-heart-live-panel{
  top:var(--kgen-heart-panel-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  max-height:calc(100vh - var(--kgen-heart-panel-top) - 104px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-bottom:260px!important; /* 底部空白，可一路滑上來看完整內容 */
  box-sizing:border-box!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable both-edges;
}
#kgen-heart-live-panel::after{
  content:"";
  display:block;
  height:260px;
  min-height:260px;
  pointer-events:none;
}
#kgen-heart-live-panel .kh-grid{grid-template-columns:112px 1fr!important;}
#kgen-heart-live-panel .kh-v{word-break:break-word!important;overflow-wrap:anywhere!important;}

/* 跨年倒數：固定文字，不做閃爍、不做透明動畫 */
#kh-ny-slot,#kh-ny-countdown,.kh-ny-countdown,#cd-1231,
#kgen-heart-live-panel [id*="ny"],#kgen-heart-live-panel [id*="NY"],
#kgen-heart-live-panel [class*="ny"],#kgen-heart-live-panel [class*="NY"],
#kgen-heart-live-panel [id*="1231"],#kgen-heart-live-panel [class*="1231"]{
  animation:none!important;
  transition:none!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}

/* 關閉 V8.9.x 的彈窗式假鏡頭；V9 改用中央核心圓窗實鏡頭 */
#kgenCameraPanelV899,#kgenCameraToast{display:none!important;visibility:hidden!important;pointer-events:none!important;}
#cam-view{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:cover!important;opacity:0;z-index:30!important;transition:opacity .22s ease!important;
}
#fairy-img{transition:opacity .22s ease!important;}
#mini-thumb{
  position:absolute!important;right:26px!important;top:26px!important;width:96px!important;height:96px!important;
  border-radius:999px!important;border:2px solid rgba(255,215,120,.75)!important;
  background:rgba(0,0,0,.45) center/cover no-repeat!important;z-index:60!important;display:none;
  box-shadow:0 0 24px rgba(255,215,120,.32)!important;
}
body.kgen-camera-on #core-window{box-shadow:0 0 95px rgba(0,242,255,.26),0 0 65px rgba(255,215,120,.18)!important;}
body.kgen-camera-front #wish-label::after{content:"｜前鏡多方";}
body.kgen-camera-back #wish-label::after{content:"｜後鏡空方";}
.footer-terminal .term-btn[data-kgen-camera="front"],
.footer-terminal .term-btn[data-kgen-camera="back"]{border-color:rgba(0,242,255,.55)!important;}

@media(max-width:720px) and (orientation:landscape){
  :root{
    --kgen-left-x:10px;
    --kgen-left-w:min(285px, 43vw);
    --kgen-heart-toggle-top:90px;
    --kgen-bars-top:146px;
    --kgen-heart-panel-top:238px;
  }
  #kgen-heart-toggle{min-height:44px!important;padding:7px 10px!important;}
  #kgen-heart-toggle .kgen-heart-title{font-size:13px!important;}
  #kgen-heart-toggle .kgen-heart-sub{font-size:10px!important;}
  #kgen-heart-live-panel{max-height:calc(100vh - 250px)!important;padding-bottom:240px!important;}
  #kgen-heart-live-panel::after{height:240px!important;min-height:240px!important;}
  .resource-bars .rb{min-height:36px!important;padding:5px 8px!important;}
  .resource-bars .rb .row{font-size:10px!important;}
}
@media(max-width:720px) and (orientation:portrait){
  :root{
    --kgen-left-x:10px;
    --kgen-left-w:calc(100vw - 20px);
    --kgen-heart-toggle-top:104px;
    --kgen-bars-top:162px;
    --kgen-heart-panel-top:256px;
  }
  #kgen-heart-live-panel{max-height:calc(100vh - 360px)!important;padding-bottom:280px!important;}
  #kgen-heart-live-panel::after{height:280px!important;min-height:280px!important;}
}


/* ===== SOURCE_STYLE: kgen-v902-message-recorder-countdown-style ===== */

  :root{ --kgen-left-top-safe: 96px; }
  #kgen-heart-toggle{
    top: var(--kgen-left-top-safe) !important;
    width: min(420px, calc(48vw - 18px)) !important;
    min-width: 330px !important;
    box-sizing:border-box !important;
    justify-content:space-between !important;
    white-space:nowrap !important;
  }
  #kgen-heart-live-panel{
    top: calc(var(--kgen-left-top-safe) + 44px) !important;
    width: min(420px, calc(48vw - 18px)) !important;
    max-height: calc(100vh - 184px) !important;
    padding-bottom: 190px !important;
    overscroll-behavior: contain;
  }
  #kgen-heart-live-panel::after{
    content:"";
    display:block;
    height:150px;
    flex:0 0 auto;
  }
  #kgen-heart-live-panel .kh-grid{
    grid-template-columns: 82px minmax(0,1fr) !important;
    align-items:start !important;
  }
  #kgen-heart-live-panel .kh-v,
  #kgen-heart-live-panel .kh-k,
  #kh-ny-slot,
  #human-cd-1231,
  #cd-1231{
    font-variant-numeric: tabular-nums !important;
  }
  #kh-ny-slot{
    display:block !important;
    min-height: 34px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    overflow:hidden !important;
  }
  .kgen-countdown-card,
  .kgen-human-row .time{
    min-height: 22px !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    animation:none !important;
    transition:none !important;
  }
  #kgen-v902-left-status{
    position:fixed;
    left:18px;
    top:52px;
    width:min(420px, calc(48vw - 18px));
    min-width:330px;
    z-index:100506;
    border:1px solid rgba(0,242,255,.32);
    border-radius:12px;
    background:rgba(0,0,0,.70);
    color:#d8fbff;
    font-size:12px;
    font-weight:900;
    line-height:1.35;
    padding:7px 10px;
    box-shadow:0 0 18px rgba(0,242,255,.10);
    pointer-events:none;
    box-sizing:border-box;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  #kgen-v902-rec-panel{
    position:fixed;
    left:50%; top:50%; transform:translate(-50%,-50%);
    width:min(520px, calc(100vw - 28px));
    z-index:2147483100;
    border:1px solid rgba(255,215,120,.45);
    border-radius:20px;
    background:rgba(4,6,12,.96);
    color:#fff;
    box-shadow:0 0 60px rgba(0,0,0,.7);
    padding:16px;
    display:none;
  }
  #kgen-v902-rec-panel.active{display:block;}
  #kgen-v902-rec-panel .rec-title{color:#ffd778;font-weight:950;font-size:18px;margin-bottom:8px;}
  #kgen-v902-rec-panel .rec-body{font-size:13px;line-height:1.75;color:#e9f7ff;}
  #kgen-v902-rec-panel .rec-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;}
  #kgen-v902-rec-panel button{border:1px solid rgba(255,215,120,.34);border-radius:12px;background:rgba(255,215,120,.12);color:#fff;font-weight:900;padding:11px;}
  #kgen-v902-rec-panel button.gold{background:linear-gradient(135deg,#ffdf86,#b98222);color:#111;}
  @media(max-width:720px){
    :root{ --kgen-left-top-safe: 98px; }
    #kgen-v902-left-status{left:10px;top:55px;width:calc(100vw - 20px);min-width:0;}
    #kgen-heart-toggle{left:10px!important;top:96px!important;width:calc(100vw - 20px)!important;min-width:0!important;}
    #kgen-heart-live-panel{left:10px!important;right:auto!important;top:142px!important;width:calc(100vw - 20px)!important;max-height:calc(100vh - 220px)!important;}
  }


/* ===== SOURCE_STYLE: kgen-v904-ga-cup-countdown-style ===== */

  :root{
    --kgen-left-x:18px;
    --kgen-left-w:min(430px, calc(48vw - 24px));
    --kgen-message-top:76px;
    --kgen-heart-toggle-top:124px;
    --kgen-bars-top:172px;
    --kgen-heart-panel-top:292px;
  }
  /* 讓頂部品牌字與系統列呼吸，不再被左上控制台壓住 */
  #kgen-v902-left-status{
    top:var(--kgen-message-top)!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    height:32px!important;
    line-height:16px!important;
    overflow:hidden!important;
    white-space:normal!important;
  }
  #kgen-heart-toggle{
    top:var(--kgen-heart-toggle-top)!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
  }
  #brand-badge{
    top:58px!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    pointer-events:none!important;
    opacity:.88!important;
  }
  .resource-bars{
    top:var(--kgen-bars-top)!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
  }
  #kgen-heart-live-panel{
    top:var(--kgen-heart-panel-top)!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    max-height:calc(100vh - var(--kgen-heart-panel-top) - 126px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:160px!important;
  }
  #bet-live-panel.bet-live-panel{
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    max-height:calc(100vh - 368px)!important;
    padding-bottom:180px!important;
  }
  /* GA Evolution 轉移到右下曲速縱桿上方，不再卡在上方資訊區 */
  .ga-matrix{
    left:auto!important;
    right:92px!important;
    top:auto!important;
    bottom:705px!important;
    width:178px!important;
    transform:none!important;
    z-index:135!important;
    opacity:.96!important;
  }
  /* 三聖盃新版顯示 */
  .v904-cup-result{display:block;margin-top:4px;font-size:11px;color:#7ff3ff;line-height:1.35;min-height:28px;}
  .v714-cup.done{background:linear-gradient(135deg,rgba(255,215,120,.42),rgba(0,242,255,.16))!important;color:#ffe9a8!important;}
  .v714-cup.fail{background:rgba(255,70,70,.13)!important;border-color:rgba(255,120,120,.45)!important;color:#ffd0d0!important;}
  #v714-cup-status,#kh-cup-status{font-variant-numeric:tabular-nums;line-height:1.45;min-height:34px;}
  #kh-ny-slot{font-variant-numeric:tabular-nums;white-space:nowrap!important;}
  #kh-ny-countdown{font-variant-numeric:tabular-nums;min-height:42px!important;line-height:1.45!important;}
  @media(max-width:760px){
    :root{
      --kgen-left-x:12px;
      --kgen-left-w:min(330px, calc(50vw - 18px));
      --kgen-message-top:78px;
      --kgen-heart-toggle-top:126px;
      --kgen-bars-top:174px;
      --kgen-heart-panel-top:298px;
    }
    #kgen-v902-left-status{font-size:10px!important;height:30px!important;}
    #kgen-heart-live-panel{max-height:calc(100vh - 360px)!important;}
    #bet-live-panel.bet-live-panel{max-height:48vh!important;}
    .ga-matrix{right:82px!important;bottom:590px!important;width:150px!important;padding:10px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v906-reset-stable-style ===== */

  /* 左上整組下移，避免蓋住品牌背景字；保留原視覺，不再硬塞版面 */
  #kgen-heart-toggle{ top:94px !important; left:18px !important; width:min(430px,44vw) !important; max-width:44vw !important; z-index:84 !important; }
  #kgen-heart-live-panel{ top:188px !important; left:18px !important; width:min(430px,44vw) !important; max-width:44vw !important; max-height:calc(100vh - 330px) !important; overflow-y:auto !important; padding-bottom:180px !important; z-index:86 !important; }
  #kgen-heart-live-panel .bp-scroll-spacer{height:180px !important; flex:0 0 180px !important;}
  #kgen-heart-live-panel *{ box-sizing:border-box; }
  #kgen-heart-live-panel .v714-events, #kgen-heart-live-panel .v714-cupbox{ position:relative !important; }
  /* 暗物質/質量條跟左上同寬，不碰 GA 和右側區塊 */
  .hud-left, .resource-bars, .top-resource, #top-resource-panel, #kgen-resource-panel{ max-width:44vw !important; }
  /* GA 固定右下曲速桿左側，往下，不再卡在中上 */
  .ga-matrix{ position:fixed !important; right:112px !important; top:auto !important; bottom:310px !important; left:auto !important; width:185px !important; z-index:62 !important; }
  /* 跨年倒數固定一行高度，避免每秒跳行造成畫面斗動 */
  #kh-ny-slot,#v714-ny-count,#kgen-ny-countdown,.kgen-ny-countdown,.ny-countdown,.v714-ny-line{ display:block !important; min-height:18px !important; line-height:18px !important; white-space:nowrap !important; overflow:hidden !important; text-overflow:ellipsis !important; animation:none !important; transition:none !important; }
  .v714-cup-row{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:8px !important;}
  .v714-cup{min-height:38px !important;border:1px solid rgba(255,215,120,.55) !important;border-radius:9px !important;background:rgba(0,0,0,.42) !important;color:#fff6c8 !important;font-weight:900 !important;}
  .v714-cup.kgen-cup-ok{background:linear-gradient(180deg,rgba(0,210,160,.45),rgba(0,50,40,.45)) !important;color:#9fffe3 !important;border-color:#7fffe8 !important;}
  .v714-cup.kgen-cup-no{background:linear-gradient(180deg,rgba(160,40,40,.36),rgba(30,0,0,.4)) !important;color:#ffd0d0 !important;border-color:#ff7777 !important;}
  #kgen-v906-rec-float{position:fixed;left:50%;top:58%;transform:translate(-50%,-50%);z-index:9999;background:rgba(0,0,0,.82);border:1px solid rgba(255,215,120,.75);box-shadow:0 0 28px rgba(255,215,120,.25);color:#fff;border-radius:16px;padding:18px;width:min(520px,88vw);font-weight:900;display:none;text-align:center;}
  #kgen-v906-rec-float button{margin-top:12px;padding:12px 18px;border-radius:10px;border:1px solid rgba(255,215,120,.7);background:#e6c56b;color:#111;font-weight:900;}
  @media(max-width:720px){
    #kgen-heart-toggle{top:92px !important;left:14px !important;width:calc(48vw - 8px) !important;max-width:48vw !important;}
    #kgen-heart-live-panel{top:195px !important;left:14px !important;width:calc(48vw - 8px) !important;max-width:48vw !important;max-height:calc(100vh - 345px) !important;padding-bottom:220px !important;}
    .ga-matrix{right:82px !important;bottom:330px !important;width:168px !important;transform:none !important;}
  }


/* ===== SOURCE_STYLE: kgen-v907-ui-rec-heart-cup-ga-style ===== */

  :root{
    --kgen-v907-left-x:18px;
    --kgen-v907-left-w:min(440px,44vw);
    --kgen-v907-msg-top:72px;
    --kgen-v907-toggle-top:126px;
    --kgen-v907-bars-top:174px;
    --kgen-v907-panel-top:260px;
  }
  #brand-badge{top:var(--kgen-v907-msg-top)!important;left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;z-index:2147482500!important;pointer-events:auto!important;}
  #kgen-heart-toggle{top:var(--kgen-v907-toggle-top)!important;left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;min-width:0!important;z-index:2147482600!important;}
  .resource-bars{top:var(--kgen-v907-bars-top)!important;left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;z-index:2147482400!important;}
  .hud-left,.top-resource,#top-resource-panel,#kgen-resource-panel{left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;}
  #kgen-heart-live-panel{top:var(--kgen-v907-panel-top)!important;left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;max-height:calc(100vh - var(--kgen-v907-panel-top) - 94px)!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding-bottom:320px!important;z-index:2147482700!important;}
  #kgen-heart-live-panel::after{content:""!important;display:block!important;height:320px!important;min-height:320px!important;}
  #kgen-heart-live-panel *{box-sizing:border-box!important;}
  #kgen-heart-live-panel:focus-within,#kgen-heart-live-panel.kgen-v907-top{z-index:2147483000!important;}
  .ga-matrix{position:fixed!important;left:auto!important;right:96px!important;top:auto!important;bottom:350px!important;width:182px!important;z-index:120!important;transform:none!important;}
  #kh-ny-slot,#v714-ny-count,#kgen-ny-countdown,.kgen-ny-countdown,.ny-countdown,.v714-ny-line,#kgen-heart-live-panel [id*="ny"],#kgen-heart-live-panel [class*="ny"],#kgen-heart-live-panel [id*="1231"],#kgen-heart-live-panel [class*="1231"]{font-variant-numeric:tabular-nums!important;animation:none!important;transition:none!important;white-space:nowrap!important;line-height:18px!important;min-height:18px!important;max-height:38px!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  #kgen-v907-rec-float{position:fixed;left:50%;top:58%;transform:translate(-50%,-50%);z-index:2147483100;background:rgba(0,0,0,.88);border:1px solid rgba(255,215,120,.8);box-shadow:0 0 32px rgba(255,215,120,.28);color:#fff;border-radius:16px;padding:18px;width:min(520px,88vw);font-weight:900;display:none;text-align:center;}
  #kgen-v907-rec-float button{margin:12px 6px 0;padding:12px 18px;border-radius:10px;border:1px solid rgba(255,215,120,.7);background:#e6c56b;color:#111;font-weight:900;}
  .v907-cup-ok{background:linear-gradient(180deg,rgba(0,210,160,.45),rgba(0,50,40,.45))!important;color:#9fffe3!important;border-color:#7fffe8!important;}
  .v907-cup-no{background:linear-gradient(180deg,rgba(160,40,40,.36),rgba(30,0,0,.4))!important;color:#ffd0d0!important;border-color:#ff7777!important;}
  @media(max-width:720px){
    :root{--kgen-v907-left-x:12px;--kgen-v907-left-w:calc(48vw - 6px);--kgen-v907-msg-top:74px;--kgen-v907-toggle-top:124px;--kgen-v907-bars-top:172px;--kgen-v907-panel-top:262px;}
    #kgen-heart-toggle .kgen-heart-title{font-size:12px!important;}
    #kgen-heart-toggle .kgen-heart-sub{font-size:9.5px!important;}
    #kgen-heart-live-panel{max-height:calc(100vh - 362px)!important;padding-bottom:360px!important;}
    #kgen-heart-live-panel::after{height:360px!important;min-height:360px!important;}
    .ga-matrix{right:76px!important;bottom:378px!important;width:160px!important;padding:10px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v908-real-ui-toggle-layout-style ===== */

  :root{
    --kgen-v908-left-x:18px;
    --kgen-v908-left-w:min(440px,44vw);
    --kgen-v908-msg-top:94px;
    --kgen-v908-toggle-top:148px;
    --kgen-v908-bars-top:192px;
    --kgen-v908-panel-top:322px;
  }
  #brand-badge{
    top:var(--kgen-v908-msg-top)!important;
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
    z-index:2147482500!important;
    pointer-events:auto!important;
  }
  #kgen-heart-toggle{
    top:var(--kgen-v908-toggle-top)!important;
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
    min-width:0!important;
    z-index:2147482600!important;
  }
  .resource-bars{
    top:var(--kgen-v908-bars-top)!important;
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
    z-index:2147482400!important;
  }
  .hud-left,.top-resource,#top-resource-panel,#kgen-resource-panel{
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
  }
  #kgen-heart-live-panel{
    top:var(--kgen-v908-panel-top)!important;
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
    max-height:calc(100vh - var(--kgen-v908-panel-top) - 84px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:340px!important;
    z-index:2147482700!important;
    box-sizing:border-box!important;
  }
  #kgen-heart-live-panel::after{content:""!important;display:block!important;height:340px!important;min-height:340px!important;}
  #kgen-heart-live-panel.kgen-v908-open,
  #kgen-heart-live-panel:focus-within{z-index:2147483200!important;}

  /* GA Evolution: moved upward. It stays near the right warp lever, not buried at bottom. */
  .ga-matrix{
    position:fixed!important;
    left:auto!important;
    right:96px!important;
    top:auto!important;
    bottom:455px!important;
    width:182px!important;
    max-width:182px!important;
    transform:none!important;
    z-index:145!important;
    opacity:.97!important;
  }

  #kh-ny-slot,#v714-ny-count,#kgen-ny-countdown,.kgen-ny-countdown,.ny-countdown,.v714-ny-line,
  #kgen-heart-live-panel [id*="ny"],#kgen-heart-live-panel [class*="ny"],
  #kgen-heart-live-panel [id*="1231"],#kgen-heart-live-panel [class*="1231"]{
    font-variant-numeric:tabular-nums!important;
    animation:none!important;
    transition:none!important;
    white-space:nowrap!important;
    line-height:18px!important;
    min-height:18px!important;
    max-height:38px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  #kgen-v908-rec-float{
    position:fixed;left:50%;top:56%;transform:translate(-50%,-50%);
    z-index:2147483300;background:rgba(0,0,0,.9);border:1px solid rgba(255,215,120,.8);
    box-shadow:0 0 32px rgba(255,215,120,.3);color:#fff;border-radius:16px;padding:18px;
    width:min(520px,88vw);font-weight:900;display:none;text-align:center;
  }
  #kgen-v908-rec-float button{margin:12px 6px 0;padding:12px 18px;border-radius:10px;border:1px solid rgba(255,215,120,.7);background:#e6c56b;color:#111;font-weight:900;}
  .v908-cup-ok{background:linear-gradient(180deg,rgba(0,210,160,.45),rgba(0,50,40,.45))!important;color:#9fffe3!important;border-color:#7fffe8!important;}
  .v908-cup-no{background:linear-gradient(180deg,rgba(160,40,40,.36),rgba(30,0,0,.4))!important;color:#ffd0d0!important;border-color:#ff7777!important;}
  @media(max-width:720px){
    :root{--kgen-v908-left-x:12px;--kgen-v908-left-w:calc(48vw - 6px);--kgen-v908-msg-top:88px;--kgen-v908-toggle-top:138px;--kgen-v908-bars-top:180px;--kgen-v908-panel-top:308px;}
    #kgen-heart-toggle .kgen-heart-title{font-size:12px!important;}
    #kgen-heart-toggle .kgen-heart-sub{font-size:9.5px!important;}
    #kgen-heart-live-panel{max-height:calc(100vh - 392px)!important;padding-bottom:380px!important;}
    #kgen-heart-live-panel::after{height:380px!important;min-height:380px!important;}
    .ga-matrix{right:76px!important;bottom:445px!important;width:160px!important;padding:10px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v909-real-layout-toggle-ga-style ===== */

  :root{
    --kgen-v909-left-x:18px;
    --kgen-v909-left-w:min(462px,46vw);
    --kgen-v909-status-top:92px;
    --kgen-v909-toggle-top:140px;
    --kgen-v909-bars-top:180px;
    --kgen-v909-panel-top:332px;
  }

  /* 左上四區：訊息、控制台、暗物質、質量，統一寬度並往下排 */
  #kgen-v902-live-status,
  #kgen-v902-message-strip,
  #kgen-live-status,
  #kgen-msg-strip,
  #kgen-status-strip,
  .kgen-live-status,
  .left-message,
  .hud-message,
  #toast{
    position:fixed !important;
    top:var(--kgen-v909-status-top) !important;
    left:var(--kgen-v909-left-x) !important;
    width:var(--kgen-v909-left-w) !important;
    max-width:var(--kgen-v909-left-w) !important;
    box-sizing:border-box !important;
    z-index:2147482500 !important;
  }

  #kgen-heart-toggle{
    position:fixed !important;
    top:var(--kgen-v909-toggle-top) !important;
    left:var(--kgen-v909-left-x) !important;
    width:var(--kgen-v909-left-w) !important;
    max-width:var(--kgen-v909-left-w) !important;
    min-height:34px !important;
    box-sizing:border-box !important;
    z-index:2147482600 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    pointer-events:auto !important;
  }

  .resource-bars{
    position:fixed !important;
    top:var(--kgen-v909-bars-top) !important;
    left:var(--kgen-v909-left-x) !important;
    width:var(--kgen-v909-left-w) !important;
    max-width:var(--kgen-v909-left-w) !important;
    box-sizing:border-box !important;
    z-index:2147482400 !important;
    pointer-events:auto !important;
  }
  .resource-bars .rb{width:100% !important; max-width:100% !important; box-sizing:border-box !important;}

  #kgen-heart-live-panel{
    position:fixed !important;
    top:var(--kgen-v909-panel-top) !important;
    left:var(--kgen-v909-left-x) !important;
    width:var(--kgen-v909-left-w) !important;
    max-width:var(--kgen-v909-left-w) !important;
    max-height:calc(100vh - var(--kgen-v909-panel-top) - 86px) !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
    box-sizing:border-box !important;
    z-index:2147482700 !important;
    pointer-events:auto !important;
    padding-bottom:120px !important;
  }
  body.k12345-heart-collapsed #kgen-heart-live-panel,
  #kgen-heart-live-panel.kgen-v909-hidden{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
  body:not(.k12345-heart-collapsed) #kgen-heart-live-panel,
  #kgen-heart-live-panel.kgen-v909-open{
    display:block !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  body.k12345-heart-collapsed #kgen-heart-toggle::after{content:'展開' !important; margin-left:auto;}
  body:not(.k12345-heart-collapsed) #kgen-heart-toggle::after{content:'收合' !important; margin-left:auto;}

  /* 展開時一定壓在最上面，不被圖表、心臟圖或訊息蓋住 */
  body:not(.k12345-heart-collapsed) #kgen-heart-live-panel{
    z-index:2147483000 !important;
  }

  /* GA Evolution：往上移，避開右下曲速桿與規則框 */
  .ga-matrix{
    position:fixed !important;
    right:118px !important;
    left:auto !important;
    bottom:410px !important;
    top:auto !important;
    width:210px !important;
    max-width:210px !important;
    transform:none !important;
    z-index:2147481200 !important;
    box-sizing:border-box !important;
  }

  #kgen-v909-rec-float{
    position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);
    width:min(520px,86vw);z-index:2147483600;background:rgba(0,0,0,.90);
    border:1px solid rgba(255,215,120,.7);border-radius:14px;padding:18px;color:#fff;
    box-shadow:0 0 24px rgba(255,215,120,.22);text-align:center;font-weight:900;
  }
  #kgen-v909-rec-float button{margin:12px 6px 0;padding:10px 16px;border-radius:10px;border:1px solid rgba(255,215,120,.7);background:#e9ca72;color:#111;font-weight:900;}

  @media(max-width:720px){
    :root{
      --kgen-v909-left-x:10px;
      --kgen-v909-left-w:min(470px,47vw);
      --kgen-v909-status-top:94px;
      --kgen-v909-toggle-top:140px;
      --kgen-v909-bars-top:180px;
      --kgen-v909-panel-top:330px;
    }
    .ga-matrix{right:76px !important; bottom:360px !important; width:188px !important; max-width:188px !important;}
  }


/* ===== SOURCE_STYLE: kgen-v891-toast-message-center-style ===== */

/* ===== V8.9.1：右上訊息中心與 Toast ===== */
#kgenMsgCenterBtn{
  position:static;
  width:280px;
  max-width:90%;
  min-width:220px;
  min-height:40px;
  padding:10px 14px;
  border-radius:10px;
  border:1px solid rgba(0,242,255,.35);
  background:rgba(0,242,255,.14);
  color:#fff;
  font-weight:900;
  font-size:13px;
  letter-spacing:.5px;
  box-shadow:0 0 18px rgba(255,215,120,.18);
  cursor:pointer;
  pointer-events:auto;
  user-select:none;
}

#kgenMsgCenterBtn .kgen-msg-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:18px;
  height:18px;
  margin-left:6px;
  padding:0 5px;
  border-radius:999px;
  background:#00f2ff;
  color:#001014;
  font-size:11px;
  font-weight:950;
}

#kgenMsgPanel{
  position:fixed;
  right:18px;
  top:568px;
  width:min(340px, calc(100vw - 36px));
  max-height:min(360px, calc(100vh - 590px));
  overflow:auto;
  z-index:2147483001;
  border:1px solid rgba(255,215,120,.35);
  border-radius:18px;
  background:rgba(3,4,8,.96);
  color:#fff;
  box-shadow:0 0 40px rgba(0,0,0,.65);
  padding:12px;
  pointer-events:auto;
  backdrop-filter:blur(10px);
}

#kgenMsgPanel.kgen-hidden{display:none;}

.kgen-msg-panel-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding-bottom:10px;
  margin-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.12);
  color:#ffd778;
  font-weight:950;
}

.kgen-msg-panel-actions{
  display:flex;
  gap:6px;
}

.kgen-msg-panel-actions button{
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  padding:5px 9px;
  font-weight:800;
  font-size:12px;
  cursor:pointer;
}

#kgenMsgList{
  display:flex;
  flex-direction:column;
  gap:8px;
}

.kgen-msg-item{
  border:1px solid rgba(255,255,255,.10);
  border-left:4px solid #ffd778;
  border-radius:12px;
  background:rgba(255,255,255,.045);
  padding:9px 10px;
  font-size:12px;
  line-height:1.48;
  word-break:break-word;
}

.kgen-msg-item.success{border-left-color:#00ff99;}
.kgen-msg-item.error{border-left-color:#ff4d4d;}
.kgen-msg-item.warn{border-left-color:#ffcc00;}
.kgen-msg-item.info{border-left-color:#00f2ff;}

.kgen-msg-time{
  color:#00f2ff;
  font-size:11px;
  margin-bottom:4px;
  opacity:.95;
}

#kgenToastWrap{
  position:fixed;
  right:14px;
  top:154px;
  z-index:2147483002;
  display:flex;
  flex-direction:column;
  gap:9px;
  pointer-events:none;
}

.kgen-toast{
  width:min(340px, calc(100vw - 28px));
  padding:11px 13px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  border-left:4px solid #ffd778;
  background:rgba(0,0,0,.92);
  color:#fff;
  font-size:12px;
  line-height:1.45;
  font-weight:800;
  box-shadow:0 0 28px rgba(0,0,0,.58);
  animation:kgenToastIn .22s ease-out;
  pointer-events:none;
}

.kgen-toast.success{border-left-color:#00ff99;}
.kgen-toast.error{border-left-color:#ff4d4d;}
.kgen-toast.warn{border-left-color:#ffcc00;}
.kgen-toast.info{border-left-color:#00f2ff;}

@keyframes kgenToastIn{
  from{transform:translateX(34px);opacity:0;}
  to{transform:translateX(0);opacity:1;}
}

/* ===== V8.9.1：客服層永遠可點，避免被 HUD 吃事件 ===== */
.customer-guide,
.customer-guide *,
.guide-panel,
.guide-panel *,
#customerGuide,
#customerGuide *,
#guidePanel,
#guidePanel *,
[id*="guide"],
[id*="Guide"],
[class*="guide"],
[class*="Guide"]{
  pointer-events:auto !important;
}

/* 常見客服/教學面板提高層級 */
.customer-guide,
.guide-panel,
#customerGuide,
#guidePanel,
[id*="guidePanel"],
[class*="guide-panel"]{
  z-index:2147482500 !important;
}

/* 手機高度不足時，訊息面板稍微上提 */
@media(max-width:560px){
  #kgenMsgCenterBtn{
    width:280px;
    max-width:90%;
    min-width:220px;
    min-height:40px;
    font-size:12px;
  }
  #kgenMsgPanel{
    right:18px;
    top:568px;
    width:min(340px, calc(100vw - 36px));
    max-height:min(340px, calc(100vh - 590px));
  }
  #kgenToastWrap{
    right:10px;
    top:138px;
  }
}


/* ===== SOURCE_STYLE: kgen-v892-full-button-service-style ===== */

#kgenV892ServiceModal{position:fixed;inset:0;display:none;z-index:2147483100;background:rgba(0,0,0,.66);align-items:center;justify-content:center;padding:14px;pointer-events:auto;}
#kgenV892ServiceModal.show{display:flex;}
#kgenV892ServiceCard{width:min(720px,calc(100vw - 28px));max-height:min(82vh,780px);overflow:auto;border:1px solid rgba(255,215,120,.5);border-radius:22px;background:rgba(4,5,10,.97);box-shadow:0 0 70px rgba(0,0,0,.78),0 0 26px rgba(255,215,120,.16);color:#fff;pointer-events:auto;}
.kgen-v892-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid rgba(255,215,120,.18);position:sticky;top:0;background:rgba(4,5,10,.98);z-index:2;}
.kgen-v892-title{font-weight:950;color:#ffd778;font-size:17px;line-height:1.35;}
.kgen-v892-close{border:1px solid rgba(255,255,255,.2);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;padding:7px 12px;font-weight:900;cursor:pointer;}
.kgen-v892-body{padding:16px;display:grid;gap:12px;}
.kgen-v892-box{border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.045);padding:12px;line-height:1.8;font-size:14px;}
.kgen-v892-box b{color:#ffd778;}
.kgen-v892-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px;}
.kgen-v892-actions button{min-height:46px;border:1px solid rgba(255,215,120,.36);border-radius:12px;background:rgba(0,0,0,.58);color:#fff;font-weight:900;cursor:pointer;pointer-events:auto;}
.kgen-v892-actions button.primary{background:linear-gradient(180deg,#f4d77c,#bd8f35);color:#1a1204;}
.kgen-v892-actions button.danger{border-color:rgba(255,90,90,.45);background:rgba(120,20,20,.45);}
#kgenV892QuickDock{position:fixed;left:10px;bottom:86px;z-index:2147482500;display:flex;gap:6px;flex-wrap:wrap;max-width:min(420px,calc(100vw - 20px));pointer-events:none;}
#kgenV892QuickDock button{pointer-events:auto;border:1px solid rgba(255,215,120,.38);border-radius:999px;background:rgba(0,0,0,.72);color:#ffd778;font-weight:900;font-size:12px;padding:7px 10px;box-shadow:0 0 14px rgba(0,0,0,.38);}
@media(max-width:560px){.kgen-v892-actions{grid-template-columns:1fr;}#kgenV892QuickDock{bottom:74px}.kgen-v892-title{font-size:15px}}


/* ===== SOURCE_STYLE: kgen-v894-hud-bsc-chain-style ===== */

  :root{
    --kgen-left-x:18px;
    --kgen-panel-w:min(390px, calc(100vw - 36px));
  }

  /* 品牌字不再封印：原本多版補丁把 #brand-badge display:none，這裡解封 */
  #brand-badge{
    display:block!important;
    position:fixed!important;
    left:18px!important;
    top:72px!important;
    z-index:150!important;
    padding:5px 12px!important;
    border:1px solid rgba(255,215,128,.55)!important;
    border-radius:12px!important;
    background:linear-gradient(90deg,rgba(0,0,0,.38),rgba(0,0,0,.12))!important;
    color:rgba(255,217,136,.96)!important;
    font-weight:950!important;
    letter-spacing:.08em!important;
    font-size:12px!important;
    text-shadow:0 0 14px rgba(255,215,128,.55),0 0 24px rgba(0,242,255,.22)!important;
    box-shadow:0 0 18px rgba(255,215,128,.10)!important;
    pointer-events:none!important;
    white-space:nowrap!important;
  }
  #brand-badge::after{
    content:'｜Where the Market Becomes the Myth';
    color:rgba(0,242,255,.72);
    margin-left:8px;
    font-size:10px;
    letter-spacing:.04em;
  }

  /* 左上 Heart 收合/展開：與下方窗同寬，並下移，不壓品牌 */
  #kgen-heart-toggle{
    left:var(--kgen-left-x)!important;
    top:108px!important;
    width:var(--kgen-panel-w)!important;
    height:38px!important;
    padding:0 14px!important;
    border-radius:14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    text-align:left!important;
    z-index:2147482600!important;
    box-sizing:border-box!important;
    background:linear-gradient(90deg,rgba(12,14,20,.92),rgba(0,0,0,.72))!important;
    border:1px solid rgba(255,215,120,.65)!important;
    color:#ffd778!important;
    font-size:14px!important;
    font-weight:950!important;
    box-shadow:0 0 18px rgba(255,215,120,.16)!important;
  }
  #kgen-heart-toggle::after{
    content:'展開 / 收合';
    font-size:12px;
    color:rgba(255,255,255,.82);
    font-weight:800;
  }
  #kgen-heart-live-panel{
    left:var(--kgen-left-x)!important;
    top:154px!important;
    width:var(--kgen-panel-w)!important;
    z-index:2147482500!important;
  }

  /* 左上重複訊息與長錯誤不再佔據品牌區：只留右側訊息中心 */
  .kgen-left-toast,
  #top-status,
  #status-line,
  #kgenStatusLine,
  #kgenTopMessage,
  #kgenLiveToast,
  .kgen-debug-status{
    display:none!important;
  }

  /* 右上訊息 / Toast 小型化：不遮右側按鈕，只作 HUD 跑馬燈 */
  #kgenToastWrap{
    right:12px!important;
    top:612px!important;
    width:280px!important;
    max-width:calc(100vw - 24px)!important;
    pointer-events:none!important;
    z-index:2147482400!important;
  }
  #kgenToastWrap .kgen-toast{
    width:100%!important;
    min-height:28px!important;
    max-height:58px!important;
    overflow:hidden!important;
    padding:7px 10px!important;
    border-radius:10px!important;
    font-size:11px!important;
    line-height:1.35!important;
    opacity:.92!important;
    background:rgba(0,0,0,.78)!important;
    box-shadow:0 0 16px rgba(0,242,255,.12)!important;
  }
  #kgenMsgCenterBtn{
    width:280px!important;
    max-width:90%!important;
    min-width:0!important;
    min-height:38px!important;
    height:38px!important;
    padding:0 12px!important;
    border-radius:10px!important;
    box-sizing:border-box!important;
  }
  #kgenMsgPanel{
    z-index:2147483001!important;
  }

  /* 目前鏈提示膠囊 */
  #kgenBscGuardPill{
    position:fixed;
    left:18px;
    top:42px;
    z-index:2147482601;
    min-width:168px;
    max-width:calc(100vw - 36px);
    height:26px;
    padding:0 10px;
    border-radius:999px;
    border:1px solid rgba(0,242,255,.45);
    background:rgba(0,0,0,.72);
    color:#bffcff;
    display:flex;
    align-items:center;
    gap:6px;
    font-size:11px;
    font-weight:900;
    pointer-events:none;
    box-shadow:0 0 16px rgba(0,242,255,.14);
  }
  #kgenBscGuardPill.ok{border-color:rgba(0,255,153,.5);color:#d8ffef;}
  #kgenBscGuardPill.bad{border-color:rgba(255,77,77,.62);color:#ffd9d9;}
  #kgenBscGuardPill.warn{border-color:rgba(255,204,0,.6);color:#fff2b8;}

  @media(max-width:720px){
    :root{--kgen-left-x:10px;--kgen-panel-w:calc(100vw - 20px);}
    #brand-badge{left:10px!important;top:70px!important;max-width:calc(100vw - 20px);overflow:hidden;text-overflow:ellipsis;}
    #brand-badge::after{display:none;}
    #kgen-heart-toggle{left:10px!important;top:104px!important;width:calc(100vw - 20px)!important;}
    #kgen-heart-live-panel{left:10px!important;right:10px!important;top:148px!important;width:auto!important;max-height:60vh!important;}
    #kgenBscGuardPill{left:10px;top:40px;}
    #kgenToastWrap{right:10px!important;top:602px!important;width:260px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v895-ascii-wallet-hud-clean-style ===== */

  /* ===== 左上清場：不再顯示重複訊息，只保留品牌與 Heart toggle ===== */
  #kgenToastWrap{display:none!important;visibility:hidden!important;pointer-events:none!important;}
  .kgen-toast{display:none!important;}
  .kgen-left-toast,#top-status,#status-line,#kgenStatusLine,#kgenTopMessage,#kgenLiveToast,.kgen-debug-status,
  [id*="TopMessage"],[id*="LiveToast"],[class*="debug-status"]{display:none!important;visibility:hidden!important;}

  /* ===== 品牌字恢復，不被 Heart toggle 壓住 ===== */
  #brand-badge{
    display:block!important;position:fixed!important;left:14px!important;top:62px!important;z-index:2147482300!important;
    max-width:min(560px,calc(100vw - 28px))!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
    padding:4px 10px!important;border-radius:10px!important;border:1px solid rgba(255,215,120,.45)!important;
    background:rgba(0,0,0,.36)!important;color:rgba(255,222,145,.95)!important;font-weight:950!important;font-size:12px!important;
    text-shadow:0 0 14px rgba(255,215,120,.55)!important;pointer-events:none!important;
  }
  #brand-badge::after{content:' 花果山台灣';color:rgba(0,242,255,.72);margin-left:6px;}

  /* ===== Heart 展開/收合對齊左下操作窗，避免壓品牌 ===== */
  #kgen-heart-toggle{
    left:14px!important;top:94px!important;width:min(390px,calc(100vw - 28px))!important;height:38px!important;
    z-index:2147482400!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
    padding:0 14px!important;border-radius:14px!important;background:rgba(0,0,0,.78)!important;border:1px solid rgba(255,215,120,.62)!important;
    color:#ffd778!important;font-weight:950!important;font-size:14px!important;box-shadow:0 0 18px rgba(255,215,120,.15)!important;
  }
  #kgen-heart-toggle::after{content:'展開 / 收合';font-size:12px;color:rgba(255,255,255,.82);}
  #kgen-heart-live-panel{top:140px!important;left:14px!important;width:min(390px,calc(100vw - 28px))!important;z-index:2147482350!important;}

  /* ===== 右側訊息中心：跟右側選單同款，不蓋按鈕 ===== */
  #kgenMsgCenterBtn{
    position:fixed!important;right:18px!important;top:560px!important;width:225px!important;max-width:calc(100vw - 36px)!important;
    height:38px!important;min-width:0!important;padding:0 12px!important;border-radius:10px!important;
    background:linear-gradient(180deg,rgba(10,70,72,.88),rgba(5,34,36,.88))!important;
    border:1px solid rgba(0,242,255,.38)!important;color:#e8ffff!important;font-size:13px!important;font-weight:950!important;
    box-shadow:0 0 14px rgba(0,242,255,.14)!important;z-index:2147482450!important;pointer-events:auto!important;
  }
  #kgenMsgPanel{right:18px!important;top:606px!important;z-index:2147483100!important;max-height:min(420px,calc(100vh - 620px))!important;}
  @media(max-width:720px){
    #brand-badge{left:10px!important;top:58px!important;max-width:calc(100vw - 20px)!important;font-size:11px!important;}
    #kgen-heart-toggle{left:10px!important;top:88px!important;width:calc(100vw - 20px)!important;}
    #kgen-heart-live-panel{left:10px!important;right:10px!important;top:132px!important;width:auto!important;max-height:60vh!important;}
    #kgenMsgCenterBtn{right:10px!important;top:540px!important;width:190px!important;height:36px!important;font-size:12px!important;}
    #kgenMsgPanel{right:10px!important;top:584px!important;max-height:360px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v896-hud-wallet-image-sync-style ===== */

  :root{
    --kgen-right-x:18px;
    --kgen-nav-w:280px;
    --kgen-left-x:18px;
    --kgen-left-w:280px;
  }

  /* 右上導覽列統一寬度 */
  #universe-nav{right:var(--kgen-right-x)!important;align-items:flex-end!important;z-index:220!important;}
  #universe-nav .nav-btn{width:var(--kgen-nav-w)!important;max-width:var(--kgen-nav-w)!important;box-sizing:border-box!important;}

  /* 訊息紀錄：在五指山神殿音響下面，和上方按鈕對齊 */
  #kgenMsgCenterBtn{
    position:fixed!important;
    right:var(--kgen-right-x)!important;
    top:575px!important;
    width:var(--kgen-nav-w)!important;
    max-width:var(--kgen-nav-w)!important;
    min-width:var(--kgen-nav-w)!important;
    height:38px!important;
    padding:0 14px!important;
    border-radius:10px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:6px!important;
    z-index:2147482500!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    box-sizing:border-box!important;
    pointer-events:auto!important;
  }
  #kgenMsgCenterBtn .kgen-msg-badge{margin-left:4px!important;flex:0 0 auto!important;}
  #kgenMsgPanel{
    position:fixed!important;
    right:var(--kgen-right-x)!important;
    top:620px!important;
    width:var(--kgen-nav-w)!important;
    max-width:var(--kgen-nav-w)!important;
    max-height:min(380px,calc(100vh - 640px))!important;
    box-sizing:border-box!important;
    z-index:2147482501!important;
  }

  /* 左上重複浮動訊息全部退場，只保留 Heart toggle / Heart panel / message center */
  #kgenToastWrap,
  #toast,
  #status,
  #top-status,
  #status-line,
  #kgenStatusLine,
  #kgenTopMessage,
  #kgenLiveToast,
  .kgen-left-toast,
  .kgen-debug-status,
  [id*="TopMessage"],
  [id*="LiveToast"],
  [class*="debug-status"]{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  /* 12345 Heart 展開/收合：和左上視窗對齊，下移，不擋品牌字 */
  #kgen-heart-toggle{
    position:fixed!important;
    left:var(--kgen-left-x)!important;
    top:78px!important;
    width:var(--kgen-left-w)!important;
    height:36px!important;
    border-radius:999px!important;
    z-index:260!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    box-sizing:border-box!important;
    white-space:nowrap!important;
    pointer-events:auto!important;
  }
  #kgen-heart-live-panel{
    position:fixed!important;
    left:var(--kgen-left-x)!important;
    top:122px!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    max-height:calc(100vh - 188px)!important;
    overflow:auto!important;
    z-index:250!important;
    box-sizing:border-box!important;
  }

  /* 左下操作窗與其他小窗避免互壓 */
  #web3-panel,
  .wallet-panel,
  .kgen-wallet-panel{
    max-width:var(--kgen-left-w)!important;
    box-sizing:border-box!important;
  }

  /* 中央主圖永遠可見，不被舊層蓋成黑洞 */
  #core-window{overflow:hidden!important;background:radial-gradient(circle,rgba(255,210,100,.22),rgba(0,0,0,.15) 58%,rgba(0,0,0,.55))!important;}
  #fairy-img{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    position:relative!important;
    z-index:2!important;
    pointer-events:none!important;
  }
  #wish-label{z-index:4!important;position:absolute!important;}

  /* 手機窄版：右側按鈕維持同寬，避免訊息變短 */
  @media(max-width:720px){
    :root{--kgen-right-x:12px;--kgen-nav-w:190px;--kgen-left-x:12px;--kgen-left-w:255px;}
    #kgenMsgCenterBtn{top:575px!important;height:36px!important;font-size:12px!important;}
    #kgenMsgPanel{top:616px!important;max-height:330px!important;}
    #kgen-heart-toggle{top:74px!important;}
    #kgen-heart-live-panel{top:116px!important;max-height:calc(100vh - 184px)!important;}
  }


/* ===== SOURCE_STYLE: kgen-v897-hud-wallet-layout-realconnect-style ===== */

  :root{
    --kgen-left-x:18px;
    --kgen-left-w:300px;
    --kgen-right-x:18px;
    --kgen-nav-w:280px;
  }

  /* 右側導覽列與訊息按鈕：全部交給 nav flex 管理，不再 fixed 疊在畫面上 */
  #universe-nav{
    right:var(--kgen-right-x)!important;
    top:125px!important;
    width:var(--kgen-nav-w)!important;
    align-items:stretch!important;
    gap:10px!important;
    z-index:240!important;
  }
  #universe-nav .nav-btn,
  #universe-nav #kgenMsgCenterBtn{
    position:relative!important;
    inset:auto!important;
    right:auto!important;
    top:auto!important;
    left:auto!important;
    bottom:auto!important;
    width:var(--kgen-nav-w)!important;
    max-width:var(--kgen-nav-w)!important;
    min-width:var(--kgen-nav-w)!important;
    height:40px!important;
    min-height:40px!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0 14px!important;
    border-radius:10px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    pointer-events:auto!important;
  }
  #universe-nav #kgenMsgCenterBtn{
    order:999!important;
    border:1px solid rgba(0,242,255,.35)!important;
    background:rgba(0,242,255,.14)!important;
    color:#fff!important;
    box-shadow:0 0 18px rgba(0,242,255,.16)!important;
  }
  #kgenMsgCenterBtn .kgen-msg-badge{flex:0 0 auto!important;margin-left:6px!important;}
  #kgenMsgPanel{
    right:var(--kgen-right-x)!important;
    top:calc(125px + 10px * 10 + 40px * 10)!important;
    width:var(--kgen-nav-w)!important;
    max-width:var(--kgen-nav-w)!important;
    max-height:min(360px,calc(100vh - 620px))!important;
    box-sizing:border-box!important;
    z-index:2147483001!important;
  }

  /* 左上重新排版：品牌 → Heart 展開鈕 → 資源條 → Heart 面板 */
  #brand-badge{
    display:block!important;
    position:fixed!important;
    left:var(--kgen-left-x)!important;
    top:62px!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    box-sizing:border-box!important;
    z-index:245!important;
    padding:5px 10px!important;
    border:1px solid rgba(255,215,128,.55)!important;
    border-radius:10px!important;
    background:linear-gradient(90deg,rgba(0,0,0,.50),rgba(0,0,0,.16))!important;
    color:rgba(255,217,136,.98)!important;
    font-weight:950!important;
    font-size:12px!important;
    letter-spacing:.055em!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    pointer-events:none!important;
    text-shadow:0 0 12px rgba(255,215,128,.55)!important;
  }
  #brand-badge::after{content:'・花果山台灣'!important;color:rgba(0,242,255,.70)!important;margin-left:4px!important;}

  #kgen-heart-toggle{
    display:flex!important;
    position:fixed!important;
    left:var(--kgen-left-x)!important;
    top:96px!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    height:36px!important;
    min-height:36px!important;
    box-sizing:border-box!important;
    z-index:246!important;
    justify-content:space-between!important;
    align-items:center!important;
    padding:0 14px!important;
    border-radius:999px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    pointer-events:auto!important;
  }

  .resource-bars{
    display:flex!important;
    visibility:visible!important;
    position:fixed!important;
    left:var(--kgen-left-x)!important;
    top:140px!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    z-index:130!important;
    gap:8px!important;
    pointer-events:none!important;
  }
  .resource-bars .rb{
    display:block!important;
    min-height:42px!important;
    box-sizing:border-box!important;
    background:rgba(8,10,16,.78)!important;
    border:1px solid rgba(255,215,120,.42)!important;
  }
  .resource-bars .rb .bar{
    display:block!important;
    height:9px!important;
    margin-top:7px!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.11)!important;
    border:1px solid rgba(255,255,255,.08)!important;
    overflow:hidden!important;
  }
  .resource-bars .rb .fill{
    display:block!important;
    min-width:4px!important;
    height:100%!important;
    border-radius:999px!important;
    background:linear-gradient(90deg,rgba(0,242,255,.85),rgba(255,215,120,.88))!important;
    box-shadow:0 0 12px rgba(0,242,255,.35)!important;
  }
  .resource-bars .rb.kgen .fill{background:linear-gradient(90deg,rgba(255,215,120,.88),rgba(0,242,255,.72))!important;}

  #kgen-heart-live-panel{
    position:fixed!important;
    left:var(--kgen-left-x)!important;
    top:234px!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    max-height:calc(100vh - 306px)!important;
    overflow:auto!important;
    z-index:235!important;
    box-sizing:border-box!important;
  }

  /* 清掉左上重複訊息與長 debug，只留右上訊息中心 */
  body > div:not(#universe-nav):not(#kgenMsgPanel):not(#kgenWalletHubV897):not(#kgenWalletHubV896):not(#kgenWalletHubV895):not(#kgenGuideSafeBox):not(#brand-badge):not(.resource-bars):not(#kgen-heart-live-panel),
  body > span{
    --kgen-noop:0;
  }
  #kgenToastWrap,#toast,#status,#top-status,#status-line,#kgenStatusLine,#kgenTopMessage,#kgenLiveToast,.kgen-left-toast,.kgen-debug-status,[id*="TopMessage"],[id*="LiveToast"],[class*="debug-status"]{
    display:none!important;visibility:hidden!important;pointer-events:none!important;
  }

  /* 中央圖與小窗層級，避免被操作視窗吃掉 */
  #core-window{z-index:70!important;overflow:hidden!important;}
  #fairy-img{display:block!important;opacity:1!important;visibility:visible!important;object-fit:cover!important;z-index:2!important;}
  #web3-panel,.wallet-panel,.kgen-wallet-panel{max-width:var(--kgen-left-w)!important;box-sizing:border-box!important;}

  @media(max-width:720px){
    :root{--kgen-left-x:12px;--kgen-left-w:255px;--kgen-right-x:12px;--kgen-nav-w:190px;}
    #brand-badge{top:58px!important;font-size:10.5px!important;}
    #kgen-heart-toggle{top:88px!important;height:34px!important;font-size:12px!important;}
    .resource-bars{top:128px!important;}
    .resource-bars .rb{min-height:38px!important;padding:6px 8px!important;}
    #kgen-heart-live-panel{top:216px!important;max-height:calc(100vh - 296px)!important;}
    #universe-nav{top:118px!important;gap:8px!important;}
    #universe-nav .nav-btn,#universe-nav #kgenMsgCenterBtn{height:36px!important;min-height:36px!important;font-size:12px!important;}
    #kgenMsgPanel{top:auto!important;bottom:96px!important;max-height:48vh!important;}
  }


/* ===== SOURCE_STYLE: kgen-v898-unified-heart-camera-style ===== */

:root{
  --kgen-left-x:18px;
  --kgen-left-w:min(410px, calc(100vw - 36px));
  --kgen-heart-toggle-top:70px;
  --kgen-bars-top:118px;
  --kgen-heart-panel-top:214px;
}

/* 左上：品牌 + Heart 展開收合，合併成同一顆正式 HUD 長按鈕 */
#kgen-heart-toggle{
  position:fixed!important;
  left:var(--kgen-left-x)!important;
  top:var(--kgen-heart-toggle-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  min-height:42px!important;
  height:auto!important;
  padding:8px 14px!important;
  box-sizing:border-box!important;
  border-radius:16px!important;
  border:1px solid rgba(255,215,120,.62)!important;
  background:linear-gradient(180deg, rgba(18,16,10,.92), rgba(0,0,0,.78))!important;
  color:#ffd778!important;
  font-weight:950!important;
  font-size:13px!important;
  line-height:1.25!important;
  letter-spacing:.35px!important;
  text-align:left!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  z-index:100650!important;
  box-shadow:0 0 22px rgba(255,215,120,.18), inset 0 0 16px rgba(0,242,255,.045)!important;
  white-space:normal!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  pointer-events:auto!important;
}
#kgen-heart-toggle .kgen-heart-title{
  display:block!important;
  font-size:14px!important;
  color:#ffe39a!important;
  text-shadow:0 0 8px rgba(255,215,120,.36)!important;
}
#kgen-heart-toggle .kgen-heart-sub{
  display:block!important;
  margin-top:2px!important;
  font-size:11px!important;
  color:#8ff7ff!important;
  font-weight:900!important;
  opacity:.95!important;
}
#kgen-heart-toggle .kgen-heart-state{
  flex:0 0 auto!important;
  border:1px solid rgba(255,215,120,.38)!important;
  border-radius:999px!important;
  padding:5px 9px!important;
  color:#fff2be!important;
  background:rgba(255,215,120,.08)!important;
  font-size:12px!important;
}

/* 避免上方品牌或版本 debug 壓住新長按鈕，但保留主標題背景可見 */
#brand-badge,
.kgen-left-toast,
.kgen-debug-status,
#kgenTopMessage,
#kgenLiveToast,
[id*="TopMessage"],
[id*="LiveToast"],
[class*="debug-status"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.hud-top .brand-section{z-index:42!important; pointer-events:none!important;}
.hud-top .brand-name{opacity:.62!important; text-shadow:0 0 12px rgba(255,215,120,.28)!important;}
.hud-top #ver-st,.hud-top #sys-clock{opacity:.78!important;}

/* 左側資源條與 Heart 操作窗同寬、往下排列，不互相壓住 */
.resource-bars{
  position:fixed!important;
  left:var(--kgen-left-x)!important;
  top:var(--kgen-bars-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  z-index:100520!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  pointer-events:none!important;
}
.resource-bars .rb{
  display:block!important;
  min-height:44px!important;
  box-sizing:border-box!important;
  background:rgba(5,8,15,.78)!important;
  border:1px solid rgba(255,215,120,.42)!important;
  border-radius:12px!important;
  padding:7px 10px!important;
}
.resource-bars .bar{
  display:block!important;
  height:9px!important;
  margin-top:7px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.10)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  overflow:hidden!important;
}
.resource-bars .fill{
  display:block!important;
  min-width:5px!important;
  height:100%!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(0,242,255,.85),rgba(255,215,120,.88))!important;
  box-shadow:0 0 12px rgba(0,242,255,.35)!important;
}

#kgen-heart-live-panel{
  position:fixed!important;
  left:var(--kgen-left-x)!important;
  top:var(--kgen-heart-panel-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  max-height:calc(100vh - 290px)!important;
  overflow:auto!important;
  z-index:100500!important;
  box-sizing:border-box!important;
}
#kgen-heart-live-panel .kh-title{
  font-size:16px!important;
  line-height:1.35!important;
  color:#ffe49b!important;
  text-shadow:0 0 8px rgba(255,215,120,.32)!important;
}
#kgen-heart-live-panel .kh-grid{
  font-size:13px!important;
  grid-template-columns:118px 1fr!important;
}
#kgen-heart-live-panel button{font-size:13px!important;}

/* 下方前鏡 / 後鏡是多空鏡頭，確保可點且不被遮罩吃掉 */
.footer-terminal .term-btn{pointer-events:auto!important; position:relative!important; z-index:100200!important;}
.footer-terminal .term-btn[data-kgen-camera="front"],
.footer-terminal .term-btn[data-kgen-camera="back"]{
  border-color:rgba(0,242,255,.45)!important;
  box-shadow:inset 0 0 14px rgba(0,242,255,.05)!important;
}

/* 相機小提示 */
#kgenCameraToast{
  position:fixed;left:50%;bottom:92px;transform:translateX(-50%);
  width:min(520px,calc(100vw - 24px));z-index:2147482600;
  border:1px solid rgba(0,242,255,.42);border-radius:16px;
  background:rgba(0,0,0,.88);color:#dff;padding:11px 14px;
  font-size:13px;font-weight:900;line-height:1.55;text-align:center;
  box-shadow:0 0 24px rgba(0,242,255,.18);pointer-events:none;display:none;
}

@media(max-width:720px){
  :root{
    --kgen-left-x:10px;
    --kgen-left-w:min(380px, calc(100vw - 20px));
    --kgen-heart-toggle-top:74px;
    --kgen-bars-top:124px;
    --kgen-heart-panel-top:218px;
  }
  #kgen-heart-toggle{font-size:12px!important;min-height:44px!important;}
  #kgen-heart-toggle .kgen-heart-title{font-size:13px!important;}
  #kgen-heart-toggle .kgen-heart-sub{font-size:10px!important;}
  #kgen-heart-live-panel{max-height:calc(100vh - 300px)!important;}
}


/* ===== SOURCE_STYLE: kgen-v899-panel-cup-camera-ny-style ===== */

:root{
  --kgen-left-x:18px;
  --kgen-left-w:min(420px, 36vw, calc(100vw - 36px));
  --kgen-heart-toggle-top:72px;
  --kgen-bars-top:126px;
  --kgen-heart-panel-top:222px;
}

#kgen-heart-toggle{
  left:var(--kgen-left-x)!important;
  top:var(--kgen-heart-toggle-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  min-height:46px!important;
  padding:9px 15px!important;
  z-index:2147481200!important;
}
#kgen-heart-toggle .kgen-heart-title{font-size:15px!important;line-height:1.22!important;}
#kgen-heart-toggle .kgen-heart-sub{font-size:11px!important;line-height:1.25!important;}

.resource-bars{
  left:var(--kgen-left-x)!important;
  top:var(--kgen-bars-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  grid-template-columns:1fr!important;
  z-index:2147481050!important;
  gap:7px!important;
  pointer-events:none!important;
}
.resource-bars .rb{min-height:40px!important;padding:6px 9px!important;box-sizing:border-box!important;}
.resource-bars .rb .row{font-size:12px!important;line-height:1.2!important;}
.resource-bars .rb .bar{display:block!important;height:8px!important;opacity:1!important;visibility:visible!important;}
.resource-bars .rb .fill{display:block!important;min-width:5px!important;height:100%!important;opacity:1!important;visibility:visible!important;}

#kgen-heart-live-panel{
  left:var(--kgen-left-x)!important;
  top:var(--kgen-heart-panel-top)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  max-height:calc(100vh - 282px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  padding-bottom:78px!important;
  scrollbar-width:thin!important;
  z-index:2147481000!important;
}
#kgen-heart-live-panel .kh-title{font-size:17px!important;line-height:1.32!important;}
#kgen-heart-live-panel .kh-grid{grid-template-columns:124px 1fr!important;font-size:13px!important;}
#kgen-heart-live-panel .kh-log{max-height:88px!important;overflow:auto!important;}
#kgen-heart-live-panel .kh-ny-countdown,
#kh-ny-countdown,
.kh-ny-countdown{
  min-height:48px!important;
  font-variant-numeric:tabular-nums!important;
  transition:none!important;
  animation:none!important;
  will-change:auto!important;
}
#kgen-heart-live-panel *{animation-duration:0s!important;}
#kgen-heart-live-panel button{touch-action:manipulation!important;}
#kgen-heart-live-panel .kh-cup-row button.done,
#kgen-heart-live-panel .kh-cup-row button.kgen-cup-ok{
  background:linear-gradient(135deg,rgba(255,215,120,.58),rgba(0,242,255,.20))!important;
  color:#fff1b8!important;
  box-shadow:0 0 16px rgba(255,215,120,.20)!important;
}

#kgenCameraPanelV899{
  position:fixed;
  left:50%;top:50%;transform:translate(-50%,-50%);
  width:min(620px,calc(100vw - 26px));
  max-height:min(74vh,680px);
  overflow:auto;
  z-index:2147483005;
  border:1px solid rgba(255,215,120,.52);
  border-radius:22px;
  background:rgba(4,5,10,.96);
  color:#fff;
  box-shadow:0 0 60px rgba(0,0,0,.72),0 0 28px rgba(255,215,120,.18);
  padding:16px;
  pointer-events:auto;
  backdrop-filter:blur(10px);
}
#kgenCameraPanelV899.kgen-hidden{display:none!important;}
.kgen-cam-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:10px;margin-bottom:12px;color:#ffd778;font-weight:950;}
.kgen-cam-close{border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;padding:7px 12px;font-weight:900;cursor:pointer;}
.kgen-cam-visual{height:220px;border-radius:18px;border:1px solid rgba(0,242,255,.24);background:radial-gradient(circle at 50% 45%, rgba(255,215,120,.36), rgba(0,242,255,.12) 34%, rgba(0,0,0,.74) 70%);display:flex;align-items:center;justify-content:center;overflow:hidden;margin-bottom:12px;}
.kgen-cam-orb{width:150px;height:150px;border-radius:999px;border:2px solid rgba(255,215,120,.75);box-shadow:0 0 36px rgba(255,215,120,.34), inset 0 0 35px rgba(0,242,255,.12);display:flex;align-items:center;justify-content:center;font-size:54px;background:rgba(0,0,0,.38);}
.kgen-cam-body{font-size:14px;line-height:1.75;color:rgba(255,255,255,.9);}
.kgen-cam-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;}
.kgen-cam-actions button{border:1px solid rgba(255,215,120,.35);border-radius:12px;background:rgba(255,215,120,.09);color:#fff;font-weight:900;padding:11px;cursor:pointer;}

@media(max-width:720px) and (orientation:landscape){
  :root{--kgen-left-x:10px;--kgen-left-w:min(345px, calc(52vw));--kgen-heart-toggle-top:72px;--kgen-bars-top:126px;--kgen-heart-panel-top:222px;}
  #kgen-heart-live-panel{max-height:calc(100vh - 292px)!important;padding-bottom:96px!important;}
  #kgen-heart-toggle .kgen-heart-title{font-size:13px!important;}
  #kgen-heart-toggle .kgen-heart-sub{font-size:10.5px!important;}
}
@media(max-width:720px) and (orientation:portrait){
  :root{--kgen-left-x:10px;--kgen-left-w:calc(100vw - 20px);--kgen-heart-toggle-top:76px;--kgen-bars-top:130px;--kgen-heart-panel-top:226px;}
  #kgen-heart-live-panel{max-height:calc(100vh - 300px)!important;}
}


/* ===== SOURCE_STYLE: kgen-v900-camera-core-merge-style ===== */

:root{
  --kgen-left-x:18px;
  --kgen-left-w:min(410px, 34vw, calc(100vw - 36px));
  --kgen-heart-toggle-top:96px;
  --kgen-bars-top:154px;
  --kgen-heart-panel-top:248px;
}

/* 左上整組下移，讓背景 K線西遊記・花果山台灣品牌字正常透出 */
#kgen-heart-toggle{
  top:var(--kgen-heart-toggle-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  min-height:46px!important;
  padding:9px 14px!important;
  z-index:100650!important;
}
#kgen-heart-toggle .kgen-heart-title{font-size:15px!important;line-height:1.15!important;}
#kgen-heart-toggle .kgen-heart-sub{font-size:11.5px!important;line-height:1.15!important;}

.resource-bars{
  top:var(--kgen-bars-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  box-sizing:border-box!important;
}
.resource-bars .rb{min-height:42px!important;}
.resource-bars .bar{height:8px!important;}

#kgen-heart-live-panel{
  top:var(--kgen-heart-panel-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  max-height:calc(100vh - var(--kgen-heart-panel-top) - 104px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-bottom:260px!important; /* 底部空白，可一路滑上來看完整內容 */
  box-sizing:border-box!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable both-edges;
}
#kgen-heart-live-panel::after{
  content:"";
  display:block;
  height:260px;
  min-height:260px;
  pointer-events:none;
}
#kgen-heart-live-panel .kh-grid{grid-template-columns:112px 1fr!important;}
#kgen-heart-live-panel .kh-v{word-break:break-word!important;overflow-wrap:anywhere!important;}

/* 跨年倒數：固定文字，不做閃爍、不做透明動畫 */
#kh-ny-slot,#kh-ny-countdown,.kh-ny-countdown,#cd-1231,
#kgen-heart-live-panel [id*="ny"],#kgen-heart-live-panel [id*="NY"],
#kgen-heart-live-panel [class*="ny"],#kgen-heart-live-panel [class*="NY"],
#kgen-heart-live-panel [id*="1231"],#kgen-heart-live-panel [class*="1231"]{
  animation:none!important;
  transition:none!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
}

/* 關閉 V8.9.x 的彈窗式假鏡頭；V9 改用中央核心圓窗實鏡頭 */
#kgenCameraPanelV899,#kgenCameraToast{display:none!important;visibility:hidden!important;pointer-events:none!important;}
#cam-view{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  object-fit:cover!important;opacity:0;z-index:30!important;transition:opacity .22s ease!important;
}
#fairy-img{transition:opacity .22s ease!important;}
#mini-thumb{
  position:absolute!important;right:26px!important;top:26px!important;width:96px!important;height:96px!important;
  border-radius:999px!important;border:2px solid rgba(255,215,120,.75)!important;
  background:rgba(0,0,0,.45) center/cover no-repeat!important;z-index:60!important;display:none;
  box-shadow:0 0 24px rgba(255,215,120,.32)!important;
}
body.kgen-camera-on #core-window{box-shadow:0 0 95px rgba(0,242,255,.26),0 0 65px rgba(255,215,120,.18)!important;}
body.kgen-camera-front #wish-label::after{content:"｜前鏡多方";}
body.kgen-camera-back #wish-label::after{content:"｜後鏡空方";}
.footer-terminal .term-btn[data-kgen-camera="front"],
.footer-terminal .term-btn[data-kgen-camera="back"]{border-color:rgba(0,242,255,.55)!important;}

@media(max-width:720px) and (orientation:landscape){
  :root{
    --kgen-left-x:10px;
    --kgen-left-w:min(285px, 43vw);
    --kgen-heart-toggle-top:90px;
    --kgen-bars-top:146px;
    --kgen-heart-panel-top:238px;
  }
  #kgen-heart-toggle{min-height:44px!important;padding:7px 10px!important;}
  #kgen-heart-toggle .kgen-heart-title{font-size:13px!important;}
  #kgen-heart-toggle .kgen-heart-sub{font-size:10px!important;}
  #kgen-heart-live-panel{max-height:calc(100vh - 250px)!important;padding-bottom:240px!important;}
  #kgen-heart-live-panel::after{height:240px!important;min-height:240px!important;}
  .resource-bars .rb{min-height:36px!important;padding:5px 8px!important;}
  .resource-bars .rb .row{font-size:10px!important;}
}
@media(max-width:720px) and (orientation:portrait){
  :root{
    --kgen-left-x:10px;
    --kgen-left-w:calc(100vw - 20px);
    --kgen-heart-toggle-top:104px;
    --kgen-bars-top:162px;
    --kgen-heart-panel-top:256px;
  }
  #kgen-heart-live-panel{max-height:calc(100vh - 360px)!important;padding-bottom:280px!important;}
  #kgen-heart-live-panel::after{height:280px!important;min-height:280px!important;}
}


/* ===== SOURCE_STYLE: kgen-v901-camera-toggle-layout-clean-style ===== */

:root{
  --kgen-left-x:18px;
  --kgen-left-w:min(430px, 35vw, calc(100vw - 36px));
  --kgen-heart-toggle-top:132px;
  --kgen-bars-top:190px;
  --kgen-heart-panel-top:286px;
}
/* 左上整組再下移：避開背景品牌字與最上方雜訊 */
#kgen-heart-toggle{
  top:var(--kgen-heart-toggle-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  z-index:100650!important;
}
.resource-bars{
  top:var(--kgen-bars-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  z-index:100640!important;
}
#kgen-heart-live-panel{
  top:var(--kgen-heart-panel-top)!important;
  left:var(--kgen-left-x)!important;
  width:var(--kgen-left-w)!important;
  max-width:var(--kgen-left-w)!important;
  max-height:calc(100vh - var(--kgen-heart-panel-top) - 98px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-bottom:360px!important;
  scroll-padding-bottom:360px!important;
  box-sizing:border-box!important;
  -webkit-overflow-scrolling:touch!important;
}
#kgen-heart-live-panel::after{content:""!important;display:block!important;height:360px!important;min-height:360px!important;}
/* 清掉 V8/V9 舊彈窗鏡頭與可能殘留最上方文字 */
#kgenCameraPanelV899,#kgenCameraToast,.kgen-cam-panel,.kgen-cam-backdrop,.kgen-camera-modal,
[id*="kgenCamPanel"],[id*="kgen-camera-panel"]{display:none!important;visibility:hidden!important;pointer-events:none!important;}
/* 16888 標準：中央圓窗實鏡頭 + 右上小原圖 */
#core-window{position:relative!important;}
#cam-view{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;opacity:0;z-index:30!important;transition:opacity .18s ease!important;}
#fairy-img{display:block!important;transition:opacity .18s ease!important;}
#mini-thumb{
  position:absolute!important;right:28px!important;top:28px!important;width:96px!important;height:96px!important;
  border-radius:999px!important;border:3px solid rgba(255,215,120,.78)!important;
  background-color:rgba(0,0,0,.55)!important;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;
  z-index:80!important;display:none;box-shadow:0 0 26px rgba(255,215,120,.42)!important;overflow:hidden!important;
}
#mini-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
/* 跨年倒數完全固定，只換文字不閃 */
#kgen-heart-live-panel [id*="ny"],#kgen-heart-live-panel [id*="NY"],#kgen-heart-live-panel [class*="ny"],#kgen-heart-live-panel [class*="NY"],#kgen-heart-live-panel [id*="1231"],#kgen-heart-live-panel [class*="1231"],
#kh-ny-slot,#kh-ny-countdown,#cd-1231,.kh-ny-countdown{
  animation:none!important;transition:none!important;opacity:1!important;filter:none!important;transform:none!important;
}
@media(max-width:720px) and (orientation:landscape){
  :root{--kgen-left-x:10px;--kgen-left-w:min(305px,44vw);--kgen-heart-toggle-top:124px;--kgen-bars-top:178px;--kgen-heart-panel-top:268px;}
  #kgen-heart-live-panel{max-height:calc(100vh - 278px)!important;padding-bottom:340px!important;}
  #kgen-heart-live-panel::after{height:340px!important;min-height:340px!important;}
}
@media(max-width:720px) and (orientation:portrait){
  :root{--kgen-left-x:10px;--kgen-left-w:calc(100vw - 20px);--kgen-heart-toggle-top:126px;--kgen-bars-top:184px;--kgen-heart-panel-top:276px;}
  #kgen-heart-live-panel{max-height:calc(100vh - 374px)!important;padding-bottom:380px!important;}
  #kgen-heart-live-panel::after{height:380px!important;min-height:380px!important;}
}


/* ===== SOURCE_STYLE: kgen-v902-message-recorder-countdown-style ===== */

  :root{ --kgen-left-top-safe: 96px; }
  #kgen-heart-toggle{
    top: var(--kgen-left-top-safe) !important;
    width: min(420px, calc(48vw - 18px)) !important;
    min-width: 330px !important;
    box-sizing:border-box !important;
    justify-content:space-between !important;
    white-space:nowrap !important;
  }
  #kgen-heart-live-panel{
    top: calc(var(--kgen-left-top-safe) + 44px) !important;
    width: min(420px, calc(48vw - 18px)) !important;
    max-height: calc(100vh - 184px) !important;
    padding-bottom: 190px !important;
    overscroll-behavior: contain;
  }
  #kgen-heart-live-panel::after{
    content:"";
    display:block;
    height:150px;
    flex:0 0 auto;
  }
  #kgen-heart-live-panel .kh-grid{
    grid-template-columns: 82px minmax(0,1fr) !important;
    align-items:start !important;
  }
  #kgen-heart-live-panel .kh-v,
  #kgen-heart-live-panel .kh-k,
  #kh-ny-slot,
  #human-cd-1231,
  #cd-1231{
    font-variant-numeric: tabular-nums !important;
  }
  #kh-ny-slot{
    display:block !important;
    min-height: 34px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
    overflow:hidden !important;
  }
  .kgen-countdown-card,
  .kgen-human-row .time{
    min-height: 22px !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    animation:none !important;
    transition:none !important;
  }
  #kgen-v902-left-status{
    position:fixed;
    left:18px;
    top:52px;
    width:min(420px, calc(48vw - 18px));
    min-width:330px;
    z-index:100506;
    border:1px solid rgba(0,242,255,.32);
    border-radius:12px;
    background:rgba(0,0,0,.70);
    color:#d8fbff;
    font-size:12px;
    font-weight:900;
    line-height:1.35;
    padding:7px 10px;
    box-shadow:0 0 18px rgba(0,242,255,.10);
    pointer-events:none;
    box-sizing:border-box;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  #kgen-v902-rec-panel{
    position:fixed;
    left:50%; top:50%; transform:translate(-50%,-50%);
    width:min(520px, calc(100vw - 28px));
    z-index:2147483100;
    border:1px solid rgba(255,215,120,.45);
    border-radius:20px;
    background:rgba(4,6,12,.96);
    color:#fff;
    box-shadow:0 0 60px rgba(0,0,0,.7);
    padding:16px;
    display:none;
  }
  #kgen-v902-rec-panel.active{display:block;}
  #kgen-v902-rec-panel .rec-title{color:#ffd778;font-weight:950;font-size:18px;margin-bottom:8px;}
  #kgen-v902-rec-panel .rec-body{font-size:13px;line-height:1.75;color:#e9f7ff;}
  #kgen-v902-rec-panel .rec-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;}
  #kgen-v902-rec-panel button{border:1px solid rgba(255,215,120,.34);border-radius:12px;background:rgba(255,215,120,.12);color:#fff;font-weight:900;padding:11px;}
  #kgen-v902-rec-panel button.gold{background:linear-gradient(135deg,#ffdf86,#b98222);color:#111;}
  @media(max-width:720px){
    :root{ --kgen-left-top-safe: 98px; }
    #kgen-v902-left-status{left:10px;top:55px;width:calc(100vw - 20px);min-width:0;}
    #kgen-heart-toggle{left:10px!important;top:96px!important;width:calc(100vw - 20px)!important;min-width:0!important;}
    #kgen-heart-live-panel{left:10px!important;right:auto!important;top:142px!important;width:calc(100vw - 20px)!important;max-height:calc(100vh - 220px)!important;}
  }


/* ===== SOURCE_STYLE: kgen-v903-audio-hud-message-align-style ===== */

  :root{
    --kgen-left-x:18px;
    --kgen-left-w:min(430px, calc(48vw - 20px));
    --kgen-message-top:58px;
    --kgen-heart-toggle-top:122px;
    --kgen-bars-top:174px;
    --kgen-heart-panel-top:286px;
  }
  #kgen-v902-left-status{
    left:var(--kgen-left-x)!important;
    top:var(--kgen-message-top)!important;
    width:var(--kgen-left-w)!important;
    min-width:330px!important;
    min-height:38px!important;
    max-height:46px!important;
    display:flex!important;
    align-items:center!important;
    padding:8px 12px!important;
    white-space:normal!important;
    line-height:1.35!important;
    background:linear-gradient(180deg,rgba(0,0,0,.84),rgba(0,38,44,.72))!important;
    border-color:rgba(0,242,255,.42)!important;
    z-index:100520!important;
  }
  #kgen-heart-toggle{
    left:var(--kgen-left-x)!important;
    top:var(--kgen-heart-toggle-top)!important;
    width:var(--kgen-left-w)!important;
    min-width:330px!important;
    height:auto!important;
    min-height:44px!important;
    box-sizing:border-box!important;
  }
  .resource-bars{
    left:var(--kgen-left-x)!important;
    top:var(--kgen-bars-top)!important;
    width:var(--kgen-left-w)!important;
    min-width:330px!important;
    box-sizing:border-box!important;
    z-index:130!important;
  }
  .resource-bars .rb{width:100%!important;box-sizing:border-box!important;}
  #kgen-heart-live-panel{
    left:var(--kgen-left-x)!important;
    top:var(--kgen-heart-panel-top)!important;
    width:var(--kgen-left-w)!important;
    min-width:330px!important;
    box-sizing:border-box!important;
    max-height:calc(100vh - var(--kgen-heart-panel-top) - 86px)!important;
    overflow-y:auto!important;
    padding-bottom:260px!important;
  }
  #kgen-heart-live-panel::after{height:260px!important;min-height:260px!important;}
  #music-panel{
    right:18px!important;
    top:410px!important;
    width:min(340px, 86vw)!important;
    max-height:calc(100vh - 500px)!important;
    overflow:auto!important;
    z-index:240!important;
  }
  #music-panel .nav-music-ctl,
  #music-panel button{
    pointer-events:auto!important;
    cursor:pointer!important;
    touch-action:manipulation!important;
  }
  #music-list{max-height:150px!important;}
  #temple-audio-console{display:none!important;}
  @media(max-width:720px){
    :root{
      --kgen-left-x:10px;
      --kgen-left-w:calc(100vw - 20px);
      --kgen-message-top:58px;
      --kgen-heart-toggle-top:118px;
      --kgen-bars-top:170px;
      --kgen-heart-panel-top:282px;
    }
    #kgen-v902-left-status{min-width:0!important;}
    #kgen-heart-toggle{min-width:0!important;}
    .resource-bars{min-width:0!important;}
    #kgen-heart-live-panel{min-width:0!important;max-height:calc(100vh - 360px)!important;}
    #music-panel{right:10px!important;left:auto!important;top:360px!important;width:min(330px, calc(100vw - 24px))!important;max-height:46vh!important;}
  }


/* ===== SOURCE_STYLE: kgen-v904-ga-cup-countdown-style ===== */

  :root{
    --kgen-left-x:18px;
    --kgen-left-w:min(430px, calc(48vw - 24px));
    --kgen-message-top:76px;
    --kgen-heart-toggle-top:124px;
    --kgen-bars-top:172px;
    --kgen-heart-panel-top:292px;
  }
  /* 讓頂部品牌字與系統列呼吸，不再被左上控制台壓住 */
  #kgen-v902-left-status{
    top:var(--kgen-message-top)!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    height:32px!important;
    line-height:16px!important;
    overflow:hidden!important;
    white-space:normal!important;
  }
  #kgen-heart-toggle{
    top:var(--kgen-heart-toggle-top)!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
  }
  #brand-badge{
    top:58px!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    pointer-events:none!important;
    opacity:.88!important;
  }
  .resource-bars{
    top:var(--kgen-bars-top)!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
  }
  #kgen-heart-live-panel{
    top:var(--kgen-heart-panel-top)!important;
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    max-height:calc(100vh - var(--kgen-heart-panel-top) - 126px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:160px!important;
  }
  #bet-live-panel.bet-live-panel{
    left:var(--kgen-left-x)!important;
    width:var(--kgen-left-w)!important;
    max-width:var(--kgen-left-w)!important;
    max-height:calc(100vh - 368px)!important;
    padding-bottom:180px!important;
  }
  /* GA Evolution 轉移到右下曲速縱桿上方，不再卡在上方資訊區 */
  .ga-matrix{
    left:auto!important;
    right:92px!important;
    top:auto!important;
    bottom:705px!important;
    width:178px!important;
    transform:none!important;
    z-index:135!important;
    opacity:.96!important;
  }
  /* 三聖盃新版顯示 */
  .v904-cup-result{display:block;margin-top:4px;font-size:11px;color:#7ff3ff;line-height:1.35;min-height:28px;}
  .v714-cup.done{background:linear-gradient(135deg,rgba(255,215,120,.42),rgba(0,242,255,.16))!important;color:#ffe9a8!important;}
  .v714-cup.fail{background:rgba(255,70,70,.13)!important;border-color:rgba(255,120,120,.45)!important;color:#ffd0d0!important;}
  #v714-cup-status,#kh-cup-status{font-variant-numeric:tabular-nums;line-height:1.45;min-height:34px;}
  #kh-ny-slot{font-variant-numeric:tabular-nums;white-space:nowrap!important;}
  #kh-ny-countdown{font-variant-numeric:tabular-nums;min-height:42px!important;line-height:1.45!important;}
  @media(max-width:760px){
    :root{
      --kgen-left-x:12px;
      --kgen-left-w:min(330px, calc(50vw - 18px));
      --kgen-message-top:78px;
      --kgen-heart-toggle-top:126px;
      --kgen-bars-top:174px;
      --kgen-heart-panel-top:298px;
    }
    #kgen-v902-left-status{font-size:10px!important;height:30px!important;}
    #kgen-heart-live-panel{max-height:calc(100vh - 360px)!important;}
    #bet-live-panel.bet-live-panel{max-height:48vh!important;}
    .ga-matrix{right:82px!important;bottom:590px!important;width:150px!important;padding:10px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v906-reset-stable-style ===== */

  /* 左上整組下移，避免蓋住品牌背景字；保留原視覺，不再硬塞版面 */
  #kgen-heart-toggle{ top:94px !important; left:18px !important; width:min(430px,44vw) !important; max-width:44vw !important; z-index:84 !important; }
  #kgen-heart-live-panel{ top:188px !important; left:18px !important; width:min(430px,44vw) !important; max-width:44vw !important; max-height:calc(100vh - 330px) !important; overflow-y:auto !important; padding-bottom:180px !important; z-index:86 !important; }
  #kgen-heart-live-panel .bp-scroll-spacer{height:180px !important; flex:0 0 180px !important;}
  #kgen-heart-live-panel *{ box-sizing:border-box; }
  #kgen-heart-live-panel .v714-events, #kgen-heart-live-panel .v714-cupbox{ position:relative !important; }
  /* 暗物質/質量條跟左上同寬，不碰 GA 和右側區塊 */
  .hud-left, .resource-bars, .top-resource, #top-resource-panel, #kgen-resource-panel{ max-width:44vw !important; }
  /* GA 固定右下曲速桿左側，往下，不再卡在中上 */
  .ga-matrix{ position:fixed !important; right:112px !important; top:auto !important; bottom:310px !important; left:auto !important; width:185px !important; z-index:62 !important; }
  /* 跨年倒數固定一行高度，避免每秒跳行造成畫面斗動 */
  #kh-ny-slot,#v714-ny-count,#kgen-ny-countdown,.kgen-ny-countdown,.ny-countdown,.v714-ny-line{ display:block !important; min-height:18px !important; line-height:18px !important; white-space:nowrap !important; overflow:hidden !important; text-overflow:ellipsis !important; animation:none !important; transition:none !important; }
  .v714-cup-row{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:8px !important;}
  .v714-cup{min-height:38px !important;border:1px solid rgba(255,215,120,.55) !important;border-radius:9px !important;background:rgba(0,0,0,.42) !important;color:#fff6c8 !important;font-weight:900 !important;}
  .v714-cup.kgen-cup-ok{background:linear-gradient(180deg,rgba(0,210,160,.45),rgba(0,50,40,.45)) !important;color:#9fffe3 !important;border-color:#7fffe8 !important;}
  .v714-cup.kgen-cup-no{background:linear-gradient(180deg,rgba(160,40,40,.36),rgba(30,0,0,.4)) !important;color:#ffd0d0 !important;border-color:#ff7777 !important;}
  #kgen-v906-rec-float{position:fixed;left:50%;top:58%;transform:translate(-50%,-50%);z-index:9999;background:rgba(0,0,0,.82);border:1px solid rgba(255,215,120,.75);box-shadow:0 0 28px rgba(255,215,120,.25);color:#fff;border-radius:16px;padding:18px;width:min(520px,88vw);font-weight:900;display:none;text-align:center;}
  #kgen-v906-rec-float button{margin-top:12px;padding:12px 18px;border-radius:10px;border:1px solid rgba(255,215,120,.7);background:#e6c56b;color:#111;font-weight:900;}
  @media(max-width:720px){
    #kgen-heart-toggle{top:92px !important;left:14px !important;width:calc(48vw - 8px) !important;max-width:48vw !important;}
    #kgen-heart-live-panel{top:195px !important;left:14px !important;width:calc(48vw - 8px) !important;max-width:48vw !important;max-height:calc(100vh - 345px) !important;padding-bottom:220px !important;}
    .ga-matrix{right:82px !important;bottom:330px !important;width:168px !important;transform:none !important;}
  }


/* ===== SOURCE_STYLE: kgen-v907-ui-rec-heart-cup-ga-style ===== */

  :root{
    --kgen-v907-left-x:18px;
    --kgen-v907-left-w:min(440px,44vw);
    --kgen-v907-msg-top:72px;
    --kgen-v907-toggle-top:126px;
    --kgen-v907-bars-top:174px;
    --kgen-v907-panel-top:260px;
  }
  #brand-badge{top:var(--kgen-v907-msg-top)!important;left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;z-index:2147482500!important;pointer-events:auto!important;}
  #kgen-heart-toggle{top:var(--kgen-v907-toggle-top)!important;left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;min-width:0!important;z-index:2147482600!important;}
  .resource-bars{top:var(--kgen-v907-bars-top)!important;left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;z-index:2147482400!important;}
  .hud-left,.top-resource,#top-resource-panel,#kgen-resource-panel{left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;}
  #kgen-heart-live-panel{top:var(--kgen-v907-panel-top)!important;left:var(--kgen-v907-left-x)!important;width:var(--kgen-v907-left-w)!important;max-width:var(--kgen-v907-left-w)!important;max-height:calc(100vh - var(--kgen-v907-panel-top) - 94px)!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;padding-bottom:320px!important;z-index:2147482700!important;}
  #kgen-heart-live-panel::after{content:""!important;display:block!important;height:320px!important;min-height:320px!important;}
  #kgen-heart-live-panel *{box-sizing:border-box!important;}
  #kgen-heart-live-panel:focus-within,#kgen-heart-live-panel.kgen-v907-top{z-index:2147483000!important;}
  .ga-matrix{position:fixed!important;left:auto!important;right:96px!important;top:auto!important;bottom:350px!important;width:182px!important;z-index:120!important;transform:none!important;}
  #kh-ny-slot,#v714-ny-count,#kgen-ny-countdown,.kgen-ny-countdown,.ny-countdown,.v714-ny-line,#kgen-heart-live-panel [id*="ny"],#kgen-heart-live-panel [class*="ny"],#kgen-heart-live-panel [id*="1231"],#kgen-heart-live-panel [class*="1231"]{font-variant-numeric:tabular-nums!important;animation:none!important;transition:none!important;white-space:nowrap!important;line-height:18px!important;min-height:18px!important;max-height:38px!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  #kgen-v907-rec-float{position:fixed;left:50%;top:58%;transform:translate(-50%,-50%);z-index:2147483100;background:rgba(0,0,0,.88);border:1px solid rgba(255,215,120,.8);box-shadow:0 0 32px rgba(255,215,120,.28);color:#fff;border-radius:16px;padding:18px;width:min(520px,88vw);font-weight:900;display:none;text-align:center;}
  #kgen-v907-rec-float button{margin:12px 6px 0;padding:12px 18px;border-radius:10px;border:1px solid rgba(255,215,120,.7);background:#e6c56b;color:#111;font-weight:900;}
  .v907-cup-ok{background:linear-gradient(180deg,rgba(0,210,160,.45),rgba(0,50,40,.45))!important;color:#9fffe3!important;border-color:#7fffe8!important;}
  .v907-cup-no{background:linear-gradient(180deg,rgba(160,40,40,.36),rgba(30,0,0,.4))!important;color:#ffd0d0!important;border-color:#ff7777!important;}
  @media(max-width:720px){
    :root{--kgen-v907-left-x:12px;--kgen-v907-left-w:calc(48vw - 6px);--kgen-v907-msg-top:74px;--kgen-v907-toggle-top:124px;--kgen-v907-bars-top:172px;--kgen-v907-panel-top:262px;}
    #kgen-heart-toggle .kgen-heart-title{font-size:12px!important;}
    #kgen-heart-toggle .kgen-heart-sub{font-size:9.5px!important;}
    #kgen-heart-live-panel{max-height:calc(100vh - 362px)!important;padding-bottom:360px!important;}
    #kgen-heart-live-panel::after{height:360px!important;min-height:360px!important;}
    .ga-matrix{right:76px!important;bottom:378px!important;width:160px!important;padding:10px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v908-real-ui-toggle-layout-style ===== */

  :root{
    --kgen-v908-left-x:18px;
    --kgen-v908-left-w:min(440px,44vw);
    --kgen-v908-msg-top:94px;
    --kgen-v908-toggle-top:148px;
    --kgen-v908-bars-top:192px;
    --kgen-v908-panel-top:322px;
  }
  #brand-badge{
    top:var(--kgen-v908-msg-top)!important;
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
    z-index:2147482500!important;
    pointer-events:auto!important;
  }
  #kgen-heart-toggle{
    top:var(--kgen-v908-toggle-top)!important;
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
    min-width:0!important;
    z-index:2147482600!important;
  }
  .resource-bars{
    top:var(--kgen-v908-bars-top)!important;
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
    z-index:2147482400!important;
  }
  .hud-left,.top-resource,#top-resource-panel,#kgen-resource-panel{
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
  }
  #kgen-heart-live-panel{
    top:var(--kgen-v908-panel-top)!important;
    left:var(--kgen-v908-left-x)!important;
    width:var(--kgen-v908-left-w)!important;
    max-width:var(--kgen-v908-left-w)!important;
    max-height:calc(100vh - var(--kgen-v908-panel-top) - 84px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    padding-bottom:340px!important;
    z-index:2147482700!important;
    box-sizing:border-box!important;
  }
  #kgen-heart-live-panel::after{content:""!important;display:block!important;height:340px!important;min-height:340px!important;}
  #kgen-heart-live-panel.kgen-v908-open,
  #kgen-heart-live-panel:focus-within{z-index:2147483200!important;}

  /* GA Evolution: moved upward. It stays near the right warp lever, not buried at bottom. */
  .ga-matrix{
    position:fixed!important;
    left:auto!important;
    right:96px!important;
    top:auto!important;
    bottom:455px!important;
    width:182px!important;
    max-width:182px!important;
    transform:none!important;
    z-index:145!important;
    opacity:.97!important;
  }

  #kh-ny-slot,#v714-ny-count,#kgen-ny-countdown,.kgen-ny-countdown,.ny-countdown,.v714-ny-line,
  #kgen-heart-live-panel [id*="ny"],#kgen-heart-live-panel [class*="ny"],
  #kgen-heart-live-panel [id*="1231"],#kgen-heart-live-panel [class*="1231"]{
    font-variant-numeric:tabular-nums!important;
    animation:none!important;
    transition:none!important;
    white-space:nowrap!important;
    line-height:18px!important;
    min-height:18px!important;
    max-height:38px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  #kgen-v908-rec-float{
    position:fixed;left:50%;top:56%;transform:translate(-50%,-50%);
    z-index:2147483300;background:rgba(0,0,0,.9);border:1px solid rgba(255,215,120,.8);
    box-shadow:0 0 32px rgba(255,215,120,.3);color:#fff;border-radius:16px;padding:18px;
    width:min(520px,88vw);font-weight:900;display:none;text-align:center;
  }
  #kgen-v908-rec-float button{margin:12px 6px 0;padding:12px 18px;border-radius:10px;border:1px solid rgba(255,215,120,.7);background:#e6c56b;color:#111;font-weight:900;}
  .v908-cup-ok{background:linear-gradient(180deg,rgba(0,210,160,.45),rgba(0,50,40,.45))!important;color:#9fffe3!important;border-color:#7fffe8!important;}
  .v908-cup-no{background:linear-gradient(180deg,rgba(160,40,40,.36),rgba(30,0,0,.4))!important;color:#ffd0d0!important;border-color:#ff7777!important;}
  @media(max-width:720px){
    :root{--kgen-v908-left-x:12px;--kgen-v908-left-w:calc(48vw - 6px);--kgen-v908-msg-top:88px;--kgen-v908-toggle-top:138px;--kgen-v908-bars-top:180px;--kgen-v908-panel-top:308px;}
    #kgen-heart-toggle .kgen-heart-title{font-size:12px!important;}
    #kgen-heart-toggle .kgen-heart-sub{font-size:9.5px!important;}
    #kgen-heart-live-panel{max-height:calc(100vh - 392px)!important;padding-bottom:380px!important;}
    #kgen-heart-live-panel::after{height:380px!important;min-height:380px!important;}
    .ga-matrix{right:76px!important;bottom:445px!important;width:160px!important;padding:10px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v909-real-layout-toggle-ga-style ===== */

  :root{
    --kgen-v909-left-x:18px;
    --kgen-v909-left-w:min(462px,46vw);
    --kgen-v909-status-top:92px;
    --kgen-v909-toggle-top:140px;
    --kgen-v909-bars-top:180px;
    --kgen-v909-panel-top:332px;
  }

  /* 左上四區：訊息、控制台、暗物質、質量，統一寬度並往下排 */
  #kgen-v902-live-status,
  #kgen-v902-message-strip,
  #kgen-live-status,
  #kgen-msg-strip,
  #kgen-status-strip,
  .kgen-live-status,
  .left-message,
  .hud-message,
  #toast{
    position:fixed !important;
    top:var(--kgen-v909-status-top) !important;
    left:var(--kgen-v909-left-x) !important;
    width:var(--kgen-v909-left-w) !important;
    max-width:var(--kgen-v909-left-w) !important;
    box-sizing:border-box !important;
    z-index:2147482500 !important;
  }

  #kgen-heart-toggle{
    position:fixed !important;
    top:var(--kgen-v909-toggle-top) !important;
    left:var(--kgen-v909-left-x) !important;
    width:var(--kgen-v909-left-w) !important;
    max-width:var(--kgen-v909-left-w) !important;
    min-height:34px !important;
    box-sizing:border-box !important;
    z-index:2147482600 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    pointer-events:auto !important;
  }

  .resource-bars{
    position:fixed !important;
    top:var(--kgen-v909-bars-top) !important;
    left:var(--kgen-v909-left-x) !important;
    width:var(--kgen-v909-left-w) !important;
    max-width:var(--kgen-v909-left-w) !important;
    box-sizing:border-box !important;
    z-index:2147482400 !important;
    pointer-events:auto !important;
  }
  .resource-bars .rb{width:100% !important; max-width:100% !important; box-sizing:border-box !important;}

  #kgen-heart-live-panel{
    position:fixed !important;
    top:var(--kgen-v909-panel-top) !important;
    left:var(--kgen-v909-left-x) !important;
    width:var(--kgen-v909-left-w) !important;
    max-width:var(--kgen-v909-left-w) !important;
    max-height:calc(100vh - var(--kgen-v909-panel-top) - 86px) !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
    box-sizing:border-box !important;
    z-index:2147482700 !important;
    pointer-events:auto !important;
    padding-bottom:120px !important;
  }
  body.k12345-heart-collapsed #kgen-heart-live-panel,
  #kgen-heart-live-panel.kgen-v909-hidden{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
  body:not(.k12345-heart-collapsed) #kgen-heart-live-panel,
  #kgen-heart-live-panel.kgen-v909-open{
    display:block !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }
  body.k12345-heart-collapsed #kgen-heart-toggle::after{content:'展開' !important; margin-left:auto;}
  body:not(.k12345-heart-collapsed) #kgen-heart-toggle::after{content:'收合' !important; margin-left:auto;}

  /* 展開時一定壓在最上面，不被圖表、心臟圖或訊息蓋住 */
  body:not(.k12345-heart-collapsed) #kgen-heart-live-panel{
    z-index:2147483000 !important;
  }

  /* GA Evolution：往上移，避開右下曲速桿與規則框 */
  .ga-matrix{
    position:fixed !important;
    right:118px !important;
    left:auto !important;
    bottom:410px !important;
    top:auto !important;
    width:210px !important;
    max-width:210px !important;
    transform:none !important;
    z-index:2147481200 !important;
    box-sizing:border-box !important;
  }

  #kgen-v909-rec-float{
    position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);
    width:min(520px,86vw);z-index:2147483600;background:rgba(0,0,0,.90);
    border:1px solid rgba(255,215,120,.7);border-radius:14px;padding:18px;color:#fff;
    box-shadow:0 0 24px rgba(255,215,120,.22);text-align:center;font-weight:900;
  }
  #kgen-v909-rec-float button{margin:12px 6px 0;padding:10px 16px;border-radius:10px;border:1px solid rgba(255,215,120,.7);background:#e9ca72;color:#111;font-weight:900;}

  @media(max-width:720px){
    :root{
      --kgen-v909-left-x:10px;
      --kgen-v909-left-w:min(470px,47vw);
      --kgen-v909-status-top:94px;
      --kgen-v909-toggle-top:140px;
      --kgen-v909-bars-top:180px;
      --kgen-v909-panel-top:330px;
    }
    .ga-matrix{right:76px !important; bottom:360px !important; width:188px !important; max-width:188px !important;}
  }


/* ===== SOURCE_STYLE: kgen-v910-real-toggle-layout-style ===== */

  :root{
    --kgen-v910-left-x:14px;
    --kgen-v910-left-w:min(520px,50vw);
    --kgen-v910-status-top:126px;
    --kgen-v910-toggle-top:172px;
    --kgen-v910-bars-top:214px;
    --kgen-v910-panel-top:372px;
  }

  #kgen-v902-live-status,
  #kgen-v902-message-strip,
  #kgen-live-status,
  #kgen-msg-strip,
  #kgen-status-strip,
  .kgen-live-status,
  .left-message,
  .hud-message,
  #toast{
    position:fixed !important;
    top:var(--kgen-v910-status-top) !important;
    left:var(--kgen-v910-left-x) !important;
    width:var(--kgen-v910-left-w) !important;
    max-width:var(--kgen-v910-left-w) !important;
    box-sizing:border-box !important;
    z-index:2147482500 !important;
  }

  #kgen-heart-toggle{
    position:fixed !important;
    top:var(--kgen-v910-toggle-top) !important;
    left:var(--kgen-v910-left-x) !important;
    width:var(--kgen-v910-left-w) !important;
    max-width:var(--kgen-v910-left-w) !important;
    min-height:36px !important;
    box-sizing:border-box !important;
    z-index:2147482600 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    pointer-events:auto !important;
  }

  .resource-bars{
    position:fixed !important;
    top:var(--kgen-v910-bars-top) !important;
    left:var(--kgen-v910-left-x) !important;
    width:var(--kgen-v910-left-w) !important;
    max-width:var(--kgen-v910-left-w) !important;
    box-sizing:border-box !important;
    z-index:2147482400 !important;
  }
  .resource-bars .rb{width:100% !important;max-width:100% !important;box-sizing:border-box !important;}

  #kgen-heart-live-panel{
    position:fixed !important;
    top:var(--kgen-v910-panel-top) !important;
    left:var(--kgen-v910-left-x) !important;
    width:var(--kgen-v910-left-w) !important;
    max-width:var(--kgen-v910-left-w) !important;
    max-height:calc(100vh - var(--kgen-v910-panel-top) - 92px) !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch !important;
    box-sizing:border-box !important;
    z-index:2147483000 !important;
    pointer-events:auto !important;
    padding-bottom:160px !important;
  }

  /* Final winning close rules: support V9.0.8 is-hidden, V9.0.9 hidden, aria-hidden and body collapsed. */
  body.k12345-heart-collapsed #kgen-heart-live-panel,
  #kgen-heart-live-panel.kgen-v909-hidden,
  #kgen-heart-live-panel.is-hidden,
  #kgen-heart-live-panel[aria-hidden="true"]{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }
  #kgen-heart-live-panel.kgen-v908-open,
  #kgen-heart-live-panel.kgen-v909-open,
  #kgen-heart-live-panel[aria-hidden="false"]{
    display:block !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  #kgen-heart-toggle .kgen-heart-state,
  #kgen-heart-toggle::after{font-size:12px !important;font-weight:950 !important;color:#ffe6a3 !important;}

  .ga-matrix{
    position:fixed !important;
    right:106px !important;
    left:auto !important;
    bottom:520px !important;
    top:auto !important;
    width:210px !important;
    max-width:210px !important;
    transform:none !important;
    z-index:2147481200 !important;
    box-sizing:border-box !important;
  }

  @media(max-width:720px){
    :root{
      --kgen-v910-left-x:10px;
      --kgen-v910-left-w:min(500px,50vw);
      --kgen-v910-status-top:126px;
      --kgen-v910-toggle-top:172px;
      --kgen-v910-bars-top:214px;
      --kgen-v910-panel-top:374px;
    }
    .ga-matrix{
      right:78px !important;
      bottom:455px !important;
      width:190px !important;
      max-width:190px !important;
    }
  }


/* ===== SOURCE_STYLE: kgen-v911-real-toggle-left-align-style ===== */

  :root{
    --kgen-v911-left-x:14px;
    --kgen-v911-left-w:min(520px,50vw);
    --kgen-v911-status-top:132px;
    --kgen-v911-toggle-top:182px;
    --kgen-v911-bars-top:226px;
    --kgen-v911-panel-top:392px;
  }

  /* 左上四區：訊息、控制台按鈕、暗物質、質量，全部同寬同左線 */
  #kgen-v902-left-status,
  #kgen-v902-live-status,
  #kgen-v902-message-strip,
  #kgen-live-status,
  #kgen-msg-strip,
  #kgen-status-strip,
  .kgen-live-status,
  .left-message,
  .hud-message{
    position:fixed!important;
    left:var(--kgen-v911-left-x)!important;
    top:var(--kgen-v911-status-top)!important;
    width:var(--kgen-v911-left-w)!important;
    max-width:var(--kgen-v911-left-w)!important;
    box-sizing:border-box!important;
    z-index:2147482600!important;
    pointer-events:auto!important;
  }

  #kgen-heart-toggle{
    position:fixed!important;
    left:var(--kgen-v911-left-x)!important;
    top:var(--kgen-v911-toggle-top)!important;
    width:var(--kgen-v911-left-w)!important;
    max-width:var(--kgen-v911-left-w)!important;
    box-sizing:border-box!important;
    z-index:2147482700!important;
    pointer-events:auto!important;
    cursor:pointer!important;
  }

  .resource-bars{
    position:fixed!important;
    left:var(--kgen-v911-left-x)!important;
    top:var(--kgen-v911-bars-top)!important;
    width:var(--kgen-v911-left-w)!important;
    max-width:var(--kgen-v911-left-w)!important;
    box-sizing:border-box!important;
    z-index:2147482500!important;
    pointer-events:none!important;
  }
  .resource-bars .rb{width:100%!important;max-width:100%!important;box-sizing:border-box!important;}

  #kgen-heart-live-panel{
    position:fixed!important;
    left:var(--kgen-v911-left-x)!important;
    top:var(--kgen-v911-panel-top)!important;
    width:var(--kgen-v911-left-w)!important;
    max-width:var(--kgen-v911-left-w)!important;
    box-sizing:border-box!important;
    max-height:calc(100vh - var(--kgen-v911-panel-top) - 92px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:2147483000!important;
    pointer-events:auto!important;
    padding-bottom:220px!important;
  }
  #kgen-heart-live-panel::after{content:"";display:block;height:220px;min-height:220px;}

  /* 真收合規則：最後覆蓋所有舊版 display:block */
  html body.k12345-heart-collapsed #kgen-heart-live-panel,
  html body #kgen-heart-live-panel.kgen-v911-closed,
  html body #kgen-heart-live-panel[aria-hidden="true"]{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }
  html body:not(.k12345-heart-collapsed) #kgen-heart-live-panel.kgen-v911-open,
  html body #kgen-heart-live-panel[aria-hidden="false"]{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  /* GA Evolution：往上，右邊界對齊下方規則窗右緣 */
  .ga-matrix{
    position:fixed!important;
    left:auto!important;
    right:58px!important;
    top:auto!important;
    bottom:560px!important;
    width:190px!important;
    max-width:190px!important;
    transform:none!important;
    z-index:2147481200!important;
    box-sizing:border-box!important;
  }

  @media(max-width:720px){
    :root{
      --kgen-v911-left-x:10px;
      --kgen-v911-left-w:min(438px,calc(100vw - 220px));
      --kgen-v911-status-top:132px;
      --kgen-v911-toggle-top:182px;
      --kgen-v911-bars-top:226px;
      --kgen-v911-panel-top:392px;
    }
    .ga-matrix{right:58px!important;bottom:545px!important;width:190px!important;max-width:190px!important;}
  }


/* ===== SOURCE_STYLE: kgen-v913-stable-layout-css ===== */

:root{
  --kgen-v913-left-x:10px;
  --kgen-v913-left-w:min(438px, calc(100vw - 220px));
  --kgen-v913-status-top:132px;
  --kgen-v913-toggle-top:182px;
  --kgen-v913-bars-top:226px;
  --kgen-v913-panel-top:392px;
}
/* Use previous V9.1.1 width; only stabilize stacking and spacing. */
#kgen-v902-left-status,
.kgen-left-status,
#kgen-heart-toggle,
.resource-bars,
#kgen-heart-live-panel{
  left:var(--kgen-v913-left-x)!important;
  width:var(--kgen-v913-left-w)!important;
  max-width:var(--kgen-v913-left-w)!important;
  box-sizing:border-box!important;
}
#kgen-v902-left-status,.kgen-left-status{top:var(--kgen-v913-status-top)!important;z-index:2147482600!important;}
#kgen-heart-toggle{top:var(--kgen-v913-toggle-top)!important;z-index:2147482700!important;pointer-events:auto!important;cursor:pointer!important;}
.resource-bars{top:var(--kgen-v913-bars-top)!important;z-index:2147482500!important;pointer-events:none!important;}
.resource-bars .rb{width:100%!important;max-width:100%!important;box-sizing:border-box!important;}
#kgen-heart-live-panel{
  top:var(--kgen-v913-panel-top)!important;
  max-height:calc(100vh - var(--kgen-v913-panel-top) - 92px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  padding-bottom:260px!important;
  z-index:2147483000!important;
  pointer-events:auto!important;
}
#kgen-heart-live-panel::after{content:"";display:block;height:220px;min-height:220px;}
/* FINAL true close rule. This appears after all older V7/V8/V9 rules. */
html body[data-kgen-heart-open="0"] #kgen-heart-live-panel,
html body #kgen-heart-live-panel[data-kgen-state="closed"],
html body #kgen-heart-live-panel.kgen-v913-closed{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
html body[data-kgen-heart-open="1"] #kgen-heart-live-panel,
html body #kgen-heart-live-panel[data-kgen-state="open"],
html body #kgen-heart-live-panel.kgen-v913-open{
  display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
}
/* GA Evolution: restore visible placement; keep clear of warp lever and align with lower right panel. */
.ga-matrix{
  position:fixed!important;
  left:auto!important;
  right:66px!important;
  bottom:500px!important;
  top:auto!important;
  width:190px!important;
  max-width:190px!important;
  transform:none!important;
  z-index:2147481200!important;
  box-sizing:border-box!important;
}
@media(max-width:720px){
  :root{
    --kgen-v913-left-x:10px;
    --kgen-v913-left-w:min(438px, calc(100vw - 220px));
    --kgen-v913-status-top:132px;
    --kgen-v913-toggle-top:182px;
    --kgen-v913-bars-top:226px;
    --kgen-v913-panel-top:392px;
  }
  .ga-matrix{right:66px!important;bottom:500px!important;width:190px!important;max-width:190px!important;}
}


/* ===== SOURCE_STYLE: kgen-v915-stable-separate-panel-css ===== */

:root{
  --kgen-v913-left-x:10px;
  --kgen-v913-left-w:min(438px, calc(100vw - 220px));
  --kgen-v913-status-top:124px;
  --kgen-v913-toggle-top:168px;
  --kgen-v913-bars-top:224px;
  --kgen-v913-panel-top:376px;
}
#kgen-v902-left-status,.kgen-left-status{top:var(--kgen-v913-status-top)!important;}
#kgen-heart-toggle{top:var(--kgen-v913-toggle-top)!important;}
.resource-bars{top:var(--kgen-v913-bars-top)!important;}
#kgen-heart-live-panel{top:var(--kgen-v913-panel-top)!important;}
/* GA: sit above the rule panel, left of warp lever, right edge aligned to lower rule box. */
.ga-matrix{
  position:fixed!important;
  left:auto!important;
  right:68px!important;
  bottom:620px!important;
  top:auto!important;
  width:188px!important;
  max-width:188px!important;
  transform:none!important;
  z-index:2147481200!important;
  box-sizing:border-box!important;
}
/* Separate old heart-operation window. It must not be controlled by the top temple-console toggle. */
#bet-live-panel.bet-live-panel{
  z-index:2147482400!important;
  pointer-events:auto!important;
  max-height:56vh!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
body[data-kgen-bet-open="0"] #bet-live-panel.bet-live-panel,
#bet-live-panel[data-kgen-state="closed"]{
  display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;
}
body[data-kgen-bet-open="1"] #bet-live-panel.bet-live-panel,
#bet-live-panel[data-kgen-state="open"]{
  display:block!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
}
/* The footer label is drawn by CSS so old document-level handlers do not mistake it for the top console trigger. */
.kgen-v915-bottom-heart-label::before{content:'悟空心臟';}
/* Stable countdown: no animation, no height jump, no second-by-second visual flashing. */
#kh-ny-slot,#kh-ny-countdown,.kh-ny-countdown,#cd-1231,
#kgen-heart-live-panel [id*="ny"],#kgen-heart-live-panel [class*="ny"],
#kgen-heart-live-panel [id*="1231"],#kgen-heart-live-panel [class*="1231"]{
  animation:none!important;transition:none!important;opacity:1!important;
  font-variant-numeric:tabular-nums!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  min-height:20px!important;line-height:20px!important;max-height:42px!important;
}
.v915-cup-ok{background:linear-gradient(135deg,rgba(255,215,120,.42),rgba(0,242,255,.16))!important;color:#ffe9a8!important;}
.v915-cup-no{background:rgba(255,70,70,.14)!important;border-color:rgba(255,120,120,.45)!important;color:#ffd0d0!important;}
@media(max-width:720px){
  :root{
    --kgen-v913-left-x:10px;
    --kgen-v913-left-w:min(438px, calc(100vw - 220px));
    --kgen-v913-status-top:124px;
    --kgen-v913-toggle-top:168px;
    --kgen-v913-bars-top:224px;
    --kgen-v913-panel-top:376px;
  }
  .ga-matrix{right:68px!important;bottom:620px!important;width:188px!important;max-width:188px!important;}
}


/* ===== SOURCE_STYLE: kgen-v916-final-separate-panel-style ===== */

  :root{
    --kgen-v916-left-x:10px;
    --kgen-v916-left-w:min(360px, 45vw, calc(100vw - 24px));
  }
  /* left HUD keeps V9.1.3 width; only normalize stacking and small spacing */
  #sys-msg,
  #kgen-top-message,
  #kgen-heart-toggle,
  .resource-bars,
  #kgen-heart-live-panel{
    left:var(--kgen-v916-left-x)!important;
    width:var(--kgen-v916-left-w)!important;
    max-width:var(--kgen-v916-left-w)!important;
    box-sizing:border-box!important;
  }
  #kgen-heart-live-panel{
    z-index:100420!important;
  }
  #kgen-heart-toggle{z-index:100430!important;}
  #sys-msg,#kgen-top-message{z-index:100440!important;}
  .resource-bars{z-index:100410!important;}

  /* Bottom Heart operation window is independent from top Heart control console */
  #bet-live-panel{
    position:fixed!important;
    left:12px!important;
    bottom:154px!important;
    width:var(--kgen-v916-left-w)!important;
    max-width:var(--kgen-v916-left-w)!important;
    max-height:calc(100vh - 330px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    z-index:100360!important;
    box-sizing:border-box!important;
  }
  body:not(.kgen-v916-heart-ops-open) #bet-live-panel{display:none!important;}
  body.kgen-v916-heart-ops-open #bet-live-panel{display:block!important;}
  #bet-live-panel .bp-head button{pointer-events:auto!important;}

  /* Bottom eight buttons must stay above all floating panels */
  .footer-terminal{
    position:fixed!important;
    left:0!important;right:0!important;bottom:0!important;
    z-index:200000!important;
    pointer-events:auto!important;
  }
  .footer-terminal .term-btn{pointer-events:auto!important;position:relative!important;z-index:200001!important;}

  /* GA Evolution: move up/left, align visually with the lower rule/coord block while avoiding warp lever */
  .ga-matrix{
    position:fixed!important;
    left:auto!important;
    right:128px!important;
    bottom:392px!important;
    top:auto!important;
    transform:none!important;
    width:154px!important;
    max-width:154px!important;
    padding:10px 12px!important;
    z-index:100120!important;
    box-sizing:border-box!important;
  }
  .ga-matrix .ga-stat{font-size:10px!important;margin-bottom:7px!important;}
  .ga-matrix .ga-bar{height:5px!important;}
  @media(max-width:720px){
    :root{--kgen-v916-left-x:10px;--kgen-v916-left-w:min(348px, 46vw, calc(100vw - 22px));}
    #bet-live-panel{bottom:150px!important;max-height:calc(100vh - 315px)!important;}
    .ga-matrix{right:132px!important;bottom:390px!important;width:150px!important;max-width:150px!important;}
  }

  /* Stable countdown: one line, no blinking, no height change */
  #kh-ny-slot,#cd-1231,#kh-ny-countdown,.kh-ny-countdown,
  [id*="ny"],[class*="ny-count"],[class*="countdown"]{
    animation:none!important;
    transition:none!important;
    opacity:1!important;
    font-variant-numeric:tabular-nums!important;
  }
  #kh-ny-slot{
    display:inline-block!important;
    min-width:11.5em!important;
    white-space:nowrap!important;
    line-height:1.25!important;
  }
  #kh-ny-countdown,.kh-ny-countdown{
    min-height:32px!important;
    line-height:1.35!important;
    overflow:hidden!important;
  }


/* ===== SOURCE_STYLE: kgen-v917-hidden-functions-ga-style ===== */

  /* GA 回中上方空白區：不壓曲速桿，也不壓下方規則窗 */
  .ga-matrix{
    position:fixed!important;
    left:clamp(245px, 41vw, 335px)!important;
    top:clamp(222px, 23vh, 286px)!important;
    right:auto!important;
    bottom:auto!important;
    width:176px!important;
    max-width:176px!important;
    padding:13px 14px!important;
    z-index:100130!important;
    transform:none!important;
    box-sizing:border-box!important;
  }
  @media(max-width:720px){
    .ga-matrix{left:clamp(245px, 42vw, 318px)!important;top:clamp(218px, 22vh, 276px)!important;width:168px!important;max-width:168px!important;}
  }
  @media(max-width:560px){
    .ga-matrix{left:calc(50vw - 20px)!important;top:238px!important;width:150px!important;max-width:150px!important;padding:10px!important;}
  }

  /* 左下隱藏功能列：放在方向橫桿與底部八鍵之間，不遮拍照主鍵 */
  #kgen-v917-quick-dock{
    position:fixed;left:12px;bottom:116px;z-index:200010;
    display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;
    width:min(332px,52vw);pointer-events:auto;box-sizing:border-box;
  }
  #kgen-v917-quick-dock button{
    border:1px solid rgba(255,215,120,.45);border-radius:10px;
    background:linear-gradient(180deg,rgba(5,26,28,.88),rgba(0,0,0,.74));
    color:#ffe7a2;font-weight:900;font-size:11px;line-height:1.1;
    min-height:34px;padding:5px 4px;box-shadow:0 0 14px rgba(0,255,255,.08);
    pointer-events:auto;
  }
  #kgen-v917-quick-dock button:hover,#kgen-v917-quick-dock button.active{filter:brightness(1.15);border-color:rgba(127,243,255,.72);color:#cfffff;}
  @media(max-width:720px){#kgen-v917-quick-dock{bottom:112px;width:min(320px,52vw);gap:5px}#kgen-v917-quick-dock button{font-size:10px;min-height:32px;padding:4px 2px}}

  #kgen-v917-hidden-panel{
    position:fixed;left:12px;bottom:158px;z-index:200009;width:min(352px,54vw);
    max-height:310px;overflow:auto;-webkit-overflow-scrolling:touch;display:none;
    background:rgba(4,8,14,.94);border:1px solid rgba(255,215,120,.65);border-radius:14px;
    box-shadow:0 0 24px rgba(0,255,255,.14), inset 0 0 22px rgba(255,215,120,.05);
    color:#eafcff;backdrop-filter:blur(8px);box-sizing:border-box;
  }
  #kgen-v917-hidden-panel.open{display:block!important;}
  #kgen-v917-hidden-panel .v917-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:rgba(7,11,18,.96);border-bottom:1px solid rgba(255,215,120,.25);}
  #kgen-v917-hidden-panel .v917-title{color:#ffd978;font-family:Orbitron,sans-serif;font-weight:900;font-size:13px;}
  #kgen-v917-hidden-panel .v917-close{border:1px solid rgba(255,215,120,.45);border-radius:9px;background:rgba(0,0,0,.55);color:#fff;padding:5px 9px;font-weight:900;}
  #kgen-v917-hidden-panel .v917-body{padding:12px;font-size:12px;line-height:1.55;}
  #kgen-v917-hidden-panel .v917-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;}
  #kgen-v917-hidden-panel .v917-actions button{border:1px solid rgba(255,215,120,.45);border-radius:10px;background:rgba(0,0,0,.55);color:#ffe7a2;font-weight:900;padding:9px 6px;}
  #kgen-v917-hidden-panel .v917-result{margin-top:8px;padding:8px;border:1px solid rgba(127,243,255,.25);border-radius:10px;background:rgba(0,255,255,.06);color:#bfffff;}

  body.kgen-v917-right-nav-collapsed #universe-nav .nav-btn:nth-child(n+3){display:none!important;}
  body.kgen-v917-right-nav-collapsed #universe-nav{gap:8px!important;}

  .footer-terminal{z-index:200020!important;}
  .footer-terminal .term-btn{z-index:200021!important;pointer-events:auto!important;}


/* ===== SOURCE_STYLE: kgen-v918-final-position-style ===== */

  /* GA：回到中上方空白區，不壓 K 線圖、不壓曲速桿、不壓右下規則 */
  .ga-matrix{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:455px!important;
    bottom:auto!important;
    transform:translateX(-50%)!important;
    width:158px!important;
    max-width:158px!important;
    padding:10px 12px!important;
    z-index:100135!important;
    box-sizing:border-box!important;
  }
  .ga-matrix .ga-stat{font-size:10px!important;margin-bottom:7px!important;}
  .ga-matrix .ga-bar{height:5px!important;}

  /* 四個隱藏功能鍵：放在方向橫桿與底部八鍵中間，不擋拍照主鍵 */
  #kgen-v917-quick-dock{
    position:fixed!important;
    left:12px!important;
    bottom:142px!important;
    width:min(330px,52vw)!important;
    max-width:min(330px,52vw)!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    z-index:260000!important;
    pointer-events:auto!important;
    box-sizing:border-box!important;
  }
  #kgen-v917-quick-dock button{
    min-height:32px!important;
    padding:4px 3px!important;
    font-size:10px!important;
    line-height:1.05!important;
    pointer-events:auto!important;
  }
  #kgen-v917-hidden-panel{
    left:12px!important;
    bottom:182px!important;
    width:min(352px,54vw)!important;
    z-index:260001!important;
  }

  /* 底部八鍵永遠在最前線，但不蓋隱藏功能列 */
  .footer-terminal{z-index:240000!important;}
  .footer-terminal .term-btn{z-index:240001!important;}

  /* 右下資訊區塊收合：由底部「客服導覽」控制 */
  body.kgen-v918-right-info-collapsed #coord-panel,
  body.kgen-v918-right-info-collapsed .coord-panel,
  body.kgen-v918-right-info-collapsed #right-info-panel,
  body.kgen-v918-right-info-collapsed .right-info-panel{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }

  @media(max-width:720px){
    .ga-matrix{top:455px!important;left:50%!important;width:154px!important;max-width:154px!important;}
    #kgen-v917-quick-dock{bottom:142px!important;width:min(320px,52vw)!important;gap:5px!important;}
    #kgen-v917-hidden-panel{bottom:182px!important;width:min(348px,55vw)!important;}
  }
  @media(max-width:560px){
    .ga-matrix{top:455px!important;left:50%!important;width:148px!important;max-width:148px!important;}
    #kgen-v917-quick-dock{left:10px!important;bottom:140px!important;width:min(316px,53vw)!important;}
    #kgen-v917-hidden-panel{left:10px!important;bottom:180px!important;width:min(340px,56vw)!important;}
  }


/* ===== SOURCE_STYLE: kgen-v919-layout-polish-style ===== */

  :root{
    --kgen-v919-left-x:10px;
    --kgen-v919-left-w:min(438px, calc(100vw - 220px));
  }

  /* 左上：訊息欄、控制台、暗物質、質量、Heart 面板同寬，視覺更齊 */
  #kgen-v902-left-status,#kgen-v902-live-status,#kgen-v902-message-strip,
  #kgen-live-status,#kgen-msg-strip,#kgen-status-strip,.kgen-live-status,.left-message,.hud-message,
  #kgen-heart-toggle,.resource-bars,#kgen-heart-live-panel{
    left:var(--kgen-v919-left-x)!important;
    width:var(--kgen-v919-left-w)!important;
    max-width:var(--kgen-v919-left-w)!important;
    box-sizing:border-box!important;
  }
  #kgen-v902-left-status,#kgen-v902-live-status,#kgen-v902-message-strip,
  #kgen-live-status,#kgen-msg-strip,#kgen-status-strip,.kgen-live-status,.left-message,.hud-message{
    top:132px!important;
    z-index:2147482600!important;
  }
  #kgen-heart-toggle{top:178px!important;z-index:2147482700!important;}
  .resource-bars{top:222px!important;z-index:2147482500!important;}
  #kgen-heart-live-panel{
    top:386px!important;
    max-height:calc(100vh - 386px - 96px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    z-index:2147482500!important;
  }

  /* GA Evolution：移到中上方空白區，避開 K 線圖、右側按鈕與曲速桿 */
  .ga-matrix{
    position:fixed!important;
    left:clamp(360px, 50vw, 500px)!important;
    top:clamp(240px, 28vh, 330px)!important;
    right:auto!important;
    bottom:auto!important;
    transform:none!important;
    width:162px!important;
    max-width:162px!important;
    padding:10px 12px!important;
    z-index:100120!important;
    box-sizing:border-box!important;
  }
  .ga-matrix .ga-stat{font-size:10px!important;margin-bottom:7px!important;}
  .ga-matrix .ga-bar{height:5px!important;}

  /* 左下 4 鍵：精準卡在方向橫桿與 8 主按鍵中間 */
  #kgen-v917-quick-dock{
    left:10px!important;
    bottom:128px!important;
    width:min(338px, 52vw)!important;
    max-width:min(338px, 52vw)!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    z-index:260000!important;
  }
  #kgen-v917-quick-dock button{
    min-height:30px!important;
    font-size:10px!important;
    line-height:1.05!important;
    padding:3px 2px!important;
  }
  #kgen-v917-hidden-panel{
    left:10px!important;
    bottom:164px!important;
    width:min(438px, calc(100vw - 220px))!important;
    max-height:44vh!important;
    z-index:260001!important;
  }

  /* 右下資訊面板：收合按鍵控制此區，尺寸接近悟空心臟控制窗比例 */
  #coord-panel,.coord-panel,#right-info-panel,.right-info-panel{
    width:min(438px, calc(100vw - 220px))!important;
    max-width:min(438px, calc(100vw - 220px))!important;
    min-height:210px!important;
    box-sizing:border-box!important;
  }
  body.kgen-v919-right-info-collapsed #coord-panel,
  body.kgen-v919-right-info-collapsed .coord-panel,
  body.kgen-v919-right-info-collapsed #right-info-panel,
  body.kgen-v919-right-info-collapsed .right-info-panel,
  body.kgen-v918-right-info-collapsed #coord-panel,
  body.kgen-v918-right-info-collapsed .coord-panel,
  body.kgen-v918-right-info-collapsed #right-info-panel,
  body.kgen-v918-right-info-collapsed .right-info-panel{
    display:none!important;visibility:hidden!important;pointer-events:none!important;
  }

  /* 跨年倒數：取消所有閃爍、動畫、跳行與高度變化 */
  #kh-ny-slot,#cd-1231,#kh-ny-countdown,.kh-ny-countdown,
  #kgen-ny-countdown,#v714-ny-count,[id*="ny"],[class*="ny-count"],[class*="countdown"]{
    animation:none!important;
    transition:none!important;
    opacity:1!important;
    white-space:nowrap!important;
    min-height:20px!important;
    line-height:20px!important;
    overflow:hidden!important;
  }
  #kh-ny-countdown,.kh-ny-countdown{display:block!important;height:auto!important;}

  @media(max-width:720px){
    :root{--kgen-v919-left-x:10px;--kgen-v919-left-w:min(438px, calc(100vw - 220px));}
    .ga-matrix{left:clamp(280px, 42vw, 390px)!important;top:clamp(238px, 27vh, 310px)!important;width:156px!important;max-width:156px!important;}
    #kgen-v917-quick-dock{bottom:126px!important;width:min(330px, 52vw)!important;}
    #kgen-v917-hidden-panel{bottom:162px!important;width:min(438px, calc(100vw - 220px))!important;}
  }
  @media(max-width:560px){
    :root{--kgen-v919-left-w:min(360px, calc(100vw - 24px));}
    .ga-matrix{left:calc(50vw - 28px)!important;top:365px!important;width:148px!important;max-width:148px!important;}
    #kgen-v917-quick-dock{left:10px!important;bottom:126px!important;width:min(318px, 54vw)!important;}
    #kgen-v917-hidden-panel{left:10px!important;bottom:162px!important;width:min(360px, 56vw)!important;}
  }


/* ===== SOURCE_STYLE: kgen-v920-layout-final-polish-style ===== */

  :root{
    --kgen-v920-left-x:10px;
    --kgen-v920-left-w:min(438px, calc(100vw - 220px));
  }

  /* 版本顯示：避免舊版本混在畫面 */
  .sys-st::first-line{font-size:12px!important;}

  /* GA：從 K 線圖上移開，放在中上空白，尺寸縮小但可讀 */
  .ga-matrix{
    position:fixed!important;
    left:clamp(372px, 53vw, 505px)!important;
    top:clamp(430px, 42vh, 500px)!important;
    right:auto!important;
    bottom:auto!important;
    transform:none!important;
    width:158px!important;
    max-width:158px!important;
    min-width:158px!important;
    padding:9px 10px!important;
    z-index:100120!important;
    box-sizing:border-box!important;
    pointer-events:none!important;
  }
  .ga-matrix div:first-child{font-size:12px!important;margin-bottom:6px!important;}
  .ga-matrix .ga-stat{font-size:9.5px!important;margin-bottom:5px!important;}
  .ga-matrix .ga-bar{height:4px!important;margin-top:2px!important;}

  /* 曲速引擎上移，避免和方向盤/右下按鈕擠在一起 */
  .warp-engine{
    right:8px!important;
    bottom:318px!important;
    z-index:155!important;
  }

  /* 左上群組維持 V9.1.9 寬度，但讓控制台與訊息更整齊 */
  #kgen-v902-left-status,#kgen-v902-live-status,#kgen-v902-message-strip,
  #kgen-live-status,#kgen-msg-strip,#kgen-status-strip,.kgen-live-status,.left-message,.hud-message,
  #kgen-heart-toggle,.resource-bars,#kgen-heart-live-panel{
    left:var(--kgen-v920-left-x)!important;
    width:var(--kgen-v920-left-w)!important;
    max-width:var(--kgen-v920-left-w)!important;
    box-sizing:border-box!important;
  }
  #kgen-heart-live-panel{z-index:2147482400!important;}

  /* 左下隱藏功能列：只保留一列，固定在方向橫桿和八鍵中間 */
  #kgen-v917-quick-dock{
    display:grid!important;
    position:fixed!important;
    left:10px!important;
    bottom:126px!important;
    width:min(338px,52vw)!important;
    max-width:min(338px,52vw)!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:6px!important;
    z-index:260000!important;
    pointer-events:auto!important;
  }
  #kgen-v917-quick-dock button{
    min-height:30px!important;
    font-size:10px!important;
    line-height:1.08!important;
    padding:3px 2px!important;
    white-space:nowrap!important;
  }
  #kgen-v917-hidden-panel{
    left:10px!important;
    bottom:164px!important;
    width:min(438px, calc(100vw - 220px))!important;
    max-height:44vh!important;
    z-index:260001!important;
  }

  /* 底部八鍵永遠在最上層，且不被左側面板蓋掉 */
  .footer-terminal{
    z-index:300000!important;
    pointer-events:auto!important;
  }
  .footer-terminal .term-btn,.footer-terminal button{
    pointer-events:auto!important;
    z-index:300001!important;
  }

  /* 右下資訊區塊與右側神規 */
  #coord-panel,.coord-panel,#right-info-panel,.right-info-panel{
    width:min(420px, calc(100vw - 235px))!important;
    max-width:min(420px, calc(100vw - 235px))!important;
    box-sizing:border-box!important;
  }
  body.kgen-v920-right-info-collapsed #coord-panel,
  body.kgen-v920-right-info-collapsed .coord-panel,
  body.kgen-v920-right-info-collapsed #right-info-panel,
  body.kgen-v920-right-info-collapsed .right-info-panel,
  body.kgen-v919-right-info-collapsed #coord-panel,
  body.kgen-v919-right-info-collapsed .coord-panel,
  body.kgen-v919-right-info-collapsed #right-info-panel,
  body.kgen-v919-right-info-collapsed .right-info-panel,
  body.kgen-v918-right-info-collapsed #coord-panel,
  body.kgen-v918-right-info-collapsed .coord-panel,
  body.kgen-v918-right-info-collapsed #right-info-panel,
  body.kgen-v918-right-info-collapsed .right-info-panel{
    display:none!important;visibility:hidden!important;pointer-events:none!important;
  }

  /* 跨年倒數：固定單行、固定高度、取消動畫。用分鐘顯示，不再每秒抖。 */
  #kh-ny-slot,#cd-1231,#kh-ny-countdown,.kh-ny-countdown,
  #kgen-ny-countdown,#v714-ny-count,[id*="ny"],[class*="ny-count"],[class*="countdown"]{
    animation:none!important;
    transition:none!important;
    opacity:1!important;
    white-space:nowrap!important;
    height:20px!important;
    min-height:20px!important;
    max-height:20px!important;
    line-height:20px!important;
    overflow:hidden!important;
  }

  @media(max-width:720px){
    .ga-matrix{left:clamp(344px, 55vw, 430px)!important;top:clamp(430px, 41vh, 505px)!important;width:152px!important;max-width:152px!important;min-width:152px!important;}
    .warp-engine{bottom:318px!important;}
    #kgen-v917-quick-dock{bottom:126px!important;width:min(338px,52vw)!important;}
  }
  @media(max-width:560px){
    .ga-matrix{left:calc(50vw + 35px)!important;top:430px!important;width:145px!important;max-width:145px!important;min-width:145px!important;}
    #kgen-v917-quick-dock{left:10px!important;width:min(318px,54vw)!important;}
  }


/* ===== SOURCE_STYLE: kgen-v10-hud-layer-system-style ===== */

:root{
  --kgen-v10-bg-z:1;
  --kgen-v10-core-z:50;
  --kgen-v10-hud-z:2147482200;
  --kgen-v10-popup-z:2147482700;
  --kgen-v10-dock-z:2147483200;
  --kgen-v10-modal-z:2147483400;
  --kgen-v10-safe-bottom:env(safe-area-inset-bottom,0px);
  --kgen-v10-dock-h:126px;
  --kgen-v10-left-x:10px;
  --kgen-v10-panel-w:min(438px, calc(100vw - 220px));
}
html,body{
  height:100dvh!important;
  max-height:100dvh!important;
  overflow:hidden!important;
}
canvas#galaxy-bg{z-index:var(--kgen-v10-bg-z)!important;}
#core-anchor{z-index:var(--kgen-v10-core-z)!important;}

/* Dock 永遠最上面 */
.footer-terminal{
  position:fixed!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  width:100%!important;
  z-index:var(--kgen-v10-dock-z)!important;
  box-sizing:border-box!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  pointer-events:auto!important;
}
.footer-terminal .term-btn,.footer-terminal button{pointer-events:auto!important;}

/* 左側控制台不推版，只自己滾 */
#web3-panel,#kgen-heart-live-panel,#kgen-v917-hidden-panel{
  position:fixed!important;
  left:var(--kgen-v10-left-x)!important;
  width:var(--kgen-v10-panel-w)!important;
  max-width:var(--kgen-v10-panel-w)!important;
  max-height:calc(100dvh - var(--kgen-v10-dock-h) - 108px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  z-index:var(--kgen-v10-popup-z)!important;
  box-sizing:border-box!important;
}
#web3-panel{bottom:calc(var(--kgen-v10-dock-h) + 16px)!important;}

/* V9.2.0 原四小鍵保留，不複製、不刪除 */
#kgen-v917-quick-dock{
  position:fixed!important;
  left:10px!important;
  bottom:calc(var(--kgen-v10-dock-h) + 8px)!important;
  width:min(338px,52vw)!important;
  max-width:min(338px,52vw)!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  z-index:calc(var(--kgen-v10-dock-z) - 10)!important;
  pointer-events:auto!important;
}
#kgen-v917-quick-dock button{
  min-height:30px!important;
  font-size:10px!important;
  line-height:1.05!important;
  padding:3px 2px!important;
}

/* 右下神規 HUD：變長，浮在中央圖上方 */
#coord-panel,.coord-panel,#right-info-panel,.right-info-panel{
  position:fixed!important;
  right:92px!important;
  bottom:calc(var(--kgen-v10-dock-h) + 84px)!important;
  width:var(--kgen-v10-panel-w)!important;
  max-width:var(--kgen-v10-panel-w)!important;
  min-width:min(360px,var(--kgen-v10-panel-w))!important;
  min-height:300px!important;
  max-height:calc(100dvh - var(--kgen-v10-dock-h) - 180px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  z-index:var(--kgen-v10-hud-z)!important;
  box-sizing:border-box!important;
  pointer-events:auto!important;
}
body.kgen-v10-right-info-collapsed #coord-panel,
body.kgen-v10-right-info-collapsed .coord-panel,
body.kgen-v10-right-info-collapsed #right-info-panel,
body.kgen-v10-right-info-collapsed .right-info-panel,
body.kgen-v918-right-info-collapsed #coord-panel,
body.kgen-v918-right-info-collapsed .coord-panel,
body.kgen-v918-right-info-collapsed #right-info-panel,
body.kgen-v918-right-info-collapsed .right-info-panel{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* 右側神規固定文字 */
.footer-terminal .term-btn[data-kgen-v10-right-rule="1"],
.footer-terminal button[data-kgen-v10-right-rule="1"]{
  border-color:rgba(0,242,255,.55)!important;
  color:#dffbff!important;
  box-shadow:inset 0 0 12px rgba(0,242,255,.12)!important;
}

/* GA Evolution 獨立 HUD */
.ga-matrix{
  position:fixed!important;
  left:58%!important;
  top:176px!important;
  right:auto!important;
  bottom:auto!important;
  transform:translateX(-50%) scale(.92)!important;
  transform-origin:top center!important;
  width:156px!important;
  min-width:156px!important;
  max-width:156px!important;
  padding:9px 10px!important;
  z-index:var(--kgen-v10-hud-z)!important;
  pointer-events:none!important;
  box-sizing:border-box!important;
}
.ga-matrix .ga-stat{font-size:9.5px!important;margin-bottom:5px!important;}
.ga-matrix .ga-bar{height:4px!important;margin-top:2px!important;}

/* Warp 往上，不撞方向盤 */
.warp-engine{
  bottom:calc(var(--kgen-v10-dock-h) + 210px)!important;
  z-index:var(--kgen-v10-hud-z)!important;
}

/* 左上資源條下移 */
.resource-bars{
  top:236px!important;
  z-index:var(--kgen-v10-hud-z)!important;
}

/* 跨年倒數停止閃爍 */
#kh-ny-slot,#cd-1231,#kh-ny-countdown,.kh-ny-countdown,
#kgen-ny-countdown,#v714-ny-count,[id*="ny"],[class*="ny-count"],[class*="countdown"]{
  animation:none!important;
  transition:none!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  min-height:20px!important;
  line-height:20px!important;
  overflow:hidden!important;
}

/* Modal Layer */
.guide-modal.show,.history-modal.show,#coord-modal.show,#order-fx.show,
#temple-single-modal.show,#temple-single-modal.v81-show,.temple-single-modal.show{
  z-index:var(--kgen-v10-modal-z)!important;
}

@media(max-width:760px){
  :root{
    --kgen-v10-dock-h:98px;
    --kgen-v10-panel-w:min(360px, calc(100vw - 24px));
  }
  .footer-terminal{z-index:var(--kgen-v10-dock-z)!important;}
  #web3-panel,#kgen-heart-live-panel,#kgen-v917-hidden-panel{
    left:8px!important;
    width:var(--kgen-v10-panel-w)!important;
    max-width:var(--kgen-v10-panel-w)!important;
    max-height:calc(100dvh - var(--kgen-v10-dock-h) - 132px)!important;
    bottom:calc(var(--kgen-v10-dock-h) + 46px)!important;
  }
  #coord-panel,.coord-panel,#right-info-panel,.right-info-panel{
    right:66px!important;
    bottom:calc(var(--kgen-v10-dock-h) + 112px)!important;
    width:min(360px,58vw)!important;
    max-width:min(360px,58vw)!important;
    min-width:0!important;
    min-height:286px!important;
    max-height:calc(100dvh - var(--kgen-v10-dock-h) - 190px)!important;
  }
  .ga-matrix{
    left:calc(50vw + 78px)!important;
    top:188px!important;
    width:142px!important;
    min-width:142px!important;
    max-width:142px!important;
    transform:translateX(-50%) scale(.86)!important;
    padding:8px!important;
  }
  .warp-engine{bottom:calc(var(--kgen-v10-dock-h) + 188px)!important;}
  .resource-bars{top:236px!important;}
  #kgen-v917-quick-dock{
    bottom:calc(var(--kgen-v10-dock-h) + 8px)!important;
    width:min(318px,54vw)!important;
  }
}


/* ===== SOURCE_STYLE: kgen-v101-hud-runtime-voice-fix-style ===== */

:root{--kgen-v101-modal-z:2147483600;}
.warp-engine{bottom:calc(var(--kgen-v10-dock-h,98px) + 242px)!important;z-index:var(--kgen-v10-hud-z,2147482200)!important;}
@media(max-width:760px){.warp-engine{bottom:calc(var(--kgen-v10-dock-h,98px) + 230px)!important;}}
@media(max-width:560px){.warp-engine{bottom:calc(var(--kgen-v10-dock-h,98px) + 220px)!important;}}
#kh-ny-slot,#cd-1231,#kh-ny-countdown,.kh-ny-countdown,#kgen-ny-countdown,#v714-ny-count,[id*="ny"],[class*="ny-count"],[class*="countdown"]{
animation:none!important;transition:none!important;opacity:1!important;filter:none!important;text-shadow:none!important;white-space:nowrap!important;min-height:20px!important;line-height:20px!important;overflow:hidden!important;
}
#kgen-v101-cup-help{margin:8px 0!important;padding:9px 10px!important;border:1px solid rgba(0,242,255,.32)!important;border-radius:12px!important;background:rgba(0,22,28,.72)!important;color:#dffbff!important;font-size:11px!important;line-height:1.55!important;box-shadow:inset 0 0 14px rgba(0,242,255,.08),0 0 16px rgba(0,242,255,.08)!important;}
#kgen-v101-cup-help b{color:#ffd778!important} #kgen-v101-cup-help .ok{color:#72ffcf!important;font-weight:900!important} #kgen-v101-cup-help .warn{color:#ffd778!important;font-weight:900!important}
#kgen-v101-cup-voice-btn{margin-top:6px!important;min-height:28px!important;width:100%!important;border-radius:10px!important;border:1px solid rgba(255,215,120,.40)!important;background:rgba(0,0,0,.55)!important;color:#ffd778!important;font-weight:900!important;font-size:11px!important;}
#world-map,#map-modal,#galaxy-map,#universe-map,.world-map,.map-modal,.galaxy-map,.universe-map,[id*="world"][id*="map"],[id*="galaxy"][id*="map"],[id*="universe"][id*="map"],[class*="world"][class*="map"],[class*="galaxy"][class*="map"],[class*="universe"][class*="map"]{z-index:var(--kgen-v101-modal-z)!important;}
body.kgen-v101-map-open #world-map,body.kgen-v101-map-open #map-modal,body.kgen-v101-map-open #galaxy-map,body.kgen-v101-map-open #universe-map,body.kgen-v101-map-open .world-map,body.kgen-v101-map-open .map-modal,body.kgen-v101-map-open .galaxy-map,body.kgen-v101-map-open .universe-map{z-index:var(--kgen-v101-modal-z)!important;position:fixed!important;}


/* ===== SOURCE_STYLE: kgen-v102-festival-runtime-lock-style ===== */

  #kgen-v102-festival-panel {
    position: fixed;
    right: 12px;
    top: 286px;
    width: min(330px, 42vw);
    max-height: 42vh;
    overflow-y: auto;
    z-index: 2147482305;
    box-sizing: border-box;
    border: 1px solid rgba(255, 215, 120, .38);
    border-radius: 16px;
    background: rgba(0, 0, 0, .72);
    color: #fff3ca;
    padding: 10px;
    box-shadow: 0 0 22px rgba(255, 215, 120, .12), inset 0 0 18px rgba(0, 242, 255, .06);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    font-size: 11px;
    line-height: 1.5;
  }
  #kgen-v102-festival-panel h3 {
    margin: 0 0 6px;
    color: #ffd778;
    font-size: 13px;
    letter-spacing: .04em;
  }
  #kgen-v102-festival-panel .kgen-v102-festival-row {
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 12px;
    padding: 8px;
    margin-top: 7px;
    background: rgba(255,255,255,.035);
  }
  #kgen-v102-festival-panel b {
    color: #7ff3ff;
  }
  #kgen-v102-festival-panel button {
    width: 100%;
    min-height: 30px;
    margin-top: 6px;
    border-radius: 10px;
    border: 1px solid rgba(255,215,120,.45);
    background: rgba(0,0,0,.55);
    color: #ffd778;
    font-weight: 900;
    font-size: 11px;
  }
  #kgen-v102-festival-countdown {
    color: #72ffcf;
    font-family: monospace;
    font-weight: 900;
    white-space: normal !important;
    animation: none !important;
    transition: none !important;
    opacity: 1 !important;
  }
  #kgen-v102-festival-panel.kgen-v102-collapsed .kgen-v102-festival-body {
    display: none;
  }
  #kgen-v102-festival-panel.kgen-v102-collapsed {
    width: 155px;
    max-height: 42px;
    overflow: hidden;
  }

  /* 鎖定活動相關按鍵，不讓舊 runtime 改名 */
  [data-kgen-v102-action="festival520"],
  [data-kgen-v102-action="festival1111"],
  [data-kgen-v102-action="newyear"] {
    pointer-events: auto !important;
  }

  @media(max-width:760px) {
    #kgen-v102-festival-panel {
      top: 272px;
      right: 8px;
      width: min(315px, 48vw);
      max-height: 38vh;
      font-size: 10px;
      padding: 8px;
    }
    #kgen-v102-festival-panel h3 {
      font-size: 12px;
    }
  }
