:root{--font-heading: "Outfit", sans-serif;--font-body: "Inter", sans-serif;--primary-hue: 238;--primary: hsl(var(--primary-hue), 83%, 60%);--primary-light: hsl(var(--primary-hue), 83%, 95%);--primary-hover: hsl(var(--primary-hue), 80%, 50%);--primary-glow: rgba(99, 102, 241, .15);--secondary: #6366f1;--success: #10b981;--success-light: #ecfdf5;--warning: #f59e0b;--warning-light: #fffbeb;--danger: #ef4444;--danger-light: #fef2f2;--info: #0ea5e9;--bg-app: #f8fafc;--bg-card: #ffffff;--bg-sidebar: #0f172a;--text-main: #0f172a;--text-muted: #64748b;--text-light: #94a3b8;--border-color: #e2e8f0;--border-focus: hsl(var(--primary-hue), 83%, 75%);--shadow-sm: 0 1px 3px rgba(0,0,0,.05);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.05), 0 2px 4px -1px rgba(0,0,0,.03);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -2px rgba(0,0,0,.04);--shadow-premium: 0 20px 25px -5px rgba(99, 102, 241, .08), 0 10px 10px -5px rgba(99, 102, 241, .03);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--transition: all .25s cubic-bezier(.4, 0, .2, 1);--page-max-width: 1200px;--sidebar-width: 280px}@media (max-width: 768px){.app-container{flex-direction:column;height:auto;min-height:100vh}.app-sidebar{position:fixed;bottom:0;left:0;width:100%;height:65px;flex-direction:row;z-index:1000;padding:0 10px;border-right:none;border-top:1px solid var(--border-color)}.sb-logo-wrap,.sb-nav-section-title,.sb-upgrade-card,.sb-user-card{display:none}.sb-nav-group{flex-direction:row;width:100%;justify-content:space-around;padding:0;gap:0}.sb-nav-item{flex-direction:column;padding:8px 4px;border-radius:8px;font-size:.65rem;gap:4px;margin:0;width:auto;flex:1;align-items:center;justify-content:center}.sb-nav-item svg{margin-right:0;margin-bottom:2px}.main-content{margin-bottom:65px;padding:15px}.app-top-header{padding:10px 15px;flex-direction:row}.dash-grid,.doc-grid,.settings-grid,.acct-grid{grid-template-columns:1fr!important}.invoice-table{display:block;overflow-x:auto;white-space:nowrap}.modal-panel,.settings-modal-panel{width:95%!important;max-width:none!important;max-height:90vh!important}.builder-layout{flex-direction:column!important}.builder-left,.builder-right{width:100%!important;border-right:none!important;height:auto!important}.doc-line-items{overflow-x:auto}body{overflow-x:hidden}}[data-theme=dark]{--bg-app: #090d16;--bg-card: #131a26;--bg-sidebar: #0b0f19;--primary-light: hsl(var(--primary-hue), 40%, 15%);--primary-glow: rgba(99, 102, 241, .3);--text-main: #f1f5f9;--text-muted: #94a3b8;--text-light: #64748b;--border-color: #222d3f;--border-focus: hsl(var(--primary-hue), 80%, 65%);--success-light: rgba(16, 185, 129, .1);--warning-light: rgba(245, 158, 11, .1);--danger-light: rgba(239, 68, 68, .1);--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 6px -1px rgba(0,0,0,.25), 0 2px 4px -1px rgba(0,0,0,.2);--shadow-lg: 0 10px 15px -3px rgba(0,0,0,.4), 0 4px 6px -2px rgba(0,0,0,.3);--shadow-premium: 0 20px 25px -5px rgba(0, 0, 0, .5)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-app);color:var(--text-main);transition:background-color .3s ease,color .3s ease;overflow-x:hidden;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;letter-spacing:-.02em}button,input,select,textarea{font-family:inherit}.app-container{display:flex;min-height:100vh;position:relative}.main-content{flex:1;padding:0;max-width:1600px;margin:0 auto;margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));min-width:0;transition:var(--transition)}.app-page-content{padding:2.5rem;min-width:0}@media screen and (max-width: 1024px){.main-content{padding:0;margin-left:0;width:100%}.app-page-content{padding:1.5rem 1.5rem 5rem}}@media screen and (max-width: 480px){.app-page-content{padding:1rem 1rem 5rem}}.view-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.view-header h1{font-size:1.8rem}@media screen and (max-width: 768px){.view-header{flex-direction:column}.view-header h1{font-size:1.35rem}.view-header p{font-size:.85rem}}.mobile-scroll-x{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}img,svg,video,canvas,iframe{max-width:100%}.app-page-content *{min-width:0}@media screen and (max-width: 600px){.form-row{display:grid!important;grid-template-columns:1fr!important;gap:0!important}.filters-grid,.hosted-payment-grid,.settings-grid{grid-template-columns:1fr!important}.builder-card-header-flex{flex-direction:column;align-items:flex-start;gap:.5rem}.welcome-banner>div:last-child{width:100%;flex-direction:row;flex-wrap:wrap;align-items:flex-start}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-light)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeInUp .35s cubic-bezier(.16,1,.3,1) forwards}.glass{background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3)}[data-theme=dark] .glass{background:#131a26b3;border:1px solid rgba(255,255,255,.05)}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.75rem;box-shadow:var(--shadow-sm);transition:var(--transition);min-width:0}.card:hover{box-shadow:var(--shadow-md);border-color:var(--border-focus)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:var(--radius-sm);font-weight:500;font-size:.9rem;cursor:pointer;transition:var(--transition);border:1px solid transparent;outline:none}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 4px 10px var(--primary-glow)}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 6px 14px var(--primary-glow)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-card);color:var(--text-main);border-color:var(--border-color)}.btn-secondary:hover{background:var(--border-color);border-color:var(--text-light)}.btn-success{background:var(--success);color:#fff;box-shadow:0 4px 10px #10b98133}.btn-success:hover{background:#059669;transform:translateY(-1px)}.btn-danger{background:var(--danger);color:#fff;box-shadow:0 4px 10px #ef444433}.btn-danger:hover{background:#dc2626;transform:translateY(-1px)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-muted);margin-bottom:.5rem}.form-control{width:100%;padding:.65rem .9rem;font-size:.95rem;border-radius:var(--radius-sm);border:1px solid var(--border-color);background-color:var(--bg-card);color:var(--text-main);transition:var(--transition);outline:none}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.form-control::placeholder{color:var(--text-light)}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-paid{background-color:var(--success-light);color:var(--success)}.badge-unpaid{background-color:var(--danger-light);color:var(--danger)}.badge-draft{background-color:var(--border-color);color:var(--text-muted)}.badge-pending{background-color:var(--warning-light);color:var(--warning)}.badge-invoiced{background-color:var(--primary-light);color:var(--primary)}@page{size:A4 portrait;margin:14mm 12mm}@media print{*,*:before,*:after{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important;box-shadow:none!important;text-shadow:none!important}html,body{width:100%!important;height:auto!important;margin:0!important;padding:0!important;background:#fff!important;color:#1f2937!important;font-size:10pt!important;-webkit-font-smoothing:antialiased!important;overflow:visible!important}.app-container{display:block!important;width:100%!important;height:auto!important;min-height:unset!important;overflow:visible!important}.main-content{padding:0!important;margin:0!important;max-width:100%!important;width:100%!important;height:auto!important;min-height:unset!important;overflow:visible!important}.sidebar-container,.mobile-header,.no-print,.builder-header,.builder-left,.preview-controls-card,.builder-title-meta,.builder-header-actions,.mobile-toggle-wrapper,.action-bar,.filters-card,.doc-item-actions,.modal-overlay,header,nav,footer,button,.btn{display:none!important;visibility:hidden!important}.builder-view{display:block!important;width:100%!important;padding:0!important;margin:0!important;animation:none!important}.builder-workspace,.builder-right{display:block!important;width:100%!important;padding:0!important;margin:0!important;gap:0!important}.print-invoice-sheet{display:block!important;width:100%!important;min-height:unset!important;border:none!important;border-radius:0!important;box-shadow:none!important;padding:1.5rem!important;margin:0!important;background:#fff!important;color:#1f2937!important;font-size:10pt!important;line-height:1.55!important;page-break-inside:avoid;break-inside:avoid;box-sizing:border-box!important}.template-brutalist,.template-elegant,.template-executive,.template-creative,.template-minimal,.template-blueprint,.template-neon,.template-nordic,.template-navy,.template-terracotta,.template-editorial{border-left:none!important;box-shadow:none!important}.template-neon{background:#fff!important;color:#1f2937!important}.template-neon .doc-title-main,.template-neon .vendor-name,.template-neon .grand-total-row span{color:#6366f1!important;text-shadow:none!important}.template-blueprint{background:#fff!important;color:#0f172a!important}.sheet-items-table{width:100%!important;border-collapse:collapse!important;page-break-inside:auto}.sheet-items-table tr{page-break-inside:avoid;page-break-after:auto}.sheet-items-table thead{display:table-header-group}.sheet-items-table tfoot{display:table-footer-group}.print-footer-brand{display:block!important;visibility:visible!important;font-size:7.5pt!important;color:#9ca3af!important;text-align:center!important;margin-top:24pt!important;border-top:1px dashed #d1d5db!important;padding-top:8pt!important}*,*:before,*:after{animation:none!important;transition:none!important}a[href]:after{content:none!important}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background:#0f172a73;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1.5rem;animation:modalFadeIn .2s ease-out forwards}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{max-width:550px;width:100%;padding:2rem!important;max-height:90vh;overflow-y:auto;animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1) forwards}@media screen and (max-width: 600px){.modal-overlay{padding:.75rem}.modal-content{padding:1.25rem!important;max-height:85vh}.modal-header h3{font-size:.95rem}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1.5px solid var(--border-color);padding-bottom:1rem;margin-bottom:1.25rem}.modal-header h3{display:flex;align-items:center;gap:.5rem;font-size:1.05rem}.modal-close{background:transparent;border:none;color:var(--text-light);cursor:pointer;padding:4px;border-radius:6px;transition:var(--transition)}.modal-close:hover{color:var(--text-main);background:var(--border-color)}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;border-top:1.5px solid var(--border-color);padding-top:1rem;margin-top:.5rem}
