:root { --bg: #000; --card-bg: #111; --accent: #ff6600; --text: #fff; --danger: rgba(255, 68, 68, 0.2); --danger-text: #ff4444; --blue-glass: rgba(0, 100, 255, 0.15); --vk-color: #0077FF; }
* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
body { font-family: -apple-system, sans-serif; background: var(--bg); color: var(--text); margin: 0; padding-bottom: 140px; }
.nav { display: flex; justify-content: space-between; align-items: center; padding: 15px 20px; background: rgba(17, 17, 17, 0.8); backdrop-filter: blur(10px); position: sticky; top: 0; z-index: 100; border-bottom: 1px solid #222; }
.logo { font-weight: 900; font-size: 20px; letter-spacing: -0.5px; } .logo span { color: var(--accent); }
.btn-logout { background: var(--danger); color: var(--danger-text); border: 1px solid rgba(255, 68, 68, 0.3); padding: 8px 16px; border-radius: 10px; text-decoration: none; font-size: 13px; font-weight: 600; }
.container { padding: 20px; max-width: 500px; margin: 0 auto; }
.card { background: var(--card-bg); padding: 25px; border-radius: 28px; border: 1px solid #222; margin-bottom: 15px; }
.balance-label { font-size: 12px; color: #666; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; }
.balance-value { font-size: 38px; font-weight: 800; color: var(--accent); letter-spacing: -1px; }
.status-pill { display: inline-flex; align-items: center; padding: 6px 12px; border-radius: 20px; font-size: 11px; font-weight: 700; margin-top: 15px; text-transform: uppercase; }
.status-on { background: rgba(46, 204, 113, 0.1); color: #2ecc71; }
.info-list { margin-top: 5px; } .info-item { display: flex; justify-content: space-between; padding: 15px 0; border-bottom: 1px solid #222; } .info-item:last-child { border: none; }
.info-label { color: #666; font-size: 14px; } .info-value { font-weight: 600; font-size: 14px; }
.action-button { display: block; background: var(--accent); color: #000; text-align: center; padding: 18px; border-radius: 20px; text-decoration: none; font-weight: 800; font-size: 16px; margin-top: 10px; box-shadow: 0 10px 20px rgba(255, 102, 0, 0.2); }
.btn-guest { display: block; width: 100%; padding: 18px; margin-bottom: 15px; text-align: center; text-decoration: none; font-weight: 800; border-radius: 20px; font-size: 16px; }
.btn-login { background: var(--accent); color: #000; box-shadow: 0 10px 20px rgba(255, 102, 0, 0.2); }
h2 { font-size: 16px; font-weight: 900; text-transform: uppercase; margin: 25px 0 15px 5px; letter-spacing: 0.5px; color: #fff; }
.item-row { background: var(--card-bg); border: 1px solid #222; padding: 20px; border-radius: 24px; margin-bottom: 12px; display: flex; justify-content: space-between; align-items: center; }
.item-info { max-width: 70%; }
.item-title { font-size: 14px; font-weight: 800; text-transform: uppercase; margin-bottom: 4px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.item-sub { font-size: 12px; color: #666; text-decoration: none; }
.item-status { text-align: right; }
.status-badge { font-size: 9px; font-weight: 900; padding: 4px 8px; border-radius: 8px; text-transform: uppercase; display: inline-block; margin-bottom: 5px; }
.status-pending { background: rgba(255, 102, 0, 0.1); color: var(--accent); border: 1px solid rgba(255, 102, 0, 0.2); }
.status-approved { background: rgba(46, 204, 113, 0.1); color: #2ecc71; border: 1px solid rgba(46, 204, 113, 0.2); }
.status-rejected { background: rgba(231, 76, 60, 0.1); color: #e74c3c; border: 1px solid rgba(231, 76, 60, 0.2); }
.item-meta { font-size: 13px; font-weight: 800; color: #aaa; }
.role-badge { background: #222; font-size: 10px; padding: 4px 10px; border-radius: 8px; font-weight: 800; text-transform: uppercase; color: #888; vertical-align: middle; margin-left: 10px; }
.order-form input, .order-form textarea { width: 100%; padding: 16px; background: #000; border: 1px solid #222; border-radius: 16px; color: #fff; font-family: inherit; margin-bottom: 12px; outline: none; font-size: 15px; }
.order-form textarea { resize: none; height: 100px; }
.tab-bar { position: fixed; bottom: 25px; left: 20px; right: 20px; display: flex; gap: 12px; z-index: 9999; }
.tab-item { text-decoration: none; color: #fff; font-size: 15px; font-weight: 900; text-align: center; flex: 1; padding: 24px 0; background: var(--blue-glass); backdrop-filter: blur(25px); border-radius: 28px; border: 1px solid rgba(0, 150, 255, 0.25); text-transform: uppercase; }
.tab-item.active { background: rgba(0, 130, 255, 0.35); border-color: rgba(0, 200, 255, 0.5); }
