:root{--bg: #0a0a1a;--bg2: #0f0f23;--card: #161638;--card-hover: #1e1e4a;--accent: #e94560;--accent2: #7c3aed;--accent-glow: rgba(233,69,96,.3);--text: #f0f0f5;--text2: #8888aa;--success: #00e676;--warn: #ffa726;--danger: #ff1744;--nav-bg: linear-gradient(180deg, rgba(15,15,35,.95) 0%, rgba(10,10,26,.98) 100%);--nav-active: linear-gradient(135deg, #e94560, #7c3aed)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased}.app{max-width:480px;margin:0 auto;padding:16px 12px 100px}.dashboard-header h1{font-size:22px;font-weight:700}.subtitle{color:var(--text2);font-size:13px;margin-bottom:12px}.cards-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.card{background:var(--card);border-radius:16px;padding:16px;cursor:pointer;display:flex;align-items:center;gap:12px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;border:1px solid rgba(255,255,255,.04)}.card:active{transform:scale(.96);background:var(--card-hover)}.card:hover{box-shadow:0 4px 20px #0006}.card-icon{font-size:28px;flex-shrink:0}.card-body{flex:1;min-width:0}.card-title{font-weight:600;font-size:14px}.card-desc{font-size:11px;color:var(--text2);margin-top:2px}.card-admin{border:1px solid rgba(124,58,237,.3)}.section-title{font-size:16px;font-weight:600;margin:16px 0 8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:11px 22px;border-radius:12px;border:none;font-size:14px;font-weight:600;cursor:pointer;color:#fff;transition:all .2s ease;text-decoration:none}.btn:active{transform:scale(.95)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--accent),#c23152);box-shadow:0 2px 12px var(--accent-glow)}.btn-primary:hover{box-shadow:0 4px 20px var(--accent-glow)}.btn-secondary{background:var(--accent2)}.btn-danger{background:var(--danger)}.btn-small{padding:6px 12px;font-size:12px;border-radius:8px}.actions{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:linear-gradient(180deg,#0a0a1cf7,#0a0a1c);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);display:flex;justify-content:space-around;align-items:center;padding:10px 4px calc(10px + env(safe-area-inset-bottom,16px));border-top:1px solid rgba(124,58,237,.25);z-index:100;box-shadow:0 -8px 40px #0009,0 -1px #7c3aed26}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;color:#ffffff73;background:none;border:none;cursor:pointer;padding:8px 10px 6px;border-radius:16px;transition:all .2s cubic-bezier(.34,1.56,.64,1);position:relative;min-width:58px;-webkit-tap-highlight-color:transparent}.nav-item .nav-icon{font-size:26px;line-height:1;transition:transform .2s cubic-bezier(.34,1.56,.64,1),filter .2s ease}.nav-item .nav-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;transition:color .2s ease;white-space:nowrap}.nav-item.active{color:#a78bfa;background:#7c3aed2e}.nav-item.active .nav-icon{transform:scale(1.2) translateY(-1px);filter:drop-shadow(0 0 10px rgba(167,139,250,.8))}.nav-item.active .nav-label{color:#a78bfa}.nav-item:active{transform:scale(.88)}.banner{padding:10px 14px;border-radius:12px;font-size:13px;margin-bottom:8px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08)}.banner-warning{background:#ffa7261f;border-color:#ffa72640;color:var(--warn)}.banner-info{background:#7c3aed1f;border-color:#7c3aed40}.banner-success{background:#00e6761a;border-color:#00e67633;color:var(--success)}.status-badge{display:inline-block;padding:3px 10px;border-radius:8px;font-size:11px;font-weight:700;letter-spacing:.3px}.status-draft,.status-pending{background:#ffa72633;color:var(--warn)}.status-active,.status-signed,.status-approved,.status-paid,.status-verified{background:#00e67626;color:var(--success)}.status-rejected,.status-expired,.status-suspended{background:#ff174426;color:var(--danger)}.status-submitted,.status-in_review{background:#7c3aed33;color:#a78bfa}.status-issued{background:#e9456033;color:var(--accent)}.form{margin:12px 0}.field{margin-bottom:12px}.field label{display:block;font-size:12px;color:var(--text2);margin-bottom:4px;font-weight:600}.field input,.field select,.field textarea{width:100%;padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text);font-size:14px;outline:none;transition:border-color .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.item-row{display:flex;gap:6px;margin-bottom:6px}.item-row input{padding:8px;font-size:13px}.list{margin-top:12px}.list-item{background:var(--card);border-radius:14px;padding:14px;margin-bottom:8px;display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.04);transition:background .15s}.list-item:active{background:var(--card-hover)}.list-main{flex:1;min-width:0}.list-title{font-weight:600;font-size:14px}.list-sub{font-size:12px;color:var(--text2);margin-top:2px}.list-right{text-align:right;flex-shrink:0}.list-amount{font-weight:700;font-size:15px}.green{color:var(--success)}.red{color:var(--accent)}.empty{text-align:center;color:var(--text2);padding:32px 16px;font-size:14px}.message{padding:8px 12px;border-radius:8px;font-size:13px;margin:8px 0;background:#ffffff0d}.detail-card{background:var(--card);border-radius:14px;padding:14px;border:1px solid rgba(255,255,255,.06)}.balance-card{background:linear-gradient(135deg,var(--card),rgba(124,58,237,.15));border-radius:16px;padding:16px;margin-bottom:12px;border:1px solid rgba(124,58,237,.2)}.balance-row{display:flex;justify-content:space-between;padding:4px 0;font-size:14px}.balance-total{font-size:18px;font-weight:700;border-top:1px solid rgba(255,255,255,.1);margin-top:8px;padding-top:8px}.page{padding:4px 0}.page h1{font-size:20px;font-weight:700;margin-bottom:12px}.loading-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;gap:16px}.spinner{width:40px;height:40px;border:3px solid var(--card);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center;gap:16px;padding:24px}.error-screen .error-icon{font-size:56px}.error-screen h2{font-size:20px}.error-screen p{color:var(--text2);font-size:14px;max-width:300px}.telegram-redirect{background:linear-gradient(180deg,var(--bg),var(--bg2))}.chat-page{display:flex;flex-direction:column;height:calc(100vh - 100px)}.chat-page h1{flex-shrink:0}.chat-messages{flex:1;overflow-y:auto;padding:8px 0}.chat-empty{text-align:center;color:var(--text2);padding:40px 20px;font-size:14px;line-height:1.6}.chat-msg{margin-bottom:8px;display:flex}.chat-user{justify-content:flex-end}.chat-bubble{max-width:80%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.5;white-space:pre-wrap}.chat-user .chat-bubble{background:var(--accent2);border-bottom-right-radius:4px}.chat-assistant .chat-bubble{background:var(--card);border-bottom-left-radius:4px;border:1px solid rgba(255,255,255,.06)}.typing{opacity:.5;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.3}}.chat-input{display:flex;gap:8px;padding:8px 0;flex-shrink:0;align-items:center}.chat-input input{flex:1;padding:10px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:var(--text);font-size:14px;outline:none}.chat-input input:focus{border-color:var(--accent)}.chat-input button{padding:10px 16px;border-radius:12px;border:none;background:var(--accent);color:#fff;font-size:16px;cursor:pointer}.chat-input button:disabled{opacity:.4}
