@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap");:root,[data-theme=dark]{--font-primary:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--primary:#00d4ff;--primary-hover:#00b8e0;--primary-glow:rgba(0,212,255,0.25);--secondary:#a855f7;--secondary-hover:#9333ea;--secondary-glow:rgba(168,85,247,0.25);--accent-gradient:linear-gradient(135deg,#00d4ff,#a855f7);--success:#10b981;--success-bg:rgba(16,185,129,0.15);--success-text:#34d399;--warning:#f59e0b;--warning-bg:rgba(245,158,11,0.15);--warning-text:#fbbf24;--error:#ef4444;--error-bg:rgba(239,68,68,0.15);--error-text:#f87171;--info:#3b82f6;--info-bg:rgba(59,130,246,0.15);--info-text:#60a5fa;--bg-base:#0a0f1a;--bg-surface:#111827;--bg-elevated:#1e293b;--bg-card:rgba(30,41,59,0.8);--bg-card-solid:#1e293b;--bg-hover:rgba(51,65,85,0.5);--bg-input:#1e293b;--bg-modal:rgba(15,23,42,0.98);--bg-overlay:rgba(0,0,0,0.7);--bg-dropdown:rgba(30,41,59,0.98);--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-muted:#64748b;--text-disabled:#475569;--text-inverse:#0f172a;--border:rgba(255,255,255,0.1);--border-light:rgba(255,255,255,0.05);--border-strong:rgba(255,255,255,0.2);--border-focus:var(--primary);--shadow-sm:0 2px 8px rgba(0,0,0,0.3);--shadow-md:0 4px 16px rgba(0,0,0,0.4);--shadow-lg:0 8px 32px rgba(0,0,0,0.5);--shadow-glow:0 0 20px var(--primary-glow);--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-full:9999px;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--transition-fast:150ms ease;--transition-base:250ms ease;--z-dropdown:100;--z-modal:500;--z-toast:800;--close-btn-filter:invert(1) grayscale(100%) brightness(200%);--accent-indigo:#818cf8;--accent-indigo-soft:rgba(129,140,248,0.1);--accent-indigo-border:rgba(129,140,248,0.3);--accent-indigo-shadow:0 8px 30px rgba(0,0,0,0.5);--accent-cyan:#22d3ee;--accent-cyan-soft:rgba(34,211,238,0.1);--accent-cyan-border:rgba(34,211,238,0.3);--accent-cyan-shadow:0 8px 30px rgba(0,0,0,0.5);--accent-orange:#fb923c;--accent-orange-soft:rgba(251,146,60,0.1);--accent-orange-border:rgba(251,146,60,0.3);--accent-orange-shadow:0 8px 30px rgba(0,0,0,0.5);--accent-emerald:#34d399;--accent-emerald-soft:rgba(52,211,153,0.1);--accent-emerald-border:rgba(52,211,153,0.3);--accent-emerald-shadow:0 8px 30px rgba(0,0,0,0.5);--accent-rose:#fb7185;--accent-rose-soft:rgba(251,113,133,0.1);--accent-rose-border:rgba(251,113,133,0.3);--accent-rose-shadow:0 8px 30px rgba(0,0,0,0.5);--accent-violet:#a78bfa;--accent-violet-soft:rgba(167,139,250,0.1);--accent-violet-border:rgba(167,139,250,0.3);--accent-violet-shadow:0 8px 30px rgba(0,0,0,0.5)}[data-theme=light]{--primary:#0891b2;--primary-hover:#0e7490;--primary-glow:rgba(8,145,178,0.15);--secondary:#7c3aed;--secondary-hover:#6d28d9;--secondary-glow:rgba(124,58,237,0.15);--accent-gradient:linear-gradient(135deg,#0891b2,#7c3aed);--success:#059669;--success-bg:rgba(5,150,105,0.12);--success-text:#047857;--warning:#d97706;--warning-bg:rgba(217,119,6,0.12);--warning-text:#92400e;--error:#dc2626;--error-bg:rgba(220,38,38,0.12);--error-text:#b91c1c;--info:#2563eb;--info-bg:rgba(37,99,235,0.12);--info-text:#1d4ed8;--bg-base:#f1f5f9;--bg-surface:#ffffff;--bg-elevated:#ffffff;--bg-card:#ffffff;--bg-card-solid:#ffffff;--bg-hover:#e2e8f0;--bg-input:#ffffff;--bg-modal:#ffffff;--bg-overlay:rgba(0,0,0,0.5);--bg-dropdown:#ffffff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--text-disabled:#94a3b8;--text-inverse:#ffffff;--border:rgba(0,0,0,0.12);--border-light:rgba(0,0,0,0.06);--border-strong:rgba(0,0,0,0.2);--border-focus:var(--primary);--shadow-sm:0 1px 3px rgba(0,0,0,0.1),0 1px 2px rgba(0,0,0,0.06);--shadow-md:0 4px 6px rgba(0,0,0,0.1),0 2px 4px rgba(0,0,0,0.06);--shadow-lg:0 10px 25px rgba(0,0,0,0.1),0 4px 10px rgba(0,0,0,0.05);--shadow-glow:0 4px 14px rgba(8,145,178,0.2);--card-border:1px solid rgba(0,0,0,0.1);--card-shadow:0 2px 8px rgba(0,0,0,0.08),0 0 0 1px rgba(0,0,0,0.05);--accent-indigo:#4338ca;--accent-indigo-soft:rgba(67,56,202,0.06);--accent-indigo-border:rgba(67,56,202,0.12);--accent-indigo-shadow:0 8px 30px rgba(67,56,202,0.1);--accent-cyan:#0891b2;--accent-cyan-soft:rgba(8,145,178,0.06);--accent-cyan-border:rgba(8,145,178,0.12);--accent-cyan-shadow:0 8px 30px rgba(8,145,178,0.1);--accent-orange:#ea580c;--accent-orange-soft:rgba(234,88,12,0.06);--accent-orange-border:rgba(234,88,12,0.12);--accent-orange-shadow:0 8px 30px rgba(234,88,12,0.1);--accent-emerald:#059669;--accent-emerald-soft:rgba(5,150,105,0.06);--accent-emerald-border:rgba(5,150,105,0.12);--accent-emerald-shadow:0 8px 30px rgba(5,150,105,0.1);--accent-rose:#dc2626;--accent-rose-soft:rgba(220,38,38,0.06);--accent-rose-border:rgba(220,38,38,0.12);--accent-rose-shadow:0 8px 30px rgba(220,38,38,0.1);--accent-violet:#7c3aed;--accent-violet-soft:rgba(124,58,237,0.06);--accent-violet-border:rgba(124,58,237,0.12);--accent-violet-shadow:0 8px 30px rgba(124,58,237,0.1);--shadow-floating:0 10px 40px rgba(0,0,0,0.06);--close-btn-filter:none}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-primary);background-color:var(--bg-base);color:var(--text-primary);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-base),color var(--transition-base)}.card{background-color:var(--bg-card-solid)!important;border:1px solid var(--border)!important;border-radius:var(--radius-xl)!important;color:var(--text-primary)!important;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.card-header{background-color:var(--bg-surface)!important;border-bottom:1px solid var(--border)!important;padding:1rem 1.25rem}.card-body,.card-header{color:var(--text-primary)!important}.card-body{padding:1.25rem}.card-footer{background-color:var(--bg-surface)!important;border-top:1px solid var(--border)!important;color:var(--text-primary)!important}.form-control,.form-select{border:1px solid var(--border)!important;border-radius:var(--radius-md);padding:.625rem 1rem;transition:all var(--transition-fast)}.form-control,.form-control:focus,.form-select,.form-select:focus{background-color:var(--bg-input)!important;color:var(--text-primary)!important}.form-control:focus,.form-select:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--primary-glow)!important;outline:none}.form-control::placeholder{color:var(--text-muted)!important}.form-label{color:var(--text-secondary)!important;font-weight:500;margin-bottom:.5rem}.form-check-input{background-color:var(--bg-input)!important;border-color:var(--border-strong)!important}.form-check-input:checked{background-color:var(--primary)!important;border-color:var(--primary)!important}.form-check-label{color:var(--text-primary)!important}.input-group-text{background-color:var(--bg-surface)!important;border:1px solid var(--border)!important;color:var(--text-secondary)!important}.table{color:var(--text-primary)!important;--bs-table-bg:transparent!important}.table>thead,.table>thead>tr>th{background-color:var(--bg-surface)!important}.table>thead>tr>th{color:var(--text-secondary)!important;border-bottom:1px solid var(--border)!important;font-weight:600;padding:.875rem 1rem}.table>tbody>tr{transition:background-color var(--transition-fast)}.table>tbody>tr:hover{background-color:var(--bg-hover)!important}.table>tbody>tr>td{border-bottom:1px solid var(--border-light)!important;padding:.875rem 1rem;vertical-align:middle}.modal-content,.table>tbody>tr>td{color:var(--text-primary)!important}.modal-content{background-color:var(--bg-modal)!important;border:1px solid var(--border)!important;border-radius:var(--radius-xl)!important;box-shadow:var(--shadow-lg)}.modal-header{background-color:var(--bg-surface)!important;border-bottom:1px solid var(--border)!important;padding:1rem 1.5rem}.modal-title{font-weight:600}.modal-body,.modal-title{color:var(--text-primary)!important}.modal-body{padding:1.5rem}.modal-footer{background-color:var(--bg-surface)!important;border-top:1px solid var(--border)!important;padding:1rem 1.5rem}.modal-backdrop{background-color:rgba(0,0,0,.6)}.btn{border-radius:var(--radius-md);font-weight:500;padding:.5rem 1rem;transition:all var(--transition-fast)}.btn-primary{background:var(--accent-gradient)!important;border:none!important;color:white!important}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-glow)}.btn-secondary{background-color:var(--bg-surface)!important;border:1px solid var(--border)!important;color:var(--text-primary)!important}.btn-secondary:hover{background-color:var(--bg-hover)!important}.btn-success{background-color:var(--success)!important;border:none!important}.btn-danger{background-color:var(--error)!important;border:none!important}.btn-warning{background-color:var(--warning)!important;border:none!important}.btn-outline-primary{border-color:var(--primary)!important;color:var(--primary)!important;background:transparent!important}.btn-outline-primary:hover{background-color:var(--primary)!important;color:white!important}.btn-outline-secondary{border-color:var(--border-strong)!important;color:var(--text-primary)!important;background:transparent!important}.btn-outline-secondary:hover{background-color:var(--bg-hover)!important}.btn-close{opacity:.6;transition:opacity var(--transition-fast)}[data-theme=dark] .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}.btn-close:hover{opacity:1}.dropdown-menu{background-color:var(--bg-dropdown)!important;border:1px solid var(--border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg);padding:.5rem}.dropdown-item{color:var(--text-primary)!important;border-radius:var(--radius-sm);padding:.5rem 1rem;transition:background-color var(--transition-fast)}.dropdown-item:focus,.dropdown-item:hover{background-color:var(--bg-hover)!important;color:var(--primary)!important}.dropdown-divider,.list-group-item{border-color:var(--border)!important}.list-group-item{background-color:var(--bg-card)!important;color:var(--text-primary)!important}.list-group-item:hover{background-color:var(--bg-hover)!important}.alert{border-radius:var(--radius-lg);border:none}.alert-primary{background-color:var(--primary-glow)!important;color:var(--primary)!important}.alert-success{background-color:var(--success-bg)!important;color:var(--success-text)!important}.alert-danger{background-color:var(--error-bg)!important;color:var(--error-text)!important}.alert-warning{background-color:var(--warning-bg)!important;color:var(--warning-text)!important}.alert-info{background-color:var(--info-bg)!important;color:var(--info-text)!important}.badge{font-weight:600;padding:.35rem .65rem;border-radius:var(--radius-sm)}.bg-primary{background:var(--accent-gradient)!important}.bg-secondary{background-color:var(--text-muted)!important}.bg-success{background-color:var(--success)!important}.bg-danger{background-color:var(--error)!important}.bg-warning{background-color:var(--warning)!important;color:var(--text-inverse)!important}.bg-info{background-color:var(--info)!important}.nav-tabs{border-bottom:1px solid var(--border)!important}.nav-tabs .nav-link{color:var(--text-secondary)!important;border:none!important;padding:.75rem 1.25rem;transition:all var(--transition-fast)}.nav-tabs .nav-link:hover{color:var(--text-primary)!important;background-color:var(--bg-hover)!important}.nav-tabs .nav-link.active{background-color:var(--bg-card)!important;color:var(--primary)!important;border-bottom:2px solid var(--primary)!important}.accordion-item{background-color:var(--bg-card)!important;border:1px solid var(--border)!important}.accordion-button{background-color:var(--bg-surface)!important;color:var(--text-primary)!important}.accordion-button:not(.collapsed){background-color:var(--bg-hover)!important;color:var(--primary)!important}[data-theme=dark] .accordion-button:after{filter:invert(1)}.accordion-body,.page-link{background-color:var(--bg-card)!important;color:var(--text-primary)!important}.page-link{border-color:var(--border)!important}.page-link:hover{background-color:var(--bg-hover)!important;color:var(--primary)!important}.page-item.active .page-link{background:var(--accent-gradient)!important;border-color:transparent!important}.breadcrumb{background-color:transparent!important}.breadcrumb-item+.breadcrumb-item:before{color:var(--text-muted)!important}.breadcrumb-item.active{color:var(--text-primary)!important}.progress{background-color:var(--bg-surface)!important;border-radius:var(--radius-full)}.progress-bar{background:var(--accent-gradient)!important}.spinner-border{color:var(--primary)!important}.tooltip-inner{background-color:var(--bg-elevated)!important;color:var(--text-primary)!important;border-radius:var(--radius-md)}.popover{background-color:var(--bg-dropdown)!important;border:1px solid var(--border)!important}.popover-header{background-color:var(--bg-surface)!important;border-bottom:1px solid var(--border)!important}.popover-body,.popover-header{color:var(--text-primary)!important}.text-muted{color:var(--text-muted)!important}.text-primary{color:var(--primary)!important}.border{border-color:var(--border)!important}.bg-light{background-color:var(--bg-surface)!important}.bg-dark{background-color:var(--bg-base)!important}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-surface)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@media (max-width:768px){html{font-size:14px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}.animate-fade-in{animation:fadeIn .3s ease forwards}.animate-spin{animation:spin 1s linear infinite}.explanation-page,.inv-preview,.invoice-page,.invoice-preview,.preview-container,.receipt-preview{background-color:#ffffff!important;color:#000000!important}.explanation-page div,.explanation-page h1,.explanation-page h2,.explanation-page h3,.explanation-page p,.explanation-page span,.explanation-page strong,.explanation-page td,.invoice-page div,.invoice-page h1,.invoice-page h2,.invoice-page h3,.invoice-page h4,.invoice-page h5,.invoice-page h6,.invoice-page p,.invoice-page span,.invoice-page strong,.invoice-page td,.invoice-page th,.preview-container,.preview-container *,.receipt-preview,.receipt-preview *{color:#000000!important}[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview){background-color:var(--bg-card)!important;color:var(--text-primary)!important}[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) h1,[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) h2,[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) h3,[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) h4,[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) h5,[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) h6{color:var(--text-primary)!important}[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) label,[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) p,[data-theme=dark] .bg-white:not(.invoice-page):not(.receipt-preview):not(.preview-container):not(.explanation-page):not(.invoice-preview):not(.inv-preview) span{color:var(--text-secondary)!important}[data-theme=dark] table:not(.invoice-page table):not(.preview-container table):not(.inv-preview table):not(.invoice-preview table) thead{background-color:var(--bg-surface)!important}[data-theme=dark] table:not(.invoice-page table):not(.preview-container table):not(.inv-preview table):not(.invoice-preview table) th{background-color:var(--bg-surface)!important;color:var(--text-primary)!important;border-color:var(--border)!important}[data-theme=dark] table:not(.invoice-page table):not(.preview-container table):not(.inv-preview table):not(.invoice-preview table) td{color:var(--text-primary)!important;border-color:var(--border)!important}[data-theme=dark] .bg-light,[data-theme=dark] .card.bg-light{background-color:var(--bg-surface)!important;color:var(--text-primary)!important}[data-theme=dark] input:not([type=checkbox]):not([type=radio]),[data-theme=dark] select,[data-theme=dark] textarea{background-color:var(--bg-input)!important;color:var(--text-primary)!important;border-color:var(--border)!important}[data-theme=dark] .form-label,[data-theme=dark] label{color:var(--text-secondary)!important}[data-theme=dark] .text-dark{color:var(--text-primary)!important}[data-theme=dark] .text-muted{color:var(--text-muted)!important}[data-theme=dark] .text-secondary{color:var(--text-secondary)!important}[data-theme=dark] .text-body{color:var(--text-primary)!important}[data-theme=dark] .text-success{color:var(--success-text)!important}[data-theme=dark] .text-info{color:var(--info-text)!important}[data-theme=dark] .text-warning{color:var(--warning-text)!important}[data-theme=dark] .text-primary{color:var(--primary)!important}[data-theme=dark] .bg-success-subtle{background-color:var(--success-bg)!important}[data-theme=dark] .bg-info-subtle{background-color:var(--info-bg)!important}[data-theme=dark] .bg-warning-subtle{background-color:var(--warning-bg)!important}[data-theme=dark] .bg-danger-subtle{background-color:var(--error-bg)!important}[data-theme=dark] .bg-primary-subtle{background-color:var(--primary-glow)!important}[data-theme=dark] .bg-secondary-subtle{background-color:var(--bg-hover)!important}[data-theme=light] .bg-white h1,[data-theme=light] .bg-white h2,[data-theme=light] .bg-white h3,[data-theme=light] .bg-white h4,[data-theme=light] .bg-white h5,[data-theme=light] .bg-white h6{color:#0f172a!important}[data-theme=light] .bg-white label,[data-theme=light] .bg-white p,[data-theme=light] .bg-white span{color:#334155!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}@page{size:A4;margin:10mm}@media print{.btn,.navbar,.no-print,.print-button,.sidebar,footer:not(.invoice-footer),nav{display:none!important}.invoice-container,.invoice-page,.preview-container,.receipt-preview{width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important;border:none!important;background:#fff!important}body{color:#000!important;background:#fff!important;margin:1.6cm}.card,.invoice-item,.section-break-avoid,td,tr{page-break-inside:avoid!important;break-inside:avoid!important}.page-break{page-break-after:always!important}img{max-width:100%!important}}.card-featured{background:var(--bg-card);border:1px solid var(--border);border-radius:1rem;overflow:hidden;transition:all .3s ease}[data-theme=light] .card-featured{background:#ffffff!important;box-shadow:0 10px 30px -10px rgba(0,0,0,.1)}[data-theme=light] .card-featured.accent-emerald,[data-theme=light] .card-sharp{border:1px solid var(--accent-emerald-border)!important;box-shadow:var(--accent-emerald-shadow)!important}.accent-emerald{--accent-main:var(--accent-emerald);--accent-soft:var(--accent-emerald-soft);--accent-border:var(--accent-emerald-border);--accent-border-glow:var(--accent-emerald-border)}.accent-orange{--accent-main:var(--accent-orange);--accent-soft:var(--accent-orange-soft);--accent-border:var(--accent-orange-border);--accent-border-glow:var(--accent-orange-border)}.accent-indigo{--accent-main:var(--accent-indigo);--accent-soft:var(--accent-indigo-soft);--accent-border:var(--accent-indigo-border);--accent-border-glow:var(--accent-indigo-border)}.accent-cyan{--accent-main:var(--accent-cyan);--accent-soft:var(--accent-cyan-soft);--accent-border:var(--accent-cyan-border);--accent-border-glow:var(--accent-cyan-border)}