:root{--bg:#f5f7fa;--surface:#fff;--border:#e8edf5;--navy:#0f1c35;--text-second:#5a6a85;--text-muted:#a0aebf;--accent:#10b981;--accent-light:#34d399;--accent-dark:#059669;--accent-glow:#10b9811a;--blue:#3a7fd5;--blue-bg:#3a7fd51a;--danger:#ef4444;--danger-bg:#ef44441a;--warning:#f59e0b;--warning-bg:#f59e0b1a;--purple:#8b5cf6;--purple-bg:#8b5cf61a;--muted:#64748b;--muted-bg:#64748b14}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--navy);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5}button{cursor:pointer;font-family:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-second)}.login-page{background:linear-gradient(135deg,#eef3ff,#f5f7fa,#fff);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.blob{pointer-events:none;border-radius:50%;position:absolute}.blob-1{opacity:.07;background:#3a7fd5;width:500px;height:500px;top:-200px;right:-150px}.blob-2{opacity:.05;background:#6b4cff;width:300px;height:300px;bottom:-100px;left:-100px}.blob-3{opacity:.04;background:#10b981;width:200px;height:200px;top:40%;left:-80px}.login-container{z-index:1;width:100%;max-width:460px;padding:24px}.login-header{text-align:center;margin-bottom:28px}.logo-ring{background:#3a7fd51a;border:2px solid #3a7fd533;border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin:0 auto 16px;display:flex}.logo-circle{background:#fff;border:1px solid #e8edf5;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;display:flex;box-shadow:0 6px 20px #3a7fd526}.logo-icon{font-size:32px}.app-name{color:#0f1c35;margin:0 0 6px;font-size:26px;font-weight:800}.app-tagline{color:#5a6a85;margin:0;font-size:13px}.login-card{background:#fff;border:1px solid #e8edf5;border-radius:24px;padding:32px;box-shadow:0 8px 32px #0f1c3514}.login-title{color:#0f1c35;margin:0 0 4px;font-size:22px;font-weight:700}.login-subtitle{color:#5a6a85;margin:0 0 24px;font-size:13px}.field-group{margin-bottom:18px}.field-label{color:#5a6a85;letter-spacing:.6px;text-transform:uppercase;margin-bottom:7px;font-size:11px;font-weight:600;display:block}.input-shell{background:#f5f7fa;border:1.5px solid #e8edf5;border-radius:13px;transition:border-color .2s;position:relative}.input-shell.focused{border-color:#3a7fd5}.input-icon{font-size:15px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.input{color:#0f1c35;box-sizing:border-box;background:0 0;border:none;outline:none;width:100%;padding:14px 14px 14px 42px;font-size:15px}.input-password{padding-right:44px}.eye-btn{cursor:pointer;background:0 0;border:none;font-size:16px;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.signin-btn{color:#fff;cursor:pointer;background:linear-gradient(90deg,#3a7fd5,#5b9fef);border:none;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:15px;font-size:16px;font-weight:700;transition:opacity .2s,transform .1s;display:flex;box-shadow:0 6px 20px #3a7fd54d}.signin-btn:hover:not(:disabled){opacity:.92;transform:translateY(-1px)}.signin-btn:active:not(:disabled){transform:scale(.98)}.signin-btn.loading,.signin-btn:disabled{opacity:.6;cursor:not-allowed}.spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.divider{background:#e8edf5;height:1px;margin:20px 0}.register-row{text-align:center}.no-account{color:#5a6a85;font-size:13px}.register-link{color:#3a7fd5;cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600}.footer-text{text-align:center;color:#a0aebf;margin-top:20px;font-size:11px}@media (width<=480px){.login-card{padding:24px}}.dashboard{background:#f0f3fa;min-height:100vh}.dashboard-loading{color:#2563eb;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;display:flex}.loading-spinner{border:3px solid #2563eb33;border-top-color:#2563eb;border-radius:50%;width:40px;height:40px;animation:.7s linear infinite spin}.dash-header{background:linear-gradient(135deg,#060e1f,#0e2040,#1a3a6b,#2563eb);padding:20px 32px 32px}.dash-header-inner{justify-content:space-between;align-items:flex-start;max-width:1400px;margin-bottom:24px;margin-left:auto;margin-right:auto;display:flex}.live-chip{background:#ffffff1a;border:1px solid #10b98166;border-radius:20px;align-items:center;gap:6px;margin-bottom:10px;padding:4px 10px;display:inline-flex}.live-dot{background:#10b981;border-radius:50%;width:7px;height:7px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.dash-greeting{color:#ffffffa6;margin:0;font-size:13px}.dash-name{color:#fff;margin:4px 0;font-size:28px;font-weight:800}.dash-date{color:#ffffff80;margin:0;font-size:11px}.dash-header-actions{gap:8px;display:flex}.icon-btn{cursor:pointer;background:#ffffff21;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;transition:background .2s;display:flex}.icon-btn:hover{background:#ffffff38}.metric-strip{background:#ffffff1a;border:1px solid #ffffff24;border-radius:18px;max-width:1400px;margin:0 auto;padding:14px 24px;display:flex}.metric-item{flex-direction:column;flex:1;gap:4px;display:flex}.metric-label{color:#ffffff8c;text-transform:uppercase;letter-spacing:.6px;font-size:9px;font-weight:700}.metric-value{color:#fff;font-size:26px;font-weight:800}.metric-sub{color:#ffffff8c;font-size:10px}.metric-bar{background:#fff3;border-radius:3px;height:4px;margin-top:4px;overflow:hidden}.metric-bar-fill{background:#fff;border-radius:3px;height:100%;transition:width .5s}.metric-divider{background:#ffffff26;width:1px;margin:0 14px}.dash-content{flex-direction:column;gap:20px;max-width:1400px;margin:0 auto;padding:24px 32px;display:flex}.compact-stats{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:-30px;display:grid}.compact-stat-card{text-align:center;background:#fff;border:1px solid;border-radius:16px;padding:16px;position:relative;box-shadow:0 4px 14px #00000012}.stat-top-bar{border-radius:16px 16px 0 0;height:3px;position:absolute;top:0;left:0;right:0}.stat-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin:12px auto;font-size:22px;display:flex}.stat-value{font-size:24px;font-weight:800;display:block}.stat-label{color:#8a9bb5;font-size:11px;font-weight:600}.section-card{background:#fff;border:1px solid #edf1f9;border-radius:20px;padding:20px 24px;box-shadow:0 3px 12px #0000000d}.section-title{color:#0d1b2e;margin:0 0 16px;font-size:15px;font-weight:700}.section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-header .section-title{margin-bottom:0}.view-all-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600}.quick-actions{flex-wrap:wrap;gap:16px;display:flex}.qa-chip{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:8px;display:flex}.qa-icon{background:#0000000a;border:1px solid #00000012;border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;font-size:28px;transition:transform .15s;display:flex}.qa-chip:hover .qa-icon{transform:translateY(-2px)}.qa-label{font-size:12px;font-weight:700}.financial-card{background:linear-gradient(135deg,#060f22,#0e2245,#1a3a6b);border-radius:22px;padding:20px 24px;box-shadow:0 10px 30px #0a16284d}.financial-header{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.financial-title{color:#fff;margin:0;font-size:15px;font-weight:700}.financial-sub{color:#ffffff73;margin:4px 0 0;font-size:11px}.eye-toggle{color:#ffffffb3;cursor:pointer;background:#ffffff1a;border:none;border-radius:8px;padding:6px 12px;font-size:12px}.profit-row{background:#ffffff12;border-radius:14px;align-items:center;margin-bottom:16px;padding:16px;display:flex}.profit-block{flex:1}.profit-label{color:#ffffff8c;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:10px;display:block}.profit-value{font-size:22px;font-weight:800;display:block}.margin-pill{border-radius:7px;margin-top:6px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-block}.profit-divider{background:#ffffff1f;width:1px;height:50px;margin:0 16px}.revenue-sub{color:#ffffff73;margin-top:4px;font-size:10px;display:block}.expense-breakdown{border-top:1px solid #ffffff1a;padding-top:12px}.expense-row{color:#ffffffbf;justify-content:space-between;padding:6px 0;font-size:13px;display:flex}.expense-total{border-top:1px solid #ffffff1f;justify-content:space-between;margin-top:4px;padding-top:10px;display:flex}.expense-total span:first-child{color:#ffffffd9;font-size:13px;font-weight:700}.expense-total span:last-child{color:#fde68a;font-size:16px;font-weight:800}.vouchers-list{flex-direction:column;gap:8px;display:flex}.voucher-row{cursor:pointer;border-bottom:1px solid #edf1f9;align-items:center;gap:14px;padding:12px 0;display:flex}.voucher-row:last-child{border-bottom:none}.voucher-icon{border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.voucher-info{flex:1}.voucher-number{color:#0d1b2e;margin:0 0 2px;font-size:14px;font-weight:700}.voucher-customer{color:#8a9bb5;margin:0;font-size:12px}.voucher-amount{font-size:16px;font-weight:800}.activities-list{flex-direction:column;gap:2px;display:flex}.activity-row{border-bottom:1px solid #edf1f9;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.activity-row:last-child{border-bottom:none}.activity-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;display:flex}.activity-content{flex:1}.activity-msg{color:#4a5d78;margin:0 0 4px;font-size:13px}.activity-meta{color:#8a9bb5;font-size:11px}.empty-state{text-align:center;color:#8a9bb5;padding:24px 0}.refresh-btn{color:#4a5d78;cursor:pointer;background:0 0;border:1.5px solid #e4eaf4;border-radius:14px;width:100%;padding:14px;font-size:14px;font-weight:600;transition:all .2s}.refresh-btn:hover:not(:disabled){color:#2563eb;background:#fff;border-color:#2563eb}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.dash-header{padding:16px 20px 24px}.dash-content{padding:16px 20px}.compact-stats{gap:12px}.metric-strip{padding:12px 16px}.metric-value{font-size:20px}.profit-value{font-size:16px}.quick-actions{gap:12px}.qa-icon{width:52px;height:52px;font-size:22px}}
