@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700;900&family=Nanum+Myeongjo:wght@400;700;800&display=swap');
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --bg:#05050a;--bg2:#0a0a14;--bg3:#10101e;
  --gold:#c9a44a;--gold-dim:#8a7530;--gold-glow:rgba(201,164,74,0.35);
  --blood:#8a0303;--blood-dark:#4a0000;
  --silver:#c0c0c0;--iron:#1e1e2e;
  --star:#e8d48b;--star-line:rgba(201,164,74,0.15);
  --danger:#ff4b4b;--success:#44d98c;
  --text:#d3d3d3;--text-dim:#6a6a7a;--border:#2a2a3a;
  --common:#a0a0a0;--uncommon:#4fc978;--rare:#4a9eff;--epic:#a855f7;--semilegend:#ff6b9d;--legendary:#ff8c00;--transcendent:#00f0ff;--relic:#f0f0f0;
}
body{font-family:'Nanum Myeongjo',serif;background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden;
  background-image:radial-gradient(ellipse at 50% 30%,rgba(201,164,74,0.04) 0%,transparent 60%),
    radial-gradient(circle at 20% 80%,rgba(74,158,255,0.02) 0%,transparent 40%)}
.container{position:relative;z-index:1;max-width:920px;margin:0 auto;padding:20px}

/* ══ 헤더 ══ */
.header{text-align:center;padding:28px 0 16px;border-bottom:1px solid var(--gold-dim);background:linear-gradient(to bottom,rgba(201,164,74,0.06) 0%,transparent 100%);margin-bottom:20px;position:relative}
.header::after{content:'';position:absolute;bottom:-1px;left:25%;right:25%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
.header h1{font-family:'Cinzel',serif;font-size:clamp(1.5rem,4vw,2.3rem);font-weight:900;color:var(--gold);text-shadow:0 0 20px var(--gold-glow);letter-spacing:10px}
.header .sub{color:var(--star);font-size:0.72em;font-weight:400;margin-top:6px;letter-spacing:4px;opacity:0.6}

/* ══ 유저바 ══ */
.user-bar{display:flex;justify-content:space-between;align-items:center;background:var(--bg2);border:1px solid var(--iron);border-top:1px solid var(--gold-dim);border-radius:3px;padding:10px 18px;margin-bottom:18px;flex-wrap:wrap;gap:6px}
.user-bar .nick{color:var(--star);font-family:'Cinzel',serif;letter-spacing:2px;font-size:0.85em}
.user-bar .starlight{color:var(--gold);font-weight:700;font-size:1em}
.user-level{color:#b0a0ff;font-weight:700;font-size:0.82em;letter-spacing:1px}
.exp-bar-wrap{position:relative;width:80px;height:10px;background:rgba(255,255,255,.08);border-radius:5px;overflow:hidden;border:1px solid var(--border)}
.exp-bar-fill{position:absolute;top:0;left:0;height:100%;background:linear-gradient(90deg,#6a5acd,#b0a0ff);border-radius:5px;transition:width .4s ease}
.exp-text{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:0.55em;color:#fff;text-shadow:0 0 2px #000}
.bar-btns{display:flex;gap:8px}
.bar-btns a,.bar-btns button{background:none;border:1px solid var(--iron);color:var(--text-dim);padding:5px 12px;border-radius:3px;cursor:pointer;font-size:0.72em;font-family:'Cinzel',serif;letter-spacing:1px;transition:all 0.2s;text-decoration:none}
.bar-btns a:hover,.bar-btns button:hover{border-color:var(--gold);color:var(--gold)}

/* ══ 탭 ══ */
.main-tabs{display:flex;border-bottom:1px solid var(--iron);margin-bottom:18px;gap:2px}
.main-tab{flex:1;padding:10px 6px;background:none;border:none;color:var(--text-dim);font-family:'Cinzel',serif;font-size:0.76em;cursor:pointer;transition:all 0.2s;letter-spacing:2px;text-align:center}
.main-tab.active{color:var(--gold);border-bottom:2px solid var(--gold);margin-bottom:-1px}
.main-tab:hover{color:var(--star)}
.tab-content{display:none}.tab-content.active{display:block}

/* ══ 카드 ══ */
.card{background:var(--bg2);border:1px solid var(--iron);border-radius:5px;padding:22px;margin-bottom:18px;box-shadow:0 0 30px rgba(0,0,0,0.5);transition:border-color 0.3s;position:relative;overflow:hidden}
.card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 10%,var(--gold-dim) 50%,transparent 90%)}
.card h2{font-family:'Cinzel',serif;font-size:0.9em;font-weight:700;color:var(--gold);margin-bottom:16px;letter-spacing:3px;display:flex;align-items:center;border-bottom:1px solid var(--iron);padding-bottom:10px}
.card h2::before{content:'◈';color:var(--gold-dim);margin-right:10px;font-size:0.8em}

/* ══ 황도 맵 ══ */
.ecliptic-map{position:relative;width:100%;max-width:800px;height:500px;margin:0 auto;border:1px solid var(--iron);border-radius:8px;
  background:radial-gradient(ellipse at 50% 50%,rgba(201,164,74,0.03) 0%,var(--bg) 70%);overflow:hidden}
.ecliptic-map::before{content:'';position:absolute;inset:0;background-image:
  radial-gradient(1px 1px at 10% 20%,rgba(255,255,255,0.3),transparent),
  radial-gradient(1px 1px at 30% 70%,rgba(255,255,255,0.2),transparent),
  radial-gradient(1px 1px at 55% 15%,rgba(201,164,74,0.4),transparent),
  radial-gradient(1px 1px at 75% 60%,rgba(255,255,255,0.15),transparent),
  radial-gradient(1px 1px at 90% 35%,rgba(201,164,74,0.3),transparent),
  radial-gradient(1px 1px at 45% 85%,rgba(255,255,255,0.2),transparent),
  radial-gradient(1px 1px at 65% 45%,rgba(74,158,255,0.2),transparent),
  radial-gradient(1.5px 1.5px at 20% 50%,rgba(201,164,74,0.5),transparent),
  radial-gradient(1px 1px at 80% 80%,rgba(255,255,255,0.25),transparent);pointer-events:none}
.ecliptic-orbit{position:absolute;top:50%;left:50%;width:70%;height:60%;border:1px solid var(--star-line);border-radius:50%;transform:translate(-50%,-50%) rotate(-8deg);pointer-events:none}
.ecliptic-orbit-inner{position:absolute;top:50%;left:50%;width:35%;height:28%;border:1px solid rgba(201,164,74,0.08);border-radius:50%;transform:translate(-50%,-50%) rotate(-8deg);pointer-events:none}
.map-node{position:absolute;cursor:pointer;text-align:center;transition:all 0.3s;z-index:5}
.map-node .node-circle{width:54px;height:54px;border-radius:50%;border:2px solid var(--iron);background:radial-gradient(circle,var(--bg3) 30%,var(--bg) 100%);display:flex;align-items:center;justify-content:center;margin:0 auto 4px;transition:all 0.3s;font-size:1.4em;box-shadow:0 0 10px rgba(0,0,0,0.6)}
.map-node:hover .node-circle{border-color:var(--gold);box-shadow:0 0 20px var(--gold-glow)}
.map-node .node-label{font-family:'Cinzel',serif;font-size:0.6em;color:var(--text-dim);letter-spacing:1px;white-space:nowrap;transition:color 0.3s}
.map-node:hover .node-label{color:var(--gold)}
.map-node .node-sub{font-size:0.5em;color:var(--text-dim);opacity:0.5}
.map-node.center .node-circle{width:80px;height:80px;border-color:var(--gold-dim);font-size:1.8em;box-shadow:0 0 25px var(--gold-glow)}
.map-node.center .node-label{color:var(--star);font-size:0.72em}
.map-node.boss .node-circle{border-color:var(--blood-dark);box-shadow:0 0 15px rgba(138,3,3,0.3)}
.map-node.boss:hover .node-circle{border-color:var(--danger);box-shadow:0 0 25px rgba(255,75,75,0.4)}
.map-node.boss .node-label{color:var(--blood)}
.map-node.shop .node-circle{border-color:var(--gold-dim)}
.map-node.shop:hover .node-circle{border-color:var(--gold)}
.map-line{position:absolute;background:var(--star-line);z-index:1;pointer-events:none}

/* ══ 식귀 토벌 ══ */
.grade-tabs{display:flex;gap:4px;margin-bottom:16px;flex-wrap:wrap}
.grade-tab{padding:6px 14px;background:var(--bg3);border:1px solid var(--iron);border-radius:3px;color:var(--text-dim);font-size:0.72em;cursor:pointer;transition:all 0.2s;font-family:'Cinzel',serif;letter-spacing:1px}
.grade-tab.active{border-color:var(--gold);color:var(--gold);background:rgba(201,164,74,0.08)}
.grade-tab.boss{border-color:var(--blood-dark);color:var(--blood)}
.grade-tab.boss.active{border-color:var(--danger);color:var(--danger);background:rgba(255,75,75,0.08)}
.hunt-area{text-align:center;min-height:280px;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative}
.monster-grade{font-size:0.7em;color:var(--text-dim);letter-spacing:4px;font-family:'Cinzel',serif;margin-bottom:2px}
.monster-name{font-size:1em;color:var(--danger);font-weight:700;letter-spacing:2px;margin-bottom:8px}
.monster-visual{cursor:pointer;user-select:none;transition:transform 0.1s;margin:4px 0}
.monster-visual:active{transform:scale(0.88)}
.monster-visual.hit{animation:hitShake 0.15s}
.monster-visual .mon-img{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 0 20px rgba(217,68,82,0.5))}
.monster-visual .mon-emoji{font-size:4.2em;filter:drop-shadow(0 0 20px rgba(217,68,82,0.5))}
@keyframes hitShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-8px)}75%{transform:translateX(8px)}}
.wb-hit{animation:wbPulse 0.18s ease-out}
@keyframes wbPulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.5) saturate(1.4)}}
.hp-bar-wrap{width:85%;background:rgba(20,0,0,0.6);border-radius:20px;height:15px;overflow:hidden;position:relative;border:1px solid rgba(217,68,82,0.3);margin:8px 0}
.hp-bar-fill{height:100%;background:linear-gradient(90deg,var(--blood),#ff6b6b);border-radius:20px;transition:width 0.15s ease-out}
.hp-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:0.65em;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,0.7)}
.atk-info{color:var(--text-dim);font-size:0.75em;margin-top:6px}.atk-info span{color:var(--gold);font-weight:700}
.defense-info{color:var(--text-dim);font-size:0.7em;margin-top:3px}.defense-info span{color:var(--danger)}
.dmg-float{position:absolute;pointer-events:none;font-weight:900;font-size:1.1em;color:var(--gold);text-shadow:0 0 8px var(--gold-glow);animation:dmgUp 0.8s ease-out forwards}
@keyframes dmgUp{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-60px)}}
.kill-flash{position:fixed;inset:0;background:radial-gradient(circle,rgba(201,164,74,0.12) 0%,transparent 70%);pointer-events:none;z-index:50;animation:flashFade 0.5s ease-out forwards}
@keyframes flashFade{0%{opacity:1}100%{opacity:0}}
@keyframes earnFade{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-130%) scale(1.3)}}

/* 드랍 토스트 */
.drop-toast{position:fixed;bottom:20px;right:20px;z-index:60;display:flex;flex-direction:column;gap:6px}
.drop-item-toast{background:var(--bg2);border:1px solid var(--gold);border-radius:4px;padding:10px 16px;color:var(--gold);font-size:0.82em;animation:dropIn 0.4s ease-out,dropOut 0.4s 2.6s ease-in forwards}
.drop-item-toast.rarity-common{border-color:var(--common);color:var(--common)}
.drop-item-toast.rarity-uncommon{border-color:var(--uncommon);color:var(--uncommon)}
.drop-item-toast.rarity-rare{border-color:var(--rare);color:var(--rare);box-shadow:0 0 12px rgba(74,158,255,0.3)}
.drop-item-toast.rarity-epic{border-color:var(--epic);color:var(--epic);box-shadow:0 0 18px rgba(168,85,247,0.35)}
.drop-item-toast.rarity-semilegend{border-color:var(--semilegend);color:var(--semilegend);box-shadow:0 0 18px rgba(255,107,157,0.4)}
.drop-item-toast.rarity-legendary{border-color:var(--legendary);color:var(--legendary);box-shadow:0 0 24px rgba(255,140,0,0.45);animation:dropIn 0.4s ease-out,legendGlow 1.5s 0.4s infinite,dropOut 0.4s 2.6s ease-in forwards}
.drop-item-toast.rarity-transcendent{border-color:var(--transcendent);color:var(--transcendent);box-shadow:0 0 30px rgba(0,240,255,0.55);animation:dropIn 0.4s ease-out,transGlow 1.3s 0.4s infinite,dropOut 0.4s 2.6s ease-in forwards}
.drop-item-toast.rarity-relic{border-color:var(--relic);color:var(--relic);box-shadow:0 0 30px rgba(240,240,240,0.45);animation:dropIn 0.4s ease-out,relicGlow 1.3s 0.4s infinite,dropOut 0.4s 2.6s ease-in forwards}
@keyframes relicGlow{0%,100%{box-shadow:0 0 30px rgba(240,240,240,0.45)}50%{box-shadow:0 0 48px rgba(240,240,240,0.8)}}
@keyframes transGlow{0%,100%{box-shadow:0 0 30px rgba(0,240,255,0.55)}50%{box-shadow:0 0 48px rgba(0,240,255,0.9)}}
@keyframes dropIn{from{transform:translateX(100px);opacity:0}to{transform:translateX(0);opacity:1}}
@keyframes dropOut{from{opacity:1}to{opacity:0;transform:translateY(-10px)}}
@keyframes legendGlow{0%,100%{box-shadow:0 0 24px rgba(255,140,0,0.45)}50%{box-shadow:0 0 36px rgba(255,140,0,0.7)}}

/* 지속 드랍 로그 (좌측 하단) */
.drop-log{position:fixed;left:16px;bottom:16px;width:200px;max-height:220px;overflow-y:auto;background:rgba(16,20,30,0.92);border:1px solid var(--gold);border-radius:5px;padding:8px 10px;z-index:55;font-size:0.72em;color:var(--text);box-shadow:0 0 14px rgba(0,0,0,0.6)}
.drop-log-title{color:var(--gold);font-weight:600;margin-bottom:6px;border-bottom:1px dotted rgba(255,200,80,0.25);padding-bottom:4px;font-size:0.95em}
.drop-log-list{display:flex;flex-direction:column;gap:3px}
.drop-log-item{padding:2px 4px;border-left:2px solid var(--common);color:var(--common)}
.drop-log-item.rarity-uncommon{border-color:var(--uncommon);color:var(--uncommon)}
.drop-log-item.rarity-rare{border-color:var(--rare);color:var(--rare)}
.drop-log-item.rarity-epic{border-color:var(--epic);color:var(--epic)}
.drop-log-item.rarity-semilegend{border-color:var(--semilegend);color:var(--semilegend)}
.drop-log-item.rarity-legendary{border-color:var(--legendary);color:var(--legendary)}
.drop-log-item.rarity-transcendent{border-color:var(--transcendent);color:var(--transcendent)}
.drop-log-item.rarity-relic{border-color:var(--relic);color:var(--relic)}
.drop-log-toggle{position:fixed;left:16px;bottom:16px;width:34px;height:34px;display:none;align-items:center;justify-content:center;background:rgba(16,20,30,0.92);border:1px solid var(--gold);border-radius:50%;color:var(--gold);z-index:56;cursor:pointer;font-size:0.9em}
.drop-log.collapsed{display:none}

/* 모바일: 토스트/드랍로그 크기 축소 + 접기 버튼 노출 */
@media(max-width:700px){
  .drop-toast{bottom:8px;right:8px;max-width:48vw}
  .drop-item-toast{font-size:0.7em;padding:6px 10px}
  .drop-log{width:42vw;max-width:170px;max-height:32vh;font-size:0.64em;left:8px;bottom:8px;padding:6px 8px;opacity:0.82}
  .drop-log-toggle{display:flex;left:8px;bottom:8px}
  .drop-log.collapsed + .drop-log-toggle{display:flex}
  /* 로그 열려있을 때는 원형 버튼 숨김 */
  .drop-log:not(.collapsed) ~ .drop-log-toggle{display:none}
}

/* ══ 강화소 ══ */
.game-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:700px){.game-grid{grid-template-columns:1fr}}
.enhance-panel{text-align:center}
.weapon-label{font-family:'Cinzel',serif;font-size:0.7em;color:var(--text-dim);letter-spacing:3px;margin-bottom:2px}
.weapon-name-display{font-size:0.95em;color:var(--gold);font-weight:700;margin-bottom:4px}
.enhance-display{font-size:2.6em;font-weight:900;color:var(--silver);font-family:'Cinzel',serif;text-shadow:2px 2px 10px #000,0 0 20px rgba(201,164,74,0.2);margin:4px 0 12px}
.enhance-display.max{color:var(--gold);text-shadow:0 0 20px var(--gold-glow);animation:pulse 1.5s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.7}}
.enhance-info{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:14px}
.info-box{background:var(--bg3);border-radius:4px;padding:8px;text-align:center}
.info-box .label{font-size:0.65em;color:var(--text-dim);margin-bottom:2px;letter-spacing:1px}
.info-box .value{font-weight:700;font-size:0.9em}.info-box .value.ok{color:var(--success)}.info-box .value.bad{color:var(--danger)}

/* 성능표 */
.weapon-stats{background:var(--bg3);border:1px solid var(--iron);border-radius:4px;padding:10px;margin:10px 0;font-size:0.78em}
.weapon-stats .stat-row{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px solid rgba(42,42,58,0.5)}
.weapon-stats .stat-row:last-child{border:none}
.weapon-stats .stat-label{color:var(--text-dim)}.weapon-stats .stat-val{color:var(--gold);font-weight:700}
.weapon-stats .stat-val.atk{color:var(--danger)}

/* 별가루/각인석 */
.dust-select{display:flex;align-items:center;justify-content:center;gap:6px;margin:10px 0 6px}
.dust-select .dust-label{font-size:0.72em;color:var(--success);letter-spacing:1px}
.dust-btn{width:32px;height:28px;border:1px solid rgba(68,217,140,0.3);background:var(--bg3);color:var(--success);font-size:0.72em;font-weight:700;border-radius:3px;cursor:pointer;transition:all 0.2s}
.dust-btn:hover{border-color:var(--success);background:rgba(68,217,140,0.1)}
.dust-count{min-width:40px;text-align:center;color:var(--success);font-weight:700;font-size:0.95em}
.dust-bonus{font-size:0.68em;color:var(--success);opacity:0.7;margin-left:4px}
.dust-info{font-size:0.65em;color:var(--text-dim);margin-bottom:8px}
.ward-toggle{display:flex;align-items:center;justify-content:center;gap:10px;margin:8px 0 14px}
.ward-toggle .ward-label{font-size:0.72em;color:cornflowerblue;letter-spacing:1px}
.ward-toggle .ward-count{font-size:0.68em;color:var(--text-dim)}
#preventToggle .ward-label{color:#a890ff}
.toggle-switch{position:relative;width:40px;height:22px;cursor:pointer}
.toggle-switch input{opacity:0;width:0;height:0}
.toggle-slider{position:absolute;inset:0;background:var(--bg3);border:1px solid rgba(100,149,237,0.3);border-radius:11px;transition:0.3s}
.toggle-slider::before{content:'';position:absolute;width:16px;height:16px;left:2px;bottom:2px;background:var(--text-dim);border-radius:50%;transition:0.3s}
.toggle-switch input:checked+.toggle-slider{background:rgba(100,149,237,0.25);border-color:cornflowerblue}
.toggle-switch input:checked+.toggle-slider::before{transform:translateX(18px);background:cornflowerblue}
.lock-switch{position:relative;width:22px;height:22px;cursor:pointer;margin-left:4px;flex-shrink:0}
.lock-switch input{opacity:0;width:0;height:0;position:absolute}
.lock-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:4px;background:var(--bg3);border:1px solid rgba(100,149,237,0.2);font-size:11px;transition:0.2s;color:var(--text-dim)}
.lock-icon::before{content:'🔓'}
.lock-switch input:checked+.lock-icon{background:rgba(255,200,50,0.15);border-color:rgba(255,200,50,0.5)}
.lock-switch input:checked+.lock-icon::before{content:'🔒'}

/* ══ 일괄 판매 ══ */
.bulk-sell{margin-bottom:10px;padding:10px;border:1px solid rgba(100,149,237,0.18);border-radius:8px;background:rgba(20,30,55,0.35)}
.bulk-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}
.bulk-row:last-child{margin-bottom:0}
.bulk-rar-row{gap:6px}
.bulk-rar{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border:1px solid var(--bg3);border-radius:14px;font-size:0.7em;cursor:pointer;user-select:none;background:rgba(0,0,0,0.25);transition:all 0.15s}
.bulk-rar input{appearance:none;width:10px;height:10px;border:1px solid currentColor;border-radius:2px;margin:0;position:relative}
.bulk-rar input:checked{background:currentColor}
.bulk-rar input:checked::after{content:'';position:absolute;inset:1px;background:rgba(0,0,0,0.6);clip-path:polygon(15% 50%, 40% 75%, 85% 25%, 75% 15%, 40% 60%, 25% 40%)}
.bulk-rar.active{border-color:currentColor;background:rgba(255,255,255,0.05)}
.bulk-label{font-size:0.72em;color:var(--text-dim);letter-spacing:1px}
.bulk-btn{width:22px;height:22px;border:1px solid var(--bg3);background:var(--bg2);color:var(--text);border-radius:4px;cursor:pointer;font-size:0.85em;line-height:1}
.bulk-btn:hover{border-color:cornflowerblue}
.bulk-enh{min-width:24px;text-align:center;font-weight:700;font-size:0.85em;color:var(--gold)}
.bulk-preview{margin-left:auto;font-size:0.72em;color:var(--text-dim)}
.btn-sell{padding:4px 12px;font-size:0.75em;background:linear-gradient(135deg,#7d2a3a,#a83a4d);border:1px solid #c44}
.btn-sell:disabled{opacity:0.4;cursor:not-allowed}
.bulk-hint{font-size:0.62em;color:var(--text-dim);margin-top:4px;text-align:right}

/* ══ 무기 리스트 ══ */
.weapon-list{display:flex;flex-direction:column;gap:6px}
.weapon-item{display:flex;align-items:center;justify-content:space-between;background:rgba(16,16,30,0.6);border:1px solid var(--iron);border-left:3px solid var(--iron);border-radius:0 3px 3px 0;padding:10px 14px;cursor:pointer;transition:all 0.2s;font-size:0.85em}
.weapon-item:hover{border-left-color:var(--gold);background:rgba(20,20,36,0.8);transform:translateX(3px)}
.weapon-item.selected{border-left-color:var(--gold);box-shadow:inset 0 0 15px rgba(201,164,74,0.08)}
.weapon-item.equipped::before{content:'◈';margin-right:8px;color:var(--gold)}
.weapon-name{font-weight:400;flex:1;font-size:0.85em}
.weapon-enhance{font-weight:700;font-family:'Cinzel',serif;min-width:40px;text-align:right}
.weapon-atk{font-size:0.7em;color:var(--danger);margin-left:8px}
.enh-low{color:#a9a9a9}.enh-mid{color:var(--silver)}.enh-high{color:var(--danger);text-shadow:0 0 8px rgba(255,75,75,0.5)}.enh-max{color:var(--gold);text-shadow:0 0 15px var(--gold-glow);animation:pulse 1.5s infinite}

/* ══ 인벤토리 ══ */
.inv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px}
.inv-item{background:var(--bg3);border:1px solid var(--iron);border-radius:4px;padding:10px;font-size:0.8em;border-left:3px solid var(--common);cursor:default;transition:all 0.2s}
.inv-item.clickable{cursor:pointer}.inv-item.clickable:hover{border-color:var(--gold-dim)}
.inv-item.selected-sell{border-color:var(--danger)!important;background:rgba(255,75,75,0.05)}
.inv-item.selected-craft{border-color:var(--epic)!important;background:rgba(168,85,247,0.05)}
.inv-item .iname{font-weight:700;margin-bottom:3px;display:flex;justify-content:space-between;align-items:center}
.inv-item .iname .iqty{font-size:0.82em;opacity:0.7}
.inv-item .idesc{color:var(--text-dim);font-size:0.82em}
.inv-item .irarity{font-size:0.68em;text-transform:uppercase;letter-spacing:1px;margin-top:3px}
.inv-item.r-common{border-left-color:var(--common)}.inv-item.r-common .iname{color:var(--common)}
.inv-item.r-uncommon{border-left-color:var(--uncommon)}.inv-item.r-uncommon .iname{color:var(--uncommon)}
.inv-item.r-rare{border-left-color:var(--rare)}.inv-item.r-rare .iname{color:var(--rare)}
.inv-item.r-epic{border-left-color:var(--epic)}.inv-item.r-epic .iname{color:var(--epic)}
.inv-item.r-legendary{border-left-color:var(--legendary)}.inv-item.r-legendary .iname{color:var(--legendary)}
.inv-item.r-transcendent{border-left-color:var(--transcendent)}.inv-item.r-transcendent .iname{color:var(--transcendent)}
.inv-item.r-relic{border-left-color:var(--relic)}.inv-item.r-relic .iname{color:var(--relic)}

/* ══ 모달 ══ */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.85);z-index:100;display:none;align-items:center;justify-content:center}
.modal-overlay.show{display:flex}
.modal-box{background:var(--bg2);border:1px solid var(--iron);border-radius:5px;padding:28px;min-width:340px;max-width:560px;width:90%;max-height:80vh;overflow-y:auto;animation:resultIn 0.3s ease-out;position:relative}
.modal-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}
@keyframes resultIn{from{transform:scale(0.9);opacity:0}to{transform:scale(1);opacity:1}}
.modal-title{font-family:'Cinzel',serif;font-size:1.1em;color:var(--gold);letter-spacing:3px;margin-bottom:16px;text-align:center}
.modal-close{position:absolute;top:10px;right:14px;background:none;border:none;color:var(--text-dim);font-size:1.2em;cursor:pointer}.modal-close:hover{color:var(--gold)}

/* ══ 로그 ══ */
.log-list{max-height:220px;overflow-y:auto}
.log-item{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-bottom:1px solid rgba(42,42,58,0.5);font-size:0.76em}
.log-ok{color:var(--success)}.log-fail{color:var(--danger)}.log-destroy{color:#ff0040;font-weight:700}

/* ══ 버튼 ══ */
.btn{display:inline-block;padding:10px 24px;border:1px solid var(--iron);background:transparent;color:var(--silver);font-family:'Cinzel',serif;font-size:0.78em;font-weight:700;letter-spacing:3px;cursor:pointer;border-radius:3px;transition:all 0.3s}
.btn:hover{background:rgba(201,164,74,0.1);border-color:var(--gold)}.btn:disabled{opacity:0.3;cursor:not-allowed;pointer-events:none}
.btn-gold{border-color:var(--gold-dim);background:rgba(201,164,74,0.08)}.btn-gold:hover{background:rgba(201,164,74,0.2);border-color:var(--gold);box-shadow:0 0 20px var(--gold-glow)}
.btn-blood{border-color:var(--blood-dark);background:rgba(138,3,3,0.15)}.btn-blood:hover{background:var(--blood);border-color:var(--blood)}
.btn-sm{padding:7px 14px;font-size:0.72em;letter-spacing:2px}
.btn-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:12px}

/* ══ 결과 ══ */
.result-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.88);z-index:200;display:none;align-items:center;justify-content:center}
.result-overlay.show{display:flex}
.result-box{text-align:center;padding:40px 50px;border-radius:3px;background:#0a0a14;animation:resultIn 0.3s ease-out;min-width:280px}
.result-box.success{border:1px solid var(--iron);border-top:3px solid var(--success)}
.result-box.fail{border:1px solid var(--iron);border-top:3px solid var(--blood)}
.result-box.destroy{border:2px solid var(--blood);background:rgba(74,0,0,0.4)}
.result-box.protected{border:1px solid cornflowerblue;border-top:3px solid cornflowerblue}
.result-box.craft{border:1px solid var(--epic);border-top:3px solid var(--epic)}
.result-title{font-family:'Cinzel',serif;font-size:1.8em;font-weight:900;color:var(--silver);margin-bottom:8px}
.result-sub{color:var(--text-dim);font-size:0.88em;margin-bottom:20px;white-space:pre-line}

/* ══ 로그인 ══ */
.auth-screen{max-width:380px;margin:80px auto;text-align:center}
.auth-screen h1{font-family:'Cinzel',serif;font-size:2.2em;color:var(--gold);text-shadow:0 0 30px var(--gold-glow);margin-bottom:4px;letter-spacing:8px}
.auth-screen .sub{color:var(--star);font-weight:400;margin-bottom:28px;font-size:0.75em;letter-spacing:3px;line-height:1.6;opacity:0.6}
.auth-tabs{display:flex;margin-bottom:18px;border-bottom:1px solid var(--iron)}
.auth-tab{flex:1;padding:10px;background:none;border:none;color:var(--text-dim);font-family:'Cinzel',serif;font-size:0.85em;cursor:pointer;transition:0.2s;letter-spacing:2px}
.auth-tab.active{color:var(--gold);border-bottom:2px solid var(--gold)}
.auth-form{display:flex;flex-direction:column;gap:12px}
.auth-form input{background:var(--bg3);border:1px solid var(--iron);color:var(--text);padding:12px 16px;border-radius:3px;font-family:'Nanum Myeongjo',serif;font-size:0.95em;outline:none;transition:border-color 0.2s}
.auth-form input:focus{border-color:var(--gold)}.auth-form input::placeholder{color:var(--text-dim)}
.auth-error{color:var(--danger);font-size:0.82em;min-height:18px}
.auth-success{color:#7ad67a;font-size:0.82em;min-height:18px;line-height:1.5}
.auth-desc{color:var(--text-dim);font-size:0.8em;line-height:1.6;margin:0 0 8px 0;text-align:center}
.auth-title{color:var(--gold);font-family:'Cinzel',serif;font-size:1em;letter-spacing:2px;text-align:center;margin-bottom:4px}
.auth-helper{text-align:center;margin-top:4px}
.auth-helper a{color:var(--text-dim);font-size:0.8em;text-decoration:none;border-bottom:1px dotted var(--text-dim);transition:color 0.2s}
.auth-helper a:hover{color:var(--gold);border-bottom-color:var(--gold)}

/* ══ 월드 보스 노드 ══ */
.map-node.world-boss .node-circle{border-color:#6a0dad;box-shadow:0 0 20px rgba(106,13,173,0.5);animation:wbPulse 2s infinite}
.map-node.world-boss:hover .node-circle{border-color:#bf5fff;box-shadow:0 0 30px rgba(191,95,255,0.7)}
.map-node.world-boss .node-label{color:#a855f7}
@keyframes wbPulse{0%,100%{box-shadow:0 0 20px rgba(106,13,173,0.5)}50%{box-shadow:0 0 35px rgba(191,95,255,0.8)}}

/* ══ 성도 하위 노드 ══ */
.map-node.sub-node .node-circle{width:36px;height:36px;font-size:1em;border-color:var(--gold-dim);box-shadow:0 0 10px rgba(201,164,74,0.2)}
.map-node.sub-node:hover .node-circle{border-color:var(--gold);box-shadow:0 0 18px rgba(201,164,74,0.4)}
.map-node.sub-node .node-label{font-size:0.68em}
.map-node.sub-node .node-sub{font-size:0.58em}

/* ══ 공지 배너 ══ */
.announce-banner{background:linear-gradient(90deg,rgba(201,164,74,0.08),rgba(201,164,74,0.15),rgba(201,164,74,0.08));border:1px solid var(--gold-dim);border-radius:4px;padding:8px 14px;margin-bottom:6px;font-size:0.78em;color:var(--star);display:flex;align-items:center;gap:8px;cursor:pointer;overflow:hidden;position:relative}
.announce-banner.hidden{display:none}
.announce-banner .ann-tag{background:var(--gold);color:var(--bg);font-size:0.68em;padding:1px 6px;border-radius:3px;font-weight:bold;flex-shrink:0}
.announce-banner .ann-text{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.announce-banner .ann-close{color:var(--text-dim);cursor:pointer;font-size:0.9em;padding:0 4px;flex-shrink:0}
.announce-banner .ann-close:hover{color:var(--star)}

/* ══ 관측소 (UID 검색) ══ */
.lookup-bar{display:flex;gap:8px;align-items:center}
.lookup-bar input{background:var(--bg);border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:4px;font-size:0.85em}
.lookup-bar input:focus{outline:none;border-color:var(--gold)}
.lookup-card{background:var(--bg);border:1px solid var(--gold-dim);border-radius:6px;padding:14px;margin-top:8px}
.lookup-card .lk-nick{font-family:'Cinzel',serif;color:var(--star);font-size:1.1em}
.lookup-card .lk-uid{color:var(--gold);font-size:0.75em;margin-left:6px}
.lookup-card .lk-row{font-size:0.8em;color:var(--text-dim);margin-top:6px}
.lookup-card .lk-weapon{background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:8px;margin-top:8px;font-size:0.82em}
.lookup-card .lk-actions{display:flex;gap:6px;margin-top:10px}

/* ══ 교신실 (채팅) ══ */
.chat-box{background:var(--bg);border:1px solid var(--border);border-radius:4px;height:320px;overflow-y:auto;padding:10px;display:flex;flex-direction:column;gap:4px;scroll-behavior:smooth}
.chat-msg{font-size:0.8em;line-height:1.5;padding:2px 0}
.chat-msg .cm-nick{color:var(--gold);font-weight:bold;margin-right:6px;cursor:pointer}
.chat-msg .cm-nick:hover{text-decoration:underline}
.chat-msg .cm-time{color:var(--text-dim);font-size:0.7em;margin-right:4px}
.chat-msg .cm-text{color:var(--text)}
.chat-msg.system{color:var(--gold);font-style:italic;font-size:0.75em;text-align:center}
.chat-input-bar{display:flex;gap:6px;margin-top:8px}
.chat-input-bar input{flex:1;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:8px 12px;border-radius:4px;font-size:0.85em}
.chat-input-bar input:focus{outline:none;border-color:var(--gold)}

/* ══ 각인소 ══ */
.btn-guide{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1px solid var(--gold);background:transparent;color:var(--gold);font-size:0.65em;font-weight:700;cursor:pointer;vertical-align:middle;margin-left:6px;transition:background 0.2s}
.btn-guide:hover{background:rgba(212,175,55,0.15)}
.guide-modal{position:fixed;inset:0;z-index:999;background:rgba(0,0,0,0.7);display:flex;align-items:center;justify-content:center;padding:16px}
.guide-modal.hidden{display:none}
.guide-modal-inner{background:var(--card,#1a1a2e);border:1px solid var(--gold);border-radius:8px;max-width:420px;width:100%;max-height:80vh;overflow-y:auto;padding:20px 22px;position:relative}
.guide-modal-inner h3{color:var(--gold);font-size:1em;margin:0 0 14px;text-align:center}
.guide-close{position:absolute;top:10px;right:14px;background:none;border:none;color:var(--text-dim);font-size:1.1em;cursor:pointer}
.guide-close:hover{color:var(--text)}
.guide-body{font-size:0.82em;color:var(--text);line-height:1.6}
.guide-section{margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,0.06)}
.guide-section:last-child{border-bottom:none;margin-bottom:0}
.guide-label{color:var(--gold);font-weight:700;font-size:0.9em;margin-bottom:4px}
.guide-body p{margin:0}
.guide-elem-table{display:flex;align-items:center;gap:6px;margin-top:6px;flex-wrap:wrap;font-size:0.9em;color:var(--text-dim)}
.rune-desc{font-size:0.78em;color:var(--text-dim);margin-bottom:10px}
.rune-crystal-bar{font-size:0.82em;color:var(--text);margin-bottom:14px;padding:6px 10px;background:var(--bg);border:1px solid var(--border);border-radius:4px}
.rune-sub{font-size:0.85em;color:var(--gold);margin:10px 0 8px}
.rune-weapon-list{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto}
.rune-weapon-item{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:8px 12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:border-color 0.2s}
.rune-weapon-item:hover{border-color:var(--gold)}
.rw-name{font-size:0.85em;color:var(--star)}
.rw-rarity{font-size:0.7em;color:var(--text-dim);text-transform:uppercase}
.rune-panel{margin-top:12px}
.rune-slots{display:flex;flex-direction:column;gap:6px}
.rune-slot{background:var(--bg);border:1px solid var(--gold-dim);border-radius:4px;padding:10px 12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rs-label{font-size:0.72em;color:var(--gold);font-weight:bold;min-width:50px}
.rs-rune{font-size:0.85em;color:var(--star)}
.rs-desc{font-size:0.72em;color:var(--text-dim);flex:1}
.rune-shop{display:flex;flex-direction:column;gap:4px}
.rune-shop-item{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:8px 12px;display:flex;align-items:center;gap:8px}
.rsi-info{flex:1}
.rsi-name{font-size:0.82em;color:var(--star);display:block}
.rsi-desc{font-size:0.7em;color:var(--text-dim)}
.rsi-cost{font-size:0.75em;color:var(--gold);white-space:nowrap}
.rune-section-label{font-size:0.78em;color:var(--star);padding:6px 0 2px;border-bottom:1px solid var(--border);margin-bottom:4px;font-weight:600}
.rune-drop-item{border-color:rgba(176,130,255,.35)}
.shard-bar{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}
.shard-chip{font-size:0.75em;padding:3px 8px;border:1px solid;border-radius:12px;background:rgba(0,0,0,.3)}
.shard-chip b{color:var(--gold)}
.synth-panel{display:flex;flex-direction:column;gap:10px}
.synth-section{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:10px}
.synth-label{font-size:0.78em;color:var(--star);font-weight:600;margin-bottom:6px}
.synth-row{display:flex;align-items:center;gap:6px;font-size:0.78em;padding:4px 0;flex-wrap:wrap}
.synth-qty{color:var(--text-dim);font-size:0.9em;margin-left:auto}
.btn-max{background:linear-gradient(135deg,#4a3a70,#6b4a90);color:#ffe0ff;border-color:#8060a0;font-weight:600;letter-spacing:0.5px}
.btn-max:hover:not(.disabled){background:linear-gradient(135deg,#5a4a80,#7b5aa0);box-shadow:0 0 6px rgba(180,130,220,0.4)}
.btn-max.disabled{background:var(--bg2);color:var(--text-dim);border-color:var(--border);opacity:0.5;cursor:not-allowed}

/* ══ 각인 합성 (3:1) 패널 ══ */
.rune-synth-panel{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:12px;display:flex;flex-direction:column;gap:10px}
.rsynth-tabs{display:flex;gap:4px;flex-wrap:wrap}
.rsynth-tab{flex:1;min-width:80px;font-size:0.76em;padding:6px 10px;background:var(--bg2);border:1px solid var(--border);color:var(--text-dim);border-radius:4px;cursor:pointer;transition:all 0.15s}
.rsynth-tab:hover{color:var(--star);border-color:var(--gold-dim)}
.rsynth-tab.active{background:var(--gold-dim);color:var(--text);border-color:var(--gold)}
.rsynth-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.rsynth-slot{background:var(--bg2);border:1px dashed var(--border);border-radius:5px;min-height:60px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px;text-align:center;transition:all 0.15s}
.rsynth-slot.empty .rss-empty{color:var(--text-dim);font-size:0.75em}
.rsynth-slot.filled{border-style:solid;border-color:var(--gold-dim);background:rgba(201,164,74,0.06);cursor:pointer}
.rsynth-slot.filled:hover{border-color:var(--gold);background:rgba(201,164,74,0.12)}
.rss-name{font-size:0.78em;font-weight:bold;margin-bottom:2px}
.rss-sub{font-size:0.68em;color:var(--text-dim)}
.rsynth-preview{background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:8px 10px}
.rsp-label{font-size:0.72em;color:var(--star);margin-bottom:6px}
.rsp-bars{display:flex;flex-direction:column;gap:3px}
.rsp-bar{display:grid;grid-template-columns:50px 1fr 50px;align-items:center;gap:6px;font-size:0.72em}
.rsp-name{font-weight:600}
.rsp-gauge{background:var(--bg);height:8px;border-radius:4px;overflow:hidden}
.rsp-fill{display:block;height:100%;border-radius:4px;transition:width 0.2s}
.rsp-pct{text-align:right;color:var(--text-dim)}
.rsynth-warn{color:var(--blood);font-size:0.78em;text-align:center;padding:6px;background:rgba(180,40,40,0.08);border-radius:4px}
.rsynth-hint{color:var(--text-dim);font-size:0.74em;text-align:center;padding:4px}
.rsynth-pool{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}
.rsynth-empty{color:var(--text-dim);font-size:0.78em;text-align:center;padding:12px}
.rsynth-pool-item{display:flex;align-items:center;gap:8px;background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:6px 10px;font-size:0.76em}
.rspi-info{flex:1;display:flex;flex-direction:column}
.rspi-name{font-weight:600}
.rspi-tag{font-size:0.68em;margin-top:1px}
.rspi-qty{color:var(--text-dim);font-size:0.72em}
@media(max-width:500px){
  .rsynth-slots{grid-template-columns:1fr 1fr}
  .rsynth-slot:nth-child(3){grid-column:1/3}
  .rsp-bar{grid-template-columns:40px 1fr 42px;font-size:0.68em}
}

/* ══ 의뢰 게시판 ══ */
.quest-list{display:flex;flex-direction:column;gap:8px}
.quest-item{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:12px}
.quest-item.claimed{opacity:0.5}
.qi-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.qi-title{font-size:0.9em;color:var(--star);font-weight:bold}
.qi-type{font-size:0.65em;color:var(--gold);background:rgba(201,164,74,0.12);padding:2px 8px;border-radius:3px}
.qi-desc{font-size:0.78em;color:var(--text-dim);margin-bottom:8px}
.qi-bar{width:100%;height:6px;background:var(--bg2);border-radius:3px;overflow:hidden;margin-bottom:6px}
.qi-fill{height:100%;background:linear-gradient(90deg,var(--gold-dim),var(--gold));border-radius:3px;transition:width 0.3s}
.qi-foot{display:flex;align-items:center;gap:8px;font-size:0.75em}
.qi-progress{color:var(--text-dim)}
.qi-reward{color:var(--gold);flex:1;text-align:right}
.qi-done{color:var(--text-dim);font-style:italic}
.qi-pending{color:var(--text-dim)}

/* ══ 원정 탭 ══ */
.expedition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}
@media(max-width:700px){.expedition-grid{grid-template-columns:1fr}}
.boss-card{background:var(--bg3);border:1px solid var(--blood-dark);border-radius:5px;padding:16px;text-align:center;cursor:pointer;transition:all 0.3s;position:relative;overflow:hidden}
.boss-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--blood),transparent)}
.boss-card:hover{border-color:var(--danger);background:rgba(138,3,3,0.12)}
.boss-card .boss-icon{font-size:2.4em;margin-bottom:8px}
.boss-card .boss-name{font-family:'Cinzel',serif;font-size:0.78em;color:var(--danger);letter-spacing:2px;margin-bottom:4px}
.boss-card .boss-hp{font-size:0.7em;color:var(--text-dim)}
.boss-card .boss-loc{font-size:0.62em;color:var(--text-dim);opacity:0.6;margin-top:2px}

/* ══ 월드 보스 섹션 ══ */
.wb-section{background:var(--bg2);border:1px solid #4a1070;border-radius:5px;padding:24px;text-align:center;position:relative;overflow:hidden}
.wb-section::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#a855f7,transparent)}
.wb-name{font-family:'Cinzel',serif;font-size:1.1em;color:#a855f7;letter-spacing:3px;margin-bottom:4px;text-shadow:0 0 15px rgba(168,85,247,0.5)}
.wb-hp-wrap{width:90%;background:rgba(10,0,20,0.6);border-radius:20px;height:18px;overflow:hidden;position:relative;border:1px solid rgba(168,85,247,0.3);margin:12px auto 6px}
.wb-hp-fill{height:100%;background:linear-gradient(90deg,#6a0dad,#bf5fff);border-radius:20px;transition:width 0.3s ease-out}
.wb-hp-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:0.65em;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,0.7)}
.wb-status{font-size:0.78em;color:var(--text-dim);margin:8px 0}
.wb-contrib{font-size:0.72em;color:#a855f7;margin:4px 0}
.wb-respawn{font-size:0.8em;color:var(--gold);font-weight:700;margin:10px 0}

/* ══ 대장간 서브탭 ══ */
.forge-subtabs{display:flex;gap:2px;margin-bottom:12px;background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:3px;overflow-x:auto}
.forge-sub{flex:1;padding:8px 4px;background:transparent;border:none;color:var(--text-dim);font-size:0.78em;font-weight:600;cursor:pointer;border-radius:4px;transition:all 0.2s;white-space:nowrap;letter-spacing:0.5px}
.forge-sub.active{background:rgba(212,175,55,0.15);color:var(--gold);border:1px solid rgba(212,175,55,0.3)}
.forge-sub:hover:not(.active){color:var(--text);background:rgba(255,255,255,0.04)}

/* ══ 합성(승급) ══ */
.promote-grid{display:flex;align-items:center;justify-content:center;gap:12px;margin:16px 0}
.promote-slot{flex:1;max-width:200px;min-height:120px;background:var(--bg);border:2px dashed var(--border);border-radius:8px;padding:12px;text-align:center;cursor:pointer;transition:border-color 0.2s}
.promote-slot:hover{border-color:var(--gold)}
.promote-slot.filled{border-style:solid;border-color:var(--iron)}
.ps-label{font-size:0.68em;color:var(--text-dim);margin-bottom:8px;letter-spacing:0.5px}
.ps-weapon{font-size:0.82em;color:var(--text);min-height:40px;display:flex;align-items:center;justify-content:center}
.ps-weapon .pw-name{font-weight:700}
.ps-weapon .pw-enh{font-size:0.85em;margin-left:4px}
.ps-weapon .pw-rar{font-size:0.7em;display:block;margin-top:2px}
.promote-arrow{font-size:1.4em;color:var(--gold);font-weight:700;flex-shrink:0}
.promote-result{text-align:center;margin:8px 0 14px;padding:10px;background:rgba(212,175,55,0.08);border:1px solid rgba(212,175,55,0.2);border-radius:6px}
.pr-arrow{color:var(--gold);font-size:1.2em;margin-bottom:4px}
.pr-info{font-size:0.85em;color:var(--text)}
.promote-rules{margin-top:14px;padding:10px 12px;background:rgba(255,255,255,0.02);border-radius:4px}
.pr-rule{font-size:0.72em;color:var(--text-dim);line-height:1.7}
.promote-select-list{display:flex;flex-direction:column;gap:4px;max-height:50vh;overflow-y:auto;margin-top:10px}
.promote-sel-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg);border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:border-color 0.2s}
.promote-sel-item:hover{border-color:var(--gold)}
.promote-sel-item .psi-name{font-size:0.85em;font-weight:600}
.promote-sel-item .psi-detail{font-size:0.72em;color:var(--text-dim)}

/* ══ 초월 합성 ══ */
.transcend-weapon-select{display:flex;justify-content:center;margin:12px 0}
.transcend-slot{min-width:220px;min-height:100px;background:var(--bg);border:2px dashed rgba(200,80,255,0.3);border-radius:8px;padding:12px;text-align:center;cursor:pointer;transition:border-color 0.2s}
.transcend-slot:hover{border-color:#c850ff}
.transcend-slot.filled{border-style:solid;border-color:rgba(200,80,255,0.5);background:rgba(200,80,255,0.05)}
.transcend-rate-bar{margin:14px 0 10px}
.tr-label{font-size:0.72em;color:var(--text-dim);margin-bottom:4px}
.tr-bar-wrap{position:relative;height:24px;background:rgba(255,255,255,0.05);border:1px solid var(--border);border-radius:4px;overflow:hidden}
.tr-bar-fill{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,rgba(200,80,255,0.4),rgba(200,80,255,0.7));transition:width 0.4s ease}
.tr-bar-text{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:0.82em;font-weight:700;color:#e0c0ff;text-shadow:0 0 4px rgba(0,0,0,0.5)}
.transcend-cost{display:flex;gap:16px;justify-content:center;font-size:0.78em;margin:8px 0}
.transcend-stack{text-align:center;font-size:0.78em;color:var(--text-dim);margin:6px 0 12px;padding:6px;background:rgba(200,80,255,0.06);border-radius:4px}

/* ══ 제련소 ══ */
.furnace-section{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:700px){.furnace-section{grid-template-columns:1fr}}
.relic-grid{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto}
.relic-item{display:flex;align-items:center;justify-content:space-between;background:var(--bg3);border:1px solid var(--iron);border-left:3px solid var(--common);border-radius:3px;padding:10px 14px;cursor:pointer;transition:all 0.2s;font-size:0.82em}
.relic-item:hover{border-left-color:var(--gold-dim)}
.relic-item.selected{border-left-color:var(--gold);background:rgba(201,164,74,0.06)}
.relic-item .relic-name{flex:1;color:var(--text)}
.relic-item .relic-qty{color:var(--text-dim);font-size:0.8em;margin:0 10px}
.relic-item .relic-val{color:var(--gold);font-size:0.78em;font-weight:700}
.relic-item.r-common{border-left-color:var(--common)}.relic-item.r-uncommon{border-left-color:var(--uncommon)}
.relic-item.r-rare{border-left-color:var(--rare)}.relic-item.r-epic{border-left-color:var(--epic)}
.furnace-panel{background:var(--bg3);border:1px solid var(--iron);border-radius:5px;padding:18px;text-align:center}
.furnace-icon{font-size:3em;margin-bottom:8px}
.furnace-preview{font-size:0.78em;color:var(--text-dim);margin:10px 0;min-height:28px}
.furnace-preview .preview-gold{color:var(--gold);font-weight:700;font-size:1.1em}

/* ══ 가챠 ══ */
.gacha-section{text-align:center;padding:10px 0}
.gacha-banner{background:linear-gradient(135deg,rgba(201,164,74,0.08) 0%,rgba(168,85,247,0.06) 100%);border:1px solid var(--gold-dim);border-radius:5px;padding:24px;margin-bottom:16px;position:relative;overflow:hidden}
.gacha-banner::before{content:'⚜';position:absolute;font-size:8em;opacity:0.04;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none}
.gacha-title{font-family:'Cinzel',serif;font-size:1.1em;color:var(--gold);letter-spacing:4px;margin-bottom:4px}
.gacha-sub{font-size:0.7em;color:var(--text-dim);letter-spacing:2px;margin-bottom:16px}
.gacha-rates{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:16px}
.gacha-rate-badge{padding:4px 10px;border-radius:12px;font-size:0.65em;font-weight:700;letter-spacing:1px;border:1px solid}
.gacha-rate-badge.common{border-color:var(--common);color:var(--common);background:rgba(160,160,160,0.08)}
.gacha-rate-badge.uncommon{border-color:var(--uncommon);color:var(--uncommon);background:rgba(79,201,120,0.08)}
.gacha-rate-badge.rare{border-color:var(--rare);color:var(--rare);background:rgba(74,158,255,0.08)}
.gacha-rate-badge.epic{border-color:var(--epic);color:var(--epic);background:rgba(168,85,247,0.08)}
.gacha-rate-badge.legendary{border-color:var(--legendary);color:var(--legendary);background:rgba(255,140,0,0.08)}
.gacha-rate-badge.semilegend{border-color:var(--semilegend);color:var(--semilegend);background:rgba(255,107,157,0.08)}
.gacha-rate-badge.transcendent{border-color:var(--transcendent);color:var(--transcendent);background:rgba(0,240,255,0.08)}
.gacha-rate-badge.relic{border-color:var(--relic);color:var(--relic);background:rgba(240,240,240,0.08)}
.gacha-pity{margin-top:10px;font-size:0.75em;color:var(--text-dim);letter-spacing:1px;text-align:center}
.gacha-pity #pityCount{color:var(--legendary);font-weight:700}
.gacha-pity-bar{margin-top:4px;height:6px;background:var(--iron);border-radius:3px;overflow:hidden;border:1px solid var(--border)}
.gacha-pity-fill{height:100%;background:linear-gradient(90deg,var(--gold-dim),var(--legendary));transition:width 0.4s}
.gacha-result{min-height:80px;display:flex;align-items:center;justify-content:center;margin:12px 0}
.gacha-result-card{background:var(--bg3);border-radius:5px;padding:14px 20px;text-align:center;animation:resultIn 0.3s ease-out;min-width:200px}
.gacha-result-card .gr-name{font-size:1em;font-weight:700;margin-bottom:4px}
.gacha-result-card .gr-atk{font-size:0.78em;color:var(--danger);margin-bottom:2px}
.gacha-result-card .gr-rarity{font-size:0.65em;text-transform:uppercase;letter-spacing:2px}

/* ══ 무기 판매 버튼 ══ */
.weapon-item .weapon-sell-btn{font-size:0.62em;padding:2px 8px;background:transparent;border:1px solid var(--blood-dark);color:var(--blood);border-radius:2px;cursor:pointer;transition:all 0.2s;margin-left:6px}
.weapon-item .weapon-sell-btn:hover{border-color:var(--danger);color:var(--danger);background:rgba(255,75,75,0.1)}

/* ══ 등급 색상 (rarity) ══ */
.rarity-common{color:var(--common)}.rarity-uncommon{color:var(--uncommon)}.rarity-rare{color:var(--rare)}.rarity-epic{color:var(--epic)}.rarity-legendary{color:var(--legendary)}.rarity-transcendent{color:var(--transcendent)}.rarity-relic{color:var(--relic)}

/* ══ 무기 아이콘 이미지 ══ */
.weapon-ico{width:28px;height:28px;margin-right:8px;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;vertical-align:middle;flex-shrink:0}
.gr-img{width:72px;height:72px;margin:0 auto 8px;display:block;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges}
.mon-img{image-rendering:pixelated;image-rendering:crisp-edges}

/* ══ 속성 시스템 ══ */
.el-i{font-size:0.9em;margin-right:2px}
.el-black{color:#c43a3a}.el-blue{color:#3a8ec4}.el-white{color:#b8d8f0}.el-none{color:var(--text-dim)}

.el-badge{display:inline-block;padding:2px 8px;border-radius:3px;font-size:0.72em;font-weight:700;letter-spacing:1px}
.el-none{background:rgba(100,100,120,0.15);color:var(--text-dim);border:1px solid rgba(100,100,120,0.3)}
.el-black-bg{background:rgba(196,58,58,0.15);color:#c43a3a;border:1px solid rgba(196,58,58,0.3)}
.el-blue-bg{background:rgba(58,142,196,0.15);color:#3a8ec4;border:1px solid rgba(58,142,196,0.3)}
.el-white-bg{background:rgba(184,216,240,0.15);color:#b8d8f0;border:1px solid rgba(184,216,240,0.3)}

.body-badge,.body-badge-sm{display:inline-block;padding:2px 6px;border-radius:3px;font-size:0.68em;color:var(--text-dim);background:rgba(30,30,46,0.5);border:1px solid var(--iron);margin-left:4px}
.body-badge-sm{font-size:0.62em;padding:1px 5px}

.region-header{text-align:center;margin-bottom:14px}
.region-header h2 .el-i{font-size:1em}
.region-desc{font-size:0.75em;color:var(--text-dim);margin:6px 0;letter-spacing:1px}
.region-info{margin-top:8px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}

.boss-section-title{text-align:center;color:var(--gold);font-family:'Cinzel',serif;font-size:0.9em;letter-spacing:3px;margin:20px 0 12px;padding-top:16px;border-top:1px solid var(--iron)}

/* ── 11티어 필드 보스 ──────────────────────────────────────── */
.field-boss-card{margin-top:20px;padding:14px;border:1px solid rgba(240,192,64,0.35);border-radius:6px;background:radial-gradient(ellipse at top,rgba(240,192,64,0.08),transparent 60%),rgba(10,8,16,0.6)}
.field-boss-card .boss-section-title{border-top:none;margin-top:0;padding-top:0;color:#f0c040}
.fb-wrap{text-align:center;display:flex;flex-direction:column;gap:8px;align-items:center}
.fb-name{font-family:'Cinzel',serif;font-size:1.1em;color:#f0c040;letter-spacing:2px;text-shadow:0 0 8px rgba(240,192,64,0.4);transition:transform 0.1s}
.fb-name.hit{transform:scale(1.1) translateX(4px)}
.fb-elem{margin:2px 0}
.fb-stack-row{display:flex;align-items:center;gap:10px;margin-top:6px}
.fb-stack-label{font-size:0.78em;color:var(--text-dim);letter-spacing:1px}
.fb-kill-info{font-size:0.72em;color:var(--text-dim)}
.fb-attack-btn{margin-top:6px;min-width:120px}
.btn-xs{padding:3px 10px;font-size:0.72em;border-radius:4px;background:rgba(240,192,64,0.08);border:1px solid rgba(240,192,64,0.4);color:#f0c040;cursor:pointer;letter-spacing:1px;transition:all 0.15s}
.btn-xs:hover{background:rgba(240,192,64,0.2);color:#ffd060}
.fb-down{background:rgba(120,140,170,0.08);border-color:rgba(120,140,170,0.4);color:#a0b0c8}
.fb-down:hover{background:rgba(120,140,170,0.2);color:#c8d0e0}
.fb-log{font-size:0.72em;color:var(--text-dim);margin-top:4px;max-height:60px;overflow:hidden}

/* ── 필드 보스 전용 탭 서브탭 네비 ──────────────────────────── */
.fb-subtabs{display:flex;gap:6px;margin:12px 0 14px;justify-content:center;flex-wrap:wrap}
.fb-subtab{padding:8px 16px;font-size:0.82em;border:1px solid rgba(240,192,64,0.3);border-radius:4px;background:rgba(10,8,16,0.6);color:var(--text-dim);cursor:pointer;letter-spacing:1px;transition:all 0.15s;font-family:inherit}
.fb-subtab:hover{color:#f0c040;border-color:rgba(240,192,64,0.6)}
.fb-subtab.active{background:rgba(240,192,64,0.15);color:#f0c040;border-color:rgba(240,192,64,0.7);box-shadow:0 0 8px rgba(240,192,64,0.2)}
.fb-sub-content{display:none}
.fb-sub-content.active{display:block}

/* ── 필드 보스 비주얼/스탯 영역 ─────────────────────────────── */
.fb-img-wrap{width:100%;max-width:200px;margin:0 auto 6px;overflow:hidden;border-radius:6px}
.fb-img{width:100%;height:auto;display:block;filter:drop-shadow(0 0 12px rgba(240,192,64,0.3))}
.fb-visual{font-size:3em;cursor:pointer;padding:10px 0;transition:transform 0.1s;user-select:none}
.fb-visual:hover{transform:scale(1.05)}
.fb-visual.hit{animation:fb-hit 0.2s}
@keyframes fb-hit{0%{transform:scale(1)}50%{transform:scale(1.15) translateX(6px);filter:brightness(1.5)}100%{transform:scale(1)}}
.fb-emoji{display:inline-block;filter:drop-shadow(0 0 8px rgba(240,192,64,0.4))}
.fb-stats-row{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:center;margin:6px 0;font-size:0.78em;color:var(--text-dim)}
.fb-stat b{color:#f0c040;font-weight:600}
.fb-hit-last{font-size:0.78em;color:#ffd080;margin-left:6px}
.fb-hit-last.crit{color:#ff4060;font-weight:700;text-shadow:0 0 6px rgba(255,64,96,0.5)}

.elem-indicator{text-align:center;margin:4px 0;min-height:20px}

.mod-info{font-size:0.78em;margin-left:6px}
.mod-up{color:#44d98c;font-weight:700}
.mod-down{color:#ff4b4b;font-weight:700}

.wb-elem{text-align:center;margin:8px 0}
.wb-cycle-hint{font-size:0.68em;color:var(--text-dim);margin-left:8px}

/* 무기 태그 (속성 + 무기군) */
.w-tags{display:flex;gap:4px;flex-shrink:0;margin:0 6px}
.w-tag{display:inline-block;padding:2px 6px;border-radius:3px;font-size:0.6em;font-weight:700;letter-spacing:0.5px;white-space:nowrap;line-height:1.4}
.w-tag.el-black-bg{background:rgba(196,58,58,0.2);color:#e05050;border:1px solid rgba(196,58,58,0.4)}
.w-tag.el-blue-bg{background:rgba(58,142,196,0.2);color:#5aacde;border:1px solid rgba(58,142,196,0.4)}
.w-tag.el-white-bg{background:rgba(184,216,240,0.2);color:#c8e4f8;border:1px solid rgba(184,216,240,0.4)}
.w-tag-class{background:rgba(30,30,46,0.6);color:var(--text-dim);border:1px solid var(--iron)}
.w-tag-rune{background:rgba(200,80,255,0.15);color:#c080ff;border:1px solid rgba(200,80,255,0.4);cursor:help}
.w-class-badge{display:inline-block;padding:2px 7px;border-radius:3px;font-size:0.7em;background:rgba(30,30,46,0.5);border:1px solid var(--iron);color:var(--text-dim);letter-spacing:1px}
.weapon-type-info{text-align:center;margin:6px 0 4px;min-height:20px}
.gr-class{margin:4px 0;text-align:center}

/* ── 뒤로가기 버튼 ─────────────────────────────────────────── */
.btn-back{background:none;border:1px solid var(--border);color:var(--gold-dim);padding:4px 12px;border-radius:4px;font-size:0.75em;cursor:pointer;margin-bottom:10px;transition:all 0.2s}
.btn-back:hover{color:var(--gold);border-color:var(--gold-dim);background:rgba(201,164,74,0.08)}

/* ── 10+1 연차 ──────────────────────────────────────────────── */
.gacha-btn-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:8px}
.btn-multi{border-color:#9a5adb;background:rgba(154,90,219,0.1);color:#c89aff;font-weight:700;letter-spacing:1px}
.btn-multi:hover{background:rgba(154,90,219,0.25);border-color:#c89aff;box-shadow:0 0 18px rgba(154,90,219,0.4)}

.multi-result-overlay{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,0.88);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
.multi-result-box{background:var(--bg2);border:1px solid var(--gold-dim);border-radius:8px;padding:20px;max-width:520px;width:95%;max-height:90vh;overflow-y:auto}
.multi-result-title{text-align:center;font-family:'Cinzel',serif;font-size:1.1em;color:var(--gold);margin-bottom:14px;letter-spacing:2px}
.multi-result-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.multi-skip-btn{width:100%;font-size:0.9em}

/* 카드 */
.multi-card{position:relative;aspect-ratio:3/4;border-radius:5px;overflow:hidden;cursor:default;transition:transform 0.25s}
.multi-card .mc-back{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bg3),#1a1a30);border:1px solid var(--border);font-size:1.6em;color:var(--gold-dim);transition:opacity 0.25s}
.multi-card .mc-front{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 4px;background:var(--bg3);border:1px solid var(--border);border-radius:5px;opacity:0;transition:opacity 0.25s;text-align:center}
.multi-card.unrevealed .mc-front{opacity:0}
.multi-card.unrevealed .mc-back{opacity:1}
.multi-card.revealed .mc-front{opacity:1}
.multi-card.revealed .mc-back{opacity:0}
.multi-card.revealed{transform:scale(1.03)}
.multi-card.mc-glow{box-shadow:0 0 14px rgba(201,164,74,0.5)}

.mc-bonus{position:absolute;top:2px;right:2px;font-size:0.5em;background:rgba(154,90,219,0.35);color:#c89aff;padding:1px 5px;border-radius:3px;letter-spacing:1px;font-weight:700}
.mc-name{font-size:0.68em;font-weight:700;margin:3px 0 1px;line-height:1.2}
.mc-rarity{font-size:0.52em;text-transform:uppercase;letter-spacing:1.5px;opacity:0.85}
.mc-class{font-size:0.58em;margin-top:2px}
.mr-img{width:48px;height:48px;object-fit:contain;margin-bottom:2px;border-radius:4px}

@keyframes resultIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ══ 확대 황도 맵 ══ */
.ecliptic-map-lg{height:580px}
.ecliptic-orbit-lg{width:78%;height:68%}

/* ══ 방위 경로선 (메인 맵) ══ */
.map-path{position:absolute;z-index:2;pointer-events:none}
.map-path::before{content:'';position:absolute;background:repeating-linear-gradient(
  var(--path-dir,to bottom),
  var(--star-line) 0 6px, transparent 6px 12px)}
.path-n{left:50%;top:8%;width:2px;height:16%;transform:translateX(-50%)}
.path-n::before{inset:0;position:absolute;width:100%;height:100%;
  background:repeating-linear-gradient(to bottom,var(--star-line) 0 6px,transparent 6px 12px)}
.path-s{left:50%;bottom:8%;width:2px;height:16%;transform:translateX(-50%)}
.path-s::before{inset:0;position:absolute;width:100%;height:100%;
  background:repeating-linear-gradient(to bottom,var(--star-line) 0 6px,transparent 6px 12px)}
.path-e{top:50%;right:12%;height:2px;width:16%;transform:translateY(-50%)}
.path-e::before{inset:0;position:absolute;width:100%;height:100%;
  background:repeating-linear-gradient(to right,var(--star-line) 0 6px,transparent 6px 12px)}
.path-w{top:50%;left:12%;height:2px;width:16%;transform:translateY(-50%)}
.path-w::before{inset:0;position:absolute;width:100%;height:100%;
  background:repeating-linear-gradient(to right,var(--star-line) 0 6px,transparent 6px 12px)}

/* ══ 방위 진입 노드 ══ */
.map-node.region-gate .node-circle{width:50px;height:50px;border-color:var(--gold-dim);font-size:1.3em;
  box-shadow:0 0 14px rgba(201,164,74,0.15)}
.map-node.region-gate:hover .node-circle{border-color:var(--gold);box-shadow:0 0 24px var(--gold-glow)}
.map-node.region-gate .node-label{color:var(--star);font-size:0.68em}
.gate-arrow{font-size:0.7em;color:var(--gold-dim);margin-top:2px;opacity:0.6;transition:opacity 0.3s}
.map-node.region-gate:hover .gate-arrow{opacity:1;color:var(--gold)}

/* ══ 시설 노드 (강화소/보급소) ══ */
.map-node.facility .node-circle{width:44px;height:44px;font-size:1.1em;border-color:var(--iron);
  box-shadow:0 0 8px rgba(0,0,0,0.5)}
.map-node.facility:hover .node-circle{border-color:var(--gold);box-shadow:0 0 16px var(--gold-glow)}
.map-node.facility .node-label{font-size:0.62em;color:var(--text-dim)}

/* ══ 서브맵 ══ */
.submap{position:relative;min-height:340px;padding:20px 16px 30px}
.submap-title{font-family:'Cinzel',serif;font-size:0.95em;color:var(--star);letter-spacing:3px;text-align:center;
  margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--iron)}
.submap-back{position:absolute;top:12px;left:12px;z-index:10}
.submap-orbit{position:absolute;top:50%;left:50%;width:60%;height:50%;
  border:1px solid rgba(201,164,74,0.06);border-radius:50%;
  transform:translate(-50%,-50%);pointer-events:none}

/* 서브맵 열기/닫기 전환 애니메이션 */
.submap-enter{animation:submapIn 0.35s ease-out}
@keyframes submapIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* ══ 스탯카드 모달 ══ */
.stat-card-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.88);z-index:150;display:none;align-items:center;justify-content:center;backdrop-filter:blur(3px)}
.stat-card-overlay.show{display:flex}
.stat-card-modal{background:var(--bg2);border:1px solid var(--gold-dim);border-radius:6px;padding:24px;
  max-width:720px;width:95%;max-height:88vh;overflow-y:auto;animation:resultIn 0.3s ease-out;position:relative}
.stat-card-modal::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent)}

.sc-header{text-align:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--iron)}
.sc-title{font-family:'Cinzel',serif;font-size:1.1em;color:var(--gold);letter-spacing:4px;margin-bottom:4px}
.sc-nick{color:var(--star);font-size:0.9em;letter-spacing:2px}
.sc-level{color:#b0a0ff;font-size:0.78em;margin-top:2px}

.sc-body{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:600px){.sc-body{grid-template-columns:1fr}}

.sc-section-title{font-family:'Cinzel',serif;font-size:0.82em;color:var(--gold);letter-spacing:2px;
  text-align:center;margin-bottom:10px;padding-bottom:6px;border-bottom:1px solid var(--iron)}

/* 우측: 전투 정보 */
.sc-weapon-card{background:var(--bg3);border:1px solid var(--iron);border-radius:4px;padding:10px 12px;margin-bottom:10px;text-align:center}
.sc-weapon-name{font-size:0.9em;color:var(--star);font-weight:700;margin-bottom:4px}
.sc-weapon-tags{display:flex;justify-content:center;gap:4px;margin-bottom:4px}
.sc-weapon-enhance{font-family:'Cinzel',serif;font-size:1.2em;font-weight:900;color:var(--silver)}
.sc-weapon-enhance.enh-max{color:var(--gold);text-shadow:0 0 12px var(--gold-glow)}

.sc-combat-rows{display:flex;flex-direction:column;gap:4px}
.sc-combat-row{display:flex;justify-content:space-between;align-items:center;padding:5px 8px;
  background:var(--bg3);border-radius:3px;font-size:0.82em}
.sc-cl{color:var(--text-dim)}
.sc-cv{color:var(--text);font-weight:700;font-family:'Cinzel',serif}
.sc-cv-up{color:var(--success)}
.sc-cv-final{color:var(--gold);font-size:1.1em}
.sc-cv-crit{color:var(--danger)}

.sc-rune-info{font-size:0.72em;color:var(--text-dim);margin-top:6px;text-align:center;min-height:16px}

.sc-footer{text-align:center;margin-top:14px;padding-top:10px;border-top:1px solid var(--iron)}

.hidden{display:none !important}
::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:var(--bg2)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}
/* ══ 소셜 / 교신 ══ */
.uid-display{font-family:'Cinzel',serif;font-size:1.3em;color:var(--gold);letter-spacing:3px;padding:8px 0}
.mail-badge{background:#e85050;color:#fff;font-size:0.6em;padding:1px 5px;border-radius:8px;margin-left:4px;vertical-align:top}
.mail-count{color:var(--text-dim);font-size:0.7em;margin-left:6px}
.mail-list{display:flex;flex-direction:column;gap:6px;max-height:400px;overflow-y:auto}
.mail-item{background:var(--bg);border:1px solid var(--border);border-radius:4px;padding:10px 12px;cursor:pointer;transition:border-color 0.2s}
.mail-item:hover{border-color:var(--gold-dim)}
.mail-item.unread{border-left:3px solid var(--gold)}
.mail-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
.mail-title{font-size:0.85em;color:var(--star)}
.mail-date{font-size:0.68em;color:var(--text-dim)}
.mail-body{font-size:0.78em;color:var(--text-dim)}
.mail-attach{font-size:0.75em;color:var(--gold);margin-top:4px}
.mail-actions{display:flex;gap:4px;margin-top:6px}
.mail-actions .btn{font-size:0.68em;padding:3px 10px}
/* 우편 팝업 */
.mail-popup-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.75);z-index:200;align-items:center;justify-content:center}
.mail-popup-bg.show{display:flex}
.mail-popup{background:var(--bg);border:1px solid var(--gold);border-radius:8px;padding:20px;min-width:300px;max-width:420px;width:90%;max-height:70vh;overflow-y:auto;animation:mpFadeIn 0.2s ease}
@keyframes mpFadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.mp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.mp-type{font-size:0.72em;color:var(--text-dim);background:var(--bg2);padding:2px 8px;border-radius:3px}
.mp-date{font-size:0.7em;color:var(--text-dim)}
.mp-title{font-family:'Cinzel',serif;color:var(--star);font-size:1em;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid var(--border)}
.mp-body{font-size:0.85em;color:var(--text);line-height:1.6;white-space:pre-wrap;min-height:40px;margin-bottom:12px}
.mp-attach{font-size:0.8em;color:var(--gold);background:rgba(201,164,74,0.08);border:1px solid var(--gold-dim);border-radius:4px;padding:6px 10px;margin-bottom:12px}
.mp-actions{display:flex;gap:8px;justify-content:flex-end}
.mp-actions .btn{font-size:0.78em;padding:5px 14px}
.profile-card{background:var(--bg);border:1px solid var(--gold-dim);border-radius:6px;padding:14px;margin-top:8px}
.pc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.pc-nick{font-family:'Cinzel',serif;color:var(--star);font-size:1em}
.pc-uid{color:var(--gold);font-size:0.75em}
.pc-weapon{background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:8px;margin:6px 0}
.pc-weapon-name{color:var(--star);font-size:0.85em}
.pc-weapon-info{color:var(--text-dim);font-size:0.72em;margin-top:2px}
.pc-stats{display:flex;gap:12px;font-size:0.75em;color:var(--text-dim);margin-top:6px}
.pc-actions{display:flex;gap:6px;margin-top:8px}
.pc-actions .btn{font-size:0.72em;padding:4px 12px}
.friend-section{margin-top:8px}
.friend-section-title{font-size:0.78em;color:var(--gold);margin-bottom:6px;border-bottom:1px solid var(--border);padding-bottom:4px}
.friend-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border)}
.friend-item:last-child{border-bottom:none}
.friend-name{font-size:0.85em;color:var(--star)}
.friend-uid{font-size:0.7em;color:var(--text-dim);margin-left:6px}
.friend-btns{display:flex;gap:4px}
.friend-btns .btn{font-size:0.65em;padding:2px 8px}

/* ══ 마이페이지 아이콘 ══ */
.mypage-icon{cursor:pointer;color:var(--text-dim);font-size:0.8em;margin-left:6px;transition:color 0.2s}
.mypage-icon:hover{color:var(--gold)}

/* ══ 마이페이지 ══ */
.mypage-section{display:flex;flex-direction:column;gap:8px;padding:4px 0}
.mp-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border)}
.mp-row:last-child{border-bottom:none}
.mp-label{color:var(--text-dim);font-size:0.82em}
.mp-val{color:var(--star);font-size:0.85em;font-family:'Cinzel',serif}
.mypage-section input{background:var(--bg);border:1px solid var(--border);color:var(--star);padding:8px 12px;border-radius:4px;font-size:0.85em;width:100%}
.mypage-section input:focus{border-color:var(--gold);outline:none}
.mypage-section .btn{margin-top:4px}
.mp-msg{font-size:0.78em;min-height:1.2em;margin-top:4px}
.mp-msg.ok{color:#5abd5a}
.mp-msg.err{color:#e85050}

/* ══ 스탯 패널 ══ */
.stat-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding:6px 0;border-bottom:1px solid var(--iron)}
.stat-points-label{font-size:0.82em;color:var(--text-dim)}
.stat-points-label strong{color:var(--gold);font-size:1.1em}
.stat-rows{display:flex;flex-direction:column;gap:6px}
.stat-row{display:flex;align-items:center;gap:6px;padding:6px 8px;background:var(--bg3);border:1px solid var(--iron);border-radius:4px}
.stat-name{flex:0 0 72px;font-size:0.82em;color:var(--star);font-weight:600}
.stat-name small{display:block;font-size:0.75em;color:var(--text-dim);font-weight:400;letter-spacing:1px}
.stat-btn{width:26px;height:26px;border:1px solid var(--border);background:var(--bg2);color:var(--text);border-radius:3px;cursor:pointer;font-size:0.9em;display:flex;align-items:center;justify-content:center;transition:all 0.2s}
.stat-btn:hover{border-color:var(--gold);color:var(--gold)}
.stat-btn:disabled{opacity:0.3;cursor:not-allowed}
.stat-val{min-width:28px;text-align:center;font-size:0.9em;font-weight:700;color:var(--text)}
.stat-eff{flex:1;text-align:right;font-size:0.75em;color:var(--gold-dim);letter-spacing:0.5px}
.stat-apply-btn{margin-top:10px;width:100%}
.stat-msg{font-size:0.78em;min-height:1.2em;margin-top:4px;text-align:center}
.stat-msg.ok{color:#5abd5a}.stat-msg.err{color:#e85050}
.btn-sm{font-size:0.68em;padding:4px 10px;background:transparent;border:1px solid var(--border);color:var(--text-dim);border-radius:3px;cursor:pointer;transition:all 0.2s}
.btn-sm:hover{border-color:var(--gold);color:var(--gold)}

.ws-divider{border-top:1px solid var(--iron);margin:6px 0;opacity:0.5}

/* ══ 크리티컬 텍스트 ══ */
.crit-text{color:#ff4b4b;font-weight:700;text-shadow:0 0 8px rgba(255,75,75,0.5)}
.crit-label{display:inline-block;color:#ff6b6b;font-size:0.75em;font-weight:700;letter-spacing:1px;margin-left:4px;animation:critPulse 0.6s ease-out}
@keyframes critPulse{0%{transform:scale(1.5);opacity:0}50%{transform:scale(1.1);opacity:1}100%{transform:scale(1)}}

/* ══════════════════════════════════════════════════════════════════════
   남부원정 — 성진 탐사
   ══════════════════════════════════════════════════════════════════════ */

/* 로비 */
.exp-lobby{text-align:center;padding:20px 0}
.exp-intro-icon{font-size:3em;margin-bottom:8px;animation:expFloat 2s ease-in-out infinite}
@keyframes expFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.exp-intro-title{font-size:1.3em;font-weight:700;color:var(--accent);margin-bottom:8px}
.exp-intro-desc{font-size:0.82em;color:var(--text-dim);line-height:1.7;margin-bottom:16px}
.exp-start-btn{font-size:1em;padding:12px 32px;letter-spacing:1px}
.text-blessing{color:#a78bfa;font-weight:600}
.text-dust{color:#fbbf24;font-weight:700;font-size:1.2em}
.text-gold{color:#fbbf24;font-weight:700}

/* HUD */
.exp-hud{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:rgba(0,0,0,0.3);border-radius:8px;margin-bottom:16px;flex-wrap:wrap;gap:8px}
.exp-progress{font-size:0.85em;font-weight:600;color:var(--text-dim)}
.exp-progress-bar{width:120px;height:6px;background:rgba(255,255,255,0.1);border-radius:3px;margin-top:4px;overflow:hidden}
.exp-progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#a78bfa);border-radius:3px;transition:width 0.4s ease}
.exp-stats{display:flex;gap:14px;align-items:center;font-size:0.85em}
.exp-dust-counter{color:#fbbf24;font-weight:700}
.exp-gold-counter{color:#fbbf24;font-weight:600;opacity:0.8}
.exp-buff{font-size:0.8em}

/* 카드 영역 */
.exp-cards{display:flex;justify-content:center;gap:14px;perspective:800px;min-height:240px;align-items:center}

/* 카드 래퍼 */
.exp-card-wrapper{position:relative;width:130px}

/* 카드 본체 */
.exp-card{width:130px;height:190px;cursor:pointer;position:relative;border-radius:12px;transition:transform 0.2s}
.exp-card:hover:not(.flipped):not(.dimmed){transform:translateY(-4px)}
.exp-card-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform 0.5s ease}
.exp-card.flipped .exp-card-inner{transform:rotateY(180deg)}

/* 카드 앞뒷면 공통 */
.exp-card-back,.exp-card-front{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,0.1)}

/* 뒷면 */
.exp-card-back{background:linear-gradient(135deg,#1e1b4b,#312e81);border-color:rgba(139,92,246,0.3)}
.exp-card-back-pattern{font-size:2em;color:rgba(139,92,246,0.4);animation:expSpin 4s linear infinite}
@keyframes expSpin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}
.exp-card-back-label{font-size:1.5em;font-weight:700;color:rgba(139,92,246,0.6);margin-top:4px}

/* 앞면 */
.exp-card-front{transform:rotateY(180deg);background:linear-gradient(160deg,#1a1a2e,#16213e);padding:12px 8px;text-align:center}
.exp-card-icon{font-size:2.2em;margin-bottom:6px}
.exp-card-title{font-size:0.82em;font-weight:700;color:#e2e8f0;margin-bottom:4px}
.exp-card-desc{font-size:0.65em;color:var(--text-dim);line-height:1.4}

/* 카드 타입별 앞면 색상 */
.exp-card-dust{border-color:rgba(251,191,36,0.4);background:linear-gradient(160deg,#1a1a2e,#2a2008)}
.exp-card-jackpot{border-color:rgba(251,191,36,0.6);background:linear-gradient(160deg,#1a1a2e,#3d2e05);box-shadow:inset 0 0 20px rgba(251,191,36,0.1)}
.exp-card-blessing{border-color:rgba(167,139,250,0.5);background:linear-gradient(160deg,#1a1a2e,#1e1545)}
.exp-card-bonanza{border-color:rgba(244,114,182,0.4);background:linear-gradient(160deg,#1a1a2e,#2e1028)}
.exp-card-item{border-color:rgba(96,165,250,0.4);background:linear-gradient(160deg,#1a1a2e,#0c1e3a)}
.exp-card-rare{border-color:rgba(192,132,252,0.6);background:linear-gradient(160deg,#1a1a2e,#2d1b69);box-shadow:inset 0 0 20px rgba(192,132,252,0.15)}

/* 선택된 카드 */
.exp-card.picked{transform:scale(1.05)}
.exp-card.picked .exp-card-inner{box-shadow:0 0 20px rgba(139,92,246,0.5)}
.exp-card.picked::after{content:'✓';position:absolute;top:6px;right:8px;z-index:10;color:#a78bfa;font-size:1.2em;font-weight:700}

/* 미선택 카드 흐리게 */
.exp-card.dimmed{opacity:0.35;pointer-events:none;transform:scale(0.95)}

/* 카드 결과 텍스트 */
.exp-card-result{position:absolute;bottom:-28px;left:50%;transform:translateX(-50%);font-size:0.72em;font-weight:600;color:#a78bfa;white-space:nowrap;animation:expResultPop 0.4s ease}
.exp-result-rare{color:#fbbf24;text-shadow:0 0 6px rgba(251,191,36,0.4)}
@keyframes expResultPop{0%{opacity:0;transform:translateX(-50%) translateY(8px)}100%{opacity:1;transform:translateX(-50%) translateY(0)}}

/* 선택 안내 */
.exp-pick-info{text-align:center;font-size:0.8em;color:var(--text-dim);margin-top:30px;min-height:20px;transition:all 0.3s}

/* 결과 화면 */
.exp-result{text-align:center;padding:20px 0}
.exp-result-title{font-size:1.4em;font-weight:700;color:var(--accent);margin-bottom:16px;letter-spacing:2px}
.exp-res-main{font-size:1.05em;margin:8px 0;color:#e2e8f0}
.exp-res-items{margin:12px auto;padding:10px;background:rgba(0,0,0,0.2);border-radius:8px;max-width:280px}
.exp-res-item{font-size:0.82em;padding:3px 0}
.exp-res-blessing{font-size:0.78em;color:var(--text-dim);margin-top:10px}

@media(max-width:600px){.container{padding:12px}.header h1{font-size:1.4em}.user-bar{padding:8px 12px}.main-tabs{gap:0;font-size:0.7em}.main-tab{padding:8px 6px;font-size:0.72em}.stat-name{flex:0 0 56px}.exp-cards{gap:8px}.exp-card{width:105px;height:155px}.exp-card-icon{font-size:1.6em}.exp-card-title{font-size:0.72em}.exp-card-desc{font-size:0.58em}}

/* ──────────────────────────────────────────────────────
   심층 던전 — "늪의 나락" (2026-04-17)
────────────────────────────────────────────────────── */
.dungeon-badge{display:inline-block;background:linear-gradient(135deg,#7c3aed,#5b21b6);color:#fff;padding:2px 10px;border-radius:10px;font-size:0.5em;letter-spacing:2px;vertical-align:middle;margin-left:8px;text-shadow:0 1px 2px rgba(0,0,0,.5)}
.map-node-deep .node-circle{background:radial-gradient(circle,#7c3aed,#1e1b4b);box-shadow:0 0 18px rgba(124,58,237,.55)}

/* 로비 */
.deep-lobby{padding:20px 0}
.deep-intro{text-align:center;max-width:480px;margin:0 auto;padding:24px;background:linear-gradient(180deg,rgba(124,58,237,0.08),rgba(0,0,0,0));border-radius:14px;border:1px solid rgba(124,58,237,0.25)}
.deep-intro-icon{font-size:3em;margin-bottom:8px;animation:deepFloat 3s ease-in-out infinite}
@keyframes deepFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.deep-intro-title{font-size:1.4em;font-weight:700;color:#a78bfa;letter-spacing:2px;margin-bottom:12px}
.deep-intro-desc{font-size:0.85em;line-height:1.7;color:#cbd5e1;margin-bottom:18px}
.deep-start-btn{font-size:0.95em;padding:10px 24px}

/* HUD */
.deep-hud{padding:10px;background:rgba(0,0,0,0.25);border-radius:10px;margin-bottom:14px;border:1px solid rgba(124,58,237,0.2)}
.deep-hud-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.deep-stage-info{display:flex;gap:10px;flex-wrap:wrap;font-size:0.85em}
.deep-stage-label{color:#a78bfa}
.deep-room-label{color:#fbbf24}
.deep-cleared-label{color:var(--text-dim);font-size:0.85em}
.deep-hp-wrap{display:flex;align-items:center;gap:8px;min-width:180px;flex:1;max-width:280px}
.deep-hp-bar{flex:1;height:14px;background:rgba(0,0,0,0.4);border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,0.06)}
.deep-hp-fill{height:100%;background:linear-gradient(90deg,#16a34a,#84cc16);transition:width 0.4s}
.deep-hp-fill.low{background:linear-gradient(90deg,#dc2626,#f87171)}
.deep-hp-text{font-size:0.78em;color:#e2e8f0;font-weight:700;min-width:42px;text-align:right}
.deep-hud-mid{margin-top:8px;font-size:0.8em;color:#cbd5e1;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.deep-blessings{display:flex;align-items:center;gap:4px;flex-wrap:wrap;flex:1}
.deep-retreat-btn{font-size:0.76em;padding:4px 12px;background:rgba(220,38,38,0.15);border:1px solid rgba(220,38,38,0.45);color:#fca5a5;border-radius:6px;cursor:pointer;transition:all 0.15s;white-space:nowrap}
.deep-retreat-btn:hover{background:rgba(220,38,38,0.28);color:#fee2e2;border-color:rgba(220,38,38,0.75)}
.deep-bless-empty{color:var(--text-dim);font-style:italic}
.deep-bless-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;background:rgba(124,58,237,0.18);border:1px solid rgba(124,58,237,0.4);border-radius:10px;font-size:0.85em}
.deep-bless-chip-stack{font-size:0.7em;color:#fbbf24;margin-left:2px}
.deep-hud-rewards{margin-top:8px;font-size:0.78em;color:#cbd5e1;display:flex;gap:14px;flex-wrap:wrap}
.deep-hud-rewards b{color:#fbbf24}

/* 갈림길 */
.deep-branch{text-align:center;padding:18px 0}
.deep-section-title{font-size:1.05em;font-weight:700;color:#a78bfa;letter-spacing:2px;margin-bottom:14px}
.deep-cards{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.deep-card{width:110px;height:160px;background:linear-gradient(160deg,#1e1b4b,#312e81);border:2px solid rgba(167,139,250,0.4);border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform 0.2s,box-shadow 0.2s,opacity 0.3s;position:relative;font-size:2.2em}
.deep-card:hover{transform:translateY(-4px);box-shadow:0 6px 18px rgba(124,58,237,0.35)}
.deep-card.revealed{cursor:default}
.deep-card.dimmed{opacity:0.3;transform:scale(0.95)}
.deep-card-back{font-size:2.4em;color:rgba(167,139,250,0.6)}
.deep-card-face{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:0.4em}
.deep-card-face .face-icon{font-size:2.2em}
.deep-card-face .face-label{font-size:0.75em;color:#e2e8f0;font-weight:600}
.deep-hint{font-size:0.78em;color:var(--text-dim);margin-top:6px}

/* 전투방 */
.deep-combat{text-align:center;padding:14px 0}
.deep-room-type{font-size:0.9em;color:#fbbf24;margin-bottom:6px;letter-spacing:1.5px}
.deep-monster-name{font-size:1.15em;font-weight:700;color:#fff;margin-bottom:4px}
.deep-monster-visual{font-size:4em;margin:14px auto;cursor:pointer;display:inline-block;transition:transform 0.1s;user-select:none}
.deep-monster-visual:active{transform:scale(0.94)}
.deep-last-hit{margin-top:6px;font-size:0.82em;min-height:18px;color:#fbbf24}
.deep-last-hit.crit{color:#f87171;font-weight:700}

/* 축복 3선 */
.deep-blessroom{padding:16px 0;text-align:center}
.deep-bless-choices{display:flex;justify-content:center;gap:14px;flex-wrap:wrap}
.deep-bless-choice{width:160px;padding:14px;background:linear-gradient(160deg,#312e81,#1e1b4b);border:2px solid rgba(167,139,250,0.4);border-radius:12px;cursor:pointer;transition:all 0.2s}
.deep-bless-choice:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(124,58,237,0.45);border-color:#a78bfa}
.deep-bless-icon{font-size:2em;margin-bottom:6px}
.deep-bless-name{font-size:0.95em;color:#fff;font-weight:700;margin-bottom:4px}
.deep-bless-desc{font-size:0.72em;color:#cbd5e1;line-height:1.4}

/* 단순 결과 방 */
.deep-simple{text-align:center;padding:20px 0}
.deep-simple-icon{font-size:3em;margin-bottom:8px}
.deep-simple-title{font-size:1.1em;font-weight:700;color:#fbbf24;margin-bottom:6px}
.deep-simple-desc{font-size:0.85em;color:#cbd5e1;margin-bottom:14px;line-height:1.6}

/* 층 클리어 */
.deep-stage-clear{text-align:center;padding:20px 0;background:radial-gradient(circle,rgba(251,191,36,0.08),transparent);border-radius:12px}
.deep-clear-desc{font-size:0.85em;color:#cbd5e1;margin:14px 0;line-height:1.6}
.deep-clear-btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
.btn-warn{background:linear-gradient(135deg,#dc2626,#7f1d1d);color:#fff;border:1px solid #dc2626;padding:10px 18px;border-radius:8px;cursor:pointer;font-weight:700;font-size:0.85em}
.btn-warn:hover{background:linear-gradient(135deg,#ef4444,#991b1b)}

/* 실패 */
.deep-failed{text-align:center;padding:30px 0;background:rgba(220,38,38,0.08);border-radius:12px}
.deep-fail-title{font-size:1.3em;color:#f87171;font-weight:700;margin-bottom:10px}
.deep-fail-desc{font-size:0.85em;color:#cbd5e1;margin-bottom:14px}

@media(max-width:600px){
  .deep-card{width:90px;height:130px;font-size:1.8em}
  .deep-bless-choice{width:140px;padding:10px}
  .deep-monster-visual{font-size:3.4em}
}
