@import "https://fonts.googleapis.com/css2?family=Zilla+Slab:wght@400;500;600;700&family=Parkinsans:wght@300..800&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--font-family:"Parkinsans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-headings:"Zilla Slab", Georgia, "Times New Roman", serif;--font-body:"Parkinsans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", "SFMono-Regular", Consolas, monospace;--bg-primary:40 38% 6%;--bg-secondary:38 40% 4%;--bg-card:42 29% 9%;--bg-card-hover:44 32% 12%;--text-primary:44 36% 93%;--text-secondary:44 19% 74%;--text-muted:42 12% 51%;--brand-primary:113 89% 54%;--brand-secondary:114 78% 32%;--accent-deep:114 78% 32%;--brand-gradient:hsl(var(--brand-primary));--brand-glow:4px 4px 0 0 hsl(var(--brand-primary) / .45);--border-glow:3px 3px 0 0 hsl(var(--brand-primary));--border-color:42 16% 20%;--success:113 80% 50%;--danger:354 90% 68%;--warning:41 75% 52%;--leaf-radius-xs:0;--leaf-radius-sm:0;--leaf-radius-md:0;--leaf-radius-lg:0;--leaf-radius-xs-inv:0;--border-radius-sm:0;--border-radius-md:0;--border-radius-lg:0;--skew:-12deg;--transition-smooth:all .3s cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:hsl(var(--bg-secondary));color:hsl(var(--text-primary));font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}body:after{content:"";pointer-events:none;z-index:9999;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:hsl(var(--bg-secondary))}::-webkit-scrollbar-thumb{background:hsl(var(--border-color))}::-webkit-scrollbar-thumb:hover{background:hsl(var(--brand-primary))}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-15px)}to{opacity:1;transform:translate(0)}}.fade-in{animation:.4s cubic-bezier(.16,1,.3,1) forwards fadeIn}.material-symbols-rounded{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;vertical-align:middle;-webkit-user-select:none;user-select:none;line-height:1;font-size:inherit}.app-container{background-color:hsl(var(--bg-secondary));min-height:100vh;display:flex}.main-content{background-color:hsl(var(--bg-primary));border-radius:0;flex:1;height:100vh;margin-left:0;padding:1.5rem 2rem;animation:.5s cubic-bezier(.16,1,.3,1) fadeIn;overflow-y:auto;box-shadow:-10px 0 30px #00000059}h1{font-family:var(--font-headings);letter-spacing:.015em;color:hsl(var(--text-primary));margin-bottom:.5rem;font-size:2.2rem;font-weight:600}h1 span,h2 span{color:hsl(var(--brand-primary))}h2{font-family:var(--font-headings);letter-spacing:.015em;color:hsl(var(--text-primary));margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}h3{font-family:var(--font-headings);letter-spacing:.015em;color:hsl(var(--text-secondary));font-size:1.1rem;font-weight:600}.text-muted-desc{color:hsl(var(--text-secondary));margin-bottom:2rem;font-size:.95rem}.card{background:hsl(var(--bg-card));border:1px solid hsl(var(--border-color));box-shadow:none;transition:var(--transition-smooth);border-radius:0;padding:1.4rem}.card:hover{border-color:hsl(var(--brand-primary) / .5);box-shadow:6px 6px 0 0 hsl(var(--brand-primary));transform:translate(-4px,-4px)}.form-group{flex-direction:column;gap:.5rem;margin-bottom:1.25rem;display:flex}label{font-family:var(--font-mono);color:hsl(var(--text-muted));text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:500}input,select,textarea{background:hsl(var(--bg-secondary));border:1px solid hsl(var(--border-color));width:100%;color:hsl(var(--text-primary));font-family:var(--font-family);border-radius:0;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background-color .2s}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2339f222'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1.25rem;padding-right:2.75rem}input[type=date]{cursor:pointer;position:relative}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(74%)sepia(60%)saturate(900%)hue-rotate(60deg)brightness(105%)contrast(95%);cursor:pointer;opacity:.85;transition:opacity .2s}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}input:hover,select:hover,textarea:hover{border-color:hsl(var(--brand-primary) / .5)}input:focus,select:focus,textarea:focus{border-color:hsl(var(--brand-primary));box-shadow:3px 3px 0 0 hsl(var(--brand-primary));background:hsl(var(--bg-secondary));outline:none}.leaf-select-container{width:100%;position:relative}.leaf-select-trigger{background:hsl(var(--bg-secondary));border:1px solid hsl(var(--border-color));width:100%;color:hsl(var(--text-primary));font-family:var(--font-family);text-align:left;cursor:pointer;border-radius:0;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s,background-color .2s;display:flex}.leaf-select-trigger:hover{border-color:hsl(var(--brand-primary) / .5)}.leaf-select-trigger:focus,.leaf-select-trigger.active{border-color:hsl(var(--brand-primary));box-shadow:3px 3px 0 0 hsl(var(--brand-primary));background:hsl(var(--bg-secondary));outline:none}.select-trigger-icon{color:hsl(var(--brand-primary));font-size:1.2rem}.select-trigger-text{flex:1}.select-trigger-chevron{color:hsl(var(--text-muted));margin-left:auto;font-size:1.2rem;transition:transform .25s}.leaf-select-trigger.active .select-trigger-chevron{color:hsl(var(--brand-primary));transform:rotate(180deg)}.leaf-select-dropdown{background:hsl(var(--bg-card));border:1px solid hsl(var(--brand-primary) / .4);width:100%;box-shadow:6px 6px 0 0 hsl(var(--brand-primary) / .25);z-index:1000;border-radius:0;flex-direction:column;gap:.25rem;max-height:250px;padding:.5rem;list-style:none;display:flex;position:absolute;top:calc(100% + .35rem);left:0;overflow-y:auto}.leaf-select-option{color:hsl(var(--text-secondary));cursor:pointer;transition:var(--transition-smooth);border-radius:0;align-items:center;gap:.75rem;padding:.65rem .85rem;font-size:.9rem;display:flex}.leaf-select-option:hover{background:hsl(var(--bg-card-hover));color:hsl(var(--text-primary))}.leaf-select-option.selected{background:hsl(var(--brand-primary) / .15);color:hsl(var(--brand-primary));border:1px solid hsl(var(--brand-primary) / .4);font-weight:600}.option-icon{color:hsl(var(--brand-primary));font-size:1.15rem}.option-check{color:hsl(var(--brand-primary));margin-left:auto;font-size:1.1rem}.leaf-select-no-options{text-align:center;color:hsl(var(--text-muted));padding:1rem;font-size:.85rem}.btn-stepper{background:hsl(var(--bg-secondary));border:1px solid hsl(var(--border-color));width:2.85rem;height:2.85rem;color:hsl(var(--brand-primary));cursor:pointer;transition:var(--transition-smooth);border-radius:0;flex-shrink:0;justify-content:center;align-items:center;display:flex}.btn-stepper:hover{background:hsl(var(--bg-secondary));border-color:hsl(var(--brand-primary));box-shadow:3px 3px 0 0 hsl(var(--brand-primary))}.minus-btn:hover,.plus-btn:hover{color:hsl(var(--brand-primary))}.btn-stepper:focus{border-color:hsl(var(--brand-primary));outline:none}.recurrence-tabs{background:hsl(var(--bg-secondary));border:1px solid hsl(var(--border-color));border-radius:0;gap:.25rem;width:100%;margin-bottom:.5rem;padding:.25rem;display:flex}.tab-btn{color:hsl(var(--text-secondary));cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:0;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.85rem;font-weight:600;display:inline-flex}.tab-btn:hover{background:hsl(var(--bg-card-hover) / .5);color:hsl(var(--text-primary))}.tab-btn.active{color:hsl(var(--bg-primary));background:hsl(var(--brand-primary))}.btn-preset{background:hsl(var(--bg-card) / .5);border:1px solid hsl(var(--border-color));color:hsl(var(--text-secondary));font-family:var(--font-mono);cursor:pointer;transition:var(--transition-smooth);border-radius:0;padding:.35rem .75rem;font-size:.72rem;font-weight:500}.btn-preset:hover{background:hsl(var(--bg-card-hover));border-color:hsl(var(--brand-primary));color:hsl(var(--brand-primary))}.btn-preset.active{background:hsl(var(--brand-primary) / .15);border-color:hsl(var(--brand-primary));color:hsl(var(--brand-primary))}.btn-preset-danger{color:hsl(var(--danger) / .85)}.btn-preset-danger:hover{background:hsl(var(--danger) / .15)!important;border-color:hsl(var(--danger))!important;color:hsl(var(--danger))!important}.amount-presets,.date-presets{flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.45rem;display:flex}.btn{font-family:var(--font-body);cursor:pointer;transition:var(--transition-smooth);clip-path:polygon(.6em 0,100% 0,calc(100% - .6em) 100%,0 100%);border:none;border-radius:0;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;display:inline-flex}.btn-primary{background:hsl(var(--brand-primary));color:hsl(var(--bg-primary))}.btn-primary:hover{filter:brightness(1.06);transform:translate(-2px,-2px)}.btn-secondary{color:hsl(var(--text-primary));border:1px solid hsl(var(--border-color));background:0 0}.btn-secondary:hover{border-color:hsl(var(--brand-primary));color:hsl(var(--brand-primary))}.btn-danger{background:hsl(var(--danger) / .12);color:hsl(var(--danger));border:1px solid hsl(var(--danger) / .4)}.btn-danger:hover{background:hsl(var(--danger));color:hsl(var(--bg-primary))}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none!important;transform:none!important}.table-container{border:1px solid hsl(var(--border-color));background:hsl(var(--bg-card) / .4);border-radius:0;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:.95rem}th{background:hsl(var(--bg-card));font-family:var(--font-mono);color:hsl(var(--text-secondary));border-bottom:1px solid hsl(var(--border-color));text-transform:uppercase;letter-spacing:.08em;padding:.6rem 1rem;font-size:.7rem;font-weight:600}td{border-bottom:1px solid hsl(var(--border-color));color:hsl(var(--text-primary));vertical-align:middle;padding:.6rem 1rem}tr:last-child td{border-bottom:none}tr{transition:var(--transition-smooth)}tr:hover td{background:hsl(var(--bg-card) / .8)}.badge{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;border-radius:0;padding:.25rem .5rem;font-size:.7rem;font-weight:600;display:inline-flex}.badge-software{background:hsl(var(--brand-primary) / .15);color:hsl(var(--brand-primary));border:1px solid hsl(var(--brand-primary) / .35)}.badge-office{background:hsl(var(--warning) / .15);color:hsl(var(--warning));border:1px solid hsl(var(--warning) / .35)}.badge-marketing{background:hsl(var(--danger) / .15);color:hsl(var(--danger));border:1px solid hsl(var(--danger) / .35)}.badge-travel{background:hsl(var(--text-secondary) / .15);color:hsl(var(--text-secondary));border:1px solid hsl(var(--text-secondary) / .3)}.badge-food{background:hsl(var(--accent-deep) / .2);color:#66d65c;border:1px solid hsl(var(--accent-deep) / .5)}.badge-misc{background:hsl(var(--text-muted) / .15);color:hsl(var(--text-muted));border:1px solid hsl(var(--text-muted) / .3)}.login-wrapper{background-color:hsl(var(--bg-secondary));background-image:radial-gradient(hsl(var(--text-primary) / .06) 1px, transparent 1px);background-size:26px 26px;justify-content:center;align-items:center;width:100vw;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-card{z-index:10;background:hsl(var(--bg-card));width:100%;max-width:440px;box-shadow:8px 8px 0 0 hsl(var(--brand-primary));border:1px solid hsl(var(--border-color));border-radius:0;position:relative}.brand-header{text-align:center;flex-direction:column;align-items:center;margin-bottom:2rem;display:flex}.logo-icon{font-family:var(--font-headings);background:hsl(var(--brand-primary));width:52px;height:52px;color:hsl(var(--bg-primary));border-radius:0;justify-content:center;align-items:center;margin-bottom:1rem;font-size:1.8rem;font-weight:700;display:flex}.brand-name{font-family:var(--font-headings);letter-spacing:.015em;color:hsl(var(--text-primary));font-size:1.75rem;font-weight:600}.brand-name:before{content:"»";color:hsl(var(--brand-primary));margin-right:.3rem;font-weight:700}.brand-name span{color:hsl(var(--brand-primary))}.sidebar{background-color:hsl(var(--bg-secondary));border-right:1px solid hsl(var(--border-color));flex-direction:column;width:260px;height:100vh;padding:2rem 1.25rem;display:flex}.sidebar-logo{align-items:center;gap:.75rem;margin-bottom:2.5rem;padding:.5rem;display:flex}.sidebar-logo-box{align-items:center;height:22px;display:inline-flex;overflow:hidden}.sidebar-logo-img{width:auto;height:58px;display:block}.sidebar-logo-icon{font-family:var(--font-headings);background:hsl(var(--brand-primary));width:32px;height:32px;color:hsl(var(--bg-primary));border-radius:0;justify-content:center;align-items:center;font-size:1.1rem;font-weight:700;display:flex}.sidebar-logo-text{font-family:var(--font-headings);letter-spacing:.015em;color:hsl(var(--text-primary));font-size:1.25rem;font-weight:600}.sidebar-logo-text:before{content:"»";color:hsl(var(--brand-primary));margin-right:.25rem;font-weight:700}.sidebar-logo-text span{color:hsl(var(--brand-primary))}.spin{animation:1.5s linear infinite spin;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sidebar-nav{flex-direction:column;flex:1;gap:.35rem;display:flex}.nav-item{color:hsl(var(--text-secondary));cursor:pointer;transition:var(--transition-smooth);border:1px solid #0000;border-radius:0;align-items:center;gap:.85rem;padding:.75rem 1rem;font-weight:500;text-decoration:none;display:flex;position:relative}.nav-item:hover{background:hsl(var(--bg-card) / .5);color:hsl(var(--text-primary))}.nav-item.active{background:hsl(var(--bg-card));color:hsl(var(--text-primary));border-color:hsl(var(--border-color))}.nav-item.active:after{content:"";background:hsl(var(--brand-primary));width:1.4rem;height:2px;transform:skewX(var(--skew));position:absolute;bottom:.45rem;left:1rem}.sidebar-profile{border-top:1px solid hsl(var(--border-color));align-items:center;gap:.75rem;margin-top:auto;padding:1rem .5rem .25rem;display:flex}.profile-avatar{font-family:var(--font-headings);background:hsl(var(--brand-primary));width:36px;height:36px;color:hsl(var(--bg-primary));border-radius:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:flex}.profile-info{flex-direction:column;max-width:140px;display:flex}.profile-name{font-family:var(--font-headings);color:hsl(var(--text-primary));white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;overflow:hidden}.profile-role{font-family:var(--font-mono);color:hsl(var(--text-muted));font-size:.72rem}.logout-btn{color:hsl(var(--text-muted));cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;margin-left:auto;padding:.25rem}.logout-btn:hover{color:hsl(var(--danger))}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.25rem;display:grid}.kpi-card{flex-direction:column;gap:.4rem;display:flex}.dashboard-grid .kpi-card{padding:1.1rem 1.25rem}.kpi-label{font-family:var(--font-mono);color:hsl(var(--text-secondary));text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;font-weight:600}.kpi-value{font-family:var(--font-headings);color:hsl(var(--text-primary));font-size:1.6rem;font-weight:600}.kpi-trend{align-items:center;gap:.25rem;font-size:.8rem;display:flex}.trend-positive{color:hsl(var(--success))}.trend-neutral{color:hsl(var(--text-muted))}.dashboard-sections{grid-template-columns:2fr 1fr;gap:1.25rem;display:grid}@media (width<=1024px){.dashboard-sections{grid-template-columns:1fr}}.donut-container{flex-direction:column;gap:1rem;display:flex}.category-bar-row{flex-direction:column;gap:.35rem;display:flex}.category-bar-label{justify-content:space-between;font-size:.85rem;display:flex}.category-bar-outer{background:hsl(var(--bg-secondary));border-radius:0;height:8px;overflow:hidden}.category-bar-inner{border-radius:0;height:100%;transition:width 1s cubic-bezier(.16,1,.3,1)}.expense-header-actions{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.expense-workspace{grid-template-columns:1fr 3fr;gap:2rem;display:grid}@media (width<=1200px){.expense-workspace{grid-template-columns:1fr}}.expense-form-card{height:fit-content}.balances-summary-card{background:hsl(var(--bg-card) / .3);margin-top:1.5rem}.balances-list{flex-direction:column;gap:.75rem;margin-top:1rem;display:flex}.balance-item{background:hsl(var(--bg-secondary) / .5);border:1px solid hsl(var(--border-color));border-radius:0;justify-content:space-between;align-items:center;padding:.65rem .85rem;font-size:.9rem;display:flex}.balance-user{font-weight:500}.balance-amount{font-family:var(--font-headings);font-weight:600}.balance-positive{color:hsl(var(--success))}.balance-negative{color:hsl(var(--danger))}.balance-neutral{color:hsl(var(--text-muted))}.split-instructions{border-top:1px dashed hsl(var(--border-color));color:hsl(var(--text-secondary));flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:1rem;font-size:.85rem;display:flex}.split-instruction-item{align-items:center;gap:.5rem;display:flex}.split-instruction-arrow{color:hsl(var(--brand-primary))}.filter-bar{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.search-input-wrapper{flex:1;min-width:200px;position:relative}.filter-select{width:auto;min-width:140px}.expense-row-actions{gap:.5rem;display:flex}.action-icon-btn{cursor:pointer;color:hsl(var(--text-muted));transition:var(--transition-smooth);background:0 0;border:none;border-radius:0;padding:.35rem}.action-icon-btn:hover{background:hsl(var(--bg-secondary))}.action-icon-btn.edit-btn:hover{color:hsl(var(--brand-primary))}.action-icon-btn.delete-btn:hover{color:hsl(var(--danger))}.status-badge-btn{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:var(--transition-smooth);border:1px solid;border-radius:0;padding:.22rem .6rem;font-size:.68rem;font-weight:700}.status-badge-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.status-badge-btn:active{transform:translateY(0)}.invoice-tabs{border-bottom:1px solid hsl(var(--border-color));gap:.5rem;margin-bottom:1.25rem;display:flex}.invoice-tab{color:hsl(var(--text-secondary));font-family:var(--font-body);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.4rem;margin-bottom:-1px;padding:.6rem 1rem;font-size:.92rem;font-weight:600;display:inline-flex}.invoice-tab:hover{color:hsl(var(--text-primary))}.invoice-tab.active{color:hsl(var(--brand-primary));border-bottom-color:hsl(var(--brand-primary))}.invoice-tab-badge{background:hsl(var(--danger));color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;font-size:.65rem;font-weight:700;display:inline-flex}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));align-items:start;gap:1.25rem;display:grid}.settings-card{height:fit-content;padding:1.25rem}.settings-card h2{margin-bottom:1rem;font-size:1.25rem}.settings-2col{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=480px){.settings-2col{grid-template-columns:1fr}}.team-list-settings{flex-direction:column;gap:.5rem;max-height:170px;margin-top:1rem;display:flex;overflow-y:auto}.team-member-chip{background:hsl(var(--bg-secondary) / .5);border:1px solid hsl(var(--border-color));border-radius:0;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.9rem;display:flex}.team-member-name{font-weight:500}.add-member-form{gap:.5rem;margin-top:1rem;display:flex}.add-member-input{flex:1}.data-export-buttons{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.danger-zone-card{border-color:hsl(var(--danger) / .4)!important}.danger-zone-card:hover{border-color:hsl(var(--danger))!important;box-shadow:6px 6px 0 0 hsl(var(--danger))!important}.danger-zone-description{color:hsl(var(--text-secondary));margin-bottom:1.25rem;font-size:.85rem}.alert{border-left:3px solid #0000;border-radius:0;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;display:flex}.alert-danger{background:hsl(var(--danger) / .1);color:hsl(var(--danger));border:1px solid hsl(var(--danger) / .25);border-left:3px solid hsl(var(--danger))}.alert-success{background:hsl(var(--success) / .1);color:hsl(var(--success));border:1px solid hsl(var(--success) / .25);border-left:3px solid hsl(var(--success))}.modal-overlay{background-color:hsl(var(--bg-secondary) / .8);-webkit-backdrop-filter:blur(4px);z-index:1000;justify-content:center;align-items:center;padding:1.5rem;animation:.3s cubic-bezier(.16,1,.3,1) fadeIn;display:flex;position:fixed;inset:0}.modal-container{background:hsl(var(--bg-card));border:1px solid hsl(var(--brand-primary) / .4);box-shadow:10px 10px 0 0 hsl(var(--brand-primary) / .3);border-radius:0;width:100%;max-width:500px;max-height:90vh;padding:2rem;animation:.3s cubic-bezier(.16,1,.3,1) slideIn;position:relative;overflow-y:auto}.modal-header{border-bottom:1px solid hsl(var(--border-color));justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.75rem;display:flex}.modal-header h2{margin:0;font-size:1.35rem}.modal-close-btn{color:hsl(var(--text-secondary));cursor:pointer;transition:var(--transition-smooth);background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;padding:.25rem;display:inline-flex}.modal-close-btn:hover{background:hsl(var(--bg-card-hover));color:hsl(var(--danger))}.invoice-workspace{grid-template-columns:minmax(360px,460px) 1fr;align-items:start;gap:2rem;display:grid}@media (width<=1100px){.invoice-workspace{grid-template-columns:1fr}}.invoice-form-card{height:fit-content;max-height:calc(100vh - 220px);overflow-y:auto}.invoice-form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}@media (width<=480px){.invoice-form-row{grid-template-columns:1fr}}.invoice-preview-scroll{background:hsl(var(--bg-secondary) / .5);border:1px solid hsl(var(--border-color));justify-content:center;max-height:calc(100vh - 220px);padding:1.5rem;display:flex;overflow:auto}.invoice-sheet{color:#1f2430;box-sizing:border-box;width:210mm;max-width:100%;min-height:297mm;font-family:var(--font-body);-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff;flex-direction:column;padding:0;font-size:11pt;line-height:1.45;display:flex;position:relative;box-shadow:0 0 0 1px #0000000f,8px 8px 24px #00000059}.invoice-sheet table{border-collapse:collapse;width:auto;font-size:inherit}.invoice-sheet th,.invoice-sheet td{color:inherit;vertical-align:top;background:0 0;border:none;font-family:inherit}.invoice-sheet tr:hover td{background:0 0}.invoice-sheet .inv-arrow-watermark{opacity:.05;pointer-events:none;z-index:0;width:210px;height:auto;position:absolute;top:4mm;right:6mm;transform:rotate(-6deg)}.invoice-sheet .inv-top{z-index:1;justify-content:space-between;align-items:flex-start;gap:16px;padding:14mm 16mm 6mm;display:flex;position:relative}.invoice-sheet .inv-logo-box{align-items:center;height:9mm;margin-left:-3mm;display:inline-flex;overflow:hidden}.invoice-sheet .inv-logo{width:auto;height:23mm;display:block}.invoice-sheet .inv-top-right{text-align:right}.invoice-sheet .inv-doctype{font-family:var(--font-headings);letter-spacing:.06em;color:#1f2430;font-size:24pt;font-weight:700;line-height:1;display:inline-block;position:relative}.invoice-sheet .inv-doctype:after{content:"";background:#259117;height:6px;position:absolute;bottom:-7px;left:0;right:-6px;transform:skew(-22deg)}.invoice-sheet .inv-docno{color:#6b7280;margin-top:12px;font-size:9.5pt}.invoice-sheet .inv-slash{z-index:1;clip-path:polygon(0 0,100% 0,100% 100%,0 42%);background:#259117;height:16px;margin-bottom:2mm;position:relative}.invoice-sheet .inv-body{z-index:1;flex-direction:column;flex:1;padding:11mm 16mm 8mm;display:flex;position:relative}.invoice-sheet .inv-sender-inline{color:#6b7280;border-bottom:1px solid #e6e8ec;margin-bottom:32px;padding-bottom:9px;font-size:8pt}.invoice-sheet .inv-meta-row{justify-content:space-between;align-items:flex-start;gap:42px;margin-bottom:54px;display:flex}.invoice-sheet .inv-billto{border-left:3px solid #259117;flex:auto;min-width:0;padding:2px 0 4px 14px}.invoice-sheet .inv-billto .inv-recipient-name{margin-top:5px;font-size:13.5pt}.invoice-sheet .inv-billto .inv-recipient-addr{margin-top:1px;font-size:10.5pt;line-height:1.55}.invoice-sheet .inv-meta-table{flex:none;align-self:flex-start}.invoice-sheet .inv-label{text-transform:uppercase;letter-spacing:.06em;color:#8a92a3;font-size:8pt;font-weight:600}.invoice-sheet .inv-recipient-name{color:#1f2430;margin-top:3px;font-size:11.5pt;font-weight:700}.invoice-sheet .inv-recipient-addr{color:#3c4252;font-size:10pt}.invoice-sheet .inv-meta-table{table-layout:auto;width:auto}.invoice-sheet .inv-meta-table td{text-align:right;vertical-align:top;color:#1f2430;white-space:nowrap;padding:2px 0 2px 16px;font-size:9.5pt}.invoice-sheet .inv-meta-table td.inv-label{text-align:left;padding-left:0;padding-right:14px}.invoice-sheet .inv-status-pill{text-transform:uppercase;letter-spacing:.05em;border-radius:2px;padding:2px 9px;font-size:8pt;font-weight:700;display:inline-block}.invoice-sheet .inv-status-pill.paid{color:#167a0e;background:#e3f6e0;border:1px solid #9bd692}.invoice-sheet .inv-status-pill.open{color:#9a6a00;background:#fdf3df;border:1px solid #e7c878}.invoice-sheet .inv-status-pill.cancelled{color:#8a6060;background:#f3f4f6;border:1px solid #d8c2c2;text-decoration:line-through}.invoice-sheet table.inv-items{border-collapse:collapse;width:100%;margin-bottom:18px}.invoice-sheet table.inv-items th{color:#fff;text-align:left;text-transform:uppercase;letter-spacing:.04em;background:#259117;padding:8px 9px;font-size:8.5pt}.invoice-sheet table.inv-items td{vertical-align:top;color:#1f2430;border-bottom:1px solid #e6e8ec;padding:8px 9px;font-size:10pt}.invoice-sheet table.inv-items tbody tr:nth-child(2n) td{background:#f6faf4}.invoice-sheet .inv-totals-wrap{justify-content:flex-end;display:flex}.invoice-sheet .inv-totals{min-width:270px}.invoice-sheet .inv-totline{color:#1f2430;justify-content:space-between;gap:24px;padding:4px 12px;font-size:10pt;display:flex}.invoice-sheet .inv-totline span:last-child{font-weight:600}.invoice-sheet .inv-grand{z-index:0;color:#fff;justify-content:space-between;gap:24px;margin-top:7px;padding:9px 14px;font-size:13pt;font-weight:700;display:flex;position:relative}.invoice-sheet .inv-grand:before{content:"";z-index:-1;background:#259117;position:absolute;inset:0;transform:skew(-9deg)}.invoice-sheet .inv-pay{color:#3c4252;margin-top:auto;padding-top:26px;font-size:9.5pt}.invoice-sheet .inv-pay p{margin:0 0 6px}.invoice-sheet .inv-foot{z-index:1;background:#f6f8f5;margin-top:auto;padding:8mm 16mm 10mm;position:relative}.invoice-sheet .inv-foot:before{content:"";clip-path:polygon(0 0,100% 55%,100% 100%,0 100%);background:#259117;height:12px;position:absolute;top:-11px;left:0;right:0}.invoice-sheet .inv-foot-cols{color:#5a6172;grid-template-columns:repeat(3,1fr);gap:18px;font-size:8.5pt;line-height:1.5;display:grid}.invoice-sheet .inv-foot-col>div{word-break:break-word}.invoice-sheet .inv-foot-head{text-transform:uppercase;letter-spacing:.06em;color:#259117;margin-bottom:4px;font-size:7.5pt;font-weight:700}.invoice-sheet .inv-foot-legal{color:#8a92a3;border-top:1px solid #e1e6dd;margin-top:10px;padding-top:8px;font-size:7.5pt;line-height:1.45}.datepicker{width:100%;position:relative}.datepicker-trigger{background:hsl(var(--bg-secondary));border:1px solid hsl(var(--border-color));width:100%;color:hsl(var(--text-primary));font-family:var(--font-body);cursor:pointer;transition:var(--transition-smooth);text-align:left;border-radius:0;align-items:center;gap:.6rem;padding:.75rem 1rem;font-size:.95rem;display:flex}.datepicker-trigger:hover{border-color:hsl(var(--brand-primary) / .5)}.datepicker-trigger.active{border-color:hsl(var(--brand-primary));box-shadow:3px 3px 0 0 hsl(var(--brand-primary))}.datepicker-trigger.is-placeholder .datepicker-text{color:hsl(var(--text-muted))}.datepicker-icon{color:hsl(var(--brand-primary));font-size:1.2rem}.datepicker-text{flex:1}.datepicker-chevron{color:hsl(var(--text-muted));margin-left:auto;font-size:1.2rem}.datepicker-popover{z-index:1000;background:hsl(var(--bg-card));border:1px solid hsl(var(--brand-primary) / .4);width:300px;max-width:90vw;box-shadow:6px 6px 0 0 hsl(var(--brand-primary) / .25);padding:.85rem;position:absolute;top:calc(100% + .4rem);left:0}.datepicker-popover-fixed{z-index:4000;position:fixed;top:auto;left:auto}.datepicker-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.datepicker-monthlabel{font-family:var(--font-headings);color:hsl(var(--text-primary));font-size:1rem;font-weight:600}.datepicker-nav{background:hsl(var(--bg-secondary));border:1px solid hsl(var(--border-color));width:2rem;height:2rem;color:hsl(var(--brand-primary));cursor:pointer;transition:var(--transition-smooth);justify-content:center;align-items:center;display:inline-flex}.datepicker-nav:hover{border-color:hsl(var(--brand-primary));box-shadow:2px 2px 0 0 hsl(var(--brand-primary))}.datepicker-weekdays,.datepicker-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.datepicker-weekday{text-align:center;font-family:var(--font-mono);text-transform:uppercase;color:hsl(var(--text-muted));padding:.25rem 0;font-size:.65rem}.datepicker-day{aspect-ratio:1;color:hsl(var(--text-secondary));font-family:var(--font-body);cursor:pointer;transition:var(--transition-smooth);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-size:.85rem;display:flex}.datepicker-day.empty{cursor:default}.datepicker-day:not(.empty):hover{background:hsl(var(--bg-card-hover));color:hsl(var(--text-primary));border-color:hsl(var(--brand-primary) / .4)}.datepicker-day.today{border-color:hsl(var(--brand-primary) / .6);color:hsl(var(--brand-primary));font-weight:600}.datepicker-day.selected{background:hsl(var(--brand-primary));color:hsl(var(--bg-primary));border-color:hsl(var(--brand-primary));font-weight:700}.datepicker-actions{border-top:1px solid hsl(var(--border-color));justify-content:space-between;gap:.5rem;margin-top:.75rem;padding-top:.65rem;display:flex}.datepicker-quick{background:hsl(var(--bg-secondary));border:1px solid hsl(var(--border-color));color:hsl(var(--brand-primary));font-family:var(--font-mono);cursor:pointer;transition:var(--transition-smooth);flex:1;padding:.4rem .6rem;font-size:.75rem}.datepicker-quick:hover{border-color:hsl(var(--brand-primary));box-shadow:2px 2px 0 0 hsl(var(--brand-primary))}.datepicker-quick.clear{color:hsl(var(--danger))}.datepicker-quick.clear:hover{border-color:hsl(var(--danger));box-shadow:2px 2px 0 0 hsl(var(--danger))}.print-only{display:none}@media print{html,body{background:#fff!important;margin:0!important;padding:0!important}.no-print,.sidebar,.alert{display:none!important}.print-only,.app-container,.invoice-workspace,.invoice-preview-scroll{display:block!important}.main-content{height:auto!important;box-shadow:none!important;margin:0!important;padding:0!important;overflow:visible!important}.invoice-preview-scroll{background:0 0!important;border:none!important;max-height:none!important;padding:0!important;overflow:visible!important}#invoice-print-area.invoice-sheet{-webkit-print-color-adjust:exact;print-color-adjust:exact;width:210mm!important;max-width:none!important;min-height:297mm!important;box-shadow:none!important;margin:0!important;padding:0!important}@page{size:A4;margin:0!important}}
