:root{--bg-dark: #0b0f19;--bg-card: rgba(17, 24, 39, .75);--bg-card-hover: rgba(30, 41, 59, .85);--bg-header: rgba(13, 18, 30, .85);--border-color: rgba(255, 255, 255, .08);--border-glow: rgba(99, 102, 241, .3);--primary: #6366f1;--primary-hover: #4f46e5;--primary-light: rgba(99, 102, 241, .15);--cyan: #00e6c3;--cyan-hover: #00cfae;--cyan-bg: rgba(0, 230, 195, .12);--gold: #f59e0b;--gold-glow: rgba(245, 158, 11, .25);--emerald: #10b981;--emerald-bg: rgba(16, 185, 129, .15);--rose: #f43f5e;--rose-bg: rgba(244, 63, 94, .15);--text-main: #f8fafc;--text-muted: #94a3b8;--text-dim: #64748b;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-full: 9999px;--shadow-sm: 0 4px 6px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 8px 10px -6px rgba(0, 0, 0, .5);--shadow-glow: 0 0 25px rgba(99, 102, 241, .25);--transition: all .25s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-dark);background-image:radial-gradient(at 0% 0%,rgba(99,102,241,.12) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(0,230,195,.08) 0px,transparent 50%),radial-gradient(at 50% 100%,rgba(16,185,129,.08) 0px,transparent 50%);background-attachment:fixed;color:var(--text-main);min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0f172a99}::-webkit-scrollbar-thumb{background:#6366f14d;border-radius:4px}.app-container{display:flex;flex-direction:column;min-height:100vh;padding-bottom:90px}@media (min-width: 769px){.app-container{padding-bottom:0}}.role-simulator-bar{background:linear-gradient(90deg,#1e1b4b,#0f172a,#1e293b);border-bottom:1px solid var(--border-glow);padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;z-index:100;box-shadow:0 4px 15px #0006}.simulator-title{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:600;color:var(--gold);text-transform:uppercase;letter-spacing:.05em}.role-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.role-pill-btn{background:#ffffff0f;border:1px solid rgba(255,255,255,.1);color:var(--text-muted);padding:6px 14px;border-radius:var(--radius-full);font-size:.8rem;font-weight:500;cursor:pointer;transition:var(--transition);display:flex;align-items:center;gap:6px}.role-pill-btn:hover{background:#6366f133;color:var(--text-main);border-color:var(--primary)}.role-pill-btn.active{background:linear-gradient(135deg,var(--primary) 0%,#4338ca 100%);color:#fff;border-color:#ffffff4d;box-shadow:0 0 12px #6366f180}.device-badge{display:flex;align-items:center;gap:6px;font-size:.75rem;padding:4px 10px;border-radius:var(--radius-full);background:#10b98126;color:var(--emerald);border:1px solid rgba(16,185,129,.3)}.device-badge.unapproved{background:#f43f5e26;color:var(--rose);border-color:#f43f5e4d}.hamburger-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:#00e6c326;color:var(--cyan);border:1px solid rgba(0,230,195,.3);cursor:pointer;transition:var(--transition)}.hamburger-btn:hover{background:var(--cyan);color:#0b0f19}.mobile-drawer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex}.mobile-drawer-content{width:280px;max-width:80%;height:100%;background:#0f1422;border-right:1px solid var(--border-color);padding:24px 16px;display:flex;flex-direction:column;justify-content:space-between;overflow-y:auto;box-shadow:10px 0 25px #0009;animation:slideInLeft .25s ease-out forwards}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}.mobile-bottom-nav-container{display:none;position:fixed;bottom:14px;left:50%;transform:translate(-50%);z-index:990;width:calc(100% - 24px);max-width:460px;justify-content:center}.liquid-nav{position:relative;display:flex;align-items:center;justify-content:space-between;gap:4px;padding:6px 8px;border-radius:28px;width:100%;background:#121826e0;backdrop-filter:blur(36px) saturate(180%);-webkit-backdrop-filter:blur(36px) saturate(180%);box-shadow:0 30px 60px -18px #000c,0 8px 20px -8px #0009,inset 0 0 0 1px #ffffff26;transition:background .5s ease,box-shadow .5s ease}.liquid-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;border-radius:20px;background:transparent;border:1px solid transparent;color:#94a3b8;font-size:.68rem;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);white-space:nowrap;flex:1}.liquid-nav-item:hover{color:#fff;background:#ffffff0f}.liquid-nav-item.active{background:linear-gradient(135deg,#00e6c340,#6366f133);color:#fff;border:1px solid rgba(0,230,195,.4);box-shadow:0 4px 15px #00e6c34d}.liquid-nav-item.active svg{color:#00e6c3;transform:translateY(-1px)}.app-body{display:flex;flex:1}.app-sidebar{width:260px;background:var(--bg-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-right:1px solid var(--border-color);padding:24px 16px;display:flex;flex-direction:column;justify-content:space-between}.sidebar-logo{display:flex;align-items:center;gap:12px;margin-bottom:28px;padding:0 8px}.sidebar-logo-text{font-size:1.3rem;font-weight:800;background:linear-gradient(135deg,#fff,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em}.sidebar-menu{display:flex;flex-direction:column;gap:6px;list-style:none}.nav-item-btn{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--radius-md);border:none;background:transparent;color:var(--text-muted);font-size:.92rem;font-weight:500;cursor:pointer;transition:var(--transition);text-align:left}.nav-item-btn:hover{background:#ffffff0d;color:var(--text-main)}.nav-item-btn.active{background:var(--primary-light);color:var(--primary);font-weight:600;border-left:4px solid var(--primary);border-radius:4px var(--radius-md) var(--radius-md) 4px}.sidebar-user-card{background:#ffffff08;border:1px solid var(--border-color);padding:12px;border-radius:var(--radius-md);display:flex;align-items:center;gap:12px;margin-top:100px}.user-avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid var(--primary)}.user-info-name{font-size:.88rem;font-weight:600;color:var(--text-main)}.user-info-role{font-size:.75rem;color:var(--gold)}.main-content{flex:1;padding:28px;max-width:1400px;margin:0 auto;width:100%}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;flex-wrap:wrap;gap:16px}.page-title-group h1{font-size:1.75rem;font-weight:700;letter-spacing:-.02em;display:flex;align-items:center;gap:10px}.page-subtitle{color:var(--text-muted);font-size:.9rem;margin-top:4px}.btn{padding:10px 20px;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;text-decoration:none}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-hover) 100%);color:#fff;box-shadow:0 4px 14px #6366f166}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6366f199}.btn-cyan{background:var(--cyan);color:#0b0f19;font-weight:700;box-shadow:0 4px 14px #00e6c366}.btn-cyan:hover{background:var(--cyan-hover);transform:translateY(-2px);box-shadow:0 6px 20px #00e6c399}.btn-gold{background:linear-gradient(135deg,var(--gold) 0%,#d97706 100%);color:#000;font-weight:700;box-shadow:0 4px 14px var(--gold-glow)}.btn-outline{background:transparent;border:1px solid var(--border-color);color:var(--text-main)}.btn-outline:hover{background:#ffffff14}.btn-sm{padding:6px 12px;font-size:.8rem;border-radius:var(--radius-sm)}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);transition:var(--transition)}.form-group{margin-bottom:18px}.form-label{display:block;font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:6px}.form-input,.form-select,.form-textarea{width:100%;padding:11px 14px;background:#0f172ab3;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-main);font-size:.92rem;font-family:inherit;transition:var(--transition)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6366f140}.field-container-dark{background:#191c28;border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px 16px;margin-bottom:16px;position:relative}.field-label-floating{font-size:.75rem;color:#8a94a6;margin-bottom:4px;display:block}.field-input-dark{width:100%;background:transparent;border:none;outline:none;color:#fff;font-size:1rem;font-family:inherit}.expense-item-card{background:#1c232dd9;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:18px 22px;margin-bottom:14px;transition:all .25s ease;position:relative}.expense-item-card:hover{background:#242d3af2;border-color:#00e6c34d;box-shadow:0 8px 20px #0006}.expense-amount-big{font-size:1.5rem;font-weight:800;color:var(--cyan);letter-spacing:-.02em}.expense-badge-pill{padding:3px 10px;border-radius:12px;font-size:.75rem;font-weight:600;background:#ffffff0f;color:var(--text-muted);border:1px solid rgba(255,255,255,.08)}.expense-badge-pill.verified{background:#10b98133;color:#10b981;border-color:#10b98166}.expense-badge-pill.pending{background:#f59e0b26;color:#f59e0b;border-color:#f59e0b4d}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:28px}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:20px;display:flex;align-items:center;gap:16px}.stat-icon{width:50px;height:50px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.stat-value{font-size:1.6rem;font-weight:800;color:var(--text-main)}.stat-label{font-size:.8rem;color:var(--text-muted)}.table-container{width:100%;overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--border-color)}.custom-table{width:100%;border-collapse:collapse;text-align:left}.custom-table th{background:#0f172acc;padding:14px 16px;font-size:.82rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.custom-table td{padding:14px 16px;border-bottom:1px solid var(--border-color);font-size:.9rem;color:var(--text-main)}.custom-table tbody tr:hover{background:#ffffff08}.badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600}.badge-emerald{background:var(--emerald-bg);color:var(--emerald);border:1px solid rgba(16,185,129,.3)}.badge-rose{background:var(--rose-bg);color:var(--rose);border:1px solid rgba(244,63,94,.3)}.badge-gold{background:var(--gold-glow);color:var(--gold);border:1px solid rgba(245,158,11,.3)}.badge-primary{background:var(--primary-light);color:var(--primary);border:1px solid rgba(99,102,241,.3)}.modal-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;width:100vw!important;height:100vh!important;background:#050710d9!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:999999!important;padding:20px!important;box-sizing:border-box!important;margin:0!important}.modal-content{background:linear-gradient(145deg,#131826,#0a0d16);border:1.5px solid rgba(0,230,195,.35);border-radius:24px;width:92%;max-width:500px;max-height:88vh;overflow-y:auto;padding:28px;box-shadow:0 35px 80px #000000f2,0 0 50px #00e6c333;margin:auto!important}.floating-add-btn{position:fixed;bottom:95px;right:20px;width:56px;height:56px;border-radius:50%;background:var(--cyan);color:#0b0f19;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 25px #00e6c380;cursor:pointer;transition:all .25s ease;z-index:90;border:none}@media (min-width: 769px){.floating-add-btn{bottom:30px;right:30px}.hamburger-btn,.mobile-bottom-nav-container{display:none!important}}.floating-add-btn:hover{transform:scale(1.1);box-shadow:0 12px 30px #00e6c3b3}.floating-payment-btn{position:fixed;bottom:30px;right:30px;background:linear-gradient(135deg,#00e6c3,#00b395);color:#050b14;border:none;border-radius:50px;padding:14px 24px;font-size:.95rem;font-weight:800;display:flex;align-items:center;gap:10px;box-shadow:0 10px 30px #00e6c373,0 0 20px #00e6c340;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);z-index:99}.floating-payment-btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 15px 35px #00e6c3a6,0 0 25px #00e6c366}.floating-payment-btn:active{transform:translateY(0) scale(.98)}@media (max-width: 768px){.floating-payment-btn{bottom:90px;right:20px;padding:12px 20px;font-size:.88rem}}@media (max-width: 768px){.app-body{flex-direction:column;padding-bottom:75px}.app-sidebar{display:none!important}.hamburger-btn,.mobile-bottom-nav-container{display:flex!important}.main-content{padding:16px}}@keyframes recordModalPop3D{0%{opacity:0;transform:scale(.84) translateY(24px) rotateX(10deg)}60%{transform:scale(1.02) translateY(-4px) rotateX(-2deg)}to{opacity:1;transform:scale(1) translateY(0) rotateX(0)}}.record-payment-modal{background:radial-gradient(circle at 85% 15%,rgba(0,242,254,.12),transparent 50%),radial-gradient(circle at 15% 85%,rgba(112,0,255,.15),transparent 50%),#0f121d;border:1px solid rgba(0,242,254,.28);border-radius:24px;width:100%;max-width:600px;max-height:92vh;overflow-y:auto;padding:26px;box-shadow:0 30px 70px -10px #000000f2,0 0 45px #00f2fe26,inset 0 1.5px 1.5px #ffffff26;animation:recordModalPop3D .4s cubic-bezier(.175,.885,.32,1.25) forwards;transform-origin:center center;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);position:relative}.record-payment-section-title{display:flex;align-items:center;gap:10px;background:linear-gradient(135deg,#00f2fe,#4facfe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;font-size:.92rem;font-weight:800;margin-top:22px;margin-bottom:14px;letter-spacing:.3px;text-transform:uppercase;filter:drop-shadow(0 2px 4px rgba(0,242,254,.3))}.record-payment-section-title svg{color:#00f2fe;-webkit-text-fill-color:initial;filter:drop-shadow(0 0 8px rgba(0,242,254,.6))}.record-payment-input-box{background:linear-gradient(145deg,#121622f2,#0c0f19fa);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:14px 18px;display:flex;align-items:center;gap:12px;width:100%;margin-bottom:14px;box-shadow:inset 0 2px 4px #0009,0 1px 2px #ffffff0a;transition:all .25s cubic-bezier(.4,0,.2,1)}.record-payment-input-box:focus-within{transform:translateY(-2px);border-color:#00f2fe;background:linear-gradient(145deg,#1a2032f2,#121624fa);box-shadow:0 8px 22px -4px #00f2fe59,0 0 15px #00f2fe40,inset 0 1px 1px #fff3}.record-payment-input-box select,.record-payment-input-box input{background:transparent;border:none;color:#fff;font-size:.95rem;font-weight:500;width:100%;outline:none;font-family:inherit}.record-payment-input-box select option{background:#0f121d;color:#fff;padding:12px}.payment-methods-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.payment-method-chip{background:linear-gradient(145deg,#1a2032d9,#121623f2);border:1px solid rgba(255,255,255,.09);border-radius:14px;padding:11px 18px;color:var(--text-muted);font-size:.88rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;box-shadow:0 4px 12px #0006,inset 0 1px 1px #ffffff14;transition:all .22s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.payment-method-chip:hover{background:linear-gradient(145deg,#262e46f2,#181e30fa);color:#fff;transform:translateY(-2px);border-color:#00f2fe66;box-shadow:0 6px 16px #00f2fe33,inset 0 1px 1px #ffffff26}.payment-method-chip:active{transform:translateY(1px)}.payment-method-chip.active{background:linear-gradient(135deg,#00f2fe40,#7000ff40);border:1.5px solid #00f2fe;color:#fff;font-weight:700;transform:translateY(-3px) scale(1.02);box-shadow:0 10px 24px -2px #00f2fe66,0 0 15px #7000ff4d,inset 0 1px 1px #ffffff59}.payment-method-chip.active svg{color:#00f2fe;filter:drop-shadow(0 0 6px rgba(0,242,254,.8))}.proof-attachment-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}.proof-upload-box{background:linear-gradient(145deg,#101420f2,#181e30d9);border:2px dashed rgba(0,242,254,.35);border-radius:18px;padding:22px 16px;text-align:center;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:inset 0 2px 6px #00000080;transition:all .25s cubic-bezier(.4,0,.2,1)}.proof-upload-box:hover{background:linear-gradient(145deg,#00f2fe1f,#7000ff1f);border-color:#00f2fe;transform:translateY(-2px);box-shadow:0 8px 22px #00f2fe40,inset 0 1px 1px #ffffff26}.proof-preview-box{background:linear-gradient(145deg,#101420f2,#181e30d9);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;position:relative;min-height:120px;box-shadow:inset 0 2px 6px #0006}.record-payment-submit-btn{width:100%;padding:16px 24px;font-size:1.05rem;font-weight:800;letter-spacing:.5px;color:#fff;background:linear-gradient(135deg,#00f2fe,#00c6ff 45%,#7000ff);background-size:200% auto;border:1px solid rgba(255,255,255,.3);border-radius:16px;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;box-shadow:0 10px 30px -5px #00f2fe80,0 4px 15px #7000ff4d,inset 0 1.5px 2px #fff6;transition:all .3s cubic-bezier(.4,0,.2,1)}.record-payment-submit-btn:hover{background-position:right center;transform:translateY(-3px) scale(1.01);box-shadow:0 14px 38px -3px #00f2fea6,0 6px 22px #7000ff73,inset 0 2px 3px #ffffff80}.record-payment-submit-btn:active{transform:translateY(1px) scale(.99);box-shadow:0 4px 15px #00f2fe66}
