:root{--bg-deep: #0B0E14;--bg-card: rgba(18, 18, 18, .95);--accent-cyan: #00D4FF;--accent-mint: #2EFFAF;--text-primary: #e4e4e7;--text-secondary: #a1a1aa;--text-dim: #71717a;--border-cyan: rgba(0, 212, 255, .2);--border-cyan-bright: rgba(0, 212, 255, .5);--bg-overlay: rgba(0, 0, 0, .7);--bg-input: rgba(0, 0, 0, .3);--bg-hover: rgba(0, 212, 255, .05);--bg-subtle: rgba(255, 255, 255, .02);--bg-grid-line: rgba(0, 212, 255, .03);--shadow-card: 0 10px 30px rgba(0, 0, 0, .5);--shadow-card-inset: inset 0 0 20px rgba(0, 212, 255, .02);--shadow-hover: 0 15px 40px rgba(0, 212, 255, .1);--shadow-btn: 0 10px 20px rgba(0, 212, 255, .2);--color-danger: #ef4444;--color-danger-bg: rgba(239, 68, 68, .05);--color-danger-border: rgba(239, 68, 68, .4);--color-warning: #f59e0b;--color-warning-bg: rgba(245, 158, 11, .05);--color-warning-border: rgba(245, 158, 11, .3);--color-success: var(--accent-mint);--color-success-bg: rgba(46, 255, 175, .05);--table-row-border: rgba(255, 255, 255, .05);--bg-subtle-hover: rgba(255, 255, 255, .03);--focus-ring: 0 0 0 2px rgba(0, 212, 255, .1);--slider-bg: rgba(255, 255, 255, .1);--slider-checked-bg: rgba(0, 212, 255, .1);--tooltip-bg: #0f172a;--tooltip-text: #f1f5f9;--tooltip-shadow: rgba(0, 0, 0, .3);--font-header: "Inter", sans-serif;--font-body: "Inter", sans-serif;--font-mono: "Roboto Mono", monospace;--transition-fast: .3s ease;--transition-theme: background-color .3s ease, color .3s ease, border-color .3s ease, box-shadow .3s ease}[data-theme=light]{--bg-deep: #f0f2f5;--bg-card: #ffffff;--bg-input: rgba(0, 0, 0, .04);--bg-overlay: rgba(255, 255, 255, .85);--bg-hover: rgba(0, 150, 200, .06);--bg-subtle: rgba(0, 0, 0, .02);--bg-grid-line: rgba(0, 150, 200, .04);--accent-cyan: #0891b2;--accent-mint: #059669;--text-primary: #1e293b;--text-secondary: #475569;--text-dim: #94a3b8;--border-cyan: rgba(8, 145, 178, .2);--border-cyan-bright: rgba(8, 145, 178, .5);--shadow-card: 0 4px 16px rgba(0, 0, 0, .08);--shadow-card-inset: inset 0 0 0 transparent;--shadow-hover: 0 8px 24px rgba(0, 0, 0, .12);--shadow-btn: 0 4px 12px rgba(8, 145, 178, .2);--color-danger: #dc2626;--color-danger-bg: rgba(220, 38, 38, .06);--color-danger-border: rgba(220, 38, 38, .3);--color-warning: #d97706;--color-warning-bg: rgba(217, 119, 6, .06);--color-warning-border: rgba(217, 119, 6, .3);--color-success: var(--accent-mint);--color-success-bg: rgba(5, 150, 105, .06);--table-row-border: rgba(0, 0, 0, .06);--bg-subtle-hover: rgba(0, 0, 0, .03);--focus-ring: 0 0 0 2px rgba(8, 145, 178, .15);--slider-bg: rgba(0, 0, 0, .1);--slider-checked-bg: rgba(8, 145, 178, .15);--tooltip-bg: #1e293b;--tooltip-text: #f1f5f9;--tooltip-shadow: rgba(0, 0, 0, .15)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);line-height:1.8;color:var(--text-primary);background:var(--bg-deep);position:relative;min-height:100vh;transition:var(--transition-theme)}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(var(--bg-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--bg-grid-line) 1px,transparent 1px);background-size:50px 50px;z-index:0;pointer-events:none}[data-theme=light] body:before{background-image:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-header);font-weight:800;letter-spacing:1px;color:var(--text-primary)}.gradient-text{background:linear-gradient(135deg,var(--accent-cyan) 0%,var(--accent-mint) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text .emoji,.emoji{-webkit-text-fill-color:initial;-webkit-background-clip:initial;background-clip:initial;background:none;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",Twemoji Mozilla,EmojiOne Color,sans-serif;line-height:1}.card,.panel,.expense-card,.modal-content{background:var(--bg-card);border-radius:15px;border:1px solid var(--border-cyan);box-shadow:var(--shadow-card),var(--shadow-card-inset);transition:var(--transition-fast);padding:20px;position:relative;overflow:hidden}.card:hover{border-color:var(--border-cyan-bright);box-shadow:var(--shadow-hover)}.scan-line:before{content:"";position:absolute;top:0;left:-100%;width:200%;height:2px;background:linear-gradient(90deg,transparent,var(--accent-cyan),transparent);animation:scan 3s linear infinite;z-index:1}@keyframes scan{0%{left:-100%}to{left:100%}}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:8px 12px;color:var(--accent-cyan);font-family:var(--font-header);font-size:14px;border-bottom:1px solid var(--border-cyan)}.data-table td{padding:4px 12px;font-family:var(--font-mono);font-size:13px;color:var(--text-secondary);border-bottom:1px solid var(--table-row-border)}.data-table tr:hover{background:var(--bg-hover)}.btn-primary,.cta-button{display:inline-block;padding:12px 24px;background:linear-gradient(135deg,var(--accent-cyan) 0%,var(--accent-mint) 100%);color:var(--bg-deep)!important;text-decoration:none;border-radius:8px;font-size:14px;font-weight:700;border:none;cursor:pointer;transition:all .3s;box-shadow:var(--shadow-btn);text-transform:uppercase;letter-spacing:1px}.btn-primary:hover,.cta-button:hover{transform:translateY(-2px);box-shadow:0 15px 30px #00d4ff66;filter:brightness(1.1)}.btn-secondary{background:transparent;color:var(--accent-cyan);border:1px solid var(--border-cyan);padding:11px 23px;border-radius:8px;font-weight:600;transition:var(--transition-fast)}.btn-secondary:hover{border-color:var(--accent-cyan);background:var(--bg-hover)}.btn-danger,.btn-delete{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border);padding:8px 16px;border-radius:6px;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.btn-danger:hover,.btn-delete:hover{background:#ef44441a;border-color:var(--color-danger);transform:translateY(-1px);box-shadow:0 4px 12px #ef444433}input,select,textarea{background:var(--bg-input);border:1px solid var(--border-cyan);color:var(--text-primary);padding:10px 14px;border-radius:6px;font-family:var(--font-body);transition:var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-cyan);box-shadow:var(--focus-ring)}.mt-1{margin-top:10px}.mt-2{margin-top:20px}.mb-1{margin-bottom:10px}.mb-2{margin-bottom:20px}@media (max-width: 768px){.data-table td{padding:8px 12px}.data-table th,.data-table td{font-size:12px;padding:6px 8px}.card,.panel,.expense-card,.modal-content{padding:15px;border-radius:10px}.btn-primary,.cta-button{padding:10px 18px;font-size:13px}.btn-secondary{padding:9px 17px}h1{font-size:20px}h2{font-size:18px}h3{font-size:16px}}@media (max-width: 480px){.card,.panel,.expense-card,.modal-content{padding:12px;border-radius:8px}.btn-primary,.cta-button{padding:10px 14px;font-size:12px;letter-spacing:.5px}.btn-danger,.btn-delete{padding:6px 12px;font-size:12px}input,select,textarea{padding:8px 10px;font-size:14px}}.read-only-message{background:var(--color-warning-bg);color:var(--color-warning);padding:12px 16px;border-radius:8px;font-size:14px;border-left:3px solid var(--color-warning);margin-bottom:15px;text-align:center}.text-muted{color:var(--text-dim);font-size:13px}
