@font-face{font-family:PivusDisplay;src:url(/fonts/sf-pro-display-semibold.otf)}@font-face{font-family:PivusText;src:url(/fonts/sf-pro-text-regular.otf)}:root{--color-background:#f4f5f6;--color-surface:#fff;--color-surface-raised:#fff;--color-ink:#062f28;--color-muted:#7b7b7b;--color-border:#062f2812;--color-accent:#9fe870;--color-accent-contrast:#062f28;--color-success:#3fa726;--color-warning:#d97706;--color-danger:#e11d48;--font-heading:"Urbanist",sans-serif;--font-body:"Urbanist",sans-serif;--radius-sm:8px;--radius-md:16px;--radius-lg:20px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-8:48px;--shadow-panel:0 10px 30px -10px #062f280a,0 2px 6px -1px #062f2805}*{box-sizing:border-box;letter-spacing:normal!important}body{background:var(--color-background);color:var(--color-ink);font:15px/1.45 var(--font-body);margin:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.eyebrow{color:var(--color-muted);text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:700}.shell{grid-template-columns:238px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--color-background);border-right:1px solid var(--color-border);height:100vh;max-height:100vh;color:var(--color-ink);box-sizing:border-box;flex-direction:column;gap:18px;padding:20px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.brand{font:700 20px/1 var(--font-heading);color:var(--color-ink);align-items:center;gap:10px;padding:4px 6px;display:flex}.brand-badge{background:var(--color-accent);width:28px;height:28px;color:var(--color-ink);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:800;display:grid}.side-user{background:var(--color-surface);border:1px solid var(--color-border);border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex;box-shadow:0 2px 8px -2px #062f2808}.side-user>span{background:var(--color-accent);width:34px;height:34px;color:var(--color-ink);border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;font-weight:800;display:grid}.side-user b{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;max-width:105px;font-size:13px;font-weight:700;display:block;overflow:hidden}.side-user small{color:var(--color-muted);font-size:11px;display:block}.side-user button{color:var(--color-muted);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0;font-size:12px}.side-user button:hover{color:var(--color-danger)}.sidebar-section-title{text-transform:uppercase;color:var(--color-muted);margin:16px 0 6px 8px;font-size:10px;font-weight:700}.sidebar nav{gap:4px;display:grid}.nav-link{color:var(--color-muted);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.nav-link:hover{color:var(--color-ink);background:#ffffffb3}.nav-link.active{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-border);font-weight:700;box-shadow:0 4px 12px -2px #062f280a}.nav-link .nav-icon-wrapper{border-radius:6px;place-items:center;width:24px;height:24px;transition:background .15s,color .15s;display:grid}.nav-link.active .nav-icon-wrapper{background:var(--color-ink);color:#fff}.sidebar-promo-card{background:var(--color-surface);border:1px solid var(--color-border);text-align:center;border-radius:16px;margin-top:auto;padding:16px;box-shadow:0 4px 12px -2px #062f2808}.sidebar-promo-card h4{color:var(--color-ink);margin:8px 0 4px;font-size:13px;font-weight:700}.sidebar-promo-card p{color:var(--color-muted);margin:0 0 12px;font-size:11px;line-height:1.35}.sidebar-promo-card button{background:var(--color-ink);color:#fff;cursor:pointer;border:0;border-radius:10px;width:100%;padding:8px 12px;font-size:12px;font-weight:700;transition:opacity .15s}.sidebar-promo-card button:hover{opacity:.9}.workspace{min-width:0}.mobile-head{display:none}.page{width:100%;max-width:100%;margin:0;padding:36px 40px}.page-head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:34px;display:flex}.page-head h1,.panel h2,.auth-card h2{font:400 clamp(28px,3vw,42px)/1 var(--font-heading);margin:0}.button{border-radius:var(--radius-sm);border:0;justify-content:center;align-items:center;gap:8px;padding:11px 15px;font-weight:700;display:inline-flex}.button-primary{background:var(--color-accent);color:var(--color-accent-contrast)}.button-primary:hover{filter:brightness(.92)}.metric-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.metric,.panel,.product-card{background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-panel)}.metric{border-radius:var(--radius-md);padding:22px;position:relative;overflow:hidden}.metric:after{content:"";background:var(--color-accent);width:4px;height:100%;position:absolute;top:0;left:0}.metric.danger:after{background:var(--color-danger)}.metric-icon{color:var(--color-accent);margin-bottom:25px;display:block}.metric.danger .metric-icon{color:var(--color-danger)}.metric p,.metric small{color:var(--color-muted);margin:0}.metric strong{font:400 30px/1 var(--font-heading);margin:5px 0 9px;display:block}.dashboard-grid,.detail-grid{grid-template-columns:1.15fr .85fr;gap:16px;margin-top:16px;display:grid}.panel{border-radius:var(--radius-md);padding:24px}.panel-head{justify-content:space-between;align-items:start;gap:20px;display:flex}.panel h2{font-size:24px}.quiet-link{color:var(--color-accent);align-items:center;gap:4px;font-size:13px;display:flex}.revenue{flex-direction:column;min-height:310px;display:flex}.chart{border-bottom:1px solid var(--color-border);flex:1;align-items:end;gap:14px;padding:35px 7px 12px;display:flex}.chart span{background:var(--color-accent);opacity:.84;border-radius:4px 4px 0 0;flex:1}.chart span:nth-child(3n){opacity:.35}.chart-labels{color:var(--color-muted);justify-content:space-between;padding:10px 0 0;font-size:12px;display:flex}.due-list{margin-top:20px}.due-row{border-top:1px solid var(--color-border);align-items:center;gap:11px;padding:13px 0;display:flex}.due-row:first-child{border-top:0}.due-row>div{flex:1;min-width:0}.due-row b{font-size:14px;display:block}.due-row small{color:var(--color-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;display:block;overflow:hidden}.due-row strong{font-size:13px}.status-dot{background:var(--color-muted);border-radius:50%;flex:none;width:8px;height:8px}.status-dot.pending{background:var(--color-warning)}.status-dot.overdue{background:var(--color-danger)}.status-dot.paid{background:var(--color-success)}.table-panel{padding:0;overflow:hidden}.table-tools{border-bottom:1px solid var(--color-border);color:var(--color-muted);justify-content:space-between;align-items:center;padding:18px 20px;font-size:13px;display:flex}.search{border-bottom:1px solid var(--color-border);align-items:center;gap:8px;width:min(380px,100%);padding:6px 0;display:flex}.search input{background:0 0;border:0;outline:0;width:100%}.table-row{border-bottom:1px solid var(--color-border);grid-template-columns:1.8fr 1fr .6fr 24px;align-items:center;gap:16px;padding:15px 20px;font-size:14px;display:grid}.table-row:not(.table-label):hover{background:#fafbf8}.table-label{color:var(--color-muted);text-transform:uppercase;font-size:11px;font-weight:700}.client-name{align-items:center;gap:10px;display:flex}.client-name i{width:30px;height:30px;color:var(--color-accent);background:#dfe8dc;border-radius:50%;place-items:center;font-style:normal;font-weight:700;display:grid}.badge{border:0;border-radius:999px;width:max-content;padding:4px 8px;font-size:11px;font-weight:700}.badge.active,.badge.paid{color:var(--color-success);background:#e9f4e9}.badge.inactive,.badge.cancelled{color:var(--color-muted);background:#edf0ed}.badge.pending{color:var(--color-warning);background:#fcf1d9}.badge.overdue{color:var(--color-danger);background:#fbe6e3}.inline-form{grid-template-columns:1fr 1fr 1fr auto;align-items:end;gap:14px;margin-bottom:16px;display:grid}.inline-form label,.auth-card label{gap:6px;font-size:13px;font-weight:700;display:grid}.inline-form input,.auth-card input{border:1px solid var(--color-border);border-radius:var(--radius-sm);outline-color:var(--color-accent);background:var(--color-surface);padding:10px}.finance button{font-family:var(--font-body)}.product-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.product-card{border-radius:var(--radius-md);flex-direction:column;align-items:flex-start;min-height:180px;padding:22px;display:flex}.product-card h2{font:400 25px/1 var(--font-heading);margin:25px 0 4px}.product-card p{color:var(--color-muted);margin:0}.product-card strong{margin-top:auto;font-size:17px}.detail-card dl{gap:15px;margin:25px 0 0;display:grid}.detail-card dt{color:var(--color-muted);text-transform:uppercase;font-size:11px}.detail-card dd{margin:3px 0 0}.auth-page{background:var(--color-ink);color:#f4f5ef;grid-template-columns:1.2fr .8fr;align-items:center;min-height:100vh;padding:8vw;display:grid}.auth-intro h1{font:400 clamp(60px,9vw,130px)/.82 var(--font-heading);margin:18px 0 26px}.auth-intro>p:last-child{color:#b6c1b7;max-width:330px}.auth-intro .eyebrow{color:#9cc78a}.auth-card{background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-lg);justify-self:end;gap:20px;width:100%;max-width:420px;padding:38px;display:grid}.form-error{color:var(--color-danger);margin:0;font-size:13px}.page-loader,.empty-state{text-align:center;place-content:center;gap:12px;min-height:100vh;display:grid}.page-loader svg{margin:auto;animation:1s linear infinite spin}.empty-state p,.muted{color:var(--color-muted)}@keyframes spin{to{transform:rotate(360deg)}}.mobile-floating-nav,.mobile-card-list{display:none!important}@media (width<=850px){.shell{display:block}.sidebar{display:none}.mobile-head{background:var(--color-background);border-bottom:1px solid var(--color-border);color:var(--color-ink);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.mobile-head .brand{padding:0}.mobile-user-wrap{align-items:center;gap:8px;display:flex}.mobile-user-avatar{background:var(--color-accent);width:32px;height:32px;color:var(--color-ink);border-radius:50%;place-items:center;font-size:12px;font-weight:800;display:grid}.mobile-user-name{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;max-width:105px;font-size:13px;font-weight:700;overflow:hidden}.mobile-logout-btn{color:var(--color-muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:4px;display:grid}.mobile-logout-btn:hover{color:var(--color-danger)}.mobile-floating-nav{z-index:9999;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;justify-content:space-around;align-items:center;width:calc(100% - 24px);max-width:440px;padding:6px;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 10px 30px -10px #062f2833,0 4px 12px -1px #062f2814;display:flex!important}.mobile-nav-item{color:var(--color-muted);text-align:center;border-radius:14px;flex-direction:column;flex:1;align-items:center;gap:3px;padding:8px 6px;font-size:10px;font-weight:600;transition:all .15s;display:flex}.mobile-nav-item:hover{color:var(--color-ink)}.mobile-nav-item.active{background:var(--color-ink);color:#fff;font-weight:700}.mobile-nav-item.active .mobile-nav-icon{color:var(--color-accent)}.page{padding:20px 16px 95px!important}.metric-grid,.dashboard-grid,.detail-grid,.product-grid{grid-template-columns:1fr}.page-head{flex-direction:column;align-items:start}.table-row{grid-template-columns:1.4fr .8fr .5fr 18px}.table-row span:nth-child(2){display:none}.finance{grid-template-columns:1fr .8fr .75fr}.finance span:nth-child(2),.finance span:nth-child(3){display:none}.inline-form{grid-template-columns:1fr}.auth-page{grid-template-columns:1fr;gap:50px;padding:32px 24px}.auth-card{justify-self:stretch;max-width:none}.auth-intro h1{font-size:68px}.desktop-table-only{display:none!important}.table-panel{padding:14px!important}.table-tools{border-bottom:1px solid var(--color-border);padding:0 0 12px!important}.mobile-card-list{flex-direction:column;border-top:0!important;gap:12px!important;padding:12px 0 0!important;display:flex!important}}.mobile-card-list{display:none}.mobile-client-card{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-ink);border-radius:14px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:background .15s;display:flex;box-shadow:0 2px 6px -2px #062f2808}.mobile-client-card:active{background:#f4f6f3}.client-avatar-sm{width:28px;height:28px;color:var(--color-accent);background:#dfe8dc;border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;font-style:normal;font-weight:700;display:grid}.client-titles{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.client-titles b{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;overflow:hidden}.client-resp{color:var(--color-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.card-tags{flex-wrap:wrap;gap:4px;margin-top:3px;display:flex}.contract-tag{color:var(--color-ink);background:#062f280d;border-radius:6px;padding:2px 6px;font-size:10px;font-weight:700}.card-arrow{color:var(--color-muted);flex-shrink:0}.shell[data-hide-values=true] .metric strong,.shell[data-hide-values=true] .metric small,.shell[data-hide-values=true] .overdue-alert span,.shell[data-hide-values=true] .revenue-donut span,.shell[data-hide-values=true] .revenue-list strong,.shell[data-hide-values=true] .due-row strong,.shell[data-hide-values=true] .data-table .table-row b,.shell[data-hide-values=true] .data-table .table-row span:nth-child(4),.shell[data-hide-values=true] .detail-summary b,.shell[data-hide-values=true] .financial-lines svg path,.shell[data-hide-values=true] .product-card strong,.shell[data-hide-values=true] .payment-total,.shell[data-hide-values=true] .payment-breakdown b,.shell[data-hide-values=true] .chart-tooltip span strong{pointer-events:none;transition:filter .25s;filter:blur(6px)!important;-webkit-user-select:none!important;user-select:none!important}.privacy-toggle-btn,.mobile-privacy-btn{color:var(--color-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:0;place-items:center;padding:4px;transition:all .15s;display:grid}.privacy-toggle-btn:hover,.mobile-privacy-btn:hover{background:var(--color-surface);color:var(--color-ink)}.row-actions summary{color:var(--color-accent);cursor:pointer;font-size:13px;font-weight:700;list-style:none}.row-actions summary::-webkit-details-marker{display:none}.row-actions button{z-index:2;white-space:nowrap;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:var(--shadow-panel);color:var(--color-ink);padding:9px 11px;font-size:13px;position:absolute;top:26px;right:0}.finance{grid-template-columns:1.1fr 1.35fr .75fr .65fr .7fr .65fr}@media (width<=850px){.finance{grid-template-columns:1fr .75fr .7fr}.finance span:nth-child(5),.finance details{justify-self:end}}.sidebar-toggle{color:var(--color-muted);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:0;padding:6px}.sidebar-toggle:hover{background:var(--color-surface);color:var(--color-ink)}.shell[data-sidebar=compact] .sidebar{align-items:center;padding-inline:8px}.shell[data-sidebar=compact] .brand-full,.shell[data-sidebar=compact] .nav-text,.shell[data-sidebar=compact] .side-user>div{display:none!important}.shell[data-sidebar=compact] .brand{justify-content:center;padding-inline:0}.shell[data-sidebar=compact] .sidebar nav{gap:8px;margin-top:20px}.shell[data-sidebar=compact] .nav-link{justify-content:center;width:100%;padding:10px 0}.shell[data-sidebar=compact] .nav-icon-wrapper{display:grid!important}.shell[data-sidebar=compact] .side-user{width:100%;box-shadow:none;background:0 0;border:0;justify-content:center;padding:8px 0}.period-picker{gap:4px;margin:-16px 0 20px;display:flex}.period-picker button{border:1px solid var(--color-border);background:var(--color-surface);padding:7px 12px;font-size:13px}.period-picker button:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.period-picker button:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.period-picker button.selected{background:var(--color-ink);color:var(--color-surface)}.overdue-alert{color:var(--color-danger);border-radius:var(--radius-sm);background:#fbe6e3;align-items:center;gap:10px;margin-top:16px;padding:12px 14px;font-size:13px;font-weight:700;display:flex}.overdue-alert svg:last-child{margin-left:auto}.modal-backdrop{z-index:20;background:#17221d6b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.payment-modal{background:var(--color-surface);border-radius:var(--radius-lg);gap:16px;width:min(480px,100%);padding:28px;display:grid;box-shadow:0 20px 60px #0000003d}.payment-modal label{gap:6px;font-size:13px;font-weight:700;display:grid}.payment-modal input,.payment-modal select,.payment-modal textarea{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);outline-color:var(--color-accent);padding:10px}.payment-modal textarea{resize:vertical;min-height:76px}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.modal-actions .button:first-child{border:1px solid var(--color-border);background:0 0}.badge.paid_on_time{color:var(--color-success);background:#e9f4e9}.badge.paid_late{color:var(--color-warning);background:#fcf1d9}.badge.delinquent{color:var(--color-danger);background:#fbe6e3}.status-dot.paid_on_time{background:var(--color-success)}.status-dot.paid_late{background:var(--color-warning)}.status-dot.delinquent{background:var(--color-danger)}.catalog-layout{grid-template-columns:290px 1fr;gap:16px;display:grid}.category-panel h2{font-size:23px}.category-list{margin:20px 0}.category-list>div{border-top:1px solid var(--color-border);padding:10px 0}.category-list b,.category-list small{display:block}.category-list small{color:var(--color-muted);font-size:12px}.category-form{gap:8px;display:grid}.category-form input,.category-form select,.product-modal input,.product-modal select,.product-modal textarea{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-sm);outline-color:var(--color-accent);padding:9px}.category-form .button{color:var(--color-ink);background:#edf0ed;font-size:12px}.card-actions{gap:8px;margin-top:14px;display:flex}.card-actions button{color:var(--color-accent);background:0 0;border:0;padding:0;font-size:12px}.product-modal{background:var(--color-surface);border-radius:var(--radius-lg);gap:16px;width:min(780px,100%);max-height:90vh;padding:28px;display:grid;overflow:auto;box-shadow:0 20px 60px #0000003d}.form-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.form-grid label,.wide-field{gap:6px;font-size:12px;font-weight:700;display:grid}.wide-field textarea{resize:vertical;min-height:65px}.check-field{align-items:center;gap:8px;font-size:13px;display:flex}@media (width<=850px){.catalog-layout,.form-grid{grid-template-columns:1fr}}.slug-preview{color:var(--color-muted);padding:0 2px;font-size:11px}.head-actions{gap:8px;display:flex}.head-actions .button:first-child{border:1px solid var(--color-border);background:0 0}.category-modal{background:var(--color-surface);border-radius:var(--radius-lg);gap:18px;width:min(480px,100%);padding:28px;display:grid;box-shadow:0 20px 60px #0000003d}.category-modal .category-form label{gap:6px;font-size:13px;font-weight:700;display:grid}.manage-list{max-height:190px;margin:0;overflow:auto}.manage-list>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.manage-list .card-actions{flex:none;margin:0}.contract-row small{color:var(--color-muted);font-size:12px;display:block}.contract-actions{justify-items:start;gap:4px;display:grid}.contract-actions button{color:var(--color-accent);background:0 0;border:0;padding:0;font-size:12px}.client-modal{grid-template-columns:repeat(2,minmax(0,1fr));width:min(760px,100%)}.client-modal>div:first-child,.client-modal>.modal-actions,.client-modal>label:last-of-type{grid-column:1/-1}@media (width<=850px){.client-modal{grid-template-columns:1fr}}.contract-row{grid-template-columns:1.05fr 1.45fr 1fr .9fr 1fr .65fr .5fr}.contract-edit{color:var(--color-accent);background:0 0;border:0;justify-self:start;padding:0;font-size:12px}.table-filters{gap:8px;display:flex}.table-filters select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:7px}.installment-preview{border-top:1px solid var(--color-border);padding-top:14px}.installment-preview>div{border-top:1px solid var(--color-border);justify-content:space-between;padding:7px 0;font-size:13px;display:flex}.installment-preview>div:first-of-type{border-top:0}.row-actions[open]>button{z-index:4;text-align:left;width:150px;position:absolute;right:0}.row-actions[open]>button:first-of-type{top:26px}.row-actions[open]>button:nth-of-type(2){top:61px}.row-actions[open]>button:nth-of-type(3){top:96px}.row-actions .action-menu{z-index:5;background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);width:164px;box-shadow:var(--shadow-panel);padding:5px;position:absolute;top:26px;right:0}.row-actions .action-menu button{width:100%;color:var(--color-ink);text-align:left;background:0 0;border:0;border-radius:6px;padding:8px 9px;font-size:13px;display:block;position:static!important}.row-actions .action-menu button:hover{background:var(--color-surface)}.group-metrics{gap:10px;margin-top:auto;display:flex}.group-metrics span{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-muted);padding:8px;font-size:12px}.group-metrics b{color:var(--color-ink);margin-left:5px}button.cycle-row{width:100%;color:inherit;text-align:left;background:0 0;border:0;border-radius:0;font-family:inherit}button.cycle-row:hover{background:0 0}.shell{transition:grid-template-columns .2s}.side-top{justify-content:space-between;align-items:center;display:flex}.sidebar-toggle{color:#aab6ad;border-radius:var(--radius-sm);background:0 0;border:0;padding:8px}.sidebar-toggle:hover{color:#fff;background:#28352e}.shell[data-sidebar=compact]{grid-template-columns:76px 1fr}.shell[data-sidebar=compact] .sidebar{padding-inline:12px}.shell[data-sidebar=compact] .brand-full,.shell[data-sidebar=compact] .nav-link>span,.shell[data-sidebar=compact] .side-user>div{display:none}.shell[data-sidebar=compact] .brand{padding-inline:8px}.shell[data-sidebar=compact] .sidebar nav{margin-top:54px}.shell[data-sidebar=compact] .nav-link{justify-content:center;padding-inline:8px}.shell[data-sidebar=compact] .side-user{justify-content:center;padding-inline:0}.shell[data-sidebar=compact] .side-user>span{width:32px;height:32px}.client-logo-control{align-items:center;gap:12px;margin-bottom:22px;display:flex}.client-logo-control>img,.client-logo-control>span{object-fit:cover;width:54px;height:54px;color:var(--color-accent);background:#dfe8dc;border-radius:50%;place-items:center;font-size:19px;font-weight:700;display:grid}.client-logo-control>div{gap:8px;display:flex}.client-logo-control button,.note-list button{color:var(--color-accent);background:0 0;border:0;padding:0;font-size:12px}.note-form{gap:10px;margin-top:18px;display:grid}.note-form textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);resize:vertical;min-height:74px;font:inherit;padding:10px}.note-actions{justify-content:flex-end;gap:8px;display:flex}.note-actions .button:first-child{border:1px solid var(--color-border)}.note-list{margin-top:18px}.note-list article{border-top:1px solid var(--color-border);padding:13px 0}.note-list p{white-space:pre-wrap;margin:0 0 8px}.note-list footer{color:var(--color-muted);justify-content:space-between;gap:12px;font-size:12px;display:flex}.note-list footer span{gap:10px;display:flex}.payment-suggestion{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fafbf8;gap:4px;padding:10px 12px;font-size:13px;display:grid}.payment-suggestion small{color:var(--color-muted)}.payment-suggestion button{color:var(--color-accent);background:0 0;border:0;justify-self:start;padding:0;font-size:12px;font-weight:700}@media (width<=850px){html,body,#root{max-width:100%;overflow-x:hidden}.mobile-head{z-index:12;justify-content:space-between;align-items:center;padding:14px 16px;display:flex;position:sticky;top:0}.mobile-head .brand{color:#fff;padding:0;font-size:20px}.mobile-head button{color:#aab6ad;background:0 0;border:0;padding:6px}.mobile-nav{z-index:11;background:var(--color-ink);scrollbar-width:none;border-top:1px solid #334139;gap:4px;padding:8px 12px;display:flex;position:sticky;top:54px;overflow-x:auto}.mobile-nav::-webkit-scrollbar{display:none}.mobile-nav a{color:#b8c5bb;white-space:nowrap;border-radius:7px;flex:none;align-items:center;gap:7px;padding:8px 10px;font-size:12px;display:flex}.mobile-nav a.active{color:#fff;background:#28352e}.page{padding:20px 16px 34px}.page-head{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;margin-bottom:20px!important;display:flex!important}.page-head h1{font-size:26px!important;line-height:1.1!important}.page-head .eyebrow{margin-bottom:4px!important;font-size:10px!important}.page-head>.button,.page-head .button-primary,.head-actions .button{white-space:nowrap!important;border-radius:var(--radius-sm)!important;flex:none!important;width:auto!important;min-height:36px!important;padding:8px 12px!important;font-size:12px!important}.head-actions{flex-wrap:nowrap!important;align-items:center!important;gap:8px!important;width:auto!important;display:flex!important}.panel,.metric{padding:18px}.table-panel{overflow-x:auto}.data-table{min-width:600px}.finance.data-table{min-width:760px}.contract-row{min-width:900px}.table-row{gap:12px;padding:13px 16px}.table-row span:nth-child(2),.finance span:nth-child(2),.finance span:nth-child(3){display:initial}.table-label{display:grid}.table-tools{flex-direction:column;align-items:stretch;gap:12px}.search{width:100%}.table-filters{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.table-filters select{padding:6px 10px;flex:none!important;width:auto!important}.table-filters span{align-items:center;font-size:12px;display:flex}.period-picker{margin-top:-6px;padding-bottom:3px;overflow-x:auto}.period-picker button{flex:none}.metric-grid,.dashboard-grid,.detail-grid,.product-grid,.catalog-layout{gap:12px}.due-row{align-items:flex-start}.due-row small{white-space:normal}.group-metrics{overflow-x:auto}.group-metrics span{flex:none}.modal-backdrop{z-index:100000!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;background:#062f2873!important;place-items:center!important;padding:20px 16px!important;display:grid!important;position:fixed!important;inset:0!important;overflow-y:auto!important}.product-modal,.payment-modal,.category-modal,.client-modal,.modal-backdrop>section,.modal-backdrop>form{border:1px solid var(--color-border)!important;background:var(--color-surface)!important;border-radius:20px!important;width:min(100%,560px)!important;max-height:min(86dvh,760px)!important;margin:auto!important;padding:24px 22px!important;position:relative!important;overflow-y:auto!important;box-shadow:0 20px 50px -10px #0000004d!important}.modal-actions{background:var(--color-surface)!important;padding:14px 0 env(safe-area-inset-bottom)!important;border-top:1px solid var(--color-border)!important;z-index:10!important;gap:10px!important;margin-top:16px!important;display:flex!important;position:sticky!important;bottom:-24px!important}.modal-actions .button{flex:1!important;min-height:44px!important}.form-grid{grid-template-columns:repeat(2,1fr)!important;gap:12px 10px!important;display:grid!important}.form-grid.cols-3,.form-grid-3{grid-template-columns:repeat(3,1fr)!important;gap:10px 8px!important;display:grid!important}.form-grid label,.form-grid-3 label{gap:4px;font-size:12px;font-weight:700;display:grid}.form-grid input,.form-grid select,.form-grid-3 input,.form-grid-3 select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;padding:8px 10px;font-size:13px}.full-width,.wide-field{grid-column:1/-1!important}.installment-preview>div,.installment-edit{flex-direction:column;align-items:stretch;gap:8px}.installment-edit label{gap:5px;display:grid}.installment-edit input{width:100%}.auth-page{gap:34px;padding:28px 18px}.auth-intro h1{font-size:54px}.auth-card{padding:24px}.client-logo-control,.note-list footer{flex-direction:column;align-items:flex-start}}@media (width<=420px){.mobile-nav a span{display:none}.mobile-nav{justify-content:space-between}.mobile-nav a{padding:9px 12px}.page{padding-inline:12px}.page-head h1{font-size:24px!important}.button{min-height:36px}.metric strong{font-size:27px}.panel h2{font-size:22px}.overdue-alert{align-items:flex-start}.overdue-alert svg:last-child{display:none}}.finance-controls{align-items:center;gap:18px;margin-bottom:20px;padding:14px 18px;display:flex}.finance-controls .period-picker{margin:0}.finance-controls>small{color:var(--color-muted);font-size:12px}.date-range{gap:8px;display:flex}.date-range input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:7px}.finance-metric{text-align:left;font:inherit;cursor:pointer}.finance-metric:hover{border-color:#aab9ad;transform:translateY(-1px)}.empty-finance{padding:22px}.payment-breakdown{border:1px solid var(--color-border);border-radius:var(--radius-sm);justify-content:space-between;gap:12px;padding:10px;display:flex}.payment-breakdown span{color:var(--color-muted);gap:3px;font-size:12px;display:grid}.payment-breakdown b{color:var(--color-ink);font-size:14px}.payment-total{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-top:12px;display:flex}.payment-total strong{font:400 24px/1 var(--font-heading)}.period-picker{margin-bottom:20px!important}@media (width<=850px){.finance-controls{box-sizing:border-box!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;max-width:100%!important;margin-bottom:20px!important;padding:12px 14px!important;overflow:hidden!important}.period-picker{box-sizing:border-box!important;background:var(--color-background)!important;border-radius:var(--radius-sm)!important;justify-content:space-between!important;gap:4px!important;width:100%!important;max-width:100%!important;margin:0 0 20px!important;padding:4px!important;display:flex!important}.period-picker button{text-align:center!important;white-space:nowrap!important;flex:auto!important;padding:7px 4px!important;font-size:11.5px!important;font-weight:700!important}.date-range{width:100%}.date-range input{width:50%;min-width:0}.finance-metrics{grid-template-columns:repeat(2,1fr)!important;gap:10px!important;display:grid!important}.finance-metrics .finance-metric{min-height:120px!important;padding:14px!important}.finance-metrics .finance-metric strong{font-size:20px!important}.finance-metrics .finance-metric p{margin:18px 0 4px!important;font-size:11px!important}.finance-metrics .finance-metric small{margin-top:4px!important;font-size:10px!important}.finance-metrics .metric-icon{width:28px!important;height:28px!important;top:12px!important;right:12px!important}.finance-worklist{margin-top:16px}}@media (width<=420px){.payment-breakdown{flex-direction:column}}@media (width>=851px){.table-panel{overflow:visible}.row-actions{z-index:2}.row-actions[open]{z-index:8}.finance-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-metrics .metric{padding:18px}.finance-metrics .metric-icon{margin-bottom:16px}.finance-metrics .metric strong{font-size:25px}}.mobile-nav{display:none}@media (width<=850px){.mobile-nav{display:flex}}.finance-insights{grid-template-columns:1.35fr .65fr;gap:16px;margin-top:16px;display:grid}.chart-legend{color:var(--color-muted);flex-wrap:wrap;gap:10px;font-size:11px;display:flex}.chart-legend span{align-items:center;gap:4px;display:flex}.chart-legend i{border-radius:50%;width:8px;height:8px}.expected{background:#87a795}.issued{background:#296448}.received{background:#17221d}.provisioned{background:#d1aa61}.financial-bars{border-bottom:1px solid var(--color-border);align-items:end;gap:14px;height:220px;padding:22px 2px 0;display:flex}.financial-month{flex-direction:column;flex:1;justify-content:end;align-items:center;gap:7px;min-width:28px;height:100%;display:flex}.financial-month small{text-transform:capitalize;color:var(--color-muted);font-size:11px}.bar-group{align-items:end;gap:3px;height:180px;display:flex}.bar-group i{border-radius:4px 4px 0 0;width:7px;min-height:2px}.revenue-list{margin-top:20px}.revenue-list>div{border-top:1px solid var(--color-border);justify-content:space-between;gap:10px;padding:12px 0;display:flex}.revenue-list>div:first-child{border-top:0}.revenue-list span{gap:2px;display:grid}.revenue-list small{color:var(--color-muted);font-size:11px}.revenue-list strong{font-size:13px}@media (width<=850px){.finance-insights{grid-template-columns:1fr}.monthly-chart{order:2}.monthly-chart .panel-head{flex-flow:row!important;justify-content:space-between!important;align-items:center!important;gap:6px!important;display:flex!important}.monthly-chart .panel-head h2{white-space:nowrap!important;font-size:18px!important}.product-revenue{order:1}.financial-bars{gap:8px}.bar-group i{width:5px}.chart-legend{white-space:nowrap!important;flex-wrap:nowrap!important;flex-shrink:0!important;gap:4px!important;margin-left:auto!important;display:flex!important}.chart-legend button{white-space:nowrap!important;flex-shrink:0!important;padding:2px 6px!important;font-size:10px!important}}@media (width>=851px){.finance-body{grid-template-columns:minmax(0,1.35fr) minmax(330px,.8fr);align-items:start;gap:16px;margin-top:16px;display:grid}.finance-worklist{margin:0}.finance-insights{grid-template-columns:1fr;margin:0}.monthly-chart{min-width:0}.financial-bars{height:180px}.bar-group{height:140px}}@media (width<=850px){.finance-body{display:block}.finance-worklist{margin-top:16px}}.chart-legend button{color:var(--color-muted);font:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:2px;font-size:11px;display:flex}.chart-legend button.series-off{opacity:.35;text-decoration:line-through}.revenue-donut-wrap{grid-template-columns:132px 1fr;align-items:center;gap:18px;margin-top:18px;display:grid}.revenue-donut{border-radius:50%;place-items:center;width:132px;height:132px;display:grid;position:relative}.revenue-donut:after{content:"";background:var(--color-surface);border-radius:50%;position:absolute;inset:27px}.revenue-donut span{z-index:1;text-align:center;font:400 16px/1.1 var(--font-heading);letter-spacing:-.04em;position:relative}.revenue-donut small{color:var(--color-muted);font:10px var(--font-body);letter-spacing:0;margin-top:4px;display:block}.revenue-list .donut-color{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.donut-0{background:#296448}.donut-1{background:#87a795}.donut-2{background:#d1aa61}.donut-3{background:#52728f}.donut-4{background:#a2695a}.donut-5{background:#8f789d}@media (width<=850px){.revenue-donut-wrap{grid-template-columns:1fr}.revenue-donut{margin:auto}}.financial-lines{border-bottom:1px solid var(--color-border);background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(25% - 1px),var(--color-border) calc(25% - 1px),var(--color-border) 25%);grid-template-rows:1fr auto;height:220px;padding:20px 2px 0;display:grid}.financial-lines svg{width:100%;height:100%;overflow:visible}.financial-lines path:not(.area-expected):not(.area-received){fill:none;stroke-width:2.1px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.area-expected{fill:url(#grad-expected)!important;stroke:none!important}.area-received{fill:url(#grad-received)!important;stroke:none!important}.line-expected{stroke:#87a795}.line-issued{stroke:#296448}.line-received{stroke:#17221d}.line-provisioned{stroke:#d1aa61;stroke-dasharray:4 3}.line-labels{justify-content:space-between;padding:9px 0 0;display:flex}.line-labels small{color:var(--color-muted);text-transform:capitalize;font-size:11px}.table-panel,.mobile-card-list,.mobile-client-card,.mobile-finance-card{overflow:visible!important}.row-actions{position:relative!important}.row-actions[open]{z-index:99999!important}.action-menu{z-index:100000!important;background:var(--color-surface)!important;border:1px solid var(--color-border)!important;white-space:nowrap!important;border-radius:12px!important;flex-direction:column!important;gap:3px!important;min-width:160px!important;padding:6px!important;display:flex!important;position:absolute!important;top:100%!important;right:0!important;box-shadow:0 12px 32px -6px #00000038!important}.action-menu button{transition:background .15s;text-align:left!important;width:100%!important;color:var(--color-ink)!important;cursor:pointer!important;background:0 0!important;border:0!important;border-radius:8px!important;padding:8px 12px!important;font-size:13px!important;font-weight:600!important}.action-menu button:hover{background:#f4f6f3!important}.mobile-finance-card:last-child .action-menu,.mobile-finance-card:nth-last-child(2) .action-menu,.mobile-client-card:last-child .action-menu,.mobile-client-card:nth-last-child(2) .action-menu{margin-bottom:6px!important;top:auto!important;bottom:100%!important}.mobile-finance-card{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-ink);cursor:pointer;border-radius:14px;flex-direction:column;gap:6px;padding:12px 14px;text-decoration:none;transition:background .15s;display:flex;box-shadow:0 2px 6px -2px #062f2808}.mobile-finance-card:active{background:#f4f6f3}.mobile-finance-card .card-top-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.mobile-finance-card .card-client-name{color:var(--color-ink);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.mobile-finance-card .card-amount{color:var(--color-ink);white-space:nowrap;flex-shrink:0;font-size:14px;font-weight:800}.mobile-finance-card .card-mid-row{color:var(--color-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.mobile-finance-card .card-bottom-row{border-top:1px dashed var(--color-border);justify-content:space-between;align-items:center;gap:8px;margin-top:2px;padding-top:8px;display:flex}.mobile-finance-card .card-due-badge{color:var(--color-ink);white-space:nowrap;background:#062f280d;border-radius:6px;align-items:center;gap:5px;padding:3px 8px;font-size:12px;font-weight:700;display:inline-flex}.mobile-finance-card .card-bottom-actions{align-items:center;gap:8px;display:flex}.financial-lines{min-width:0;overflow:hidden}.financial-lines svg{display:block;overflow:hidden}.wizard-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.wizard-close{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-muted);font:inherit;white-space:nowrap;background:0 0;align-items:center;gap:7px;padding:8px 10px;font-size:12px;display:inline-flex}.wizard-close:hover{color:var(--color-danger);border-color:var(--color-danger)}@media (width<=520px){.wizard-close span{display:none}.wizard-close{padding:8px}}.payment-modal.payment-detail{max-height:min(820px,100vh - 40px);overflow-y:auto}.payment-modal.payment-detail .modal-actions{background:var(--color-surface);border-top:1px solid var(--color-border);margin-top:2px;padding:14px 0 2px;position:sticky;bottom:-28px}@media (width<=850px){.payment-modal.payment-detail{max-height:88dvh}.payment-modal.payment-detail .modal-actions{bottom:-20px}}.finance-client{font-weight:600;line-height:1.32}.finance-description{min-width:0}.finance-description b,.finance-description small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.finance-description small{color:var(--color-muted);margin-top:3px;font-size:12px}.table-row.finance{grid-template-columns:minmax(135px,1.05fr) minmax(190px,1.5fr) 96px 96px minmax(118px,.9fr) 68px;align-items:start}.table-row.finance>span,.table-row.finance>b,.table-row.finance>details{padding-top:3px}.table-row.finance .badge{justify-self:start}.table-row.finance .row-actions{justify-self:start;padding-top:4px}@media (width<=850px){.table-row.finance{grid-template-columns:145px 210px 96px 96px 120px 68px;align-items:start}}.finance-clickable{cursor:pointer}.finance-clickable:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.finance-clickable .row-actions{cursor:default}.financial-lines{position:relative}.line-hitbox{fill:#0000;cursor:crosshair}.chart-tooltip{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);min-width:172px;box-shadow:var(--shadow-panel);pointer-events:none;padding:10px 12px;font-size:11px;position:absolute;bottom:28px;transform:translate(-50%)}.chart-tooltip b{margin-bottom:6px;display:block}.chart-tooltip span{color:var(--color-muted);justify-content:space-between;gap:14px;padding:2px 0;display:flex}.chart-tooltip strong{color:var(--color-ink);font-size:11px}.finance-body{grid-template-columns:minmax(0,1.1fr) minmax(430px,1fr)}@media (width<=1120px) and (width>=851px){.finance-body{grid-template-columns:minmax(0,1fr) minmax(380px,.95fr)}}.monthly-chart,.financial-lines{overflow:visible}.financial-lines svg{overflow:hidden}.chart-tooltip{max-width:calc(100% - 16px)}.finance-worklist .table-tools{padding:12px 16px}.table-row.finance{min-height:50px;padding:10px 16px;font-size:13px}.table-row.finance.table-label{min-height:auto;padding-block:9px}.finance-client{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.finance-description b{font-size:13px}.finance-description small{margin-top:1px;font-size:11px}.table-row.finance .badge{padding:3px 7px;font-size:10px}.table-row.finance .row-actions summary{font-size:12px}.table-row.finance .row-actions .action-menu{width:154px}.finance-worklist .data-table{min-width:0}@media (width<=850px){.table-row.finance{padding:10px 14px}}.finance-worklist .table-row.finance:not(.table-label){grid-template-columns:minmax(110px,.9fr) minmax(150px,1.25fr) 88px 82px 96px 48px;height:52px;min-height:52px;padding:8px 14px;overflow:visible}.finance-worklist .table-row.finance:not(.table-label)>span,.finance-worklist .table-row.finance:not(.table-label)>b{white-space:nowrap;text-overflow:ellipsis;align-self:center;min-width:0;line-height:18px;overflow:hidden}.finance-worklist .finance-description small{display:none}.finance-worklist .table-row.finance .row-actions{align-self:center;padding-top:0}.finance-worklist .table-row.finance .badge{align-self:center}.finance-worklist .table-row.finance.table-label{grid-template-columns:minmax(110px,.9fr) minmax(150px,1.25fr) 88px 82px 96px 48px;padding-inline:14px}.finance-worklist .table-row.finance,.finance-worklist .table-row.finance.table-label{grid-template-columns:minmax(76px,.8fr) minmax(105px,1.15fr) 76px 72px 78px 34px;gap:8px}.finance-worklist .row-actions summary{border:1px solid var(--color-border);border-radius:6px;place-items:center;width:28px;height:28px;font-size:0;display:grid}.finance-worklist .row-actions summary:before{content:"…";color:var(--color-accent);font-size:20px;line-height:1}.finance-worklist .table-label span:last-child{font-size:0}.finance-worklist .table-label span:last-child:before{content:"…";letter-spacing:0;font-size:18px}.finance-worklist .row-actions .action-menu{right:0}.finance-worklist .row-actions summary,.finance-worklist .row-actions summary:before{font-size:20px!important;line-height:1!important}.finance-worklist .row-actions summary{white-space:nowrap!important;writing-mode:horizontal-tb!important;justify-content:center!important;align-items:center!important;width:30px!important;height:30px!important;padding:0!important;display:flex!important}.finance-worklist .row-actions summary:before{content:none!important}.finance-worklist .table-label span:last-child:before{content:"…";font-size:20px;line-height:1;display:block}.finance-worklist .table-row.finance:not(.table-label){grid-template-columns:minmax(76px,.8fr) minmax(105px,1.15fr) 76px 72px 78px;padding-right:52px;position:relative}.finance-worklist .table-row.finance.table-label{grid-template-columns:minmax(76px,.8fr) minmax(105px,1.15fr) 76px 72px 78px}.finance-worklist .table-row.finance.table-label>span:last-child{display:none}.finance-worklist .table-row.finance .row-actions{z-index:2;margin:0;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.finance-worklist .table-row.finance .row-actions[open]{z-index:9}.finance-worklist .table-row.finance.table-label{letter-spacing:.035em;color:var(--color-muted);font-size:9px;line-height:1.1}.finance-worklist .table-row.finance.table-label span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.finance-worklist .table-row.finance.table-label span:last-child{display:none}.finance-worklist .table-row.finance,.finance-worklist .table-row.finance.table-label{grid-template-columns:113px 162px 76px 72px 80px!important;column-gap:8px!important}.finance-worklist .table-row.finance.table-label{align-items:center!important}.finance-worklist .table-row.finance.table-label>span{justify-self:start!important;min-width:0!important}.finance-worklist .table-row.finance.table-label>span:nth-child(3),.finance-worklist .table-row.finance.table-label>span:nth-child(4),.finance-worklist .table-row.finance.table-label>span:nth-child(5){text-align:left!important}.finance-metrics{gap:14px}.finance-metrics .finance-metric{isolation:isolate;background:#fff;border:1px solid #e3e9e4;border-radius:18px;min-height:154px;padding:20px 19px 17px;transition:transform .18s,box-shadow .18s;overflow:hidden;box-shadow:0 2px 7px #17221d0b}.finance-metrics .finance-metric:after{display:none}.finance-metrics .finance-metric:before{content:"";z-index:-1;border:18px solid #2964480f;border-radius:50%;width:132px;height:132px;position:absolute;inset:auto -28px -58px auto}.finance-metrics .finance-metric:hover{transform:translateY(-2px);box-shadow:0 12px 24px #17221d17}.finance-metrics .metric-icon{width:34px;height:34px;color:var(--color-accent);background:#f7fbf7;border:1px solid #dce8df;border-radius:11px;place-items:center;margin:0;display:grid;position:absolute;top:18px;right:18px}.finance-metrics .metric-icon svg{width:18px;height:18px}.finance-metrics .finance-metric p{color:#617167;margin:29px 0 5px;font-size:12px;font-weight:700}.finance-metrics .finance-metric strong{letter-spacing:-.055em;margin:0;font-size:27px}.finance-metrics .finance-metric small{color:#6e7c73;margin-top:10px;font-size:11px;line-height:1.25;display:block}.finance-metrics .finance-metric:first-child{color:#0d3626;box-shadow:none;background:linear-gradient(135deg,#a2ed82 0%,#6ce04b 100%);border-color:#6fca5d}.finance-metrics .finance-metric:first-child:before{border-color:#ffffff54;width:150px;height:150px;bottom:-74px;right:-38px}.finance-metrics .finance-metric:first-child .metric-icon{color:#17633e;background:#ffffffdb;border-color:#ffffffe0}.finance-metrics .finance-metric:first-child p,.finance-metrics .finance-metric:first-child small{color:#1e5e40}@media (width<=850px){.finance-metrics .finance-metric{min-height:140px;padding:17px}.finance-metrics .finance-metric strong{font-size:24px}}.dashboard-metrics{gap:14px}.dashboard-metrics .metric{isolation:isolate;background:#fff;border:1px solid #e3e9e4;border-radius:18px;min-height:154px;padding:20px 19px 17px;transition:transform .18s,box-shadow .18s;overflow:hidden;box-shadow:0 2px 7px #17221d0b}.dashboard-metrics .metric:after{display:none}.dashboard-metrics .metric:before{content:"";z-index:-1;border:18px solid #2964480f;border-radius:50%;width:132px;height:132px;position:absolute;inset:auto -28px -58px auto}.dashboard-metrics .metric:hover{transform:translateY(-2px);box-shadow:0 12px 24px #17221d17}.dashboard-metrics .metric-icon{width:34px;height:34px;color:var(--color-accent);background:#f7fbf7;border:1px solid #dce8df;border-radius:11px;place-items:center;margin:0;display:grid;position:absolute;top:18px;right:18px}.dashboard-metrics .metric-icon svg{width:18px;height:18px}.dashboard-metrics .metric p{color:#617167;margin:29px 0 5px;font-size:12px;font-weight:700}.dashboard-metrics .metric strong{letter-spacing:-.055em;margin:0;font-size:27px}.dashboard-metrics .metric small{color:#6e7c73;margin-top:10px;font-size:11px;line-height:1.25;display:block}.dashboard-metrics .metric:first-child{color:#0d3626;box-shadow:none;background:linear-gradient(135deg,#a2ed82 0%,#6ce04b 100%);border-color:#6fca5d}.dashboard-metrics .metric:first-child:before{border-color:#ffffff54;width:150px;height:150px;bottom:-74px;right:-38px}.dashboard-metrics .metric:first-child .metric-icon{color:#17633e;background:#ffffffdb;border-color:#ffffffe0}.dashboard-metrics .metric:first-child p,.dashboard-metrics .metric:first-child small{color:#1e5e40}@media (width<=850px){.dashboard-metrics .metric{min-height:140px;padding:17px}.dashboard-metrics .metric strong{font-size:24px}}.product-revenue .revenue-donut-wrap{margin-top:14px;display:block}.product-revenue .revenue-donut{width:146px;height:146px;margin:0 auto}.product-revenue .revenue-donut:after{background:#fff;inset:23px}.product-revenue .revenue-donut span{letter-spacing:-.045em;flex-direction:column-reverse;gap:4px;font-size:17px;font-weight:700;display:flex}.product-revenue .revenue-donut small{color:#7b887f;letter-spacing:0;margin:0;font-size:10px;font-weight:600}.product-revenue .revenue-list{gap:0;margin:17px 0 0;display:grid}.product-revenue .revenue-list>div{border:0;align-items:center;min-height:38px;padding:6px 0}.product-revenue .revenue-list>div>span{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:8px;min-width:0;display:grid}.product-revenue .revenue-list .donut-color{display:none}.product-revenue .revenue-list b{text-overflow:ellipsis;white-space:nowrap;color:#405248;grid-area:1/2;font-size:12px;overflow:hidden}.product-revenue .revenue-list small{color:#296448;background:#e6f1e8;border-radius:7px;grid-area:1/1;place-items:center;min-height:22px;padding:2px 4px;font-size:10px;font-weight:700;display:grid}.product-revenue .revenue-list strong{color:#315342;white-space:nowrap;font-size:12px}.product-revenue .revenue-list>div:first-child small{color:#154b35;background:#dfeee4}.product-revenue .revenue-list>div:nth-child(2) small{color:#4b8f36;background:#e6f4de}.product-revenue .revenue-list>div:nth-child(3) small{color:#608060;background:#eff5eb}.product-revenue .revenue-list>div:nth-child(n+4) small{color:#637068;background:#f1f3f1}@media (width>=851px){.finance-body{flex-direction:column;gap:16px;margin-top:16px;display:flex}.finance-body .finance-insights{order:1;grid-template-columns:minmax(0,7fr) minmax(280px,3fr);gap:16px;width:100%;margin:0;display:grid}.finance-body .finance-worklist{order:2;width:100%;margin:0}.finance-body .finance-insights .monthly-chart,.finance-body .finance-insights .product-revenue{height:100%}.finance-worklist .table-row.finance,.finance-worklist .table-row.finance.table-label{grid-template-columns:minmax(180px,1.1fr) minmax(280px,1.8fr) 130px 120px 130px!important;column-gap:18px!important}.finance-worklist .table-row.finance:not(.table-label){height:auto;min-height:62px;padding:11px 70px 11px 18px}.finance-worklist .table-row.finance.table-label{padding:11px 18px;font-size:10px}.finance-worklist .table-row.finance:not(.table-label)>span,.finance-worklist .table-row.finance:not(.table-label)>b{white-space:normal;text-overflow:clip;line-height:1.3;overflow:visible}.finance-worklist .finance-client,.finance-worklist .finance-description b{white-space:normal;text-overflow:clip;overflow:visible}.finance-worklist .finance-description small{display:none}.finance-worklist .table-row.finance>span:nth-child(3),.finance-worklist .table-row.finance>b:nth-child(4),.finance-worklist .table-row.finance>span:nth-child(5){white-space:nowrap}.finance-worklist .table-row.finance .row-actions{right:20px}.finance-worklist .table-row.finance.table-label span{white-space:nowrap;text-overflow:clip;overflow:visible}.finance-worklist .table-row.finance.table-label{padding-right:70px}}.client-sort{appearance:none;color:inherit;font:inherit;font-weight:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.client-sort span{width:10px;color:var(--color-muted);font-size:12px;line-height:1;transition:color .15s,transform .15s}.client-sort:hover,.client-sort:focus-visible,.client-sort.active{color:var(--color-ink);outline:none}.client-sort.active span{color:var(--color-accent)}.modal-backdrop{place-items:center!important;padding:clamp(12px,3vh,28px)!important;overflow:auto!important}.product-modal,.payment-modal,.category-modal,.client-modal,.modal-backdrop>section,.modal-backdrop>form{overscroll-behavior:contain!important;gap:18px!important;width:min(100%,720px)!important;max-height:calc(100dvh - 24px)!important;padding:clamp(18px,3vw,28px)!important}.form-modal{width:min(100%,680px)!important}.form-modal-header h2{letter-spacing:-.035em;margin:3px 0 5px;font-size:24px}.form-modal-header .muted{margin:0;font-size:13px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px 12px!important}.form-grid label,.form-grid-3 label,.payment-modal label{color:#405248!important;gap:5px!important;font-size:12px!important}.form-grid input,.form-grid select,.form-grid textarea,.payment-modal input,.payment-modal select,.payment-modal textarea{min-height:40px!important;font:inherit!important;padding:8px 10px!important;font-size:14px!important}.form-grid textarea,.payment-modal textarea{min-height:76px!important}.field-optional{color:var(--color-muted);text-transform:none;margin-left:3px;font-weight:500}.check-field{min-height:40px;padding:8px 0!important}.modal-actions,.payment-modal.payment-detail .modal-actions{padding:16px 0 max(2px, env(safe-area-inset-bottom))!important;background:var(--color-surface)!important;border-top:1px solid var(--color-border)!important;margin:4px 0 0!important;position:sticky!important;bottom:0!important;box-shadow:0 -12px 18px -18px #0a2c2073!important}.modal-actions .button{min-height:42px!important}.contract-wizard{width:min(100%,760px)!important}.contract-wizard .wizard-header{padding-bottom:2px}.contract-wizard .form-grid textarea{min-height:82px}@media (width<=640px){.modal-backdrop{place-items:end center!important;padding:10px!important}.product-modal,.payment-modal,.category-modal,.client-modal,.modal-backdrop>section,.modal-backdrop>form{border-radius:18px 18px 12px 12px!important;max-height:calc(100dvh - 10px)!important;padding:20px 16px!important}.form-grid,.form-grid.cols-3,.form-grid-3{grid-template-columns:1fr!important;gap:12px!important}.form-modal-header h2{font-size:22px}.modal-actions{gap:8px!important}.modal-actions .button{font-size:13px!important}.contract-wizard .wizard-header{gap:12px}.contract-wizard .wizard-header .muted{font-size:12px}}.wizard-note{color:#52655a;background:#f7fbf7;border:1px solid #dce8df;border-radius:12px;gap:5px;padding:13px 14px;font-size:13px;line-height:1.4;display:grid}.wizard-note b{color:#1e5138}
