/* ==========================================================
   幻兽传奇 · 全站样式（像素风 / 移动优先）
   ========================================================== */

:root{
  --bg:#0d0e15;
  --bg2:#14161f;
  --panel:#1a1c28;
  --panel2:#22253a;
  --line:#2e3350;
  --text:#e9ecf7;
  --dim:#98a0bd;
  --gold:#ffc94a;
  --green:#5fce6a;
  --red:#e8544d;
  --blue:#4a9ef0;
  --purple:#a06be0;
  --radius:10px;
  --shadow:0 6px 0 rgba(0,0,0,.45);
  --font:"Segoe UI","PingFang SC","Microsoft YaHei",system-ui,sans-serif;
}

*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}

/* hidden 属性 / .hidden 类统一兜底：
   作者样式里的 display:flex|grid 会盖掉 UA 的 [hidden]{display:none}，
   不兜底的话 #modal / #act-map / #result 会在页面一加载就露出。 */
[hidden],
.hidden{display:none!important;}

html,body{height:100%;}
body{
  margin:0;
  font-family:var(--font);
  color:var(--text);
  background:
    radial-gradient(1200px 600px at 50% -10%, #232a4a 0%, transparent 60%),
    linear-gradient(180deg,#0b0c12 0%, #0d0e15 100%);
  overflow:hidden;
  font-size:15px;
  -webkit-font-smoothing:antialiased;
}
.hidden{display:none !important;}
button{font-family:inherit;cursor:pointer;}
input,select{font-family:inherit;}

/* ---------------- 通用控件 ---------------- */
.btn-main{
  width:100%;padding:13px 16px;margin-top:14px;
  border:0;border-radius:var(--radius);
  background:linear-gradient(180deg,#ffd25e,#f0a824);
  color:#3a2600;font-weight:800;font-size:16px;letter-spacing:.5px;
  box-shadow:0 4px 0 #a8720f;
  transition:transform .06s, box-shadow .06s;
}
.btn-main:active{transform:translateY(3px);box-shadow:0 1px 0 #a8720f;}

.btn{
  padding:10px 14px;border-radius:8px;border:1px solid var(--line);
  background:var(--panel2);color:var(--text);font-size:14px;font-weight:700;
}
.btn.primary{background:linear-gradient(180deg,#ffd25e,#f0a824);color:#3a2600;border:0;box-shadow:0 3px 0 #a8720f;}
.btn.ghost{background:transparent;}
.btn.danger{background:#3a1e1e;border-color:#5c2a2a;color:#ff9c96;}
.btn:active{transform:translateY(2px);}

.icon-btn{
  width:34px;height:34px;border-radius:8px;border:1px solid var(--line);
  background:var(--panel2);color:var(--dim);font-size:16px;line-height:1;
  display:grid;place-items:center;
}
.icon-btn:active{background:#2c3048;}

/* ==========================================================
   登录 / 注册 / 找回
   ========================================================== */
.auth{
  position:fixed;inset:0;display:grid;place-items:center;
  padding:16px;overflow:auto;z-index:20;
  background:
    radial-gradient(900px 500px at 50% 0%, #2a2350 0%, transparent 70%),
    linear-gradient(180deg,#0b0c14,#11121c);
}
.auth-box{
  width:100%;max-width:420px;
  background:linear-gradient(180deg,rgba(30,33,50,.96),rgba(18,20,30,.98));
  border:1px solid var(--line);border-radius:16px;
  padding:22px 18px 18px;
  box-shadow:0 20px 60px rgba(0,0,0,.6), inset 0 1px 0 rgba(255,255,255,.05);
}
.logo{
  text-align:center;font-size:34px;font-weight:900;letter-spacing:6px;line-height:1;
}
.logo-a{color:#8fe07a;text-shadow:0 0 18px rgba(143,224,122,.5);}
.logo-b{color:var(--gold);text-shadow:0 0 18px rgba(255,201,74,.5);}
.logo-sub{
  text-align:center;color:#5c6485;font-size:11px;letter-spacing:5px;margin:6px 0 18px;font-weight:700;
}

.tabs{display:flex;gap:6px;background:#0e1018;padding:4px;border-radius:10px;border:1px solid var(--line);}
.tabs .tab{
  flex:1;padding:9px 4px;border:0;border-radius:8px;background:transparent;
  color:var(--dim);font-size:14px;font-weight:700;
}
.tabs .tab.on{background:var(--panel2);color:var(--text);box-shadow:0 2px 0 rgba(0,0,0,.4);}
.tabs.small{margin-bottom:12px;}
.tabs.small .tab{font-size:13px;padding:7px 4px;}

.pane{display:none;margin-top:14px;}
.pane.on{display:block;animation:fade .18s ease;}
@keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

label{display:block;font-size:12px;color:var(--dim);margin:10px 0 5px;font-weight:700;letter-spacing:.5px;}
input[type=text],input[type=password],input[type=email],select{
  width:100%;padding:12px 13px;border-radius:9px;
  background:#0d0f18;border:1px solid var(--line);color:var(--text);font-size:15px;
  outline:none;transition:border-color .15s, box-shadow .15s;
}
input:focus,select:focus{border-color:#4a5490;box-shadow:0 0 0 3px rgba(74,84,144,.25);}
input::placeholder{color:#4d5470;}

.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;}

.starters{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:6px;}
.starter{
  padding:8px 6px;border-radius:12px;border:2px solid var(--line);
  background:#131622;color:var(--text);text-align:center;transition:.15s;
}
.starter canvas{display:block;margin:0 auto;image-rendering:pixelated;width:64px;height:64px;}
.starter.on{border-color:var(--gold);background:#1e2030;box-shadow:0 0 0 3px rgba(255,201,74,.15);}
.st-name{font-size:13px;font-weight:800;margin-top:2px;}
.st-type{font-size:11px;color:var(--dim);}
.st-desc{font-size:10px;color:#5f6785;line-height:1.3;margin-top:3px;min-height:30px;}

.more{margin-top:14px;border:1px dashed var(--line);border-radius:10px;padding:10px 12px;}
.more summary{font-size:12px;color:var(--dim);cursor:pointer;font-weight:700;outline:none;}
.more[open] summary{margin-bottom:6px;}

.hint{text-align:center;color:#5f6785;font-size:12px;margin:12px 0 0;}
.reset-link{margin-top:12px;font-size:12px;color:var(--gold);word-break:break-all;background:#12141f;padding:10px;border-radius:8px;border:1px solid var(--line);}
.reset-link a{color:var(--gold);}

.toast{
  margin-top:12px;padding:10px 12px;border-radius:9px;font-size:13px;
  background:#3a1e1e;color:#ffb3ad;border:1px solid #5c2a2a;display:none;
}
.toast.on{display:block;}
.toast.ok{background:#15321d;color:#9be8a6;border-color:#255c33;}

/* ==========================================================
   游戏主界面
   ========================================================== */
.game{
  position:fixed;inset:0;display:flex;flex-direction:column;
  height:100dvh;width:100%;
}

/* --- HUD --- */
.hud{
  display:flex;align-items:center;gap:10px;
  padding:calc(8px + env(safe-area-inset-top)) 12px 8px;
  background:linear-gradient(180deg,rgba(20,22,34,.98),rgba(20,22,34,.86));
  border-bottom:2px solid #000;
  box-shadow:0 2px 0 rgba(255,255,255,.04) inset;
  z-index:5;
}
.hud-left{display:flex;align-items:center;gap:8px;min-width:0;}
.avatar{
  width:42px;height:42px;border-radius:10px;background:#0c0e16;border:2px solid var(--line);
  display:grid;place-items:center;overflow:hidden;flex:none;
}
.avatar canvas{image-rendering:pixelated;width:38px;height:38px;}
.who{min-width:0;}
.pname{font-size:14px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:110px;}
.psub{font-size:11px;color:var(--dim);white-space:nowrap;}

.bars{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0;}
.bar{
  position:relative;height:13px;border-radius:7px;background:#0a0c14;
  border:1px solid #22263a;overflow:hidden;
}
.bar i{
  display:block;height:100%;width:0%;border-radius:6px;transition:width .3s ease;
}
.bar span{
  position:absolute;inset:0;display:grid;place-items:center;
  font-size:9px;font-weight:800;color:#fff;text-shadow:0 1px 2px #000;letter-spacing:.3px;
}
.bar.hp i{background:linear-gradient(180deg,#7ee083,#35a044);}
.bar.mp i{background:linear-gradient(180deg,#79b8ff,#2f6fd0);}
.bar.exp{height:6px;}
.bar.exp i{background:linear-gradient(180deg,#c58bff,#7a3fd0);}

.hud-right{display:flex;align-items:center;gap:8px;flex:none;}
.gold{
  display:flex;align-items:center;gap:5px;padding:5px 9px;border-radius:8px;
  background:#0c0e16;border:1px solid var(--line);font-size:13px;font-weight:800;color:var(--gold);
}
.gold .coin{width:11px;height:11px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffe9a0,#e0a01a);display:inline-block;}

/* --- 舞台 --- */
.stage{position:relative;flex:1;overflow:hidden;background:#0a0c12;min-height:0;}
#scene{display:block;width:100%;height:100%;image-rendering:pixelated;}

.stage-tag{
  position:absolute;top:10px;left:10px;
  padding:5px 11px;border-radius:8px;font-size:12px;font-weight:800;
  background:rgba(8,9,14,.72);border:1px solid rgba(255,255,255,.1);
  color:#dfe4f5;backdrop-filter:blur(4px);
}

.enemy{
  position:absolute;top:10px;right:10px;width:170px;
  padding:8px 10px;border-radius:10px;
  background:rgba(10,10,16,.8);border:1px solid rgba(255,90,90,.35);
  backdrop-filter:blur(4px);
}
.enemy-head{display:flex;justify-content:space-between;align-items:baseline;font-size:12px;margin-bottom:5px;}
.enemy-head b{color:#ffd7d2;font-size:13px;}
.enemy-head span{color:#ff9c96;font-weight:800;font-size:11px;}
.enemy-bar{height:9px;border-radius:5px;}
.enemy-bar i{background:linear-gradient(180deg,#ff8a80,#d13a2f);}
.enemy-hp{text-align:right;font-size:10px;color:#ffb9b3;margin-top:3px;font-weight:700;}

.blog{
  position:absolute;left:10px;bottom:8px;right:10px;max-height:34%;
  overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;gap:2px;
  pointer-events:none;
}
.blog div{
  font-size:12px;line-height:1.45;color:#cfd6ec;
  text-shadow:0 1px 3px #000,0 0 8px rgba(0,0,0,.9);
  animation:fade .2s ease;
}
.blog div.crit{color:#ffd25e;font-weight:800;}
.blog div.hurt{color:#ff9c96;}
.blog div.good{color:#9be8a6;}

.result{
  position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;background:rgba(6,7,12,.78);backdrop-filter:blur(3px);z-index:8;padding:24px;
}
.result-title{font-size:26px;font-weight:900;letter-spacing:3px;color:var(--gold);text-shadow:0 3px 0 #6b4a00;}
.result-body{font-size:14px;color:#cdd4ea;text-align:center;line-height:1.8;}
.result .btn-main{max-width:220px;}

/* --- 操作区 --- */
.actions{
  padding:10px 10px calc(10px + env(safe-area-inset-bottom));
  background:linear-gradient(180deg,rgba(20,22,34,.9),#12141e);
  border-top:2px solid #000;z-index:5;
}
.act-group{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;}
#act-battle{grid-template-columns:repeat(6,1fr);}
.act{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  padding:9px 2px;border-radius:10px;border:1px solid var(--line);
  background:linear-gradient(180deg,#242840,#1a1d2c);
  color:#dfe4f5;font-size:11px;font-weight:800;
  box-shadow:0 3px 0 #0a0c14;
  transition:transform .05s, box-shadow .05s;
}
.act span{font-size:17px;line-height:1;filter:drop-shadow(0 1px 1px #000);}
.act:active{transform:translateY(3px);box-shadow:0 0 0 #0a0c14;}
.act.primary{background:linear-gradient(180deg,#3a4a86,#26315c);border-color:#4a5da0;}
.act[disabled]{opacity:.4;pointer-events:none;}
.act.cool{opacity:.5;}

/* ==========================================================
   弹层
   ========================================================== */
.modal{
  position:fixed;inset:0;z-index:30;display:flex;align-items:flex-end;justify-content:center;
  background:rgba(4,5,10,.7);backdrop-filter:blur(2px);padding:0;
}
.modal-box{
  width:100%;max-width:520px;max-height:80dvh;display:flex;flex-direction:column;
  background:linear-gradient(180deg,#1d2030,#15171f);
  border:1px solid var(--line);border-bottom:0;border-radius:16px 16px 0 0;
  box-shadow:0 -10px 40px rgba(0,0,0,.6);
  animation:slideUp .2s ease;
}
@keyframes slideUp{from{transform:translateY(30px);opacity:.4}to{transform:none;opacity:1}}
.modal-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px 10px;border-bottom:1px solid var(--line);
}
.modal-head b{font-size:16px;}
.modal-body{padding:14px 16px calc(18px + env(safe-area-inset-bottom));overflow:auto;}
@media(min-width:720px){
  .modal{align-items:center;padding:24px;}
  .modal-box{border-radius:16px;border-bottom:1px solid var(--line);max-height:76dvh;}
}

/* --- 弹层内通用列表 --- */
.row{
  display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;
  background:#151824;border:1px solid var(--line);margin-bottom:8px;
}
.row .grow{flex:1;min-width:0;}
.row .t{font-size:14px;font-weight:700;}
.row .d{font-size:11px;color:var(--dim);margin-top:2px;}
.row .r{font-size:12px;color:var(--gold);font-weight:800;flex:none;text-align:right;}
.row.sel{border-color:var(--gold);background:#1e2030;}

.tag{
  display:inline-block;padding:1px 7px;border-radius:20px;font-size:10px;
  font-weight:800;background:#2a2f45;color:#cfd6ec;
}

.item-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.item-card{
  padding:10px;border-radius:10px;background:#151824;border:1px solid var(--line);
  text-align:left;color:var(--text);
}
.item-card b{display:block;font-size:13px;}
.item-card .q{font-size:11px;color:var(--gold);font-weight:800;}

.dex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(78px,1fr));gap:8px;}
.dex-cell{
  padding:8px 4px;border-radius:10px;background:#131622;border:1px solid var(--line);text-align:center;
}
.dex-cell canvas{width:48px;height:48px;image-rendering:pixelated;display:block;margin:0 auto;}
.dex-cell .n{font-size:11px;font-weight:700;margin-top:2px;}
.dex-cell.locked{opacity:.34;filter:grayscale(1);}

/* --- 聊天 --- */
.chat{display:flex;flex-direction:column;height:44dvh;min-height:220px;}
.chat-log{
  flex:1;overflow:auto;padding:8px;background:#0f1119;border-radius:10px;border:1px solid var(--line);
  font-size:13px;line-height:1.5;
}
.chat-log .m{margin-bottom:4px;word-break:break-word;}
.chat-log .m b{color:#8fb8ff;font-weight:800;}
.chat-log .m .t{color:#4d5470;font-size:10px;margin-left:4px;}
.chat-log .m.sys{color:#8a91ad;font-style:italic;}
.chat-input{display:flex;gap:6px;margin-top:8px;}
.chat-input input{flex:1;}
.chat-tabs{display:flex;gap:6px;margin-bottom:8px;}

/* --- 队伍 --- */
.member{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:9px;background:#151824;border:1px solid var(--line);margin-bottom:6px;}
.member .dot{width:8px;height:8px;border-radius:50%;background:#3a415c;flex:none;}
.member .dot.on{background:#5fce6a;box-shadow:0 0 8px #5fce6a;}
.member .nm{flex:1;font-size:13px;font-weight:700;}
.member .lv{font-size:11px;color:var(--dim);}

/* --- 团队 BOSS --- */
.tboss{
  position:absolute;inset:0;z-index:7;display:flex;flex-direction:column;
  background:radial-gradient(circle at 50% 30%,rgba(80,30,60,.5),rgba(6,7,12,.92));
  padding:14px;gap:10px;
}
.tboss .hp-wrap{background:#0d0f18;border-radius:8px;height:16px;border:1px solid #4a2a3a;overflow:hidden;position:relative;}
.tboss .hp-wrap i{display:block;height:100%;background:linear-gradient(180deg,#ff6a8a,#c02a4a);width:100%;transition:width .25s;}
.tboss .hp-wrap span{position:absolute;inset:0;display:grid;place-items:center;font-size:10px;font-weight:800;text-shadow:0 1px 2px #000;}
.tboss .dmg-list{font-size:12px;color:#cdd4ea;}

/* --- 滚动条 --- */
::-webkit-scrollbar{width:6px;height:6px;}
::-webkit-scrollbar-thumb{background:#2e3350;border-radius:4px;}
::-webkit-scrollbar-track{background:transparent;}

/* --- 桌面端 --- */
@media(min-width:900px){
  body{font-size:15px;}
  .game{max-width:1180px;margin:0 auto;border-left:1px solid var(--line);border-right:1px solid var(--line);}
  .act-group{grid-template-columns:repeat(7,1fr);}
  #act-battle{grid-template-columns:repeat(6,1fr);}
  .act{padding:11px 4px;font-size:12px;}
  .act span{font-size:19px;}
  .enemy{width:210px;}
}

/* ==========================================================
   v0.4 追加：双资源 / 全部功能菜单 / 宝可梦 / 抽卡 / 长线玩法
   ========================================================== */

/* ---------- HUD 双资源 ---------- */
.hud-right{display:flex;align-items:center;gap:6px;}
.res{display:flex;flex-direction:column;gap:2px;align-items:flex-end;margin-right:2px;}
.res .gold{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:800;color:var(--gold);
  background:rgba(255,201,74,.10);border:1px solid rgba(255,201,74,.25);
  padding:2px 7px;border-radius:20px;line-height:1.2;cursor:pointer;}
.res .gold.gem{color:#9ad2ff;background:rgba(154,210,255,.10);border-color:rgba(154,210,255,.25);}
.gem-ico{font-size:11px;}
.res b{font-variant-numeric:tabular-nums;}

/* ---------- 全部功能菜单 ---------- */
.menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
.menu-item{
  display:flex;flex-direction:column;align-items:center;gap:5px;
  padding:12px 4px;border-radius:12px;
  background:linear-gradient(180deg,var(--panel2),var(--panel));
  border:1px solid var(--line);color:var(--text);
  font-size:12px;font-weight:700;
  box-shadow:0 3px 0 rgba(0,0,0,.35);
  transition:transform .08s;
}
.menu-item:active{transform:translateY(2px);box-shadow:0 1px 0 rgba(0,0,0,.35);}
.menu-item span{font-size:20px;line-height:1;}

/* ---------- 宝可梦卡片 ---------- */
.pet-tabs{display:flex;gap:6px;margin-bottom:10px;}
.pet-tabs .btn{flex:1;padding:8px 4px;font-size:13px;}
.pet-list{display:flex;flex-direction:column;gap:8px;}
.pet-card{
  display:flex;align-items:center;gap:10px;
  padding:9px 10px;border-radius:12px;
  background:linear-gradient(180deg,rgba(34,37,58,.9),rgba(26,28,40,.9));
  border:1px solid var(--line);
}
.pet-card.follow{border-color:rgba(255,201,74,.55);box-shadow:0 0 0 1px rgba(255,201,74,.18) inset;}
.pet-card canvas{width:44px;height:44px;image-rendering:pixelated;flex:none;}
.pc-info{flex:1;min-width:0;}
.pc-name{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-sub{font-size:11px;color:var(--dim);margin-top:1px;}
.pc-bars{height:4px;border-radius:3px;background:#0a0b12;overflow:hidden;margin:3px 0 2px;}
.pc-bars i{display:block;height:100%;background:linear-gradient(180deg,#7ee083,#35a044);
  border-radius:3px;transition:width .25s;}
.pc-act{display:flex;flex-direction:column;gap:4px;flex:none;}
.mini{
  font-size:11px;font-weight:700;padding:4px 8px;border-radius:7px;
  background:var(--panel2);color:var(--text);border:1px solid var(--line);
  cursor:pointer;white-space:nowrap;
}
.mini:active{transform:translateY(1px);}
.mini.danger{color:#ff9c96;border-color:rgba(232,84,77,.4);}

/* ---------- 抽卡 ---------- */
.gacha-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:10px;}
.gacha-cell{
  display:flex;flex-direction:column;align-items:center;
  padding:8px 2px;border-radius:10px;
  background:rgba(0,0,0,.35);border:2px solid var(--line);
  animation:pop .35s ease-out both;
}
.gacha-cell canvas{width:52px;height:52px;image-rendering:pixelated;}
.gn{font-size:11px;font-weight:800;margin-top:2px;text-align:center;}
.gr{font-size:9px;color:var(--dim);}
@keyframes pop{
  0%{transform:scale(.4) rotate(-8deg);opacity:0;}
  70%{transform:scale(1.08) rotate(2deg);opacity:1;}
  100%{transform:scale(1) rotate(0);opacity:1;}
}
@media (max-width:420px){ .gacha-grid{grid-template-columns:repeat(3,1fr);} }

/* ---------- 扫荡 ---------- */
.sweep-info{font-size:13px;font-weight:800;color:var(--gold);}
.sweep-times{display:flex;gap:8px;margin-bottom:12px;}
.sweep-times .btn{flex:1;padding:10px 0;}
.sweep-res{background:rgba(0,0,0,.3);border-radius:10px;padding:10px 12px;}
.sr-row{display:flex;justify-content:space-between;font-size:13px;padding:4px 0;border-bottom:1px dashed rgba(255,255,255,.06);}
.sr-row:last-child{border-bottom:0;}
.sr-row span{color:var(--dim);}
.sr-row b{font-weight:800;}

/* ---------- 签到 ---------- */
.ci-head{font-size:14px;font-weight:800;margin-bottom:10px;}
.ci-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;}
.ci-cell{
  text-align:center;padding:8px 2px;border-radius:10px;
  background:rgba(0,0,0,.28);border:1px solid var(--line);
  font-size:11px;
}
.ci-cell .d{color:var(--dim);}
.ci-cell .g{font-weight:800;color:var(--gold);font-size:10px;margin-top:2px;}
.ci-cell.got{border-color:rgba(126,224,131,.5);background:rgba(126,224,131,.10);}
.ci-cell.today{box-shadow:0 0 0 2px rgba(255,201,74,.5) inset;}

/* ---------- 任务 / 活跃度 ---------- */
.active-bar{
  position:relative;height:22px;border-radius:11px;background:#0a0b12;
  border:1px solid var(--line);overflow:hidden;margin-bottom:12px;
}
.active-bar i{display:block;height:100%;background:linear-gradient(90deg,#ffc94a,#ff8a3d);transition:width .3s;}
.active-bar span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-size:11px;font-weight:800;text-shadow:0 1px 2px #000;}
.q-list{display:flex;flex-direction:column;gap:6px;}
.q-row{
  display:flex;align-items:center;gap:8px;
  padding:9px 10px;border-radius:10px;
  background:rgba(0,0,0,.25);border:1px solid var(--line);
}
.q-row.done{opacity:.55;}
.q-row .t{font-size:13px;font-weight:700;}
.q-row .d{font-size:11px;color:var(--dim);margin-top:2px;}

/* ---------- 深渊塔 ---------- */
.tower-head{display:flex;align-items:center;gap:14px;margin-bottom:10px;}
.th-num{
  font-size:38px;font-weight:900;color:var(--gold);line-height:1;
  text-shadow:0 3px 0 rgba(0,0,0,.5);font-variant-numeric:tabular-nums;
}
.th-info{font-size:12px;color:var(--dim);}
.win-box{background:rgba(126,224,131,.10);border:1px solid rgba(126,224,131,.35);
  border-radius:10px;padding:10px;font-size:13px;line-height:1.6;}
.lose-box{background:rgba(232,84,77,.10);border:1px solid rgba(232,84,77,.35);
  border-radius:10px;padding:10px;font-size:13px;line-height:1.6;}

/* ---------- 每日副本 ---------- */
.dg-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:10px;}
.dg-cell{
  text-align:left;padding:10px;border-radius:11px;
  background:linear-gradient(180deg,var(--panel2),var(--panel));
  border:1px solid var(--line);color:var(--text);
}
.dg-cell.today{border-color:rgba(255,201,74,.55);box-shadow:0 0 0 1px rgba(255,201,74,.2) inset;}
.dg-cell:disabled{opacity:.45;}
.dg-cell .dn{font-size:13px;font-weight:800;}
.dg-cell .dd{font-size:11px;color:var(--dim);margin-top:2px;}

/* ---------- 排行 ---------- */
.rk{width:26px;text-align:center;font-size:13px;font-weight:800;color:var(--dim);flex:none;}

/* ---------- 充值 ---------- */
.recharge-top{background:rgba(255,201,74,.07);border:1px solid rgba(255,201,74,.25);
  border-radius:12px;padding:10px 12px;}
.qqbox{font-size:13px;display:flex;align-items:center;flex-wrap:wrap;gap:4px;}
.qqbox b{color:var(--gold);font-size:16px;letter-spacing:.5px;}
.item-card{position:relative;overflow:hidden;}
.item-card.hot{border-color:rgba(255,201,74,.55);}
.corner{
  position:absolute;top:0;right:0;font-size:9px;font-weight:800;
  background:linear-gradient(135deg,#ffc94a,#ff8a3d);color:#231a00;
  padding:2px 8px;border-bottom-left-radius:8px;
}
