:root{--font-family:"Segoe UI Variable Text", "Segoe UI", -apple-system, BlinkMacSystemFont, Arial, sans-serif;--font-size:14px;--letter-spacing:0px;transition:background-color .3s,color .3s}.theme-light{--bg-app:#fff;--bg-page:#fff;--text-main:#111;--text-muted:#555;--border-color:#111;--border-width:2px;--border-radius:0px;--bg-sidebar:#f2f2f2;--border-sidebar:2px solid #111;--bg-topbar:#fff;--border-topbar:2px solid #111;--bg-btn:#fff;--border-btn:1.5px solid #111;--color-btn:#111;--font-weight-btn:700;--bg-btn-hover:#111;--color-btn-hover:#fff;--bg-primary:#d52b1e;--border-primary:1.5px solid #d52b1e;--color-primary:#fff;--bg-primary-hover:#a81a11;--bg-danger:#fff;--border-danger:1.5px solid #d52b1e;--color-danger:#d52b1e;--bg-danger-hover:#d52b1e;--color-danger-hover:#fff;--bg-active-tab:#111;--color-active-tab:#fff;--bg-hover-tab:#d52b1e;--color-hover-tab:#fff;--bg-card:#fff;--border-card:2px solid #111;--bg-card-hover:#f2f2f2;--border-card-hover:#d52b1e;--bg-table:#fff;--bg-table-alt:#f9f9f9;--grid-color:#e2e8f0;--bg-th:#111;--color-th:#fff;--bg-select:#d52b1e;--color-select:#fff;--bg-input:#fff;--border-input:1.5px solid #111;--border-input-focus:2px solid #d52b1e;--placeholder-color:#888}.theme-dark{--bg-app:linear-gradient(135deg, #0f172a 0%, #1e1b4b 50%, #0f172a 100%);--bg-page:transparent;--text-main:#f8fafc;--text-muted:#94a3b8;--border-color:#ffffff14;--border-width:1px;--border-radius:8px;--bg-sidebar:#0f172a8c;--border-sidebar:1px solid #ffffff14;--bg-topbar:#0f172a73;--border-topbar:1px solid #ffffff14;--bg-btn:#ffffff0f;--border-btn:1px solid #ffffff14;--color-btn:#f1f5f9;--font-weight-btn:600;--bg-btn-hover:#ffffff1f;--color-btn-hover:#fff;--bg-primary:#6366f1bf;--border-primary:1px solid #818cf880;--color-primary:#fff;--bg-primary-hover:#6366f1f2;--bg-danger:#ef444426;--border-danger:1px solid #ef444466;--color-danger:#fecaca;--bg-danger-hover:#ef44444d;--color-danger-hover:#fff;--bg-active-tab:#6366f133;--color-active-tab:#fff;--border-active-tab:1px solid #6366f166;--bg-hover-tab:#ffffff0d;--color-hover-tab:#f1f5f9;--bg-card:#1e293b59;--border-card:1px solid #ffffff14;--border-radius-card:14px;--bg-card-hover:#1e293b8c;--border-card-hover:#ffffff2e;--bg-table:#0f172a66;--bg-table-alt:#1e293b33;--grid-color:#ffffff0d;--bg-th:#0f172ab3;--color-th:#e2e8f0;--bg-select:#6366f173;--color-select:#fff;--bg-input:#0f172a99;--border-input:1px solid #ffffff14;--border-input-focus:1.5px solid #6366f1d9;--placeholder-color:#64748b}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);font-size:var(--font-size);color:var(--text-main);background-color:#fff;height:100vh;overflow:hidden}html,body,#root{height:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}.theme-dark ::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.theme-dark ::-webkit-scrollbar-thumb:hover{background:#fff3}.theme-light ::-webkit-scrollbar-thumb{background:#ccc}.theme-light ::-webkit-scrollbar-thumb:hover{background:#999}.app-container{background:var(--bg-app);flex-direction:column;height:100%;display:flex}.topbar{background:var(--bg-topbar);border-bottom:var(--border-topbar);z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);justify-content:space-between;align-items:center;height:56px;padding:0 20px;display:flex}.topbar-title{letter-spacing:-.5px;font-size:1.25rem;font-weight:800}.topbar-actions{align-items:center;gap:16px;display:flex}.topbar-group{align-items:center;gap:8px;display:flex}.topbar-label{color:var(--text-muted);font-size:.85rem;font-weight:600}.main-content{flex:1;display:flex;overflow:hidden}.sidebar{background:var(--bg-sidebar);border-right:var(--border-sidebar);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;gap:6px;width:240px;padding:20px 14px;display:flex;overflow-y:auto}.brand-section{text-align:center;flex-direction:column;align-items:center;padding:8px 8px 24px;display:flex}.brand-title{text-transform:uppercase;font-size:1.25rem;font-weight:800}.page-container{background:var(--bg-page);flex-direction:column;flex:1;gap:20px;padding:20px;display:flex;overflow-y:auto}.page-title{letter-spacing:-.5px;margin-bottom:4px;font-size:1.75rem;font-weight:800}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.metric-card{background:var(--bg-card);border:var(--border-card);border-radius:var(--border-radius-card,var(--border-radius));cursor:pointer;flex-direction:column;justify-content:center;align-items:center;min-height:120px;padding:20px;transition:all .2s;display:flex}.metric-card:hover{background:var(--bg-card-hover);border-color:var(--border-card-hover);transform:translateY(-2px)}.metric-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;text-align:center;margin-bottom:6px;font-size:.95rem;font-weight:600}.metric-value{font-size:2.25rem;font-weight:900}.form-layout{flex-direction:column;gap:12px;max-width:600px;display:flex}.form-group{flex-direction:column;gap:6px;display:flex}.form-row{gap:12px;display:flex}.form-row>*{flex:1}.tool-add-row{align-items:stretch;gap:8px;display:flex}.tool-add-row select{flex:1;min-width:0}.tool-add-row input[type=number]{text-align:center;flex-shrink:0;width:80px}.tool-add-row .btn{white-space:nowrap;flex-shrink:0}label{color:var(--text-muted);font-size:.9rem;font-weight:600}input,select,textarea{background:var(--bg-input);border:var(--border-input);border-radius:var(--border-radius);color:var(--text-main);outline:none;padding:10px 12px;font-family:inherit;font-size:.95rem;transition:border-color .2s}input:focus,select:focus,textarea:focus{border:var(--border-input-focus)}input::placeholder{color:var(--placeholder-color)}.btn{background:var(--bg-btn);border:var(--border-btn);border-radius:var(--border-radius);color:var(--color-btn);font-family:inherit;font-size:.9rem;font-weight:var(--font-weight-btn);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:10px 16px;transition:all .2s;display:inline-flex}.btn:hover{background:var(--bg-btn-hover);color:var(--color-btn-hover)}.btn-primary{background:var(--bg-primary);border:var(--border-primary);color:var(--color-primary)}.btn-primary:hover{background:var(--bg-primary-hover);border-color:var(--bg-primary-hover);color:var(--color-primary)}.btn-danger{background:var(--bg-danger);border:var(--border-danger);color:var(--color-danger)}.btn-danger:hover{background:var(--bg-danger-hover);color:var(--color-danger-hover);border-color:var(--bg-danger-hover)}.btn-icon{border-radius:50%;min-height:auto;padding:8px}.btn:disabled{opacity:.5;cursor:not-allowed}.nav-item{border-radius:var(--border-radius);color:var(--text-muted);text-transform:uppercase;cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:12px;padding:12px 14px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.nav-item:hover{background:var(--bg-hover-tab);color:var(--color-hover-tab)}.nav-item.active{background:var(--bg-active-tab);color:var(--color-active-tab);border:var(--border-active-tab,1px solid var(--border-color));font-weight:700}.table-container{border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius-card,var(--border-radius));background:var(--bg-table);overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th{background:var(--bg-th);color:var(--color-th);text-transform:uppercase;letter-spacing:.5px;padding:12px 16px;font-size:.85rem;font-weight:600}td{border-bottom:1px solid var(--grid-color);padding:12px 16px;font-size:.95rem}tr:nth-child(2n){background:var(--bg-table-alt)}tr.selected{background:var(--bg-select)!important;color:var(--color-select)!important}tr.selected td{color:var(--color-select)!important}.split-layout{flex:1;gap:20px;display:flex;overflow:hidden}.split-left{flex-direction:column;flex:3;gap:14px;padding-bottom:10px;display:flex;overflow-y:auto}.split-right{background:var(--bg-card);border:var(--border-card);border-radius:var(--border-radius-card,var(--border-radius));flex-direction:column;gap:16px;width:340px;padding:20px;display:flex;overflow-y:auto}.rent-split-layout{gap:20px;width:100%;display:flex}.rent-split-left{flex-direction:column;flex:1.2;gap:16px;display:flex}.rent-split-right{flex-direction:column;flex:1;gap:16px;display:flex}@media (width<=768px){.rent-split-layout{flex-direction:column;gap:16px}}.cart-table-container{border:var(--border-width) solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-table);min-height:120px;max-height:320px;overflow:auto}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-app);border:var(--border-card);border-radius:var(--border-radius-card,var(--border-radius));width:90%;max-width:450px;color:var(--text-main);flex-direction:column;gap:20px;padding:24px;display:flex;box-shadow:0 10px 25px #0000004d}.modal-title{font-size:1.25rem;font-weight:700}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.toggle-btn{cursor:pointer;text-align:center;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px;font-weight:700;transition:all .2s;display:flex}.toggle-btn.unpaid{color:#fecaca;background-color:#ef44441a;border:2px solid #ef4444}.toggle-btn.unpaid:hover{background-color:#ef444433}.theme-light .toggle-btn.unpaid{color:#ef4444;background-color:#ef44440d}.toggle-btn.paid{color:#fff;background-color:#22c55e;border:2px solid #22c55e}.toggle-btn.paid:hover{background-color:#16a34a;border-color:#16a34a}.alert{border-radius:var(--border-radius);padding:10px 14px;font-size:.9rem;font-weight:600}.alert-warning{color:#fecaca;background:#ef444426;border:1px solid #ef444466}.theme-light .alert-warning{color:#991b1b;background:#fee2e2;border-color:#ef4444}.alert-success{color:#bbf7d0;background:#22c55e26;border:1px solid #22c55e66}.theme-light .alert-success{color:#166534;background:#dcfce7;border-color:#22c55e}.btn-whatsapp{color:#fff!important;background:#25d366!important;border-color:#25d366!important}.btn-whatsapp:hover{color:#fff!important;background:#128c7e!important;border-color:#128c7e!important}@media print{html,body,#root{height:auto!important;overflow:visible!important}.app-container,.topbar,.sidebar,.btn,.nav-item,.table-container,.split-left,.split-right,.alert{display:none!important}#print-area{background:#fff!important;width:100%!important;margin:0!important;padding:0!important;display:block!important}}#print-area,.mobile-nav{display:none}@media (width<=768px){body{height:auto;overflow-y:auto}.app-container{height:auto;min-height:100vh;padding-bottom:64px}.topbar{flex-direction:column;align-items:stretch;gap:8px;height:auto;padding:10px 14px}.topbar-title{text-align:center;font-size:1.15rem}.topbar-actions{justify-content:space-between;font-size:.8rem}.main-content{flex-direction:column;height:auto;overflow:visible}.sidebar{display:none!important}.mobile-nav{background:var(--bg-sidebar);border-top:var(--border-sidebar);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:90;justify-content:space-around;align-items:center;height:60px;padding:0 6px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 10px #00000026}.mobile-nav-item{color:var(--text-main);opacity:.65;cursor:pointer;text-transform:uppercase;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;padding:6px;font-family:inherit;font-size:.72rem;font-weight:600;transition:all .2s;display:flex}.mobile-nav-item.active{color:var(--color-active-tab);opacity:1;font-weight:700}.mobile-nav-item.active svg{transform:scale(1.1)}.page-container{gap:14px;height:auto;padding:14px;overflow:visible}.page-title{font-size:1.45rem}.split-layout{flex-direction:column;height:auto;overflow:visible}.split-left{flex:none;height:auto;overflow:visible}.split-right{flex:none;max-height:none;overflow:visible;width:100%!important}.metrics-grid{grid-template-columns:1fr;gap:12px}.metric-card{min-height:100px;padding:14px}.metric-value{font-size:1.9rem}.form-row{flex-direction:column;gap:12px}.tool-add-row{flex-direction:column;align-items:stretch;gap:10px}.tool-add-row select,.tool-add-row input[type=number],.tool-add-row .btn{width:100%!important}.btn{width:100%}table{min-width:600px}th,td{padding:10px 12px;font-size:.88rem}}
