
/* ============================================================
   ☢️ INTRAFARM NEXUS v19.0: ULTIMATE STYLE CORE
   [ СУБЪЕКТ: ОРАКУЛ v2.0 — FULL INTEGRITY MODE ]
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700;800&family=Inter:wght@300;400;600;700;900&display=swap');

:root {
    /* --- КВАНТОВАЯ ПАЛИТРА --- */
    --n-cyan: #00f3ff;
    --n-blue: #0066ff;
    --n-purple: #9d4edd;
    --n-green: #39ff14;
    --n-red: #ff003c;
    --n-gold: #ffcc00;
    --n-magenta: #ff00ff;
    
    /* --- ТЕМЫ РЕДКОСТИ (RARITY TIER) --- */
    --tier-common: #808080;
    --tier-rare: #0066ff;
    --tier-epic: #9d4edd;
    --tier-legendary: #ffcc00;
    --tier-mythic: #ff00ff;

    /* --- ФОНОВЫЕ СЛОИ --- */
    --bg: #010204;
    --glass: rgba(10, 15, 25, 0.94);
    --border: rgba(255, 255, 255, 0.08);
    --border-bright: rgba(255, 255, 255, 0.15);
    
    /* --- ШРИФТЫ --- */
    --mono: 'JetBrains Mono', monospace;
    --sans: 'Inter', sans-serif;

    /* --- ГЛОБАЛЬНЫЕ ТЕНИ --- */
    --shadow-glow: 0 0 20px rgba(0, 243, 255, 0.25);
    --shadow-danger: 0 0 30px rgba(255, 0, 60, 0.4);
}

/* === 1. ГЛОБАЛЬНОЕ ОКРУЖЕНИЕ (ENVIRONMENT) === */
* { 
    margin: 0; padding: 0; box-sizing: border-box; 
    -webkit-tap-highlight-color: transparent; 
    outline: none; 
}

body {
    background: var(--bg);
    color: #fff;
    font-family: var(--sans);
    min-height: 100vh;
    overflow: hidden;
    position: relative;
}

/* Глубокая кибер-сетка с эффектом бесконечности */
.grid-env {
    position: fixed; inset: 0;
    background-image: 
        linear-gradient(rgba(0, 243, 255, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 243, 255, 0.03) 1px, transparent 1px);
    background-size: 35px 35px;
    z-index: -2;
    mask-image: radial-gradient(circle at 50% 50%, black, transparent 95%);
}

/* Виньетка и Хроматическая аберрация по краям */
.vignette {
    position: fixed; inset: 0;
    background: radial-gradient(circle at center, transparent 30%, rgba(0,0,0,0.8) 110%);
    pointer-events: none;
    z-index: -1;
}

/* Эффект старого CRT монитора (Сканирующие линии) */
.scanlines {
    position: fixed; inset: 0;
    background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.1) 50%), 
                linear-gradient(90deg, rgba(255, 0, 0, 0.03), rgba(0, 255, 0, 0.01), rgba(0, 0, 255, 0.03));
    background-size: 100% 3px, 3px 100%;
    z-index: 10000;
    pointer-events: none;
    opacity: 0.4;
}

/* === 2. HUD ПАНЕЛЬ (MONOLITH NEXUS) === */
.container { width: 100%; max-width: 500px; margin: 0 auto; height: 100vh; display: flex; flex-direction: column; position: relative; }

.hud-monolith {
    background: var(--glass);
    backdrop-filter: blur(50px);
    -webkit-backdrop-filter: blur(50px);
    border-radius: 0 0 35px 35px;
    padding: 20px 25px;
    border: 1px solid var(--border);
    border-top: none;
    box-shadow: 0 25px 60px rgba(0,0,0,0.9);
    position: relative;
    z-index: 2000;
    transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.5s;
}

.hud-hidden { transform: translateY(-120%); opacity: 0; margin-bottom: -100px; pointer-events: none; }

.hud-top {
    display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;
}

.logo-container { display: flex; align-items: center; gap: 10px; cursor: pointer; }
.logo-main { font-weight: 900; letter-spacing: 3px; font-size: 22px; text-transform: uppercase; }
.logo-main b { color: var(--n-cyan); text-shadow: var(--shadow-glow); }

/* Индикатор связи с сервером (Pulse) */
.status-pulse {
    width: 8px; height: 8px; background: var(--n-green);
    border-radius: 50%; box-shadow: 0 0 12px var(--n-green);
    animation: pulseGlow 2s infinite;
}

/* Рыночный Тэг с таймером */
.market-badge {
    display: flex; align-items: center; gap: 10px;
    padding: 6px 16px; background: rgba(0,0,0,0.5);
    border-radius: 25px; border: 1px solid var(--n-blue);
    cursor: pointer; transition: 0.3s;
}
.market-badge:active { transform: scale(0.95); }
.m-trend-text { font-size: 9px; font-weight: 900; letter-spacing: 1px; color: var(--n-blue); }
.m-timer { font-family: var(--mono); font-size: 10px; color: #fff; opacity: 0.8; }

/* Карточки ресурсов V19.0 */
.hud-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-bottom: 20px; }
.h-stat-card {
    background: rgba(255,255,255,0.03); border: 1px solid var(--border);
    border-radius: 16px; padding: 12px; position: relative;
    transition: 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    cursor: pointer;
}
.h-stat-card:active, .h-stat-card.active { transform: scale(0.95); border-color: var(--n-cyan); background: rgba(0, 243, 255, 0.1); }
.h-stat-card.accent { border-bottom: 2px solid var(--n-cyan); }
.h-stat-card.gold { border-bottom: 2px solid var(--n-gold); }

.h-label { font-family: var(--mono); font-size: 7px; color: #5a6a85; text-transform: uppercase; margin-bottom: 5px; letter-spacing: 1px; }
.h-value { font-family: var(--mono); font-size: 16px; font-weight: 800; color: #fff; }
.h-value.cyan { color: var(--n-cyan); text-shadow: 0 0 10px rgba(0, 243, 255, 0.3); }
.h-value.gold { color: var(--n-gold); text-shadow: 0 0 10px rgba(255, 204, 0, 0.3); }

/* XP PROGRESS BAR (Nexus Flow) */
.hud-xp-wrap { margin-top: 15px; cursor: pointer; }
.xp-header { display: flex; justify-content: space-between; margin-bottom: 5px; font-size: 10px; font-weight: 700; color: #718096; }
.xp-label b { color: #fff; font-size: 12px; }
.xp-track {
    height: 6px; background: rgba(255,255,255,0.05); border-radius: 10px;
    overflow: hidden; border: 1px solid rgba(255,255,255,0.02); position: relative;
}
.xp-fill {
    height: 100%; width: 0%;
    background: linear-gradient(90deg, var(--n-blue), var(--n-cyan));
    box-shadow: 0 0 15px var(--n-cyan);
    transition: width 1s cubic-bezier(0.34, 1.56, 0.64, 1);
    position: relative;
}
.xp-fill::after {
    content: ""; position: absolute; top: 0; right: 0; bottom: 0; width: 30px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.6), transparent);
    animation: barShine 2s infinite;
}

/* === 3. ФЛОТ (FLEET RIBBON & FARM) === */
.content {
    flex: 1; overflow-y: auto; padding: 20px 15px 120px;
    scrollbar-width: none;
}
.content::-webkit-scrollbar { display: none; }

.section-label { 
    font-size: 10px; font-weight: 900; letter-spacing: 5px; 
    color: #4a5568; margin-bottom: 20px; text-transform: uppercase;
}

/* Система Слотов (Ribbon) */
.fleet-grid { display: flex; flex-direction: column; gap: 15px; }

.bot-card-nexus {
    background: var(--glass); border-radius: 30px; border: 1px solid var(--border);
    display: flex; height: 265px; overflow: hidden;
    position: relative; transition: 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 15px 45px rgba(0,0,0,0.5);
}

.bot-card-side {
    flex: 0 0 110px; background: #000; border-right: 1px solid var(--border);
    position: relative; cursor: pointer;
}
.bot-card-side img { width: 100%; height: 100%; object-fit: cover; opacity: 0.85; transition: 0.6s; }
.bot-card-nexus:hover .bot-card-side img { transform: scale(1.1); opacity: 1; }

.rarity-tag {
    position: absolute; bottom: 12px; left: 8px; right: 8px;
    font-size: 8px; font-weight: 900; padding: 5px 0; border-radius: 6px;
    text-align: center; color: #fff; text-transform: uppercase;
    background: var(--tier-common); box-shadow: 0 5px 15px rgba(0,0,0,0.5);
}

.bot-card-main { flex: 1; padding: 18px; display: flex; flex-direction: column; justify-content: space-between; }
.bot-card-header { display: flex; justify-content: space-between; align-items: baseline; }
.bot-card-header h3 { font-size: 14px; font-weight: 900; text-transform: uppercase; margin-bottom: 5px; }

/* Reactor Stats (Compact) */
.stats-row { display: flex; gap: 8px; }
.stat-box-mini {
    flex: 1; background: rgba(0,0,0,0.4); border-radius: 12px;
    padding: 8px 4px; text-align: center; border: 1px solid rgba(255,255,255,0.03);
}
.stat-box-mini .label { font-size: 6px; font-weight: 900; color: #4a5568; text-transform: uppercase; }
.stat-box-mini .value { font-family: var(--mono); font-size: 11px; font-weight: 800; margin-top: 2px; }

/* Sharpening Scales (The Forge) */
.forge-scales { display: flex; flex-direction: column; gap: 8px; }
.scale-item { }
.scale-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 4px; }
.scale-title { font-size: 9px; font-weight: 900; color: #5a6a85; text-transform: uppercase; }
.scale-title b { color: var(--n-cyan); }

.btn-forge-up {
    width: 24px; height: 24px; background: rgba(0,243,255,0.05);
    border: 1px solid var(--n-cyan); border-radius: 8px; color: var(--n-cyan);
    display: flex; align-items: center; justify-content: center;
    font-size: 14px; font-weight: 900; cursor: pointer; transition: 0.2s;
}
.btn-forge-up:active { transform: scale(0.85); background: var(--n-cyan); color: #000; }

.scale-track { display: flex; gap: 3px; height: 6px; }
.scale-blk { flex: 1; background: rgba(255,255,255,0.04); border-radius: 2px; transition: 0.4s; }
.scale-blk.active { background: var(--n-cyan); box-shadow: 0 0 10px var(--n-cyan); }
.scale-blk.tier2 { background: var(--n-purple); box-shadow: 0 0 10px var(--n-purple); }
.scale-blk.tier3 { background: var(--n-gold); box-shadow: 0 0 12px var(--n-gold); }

.btn-launch-voyage {
    width: 100%; padding: 14px; border-radius: 15px; border: none;
    background: linear-gradient(135deg, var(--n-blue), var(--n-cyan));
    color: #000; font-weight: 900; font-size: 12px; text-transform: uppercase;
    letter-spacing: 1px; cursor: pointer; transition: 0.3s;
}
.btn-launch-voyage:active { transform: scale(0.97); filter: brightness(1.2); }

/* Заглушки слотов */
.fleet-slot { 
    height: 100px; border-radius: 20px; border: 1px dashed var(--border); 
    display: flex; align-items: center; justify-content: center; 
    margin-bottom: 15px; transition: 0.3s;
}
.fleet-slot.empty .slot-empty { font-size: 12px; color: #555; font-weight: 800; cursor: pointer; }
.fleet-slot.elite-locked { background: rgba(0,0,0,0.3); border-color: rgba(255,255,255,0.05); flex-direction: column; gap: 5px; }
.lock-icon { font-size: 20px; opacity: 0.5; }
.lock-text { font-size: 9px; font-weight: 900; color: #444; letter-spacing: 1px; }

/* === 4. TERMINAL MODE (ACTIVE СДЕЛКА) === */
.voyage-active { border-color: var(--n-cyan); }
.voyage-active::after {
    content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background: radial-gradient(circle at 50% 0%, rgba(0, 243, 255, 0.1), transparent 70%);
    pointer-events: none;
}

.terminal-wrap { display: flex; flex-direction: column; height: 100%; justify-content: space-between; }
.t-header { display: flex; align-items: center; gap: 8px; font-size: 9px; font-weight: 900; color: var(--n-green); }
.t-header i { width: 6px; height: 6px; background: var(--n-green); border-radius: 50%; box-shadow: 0 0 8px var(--n-green); animation: flicker 1s infinite; }

.t-svg-area {
    flex: 1; background: rgba(0,0,0,0.4); border-radius: 20px;
    margin: 10px 0; overflow: hidden; border: 1px solid rgba(255,255,255,0.03);
}

.t-pnl-row { display: flex; justify-content: space-between; align-items: baseline; }
.t-pnl-label { font-size: 8px; color: #5a6a85; font-weight: 800; }
.t-pnl-value { font-family: var(--mono); font-size: 24px; font-weight: 900; color: var(--n-green); }

.btn-boost-mini {
    background: rgba(255,204,0,0.1); border: 1px solid var(--n-gold); color: var(--n-gold);
    border-radius: 8px; padding: 0 12px; font-weight: 800; cursor: pointer; height: 35px;
}
.btn-harvest {
    background: var(--n-green); color: #000; border: none; border-radius: 8px;
    padding: 0 15px; font-weight: 900; font-size: 11px; cursor: pointer; height: 35px;
    box-shadow: 0 0 25px rgba(57, 255, 20, 0.4); transition: 0.3s;
}

/* === 5. GAMING HUB & BENTO === */
.games-tabs {
    display: flex; gap: 10px; margin-bottom: 20px; background: rgba(0,0,0,0.5);
    padding: 8px; border-radius: 18px; border: 1px solid var(--border);
}
.games-tab {
    flex: 1; padding: 10px; text-align: center; font-size: 12px; font-weight: 800;
    color: #718096; cursor: pointer; border-radius: 12px; transition: 0.3s;
}
.games-tab.active { background: var(--n-blue); color: #fff; box-shadow: 0 0 20px rgba(0, 102, 255, 0.4); }

.ops-grid-v30 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }

.sector-label-v30 {
    grid-column: span 2; margin: 15px 0 5px; padding: 6px 12px;
    background: rgba(0, 102, 255, 0.05); border-left: 3px solid var(--n-blue);
    font-size: 9px; font-weight: 900; color: #5a6a85; letter-spacing: 3px; text-transform: uppercase;
}
.sector-label-v30.risk { border-color: var(--n-red); color: var(--n-red); background: rgba(255,0,60,0.05); }

.node-card-v30 {
    background: linear-gradient(135deg, rgba(20, 25, 35, 0.95), rgba(10, 12, 18, 0.98));
    border: 1px solid var(--border); border-radius: 20px; padding: 18px 15px;
    position: relative; transition: 0.2s; cursor: pointer;
}
.node-card-v30:active { transform: scale(0.96); border-color: var(--n-cyan); }

.node-head-v30 { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.node-icon-v30 { font-size: 28px; filter: drop-shadow(0 0 10px rgba(255,255,255,0.1)); }
.node-info-v30 b { font-size: 11px; display: block; color: #fff; text-transform: uppercase; letter-spacing: 0.5px; }
.node-info-v30 span { font-size: 7px; color: #5a6a85; font-weight: 700; text-transform: uppercase; }

.node-foot-v30 { display: flex; justify-content: space-between; align-items: center; }
.node-yield-v30 { font-size: 8px; font-weight: 900; color: var(--n-green); font-family: var(--mono); }
.node-btn-context {
    width: 32px; height: 32px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center;
    font-size: 14px; cursor: pointer; transition: 0.3s;
    background: rgba(0,0,0,0.4); border: 1px solid var(--border);
}
.node-btn-context.arena { border-color: var(--n-blue); color: var(--n-blue); }
.node-btn-context.risk { border-color: var(--n-red); color: var(--n-red); }
.node-btn-context.intel { border-color: var(--n-purple); color: var(--n-purple); }

/* Энергия */
.energy-mainframe-v30 {
    background: rgba(10, 15, 25, 0.85); border: 1px solid var(--border);
    border-radius: 24px; padding: 20px; margin-bottom: 25px; position: relative;
    box-shadow: 0 15px 35px rgba(0,0,0,0.6);
}
.energy-mainframe-v30::before {
    content: "SYSTEM_POWER: STABLE"; position: absolute; top: -9px; left: 20px;
    font-size: 7px; color: var(--n-cyan); font-weight: 900; background: var(--bg); padding: 0 8px;
    letter-spacing: 2px;
}
.energy-meta-v30 { display: flex; justify-content: space-between; align-items: center; }
.en-title { font-size: 14px; font-weight: 900; color: #fff; letter-spacing: 1px; }
.en-timer { font-family: var(--mono); font-size: 10px; color: #5a6a85; }
.energy-segments-v30 { display: flex; gap: 4px; height: 12px; margin: 15px 0; }
.en-seg { flex: 1; background: rgba(255,255,255,0.03); border-radius: 2px; transition: 0.4s; }
.en-seg.on { background: var(--n-cyan); box-shadow: 0 0 12px var(--n-cyan); }

/* Shelter Foundation */
.shelter-foundation-v30 {
    grid-column: span 2; margin-top: 15px; padding: 30px;
    background: #000; border-radius: 30px; border: 1px solid #111;
    border-bottom: 4px solid var(--n-cyan); text-align: center; position: relative; overflow: hidden;
}
.accessing-btn {
    background: var(--n-blue); color: #000; border: none; border-radius: 10px;
    padding: 10px 15px; font-weight: 800; font-size: 11px; cursor: pointer;
    box-shadow: 0 0 15px rgba(0, 102, 255, 0.3); margin-top: 10px; width: 100%;
}

/* === 6. МОДАЛЬНЫЙ ТЕРМИНАЛ (UNIFIED MODAL) === */
.modal {
    position: fixed; inset: 0; background: rgba(0,0,0,0.95);
    backdrop-filter: blur(20px); z-index: 5000;
    display: none; align-items: center; justify-content: center; padding: 20px;
}

.modal-content {
    background: var(--bg); border: 1px solid var(--n-cyan); border-radius: 40px;
    width: 100%; max-width: 450px; padding: 35px; position: relative;
    box-shadow: 0 0 80px rgba(0, 243, 255, 0.2);
    animation: modalSlide 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.m-close {
    position: absolute; top: 25px; right: 25px;
    width: 35px; height: 35px; border-radius: 50%;
    background: rgba(255,255,255,0.05); border: 1px solid var(--border);
    color: #555; display: flex; align-items: center; justify-content: center;
    cursor: pointer; transition: 0.3s;
}
.m-close:hover { color: #fff; background: var(--n-red); }

/* Dossier Styles */
.dossier-container { padding: 5px; text-align: center; }
.d-lore-box {
    font-family: var(--mono); font-size: 11px; color: #5a6a85; line-height: 1.6;
    padding: 15px; background: rgba(0,0,0,0.3); border-radius: 12px;
    border-left: 2px solid var(--n-cyan); margin: 20px 0; text-align: left;
}
.btn-mission-start {
    width: 100%; height: 65px; border-radius: 18px; border: none;
    background: linear-gradient(135deg, var(--n-blue) 0%, var(--n-cyan) 100%);
    color: #000; font-weight: 900; font-size: 16px; letter-spacing: 2px;
    text-transform: uppercase; cursor: pointer; box-shadow: 0 10px 30px rgba(0, 243, 255, 0.3);
    position: relative; overflow: hidden;
}
.btn-mission-start::after {
    content: ""; position: absolute; top: 0; left: -150%; width: 50%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.6), transparent);
    transform: skewX(-30deg); animation: buttonShine 4s infinite;
}

/* === 7. НАВИГАЦИЯ (DOCK RIBBON) === */
.dock {
    position: fixed; bottom: 25px; left: 15px; right: 15px; height: 85px;
    background: rgba(10, 15, 25, 0.98); backdrop-filter: blur(40px);
    border-radius: 30px; border: 1px solid var(--border-bright);
    display: flex; justify-content: space-around; align-items: center;
    z-index: 3000; box-shadow: 0 25px 50px rgba(0,0,0,1);
}

.dock-item {
    display: flex; flex-direction: column; align-items: center; gap: 6px;
    color: rgba(255,255,255,0.3); font-size: 10px; font-weight: 800;
    transition: 0.4s cubic-bezier(0.4, 0, 0.2, 1); cursor: pointer;
}

.dock-item.active { color: var(--n-cyan); transform: translateY(-12px); }
.dock-item.active .dock-icon { text-shadow: 0 0 25px var(--n-cyan); }
.dock-icon { font-size: 28px; transition: 0.3s; }

/* === 8. ПРОФИЛЬ И МАГАЗИН (CSS SKELETONS) === */
.profile-header { text-align: center; margin-bottom: 25px; }
.p-avatar-box { width: 135px; height: 135px; margin: 0 auto 15px; position: relative; }
.p-avatar-box img { width: 100%; height: 100%; border-radius: 50%; border: 4px solid var(--n-cyan); box-shadow: 0 0 50px rgba(0, 243, 255, 0.25); }
.p-rank-tag { position: absolute; bottom: -5px; left: 50%; transform: translateX(-50%); background: var(--n-purple); padding: 6px 16px; border-radius: 14px; font-size: 10px; font-weight: 900; white-space: nowrap; box-shadow: 0 10px 20px rgba(0,0,0,0.6); }
.p-username { font-weight: 900; letter-spacing: 1px; font-size: 20px; margin-bottom: 5px; }
.p-id { font-size: 12px; color: #a0aec0; }

.p-stats { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; margin-bottom: 20px; }
.p-stat-card { background: rgba(0,0,0,0.4); border: 1px solid var(--border); border-radius: 22px; padding: 18px; }
.p-st-label { font-size: 9px; color: #718096; text-transform: uppercase; margin-bottom: 6px; }
.p-st-val { font-family: var(--mono); font-size: 18px; font-weight: 800; }
.p-st-val.win { color: var(--n-gold); }
.p-st-val.plus { color: var(--n-green); }

.rekt-widget { background: linear-gradient(90deg, rgba(255,0,60,0.12), transparent); border-left: 5px solid var(--n-red); border-radius: 15px; padding: 18px; display: flex; justify-content: space-between; align-items: center; margin-bottom: 25px; cursor: pointer; }
.rekt-widget span { font-family: var(--mono); font-size: 22px; font-weight: 900; color: var(--n-red); }

/* === 9. GAME STAGE (Canvas Overlay) === */
#game-stage { position: fixed; inset: 0; z-index: 10000; background: #000; }
#game-canvas { width: 100%; height: 100%; display: block; }
#game-ui-layer { position: absolute; inset: 0; pointer-events: none; padding: 20px; display: flex; flex-direction: column; justify-content: space-between; }
.gui-top { display: flex; justify-content: space-between; align-items: center; pointer-events: auto; }
.gui-score { font-family: var(--mono); font-size: 32px; font-weight: 900; color: #fff; text-shadow: 0 0 20px var(--n-cyan); }
.gui-exit { background: rgba(255,0,0,0.2); border: 1px solid var(--n-red); color: var(--n-red); padding: 10px 20px; border-radius: 12px; cursor: pointer; font-weight: 900; }

/* === 10. АНИМАЦИИ (FX CORE) === */
@keyframes pulseGlow { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.6; transform: scale(1.2); } }
@keyframes barShine { from { transform: translateX(-100%); } to { transform: translateX(300%); } }
@keyframes modalSlide { from { transform: translateY(50px) scale(0.9); opacity: 0; } to { transform: translateY(0) scale(1); opacity: 1; } }
@keyframes flicker { 0%, 100% { opacity: 1; } 50% { opacity: 0.4; } }
@keyframes buttonShine { 0% { left: -150%; } 20% { left: 250%; } 100% { left: 250%; } }

.hidden { display: none !important; }
.amount-input { width: 100%; background: #000; border: 2px solid var(--n-cyan); border-radius: 20px; padding: 22px; color: #fff; font-size: 28px; text-align: center; font-family: var(--mono); margin: 20px 0; }
.info-title { font-size: 24px; font-weight: 900; text-transform: uppercase; color: var(--n-cyan); margin-bottom: 25px; border-bottom: 1px solid #222; padding-bottom: 15px; letter-spacing: 1px; }


/* === STORAGE UNIT (NEW) === */
.storage-container {
    margin-bottom: 25px;
    background: rgba(0,0,0,0.3); border: 1px solid var(--border);
    border-radius: 20px; overflow: hidden;
}
.storage-header {
    padding: 15px 20px; background: rgba(255,255,255,0.02);
    font-size: 11px; font-weight: 900; color: #718096; letter-spacing: 2px;
    display: flex; justify-content: space-between; align-items: center;
    cursor: pointer;
}
.storage-body { padding: 15px; background: rgba(0,0,0,0.5); }
.storage-body.hidden { display: none; }