@import "https://fonts.googleapis.com/css2?family=Comfortaa:wght@400;500;600;700&display=swap";.pwd-modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.pwd-modal-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:100%;max-width:460px;padding:32px;animation:.2s ease-out pwdModalFadeIn;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@keyframes pwdModalFadeIn{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.pwd-modal-header{text-align:center;margin-bottom:24px}.pwd-modal-icon{color:#374151;background-color:#f3f4f6;border-radius:10px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:16px;display:inline-flex}.pwd-modal-header h2{color:#1f2937;margin:0 0 8px;font-family:Comfortaa,cursive,sans-serif;font-size:20px;font-weight:700}.pwd-modal-header p{color:#6b7280;margin:0;font-size:13.5px;line-height:1.5}.pwd-error-alert{color:#b91c1c;background-color:#fef2f2;border:1px solid #fca5a5;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 14px;font-size:13.5px;display:flex}.pwd-error-alert svg{flex-shrink:0;margin-top:2px}.pwd-modal-form{flex-direction:column;gap:18px;display:flex}.pwd-form-group{text-align:left;flex-direction:column;gap:6px;display:flex}.pwd-form-group label{color:#374151;font-size:13px;font-weight:600}.pwd-input-wrap{align-items:center;display:flex;position:relative}.pwd-input-wrap input{color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;height:42px;padding:8px 42px 8px 12px;font-size:14px;transition:border-color .15s,box-shadow .15s}.pwd-input-wrap input:focus{border-color:#374151;box-shadow:0 0 0 3px #3741511a}.pwd-toggle-btn{cursor:pointer;color:#9ca3af;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:color .15s;display:flex;position:absolute;right:8px}.pwd-toggle-btn:hover{color:#374151}.pwd-modal-actions{gap:12px;margin-top:8px;display:flex}.pwd-btn-logout{color:#4b5563;cursor:pointer;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:600;transition:background-color .15s}.pwd-btn-logout:hover:not(:disabled){color:#1f2937;background-color:#e5e7eb}.pwd-btn-submit{color:#fff;cursor:pointer;background-color:#374151;border:none;border-radius:8px;flex:1;padding:10px 18px;font-size:14px;font-weight:600;transition:background-color .15s}.pwd-btn-submit:hover:not(:disabled){background-color:#1f2937}.pwd-btn-submit:disabled,.pwd-btn-logout:disabled{opacity:.6;cursor:not-allowed}.app-sidebar{width:var(--sidebar-width);-webkit-backdrop-filter:blur(25px)saturate(180%);color:var(--text-primary);z-index:1000;border-right:1px solid var(--border);background-color:#ffffffd9;flex-direction:column;transition:transform .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:1px 0 #00000005}.sidebar-brand{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:24px 20px 20px;display:flex}.brand-icon-wrapper{color:#fff;background:linear-gradient(135deg,#1d1d1f 0%,#3a3a3c 100%);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex;box-shadow:0 2px 6px #00000026}.brand-logo-text{letter-spacing:.5px;color:#fff;font-size:13px;font-weight:800;line-height:1}.brand-info{flex-direction:column;display:flex;overflow:hidden}.brand-title{letter-spacing:-.01em;color:var(--text-primary);white-space:nowrap;margin:0;font-size:15px;font-weight:700;line-height:1.25}.brand-sub{color:var(--text-muted);white-space:nowrap;margin-top:2px;font-size:11px;font-weight:500}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:20px 12px;display:flex;overflow-y:auto}.nav-group-label{letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase;margin-bottom:8px;padding:0 12px;font-size:10px;font-weight:700}.nav-item{color:#515154;border-radius:9px;align-items:center;gap:11px;padding:9px 12px;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.nav-item:hover{color:#1d1d1f;background-color:#0000000a}.nav-item.active{background-color:var(--apple-blue);color:#fff;font-weight:600;box-shadow:0 2px 8px #0071e347}.nav-item.active .nav-icon{color:#fff}.nav-icon{color:#6e6e73;flex-shrink:0;transition:color .18s}.nav-item:hover .nav-icon{color:#1d1d1f}.nav-item.active:hover .nav-icon{color:#fff}.nav-text{flex:1}.nav-badge{text-transform:uppercase;color:var(--text-primary);background-color:#0000000f;border-radius:9999px;padding:2px 7px;font-size:10px;font-weight:700}.nav-item.active .nav-badge{color:#fff;background-color:#ffffff40}.sidebar-user-footer{border-top:1px solid var(--border-subtle);background:0 0;flex-direction:column;gap:12px;padding:16px 14px;display:flex}.sidebar-user-info{align-items:center;gap:10px;padding:4px 6px;display:flex}.sidebar-user-avatar{color:#1d1d1f;background-color:#0000000d;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.sidebar-user-meta{flex-direction:column;display:flex;overflow:hidden}.sidebar-username{color:#1d1d1f;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.sidebar-role{color:#86868b;font-size:11px;font-weight:500}.sidebar-logout-btn{border:1px solid var(--border-subtle);color:#515154;cursor:pointer;background-color:#00000008;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 12px;font-size:13px;font-weight:500;transition:all .18s;display:flex}.sidebar-logout-btn:hover:not(:disabled){color:#d70015;background-color:#fff0ef;border-color:#ffcdca}.sidebar-logout-btn .logout-icon{color:inherit;flex-shrink:0}.sidebar-logout-btn:disabled{opacity:.6;cursor:not-allowed}.sidebar-footer{border-top:1px solid var(--border);background:#fff;flex-direction:column;gap:6px;padding:16px 18px;display:flex}.footer-status{align-items:center;gap:8px;display:flex}.status-indicator{background-color:var(--success);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #10b98133}.status-text{color:var(--text-secondary);font-size:11.5px;font-weight:500}.footer-version{color:var(--text-muted);font-size:10.5px}.sidebar-mobile-toggle{z-index:1100;border:1px solid var(--border);color:var(--text-primary);cursor:pointer;width:40px;height:40px;box-shadow:var(--shadow-sm);background:#fff;border-radius:10px;justify-content:center;align-items:center;transition:background-color .2s;display:none;position:fixed;top:14px;left:14px}.sidebar-mobile-toggle:hover{background-color:#f3f4f6}.sidebar-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;background:#11182759;display:none;position:fixed;inset:0}@media (width<=900px){.sidebar-mobile-toggle{display:flex}.sidebar-backdrop{display:block}.app-sidebar{transform:translate(-100%);box-shadow:4px 0 16px #00000014}.app-sidebar.open{transform:translate(0)}}.login-page-container{box-sizing:border-box;background-color:#f5f5f7;justify-content:center;align-items:center;width:100%;min-height:100vh;padding:24px 16px;font-family:Comfortaa,cursive,sans-serif;font-weight:500;display:flex}.login-card{box-sizing:border-box;background:#fff;border:1px solid #00000014;border-radius:18px;width:100%;max-width:420px;padding:44px 38px;animation:.28s cubic-bezier(.16,1,.3,1) appleLoginCardPop;box-shadow:0 16px 36px #0000000f,0 2px 6px #00000008}@keyframes appleLoginCardPop{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.login-header{text-align:center;margin-bottom:28px}.login-badge-wrap{color:#fff;background:linear-gradient(135deg,#1d1d1f 0%,#3a3a3c 100%);border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:18px;display:inline-flex;box-shadow:0 4px 12px #00000026}.login-badge-text{letter-spacing:.05em;font-family:Comfortaa,cursive,sans-serif;font-size:16px;font-weight:700}.login-title{color:#1d1d1f;letter-spacing:-.02em;margin:0 0 6px;font-family:Comfortaa,cursive,sans-serif;font-size:24px;font-weight:700}.login-subtitle{color:#6e6e73;margin:0;font-size:14px;line-height:1.5}.login-alert-error{color:#b91c1c;background-color:#fef2f2;border:1px solid #fca5a5;border-radius:8px;align-items:flex-start;gap:10px;margin-bottom:22px;padding:12px 14px;font-size:13.5px;line-height:1.4;animation:.2s ease-out loginAlertSlide;display:flex}@keyframes loginAlertSlide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.login-alert-error .alert-icon{flex-shrink:0;margin-top:1px}.login-alert-error .alert-text{flex:1}.login-form{flex-direction:column;gap:20px;display:flex}.login-field-group{text-align:left;flex-direction:column;gap:7px;display:flex}.login-label{color:#1f2937;font-size:13.5px;font-weight:600}.login-input-container{align-items:center;width:100%;display:flex;position:relative}.login-input-lead-icon{color:#9ca3af;pointer-events:none;z-index:2;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.login-input-lead-icon svg{display:block}.login-input-container input.login-input{color:#1f2937;box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:8px;outline:none;width:100%;height:44px;padding-right:14px;font-size:14px;transition:border-color .15s,box-shadow .15s;padding-left:44px!important}.login-input-container input.login-input:focus{border-color:#374151;box-shadow:0 0 0 3px #3741511a}.login-input-container input.login-input::placeholder{color:#9ca3af;font-size:13.5px}.login-input-container input.login-input:disabled{cursor:not-allowed;color:#9ca3af;background-color:#f9fafb}.login-input-container input.login-input.login-input-password{padding-right:44px!important}.login-toggle-password{cursor:pointer;color:#9ca3af;z-index:2;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.login-toggle-password svg{display:block}.login-toggle-password:hover{color:#374151}.login-options-row{justify-content:space-between;align-items:center;display:flex}.login-checkbox-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:flex}.login-checkbox{accent-color:#374151;cursor:pointer;border:1px solid #d1d5db;border-radius:4px;width:16px;height:16px;margin:0}.login-checkbox-text{color:#4b5563;font-size:13.5px}.login-submit-btn{color:#fff;cursor:pointer;background-color:#374151;border:none;border-radius:8px;justify-content:center;align-items:center;width:100%;height:44px;font-size:14.5px;font-weight:600;transition:background-color .15s,transform 50ms;display:flex;box-shadow:0 1px 2px #0000000d}.login-submit-btn:hover:not(:disabled){background-color:#1f2937}.login-submit-btn:active:not(:disabled){transform:translateY(1px)}.login-submit-btn:disabled{opacity:.7;cursor:not-allowed}.login-btn-loading{align-items:center;gap:8px;display:flex}.login-spinner{animation:.9s linear infinite loginSpin}@keyframes loginSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.auth-spinner-large{border:3px solid #e5e7eb;border-top-color:#374151;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite loginSpin}@media (width<=480px){.login-card{box-shadow:none;border-color:#e5e7eb;border-radius:10px;padding:28px 20px}.login-header{margin-bottom:22px}.login-title{font-size:21px}}.custom-dropdown-container{width:100%;position:relative}.custom-dropdown-trigger{background-color:var(--surface,#fff);width:100%;height:42px;min-height:42px;color:var(--text-primary,#1d1d1f);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;box-sizing:border-box;border:1px solid #0000001a;border-radius:10px;outline:none;align-items:center;padding:0 38px 0 14px;font-family:Comfortaa,cursive,sans-serif;font-size:13.5px;font-weight:500;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex;position:relative;box-shadow:0 1px 2px #00000005}.custom-dropdown-trigger:hover:not(:disabled){background-color:#fff;border-color:#0003}.custom-dropdown-trigger.is-focused,.custom-dropdown-trigger:focus-visible{border-color:var(--apple-blue,#0071e3);background-color:#fff;box-shadow:0 0 0 4px #0071e32e}.custom-dropdown-trigger.is-invalid{background-color:#fff0ef;border-color:#ff3b30!important}.custom-dropdown-trigger.is-invalid:focus-visible{box-shadow:0 0 0 4px #ff3b302e!important}.custom-dropdown-trigger:disabled{color:#86868b;cursor:not-allowed;box-shadow:none;background-color:#f5f5f7;border-color:#0000000d}.custom-dropdown-value{white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;flex:1;overflow:hidden}.custom-dropdown-placeholder{color:#86868b;font-weight:400}.custom-dropdown-arrow{color:#6e6e73;pointer-events:none;justify-content:center;align-items:center;transition:transform .22s cubic-bezier(.16,1,.3,1),color .18s;display:flex;position:absolute;top:50%;right:13px;transform:translateY(-50%)}.custom-dropdown-arrow.is-open{color:var(--apple-blue,#0071e3);transform:translateY(-50%)rotate(180deg)}.custom-dropdown-menu{-webkit-backdrop-filter:blur(25px)saturate(180%);z-index:1050;box-sizing:border-box;background-color:#fffffff5;border:1px solid #00000014;border-radius:12px;max-height:260px;margin:0;padding:6px;list-style:none;animation:.18s cubic-bezier(.16,1,.3,1) appleDropdownFade;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 32px #0000001f,0 2px 6px #0000000a}.custom-dropdown-menu::-webkit-scrollbar{width:6px}.custom-dropdown-menu::-webkit-scrollbar-track{background:0 0}.custom-dropdown-menu::-webkit-scrollbar-thumb{background:#00000026;border-radius:9999px}.custom-dropdown-menu::-webkit-scrollbar-thumb:hover{background:#00000040}@keyframes appleDropdownFade{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.custom-dropdown-item{color:#1d1d1f;cursor:pointer;-webkit-user-select:none;user-select:none;letter-spacing:-.01em;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:13.5px;font-weight:500;transition:all .15s;display:flex}.custom-dropdown-item:hover,.custom-dropdown-item.is-highlighted{color:var(--apple-blue,#0071e3);background-color:#0071e314}.custom-dropdown-item.is-selected{background-color:var(--apple-blue,#0071e3);color:#fff;font-weight:600}.custom-dropdown-item.is-selected .custom-dropdown-check{color:#fff}.custom-dropdown-check{color:var(--apple-blue,#0071e3);flex-shrink:0;margin-left:8px}.custom-dropdown-empty{color:#86868b;text-align:center;padding:14px 12px;font-size:13px}:root{--dashboard-page-gap:24px;--dashboard-card-radius:var(--radius-card,14px);--dashboard-card-padding:24px;--dashboard-border:var(--border,#e5e7eb);--dashboard-bg:var(--app-bg,#f8f9fb)}.dashboard-container,.dashboard-page{box-sizing:border-box;gap:var(--dashboard-page-gap);width:100%;min-width:0;max-width:100%;color:var(--text-primary,#1f2937);background-color:#0000;flex-direction:column;padding:0;font-family:inherit;display:flex}.dashboard-header-wrapper{background:var(--surface,#fff);border:1px solid var(--border,#00000014);border-radius:var(--radius-card,16px);box-shadow:var(--shadow-card,0 2px 10px #0000000a);box-sizing:border-box;width:100%;min-width:0;padding:24px 28px;transition:box-shadow .25s}.dashboard-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.dashboard-title-group h1{color:var(--text-primary,#1d1d1f);letter-spacing:-.025em;margin:0 0 4px;font-size:26px;font-weight:700}.dashboard-subtitle{color:var(--text-secondary,#6e6e73);margin:0;font-size:13.5px;font-weight:400}.dashboard-date-badge{background:var(--secondary-bg,#f5f5f7);border:1px solid var(--border-subtle,#0000000a);border-radius:var(--radius-pill,9999px);color:var(--text-primary,#1d1d1f);white-space:nowrap;align-items:center;gap:8px;padding:6px 14px;font-size:12.5px;font-weight:500;display:inline-flex}.dashboard-filters-bar{border-top:1px solid var(--border,#e5e7eb);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;padding-top:16px;display:flex}.dashboard-filter-group,.filters-left-group{flex-wrap:wrap;flex:1;align-items:flex-end;gap:14px;display:flex}.filter-select-wrapper{flex-direction:column;gap:6px;display:flex}.filter-label{color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:700}.dashboard-select{background-color:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius-input,10px);height:44px;color:var(--text-primary,#1f2937);cursor:pointer;outline:none;min-width:145px;padding:0 42px 0 14px;font-size:13.5px;font-weight:500;transition:border-color .18s,box-shadow .18s}.dashboard-select:hover{border-color:#d1d5db}.dashboard-select:focus{border-color:var(--border-focus,#9ca3af);box-shadow:0 0 0 3px #9ca3af40}.custom-date-range{align-items:center;gap:8px;display:flex}.dashboard-date-input{background-color:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius-input,10px);height:44px;color:var(--text-primary,#1f2937);outline:none;padding:0 12px;font-size:13px}.dashboard-date-input:focus{border-color:var(--border-focus,#9ca3af);box-shadow:0 0 0 3px #9ca3af40}.date-separator{color:var(--text-muted,#9ca3af);font-size:12px}.dashboard-refresh-btn{background-color:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius-pill,9999px);height:44px;color:var(--text-primary,#374151);cursor:pointer;white-space:nowrap;align-items:center;gap:8px;padding:0 20px;font-size:13.5px;font-weight:600;transition:all .18s;display:inline-flex}.dashboard-refresh-btn:hover:not(:disabled){background-color:var(--hover-bg,#f3f4f6);color:#111827;border-color:#d1d5db}.dashboard-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.spin-icon{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dashboard-kpi-grid,.kpi-grid{box-sizing:border-box;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;width:100%;min-width:0;display:grid}.dashboard-kpi-card,.kpi-card{background:var(--surface,#fff);border:1px solid var(--border,#00000012);border-radius:var(--radius-card,16px);width:100%;min-width:0;height:160px;box-shadow:var(--shadow-card,0 2px 10px #0000000a);cursor:pointer;box-sizing:border-box;flex-direction:column;justify-content:space-between;padding:22px;transition:transform .22s cubic-bezier(.16,1,.3,1),box-shadow .22s,border-color .22s;display:flex}.dashboard-kpi-card:hover,.kpi-card:hover{box-shadow:var(--shadow-card-hover,0 8px 24px #00000012);border-color:#0000001f;transform:translateY(-3px)}.kpi-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.kpi-title{color:var(--text-secondary,#6e6e73);letter-spacing:-.01em;font-size:13px;font-weight:500}.kpi-icon-box{border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;transition:transform .2s;display:flex}.dashboard-kpi-card:hover .kpi-icon-box{transform:scale(1.06)}.kpi-value{color:var(--text-primary,#1d1d1f);letter-spacing:-.03em;margin:0;font-size:26px;font-weight:700;line-height:1.15}.kpi-icon-badge{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.kpi-icon-badge.blue,.kpi-icon-badge.emerald,.kpi-icon-badge.navy,.kpi-icon-badge.purple{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb}.kpi-value{color:var(--text-primary,#1f2937);letter-spacing:-.02em;font-size:26px;font-weight:800;font-family:var(--font-heading);margin:0}.kpi-footer{border-top:1px solid #f3f4f6;justify-content:space-between;align-items:center;margin-top:14px;padding-top:10px;font-size:11.5px;display:flex}.kpi-comparison{align-items:center;gap:3px;font-weight:600;display:inline-flex}.kpi-comparison.positive{color:var(--success,#10b981)}.kpi-comparison.negative{color:var(--danger,#ef4444)}.kpi-comparison.neutral{color:var(--text-muted,#9ca3af)}.kpi-link-hint{color:var(--text-muted,#9ca3af);align-items:center;gap:2px;font-weight:600;transition:color .15s;display:inline-flex}.kpi-card:hover .kpi-link-hint{color:var(--primary,#1f2937)}.dashboard-grid-2-col,.dashboard-charts-grid{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:24px;width:100%;display:grid}.dashboard-panel{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:var(--radius-card,14px);box-shadow:var(--shadow-card,0 1px 4px #0000000d);box-sizing:border-box;flex-direction:column;min-width:0;padding:24px 28px;display:flex}.panel-header{border-bottom:1px solid var(--border,#e5e7eb);justify-content:space-between;align-items:center;margin-bottom:22px;padding-bottom:14px;display:flex}.panel-title-group h2{color:var(--text-primary,#1f2937);letter-spacing:-.015em;margin:0 0 3px;font-size:17px;font-weight:700}.panel-subtitle{color:var(--text-secondary,#6b7280);margin:0;font-size:12.5px}.panel-header-action{color:var(--text-primary,#374151);border-radius:var(--radius-pill,9999px);background:#f3f4f6;border:1px solid #e5e7eb;align-items:center;gap:4px;padding:5px 12px;font-size:12px;font-weight:700;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.panel-header-action:hover{color:#111827;background:#e5e7eb}.chart-container-box{width:100%;min-height:320px;position:relative}.custom-chart-tooltip{border:1px solid var(--border,#e5e7eb);box-shadow:var(--shadow-float,0 10px 25px -5px #00000014);background:#fff;border-radius:8px;padding:10px 14px;font-size:12px}.tooltip-label{color:var(--text-primary,#1f2937);border-bottom:1px solid var(--border,#e5e7eb);margin-bottom:6px;padding-bottom:4px;font-weight:700}.tooltip-item{justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.chart-empty-state{min-height:260px;color:var(--text-muted,#9ca3af);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.chart-empty-icon{color:#9ca3af}.status-overview-content{flex-direction:column;gap:20px;display:flex}.status-progress-track{border-radius:var(--radius-pill,9999px);background-color:#f3f4f6;border:1px solid #e5e7eb;width:100%;height:10px;position:relative;overflow:hidden}.status-progress-fill{border-radius:var(--radius-pill,9999px);background-color:#374151;height:100%;transition:width .6s cubic-bezier(.16,1,.3,1)}.status-metrics-list{flex-direction:column;gap:12px;display:flex}.status-metric-row{background:var(--surface-soft,#f3f4f6);border:1px solid var(--border,#e5e7eb);color:inherit;border-radius:10px;justify-content:space-between;align-items:center;padding:13px 16px;text-decoration:none;transition:all .16s;display:flex}.status-metric-row:hover{background:#e5e7eb;border-color:#d1d5db;transform:translate(2px)}.status-metric-left{align-items:center;gap:10px;display:flex}.status-indicator-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.status-indicator-dot.blue{background-color:#4b5563;box-shadow:0 0 0 3px #4b556333}.status-indicator-dot.green{background-color:#10b981;box-shadow:0 0 0 3px #10b98133}.status-indicator-dot.amber{background-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}.status-metric-label{color:var(--text-primary,#1f2937);font-size:13.5px;font-weight:600}.status-metric-val{color:var(--text-primary,#1f2937);font-size:15px;font-weight:800;font-family:var(--font-heading)}.payment-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:100%;display:grid}.panel-title-with-icon{align-items:center;gap:12px;display:flex}.panel-header-icon-box{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.panel-header-icon-box.peach,.panel-header-icon-box.green{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb}.payment-card-list{flex-direction:column;gap:12px;width:100%;display:flex}.payment-row-item{background:var(--surface-soft,#f3f4f6);border:1px solid var(--border,#e5e7eb);border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:15px 18px;transition:all .16s;display:flex}.payment-row-item:hover{background:#e5e7eb;border-color:#d1d5db}.payment-row-item.highlight{background:#fff;border:1px solid #d1d5db}.payment-row-item.highlight:hover{background:#f9fafb;border-color:#9ca3af}.payment-label-group{flex-direction:column;gap:3px;display:flex}.payment-label-title{color:var(--text-primary,#1f2937);font-size:13.5px;font-weight:700}.payment-label-hint{color:var(--text-secondary,#6b7280);font-size:11.5px}.payment-amount-val{color:var(--text-primary,#1f2937);letter-spacing:-.01em;font-size:17px;font-weight:800;font-family:var(--font-heading);text-align:right;white-space:nowrap}.payment-amount-val.positive{color:var(--success,#10b981)}.payment-amount-val.pending{color:#374151}.tables-grid,.dashboard-tables-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:100%;display:grid}.table-responsive-wrapper{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);box-sizing:border-box;-webkit-overflow-scrolling:touch;border-radius:10px;width:100%;overflow-x:auto}.dashboard-table{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.dashboard-table th{background:var(--surface-soft,#f3f4f6);color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border,#e5e7eb);white-space:nowrap;padding:13px 16px;font-size:11.5px;font-weight:700}.dashboard-table td{color:var(--text-primary,#1f2937);vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:13px 16px}.dashboard-table tbody tr:hover{background-color:#f9fafb}.dashboard-table tbody tr:last-child td{border-bottom:none}.guest-name{color:var(--text-primary,#1f2937);font-weight:600}.dest-text{color:var(--text-secondary,#6b7280)}.crm-badge{color:#1f2937;white-space:nowrap;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;padding:4px 9px;font-family:monospace;font-size:11.5px;font-weight:700;display:inline-block}.status-tag,.status-badge-pill{border-radius:var(--radius-pill,9999px);white-space:nowrap;align-items:center;gap:5px;padding:4px 11px;font-size:11.5px;font-weight:700;display:inline-flex}.status-tag.completed,.status-badge-pill.completed{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.status-tag.pending,.status-badge-pill.pending{color:var(--warning,#d97706);background:#fffbeb;border:1px solid #fde68a}.days-tag{border-radius:var(--radius-pill,9999px);white-space:nowrap;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.days-tag.today{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.days-tag.upcoming{color:#374151;background:#f3f4f6;border:1px solid #e5e7eb}.empty-table-row{text-align:center;color:var(--text-muted,#9ca3af);font-size:13px;padding:28px 16px!important}.erp-view-button,.table-action-link{color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:6px 14px;font-size:12.5px;font-weight:600;text-decoration:none;transition:all .16s;display:inline-flex}.erp-view-button:hover,.table-action-link:hover{color:#111827;background:#f3f4f6;border-color:#9ca3af;transform:translateY(-1px);box-shadow:0 1px 3px #0000000d}.erp-view-button:focus-visible,.table-action-link:focus-visible{outline-offset:2px;outline:2px solid #9ca3af}.erp-view-button:active,.table-action-link:active{transform:translateY(0)}.skeleton-line{background:linear-gradient(90deg,#f3f4f6 25%,#e5e7eb 50%,#f3f4f6 75%) 0 0/200% 100%;border-radius:6px;animation:1.5s infinite shimmer}.skeleton-kpi-value{width:100px;height:28px;margin:6px 0}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width<=1200px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid-2-col,.dashboard-charts-grid,.tables-grid,.dashboard-tables-grid,.payment-overview-grid{grid-template-columns:1fr}}@media (width<=768px){.dashboard-header-wrapper{padding:18px 20px}.dashboard-filters-bar,.dashboard-filter-group{flex-direction:column;align-items:stretch}.dashboard-select,.dashboard-date-input,.dashboard-refresh-btn{width:100%}.dashboard-panel{padding:18px 20px}}@media (width<=600px){.dashboard-kpi-grid{grid-template-columns:1fr}.payment-row-item{flex-direction:column;align-items:flex-start}.payment-amount-val{text-align:left}}.report-list-page,.first-report-list-page{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0 auto}.report-list-header,.list-page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.report-list-header-left,.header-left,.list-header-left{flex-direction:column;display:flex}.report-list-title,.page-main-title,.list-page-title{color:var(--text-primary,#1f2937);letter-spacing:-.02em;margin:0 0 4px;font-size:24px;font-weight:800}.report-list-subtitle,.page-subtitle,.list-page-subtitle{color:var(--text-secondary,#6b7280);margin:0;font-size:13.5px}.btn-primary-add{background-color:var(--apple-blue,#0071e3);color:#fff;border-radius:var(--radius-pill,9999px);border:1px solid var(--apple-blue,#0071e3);cursor:pointer;white-space:nowrap;box-sizing:border-box;align-items:center;gap:8px;height:40px;padding:0 18px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex;box-shadow:0 2px 6px #0071e340}.btn-primary-add:hover{background-color:var(--apple-blue-hover,#0077ed);transform:translateY(-1px);box-shadow:0 4px 12px #0071e359}.alert-banner{border-radius:var(--radius-sm,8px);align-items:center;gap:12px;margin-bottom:20px;padding:12px 18px;font-size:13.5px;animation:.2s fadeIn;display:flex}.alert-banner.alert-success{background-color:var(--success-bg,#ecfdf5);border:1px solid var(--success-border,#a7f3d0);color:var(--success-color,#059669)}.alert-banner.alert-danger{background-color:var(--danger-bg,#fef2f2);border:1px solid var(--danger-border,#fecaca);color:var(--danger-color,#dc2626)}.alert-banner .alert-icon{flex-shrink:0}.alert-banner .alert-content{flex:1}.alert-close-btn{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:opacity .15s;display:flex}.alert-close-btn:hover{opacity:1}.report-filter-card,.list-filter-card{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-card,14px);box-shadow:var(--shadow-card,0 1px 4px #0000000d);box-sizing:border-box;width:100%;margin-bottom:22px;padding:20px 24px}.report-filter-row,.filter-row{box-sizing:border-box;align-items:center;gap:16px;width:100%;display:flex}.report-search,.filter-search-wrapper,.filter-search-box{flex:1;align-items:center;min-width:260px;display:flex;position:relative}.report-search-icon,.search-icon,.search-icon-inside{color:var(--text-muted,#9ca3af);pointer-events:none;z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.report-search-input,.filter-search-input,.search-input-field{outline:none;transition:all .18s;background-color:var(--surface,#fff)!important;border:1px solid var(--border-default,#e5e7eb)!important;border-radius:var(--radius-input,10px)!important;width:100%!important;height:44px!important;min-height:44px!important;color:var(--text-primary,#1f2937)!important;box-sizing:border-box!important;padding:0 38px 0 42px!important;font-size:13.5px!important}.report-search-input:focus,.filter-search-input:focus,.search-input-field:focus{border-color:var(--border-focus,#9ca3af)!important;box-shadow:0 0 0 3px #9ca3af40!important}.search-clear-btn{cursor:pointer;color:var(--text-muted,#9ca3af);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.search-clear-btn:hover{color:var(--text-primary,#1f2937)}.report-filter-dropdowns,.filter-dropdowns-group{flex-shrink:0;align-items:center;gap:16px;display:flex}.report-filter-select,.filter-select{cursor:pointer;outline:none;background-color:var(--surface,#fff)!important;border:1px solid var(--border-default,#e5e7eb)!important;border-radius:var(--radius-input,10px)!important;height:44px!important;min-height:44px!important;color:var(--text-primary,#1f2937)!important;box-sizing:border-box!important;width:180px!important;min-width:160px!important;padding:0 42px 0 14px!important;font-size:13.5px!important;font-weight:500!important}.report-filter-select:focus,.filter-select:focus{border-color:var(--border-focus,#9ca3af)!important;box-shadow:0 0 0 3px #9ca3af40!important}.btn-filter-reset{border-radius:var(--radius-input,10px);background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);height:44px;color:var(--text-secondary,#6b7280);cursor:pointer;white-space:nowrap;box-sizing:border-box;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-size:13px;font-weight:600;transition:all .16s;display:inline-flex}.btn-filter-reset:hover{background-color:var(--surface-soft,#f3f4f6);color:var(--text-primary,#1f2937);border-color:#d1d5db}.list-table-card{background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-card,14px);box-shadow:var(--shadow-card,0 1px 4px #0000000d);box-sizing:border-box;width:100%;overflow:hidden}.table-responsive-wrapper{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.first-report-table,.report-list-table{border-collapse:separate;border-spacing:0;text-align:left;width:100%;font-size:13px}.first-report-table th,.report-list-table th{color:#6e6e73;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;background-color:#fafafc;border-bottom:1px solid #00000014;padding:12px 18px;font-size:11px;font-weight:600}.first-report-table td,.report-list-table td{color:#1d1d1f;vertical-align:middle;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border-bottom:1px solid #0000000d;padding:14px 18px;transition:background-color .15s}.first-report-table tbody tr:hover,.report-list-table tbody tr:hover{background-color:#00000005}.first-report-table tbody tr:last-child td,.report-list-table tbody tr:last-child td{border-bottom:none}.crm-badge,.crm-id-cell{color:#1d1d1f;white-space:nowrap;letter-spacing:-.01em;background:#f5f5f7;border:1px solid #0000000f;border-radius:6px;padding:4px 8px;font-family:Comfortaa,cursive,sans-serif;font-size:12px;font-weight:600;display:inline-block}.branch-tag,.branch-pill,.tour-badge{border-radius:var(--radius-pill,9999px);color:#1d1d1f;white-space:nowrap;background:#f5f5f7;border:1px solid #0000000f;padding:3px 9px;font-size:11px;font-weight:500;display:inline-block}.status-badge{border-radius:var(--radius-pill,9999px);white-space:nowrap;align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.status-badge.status-completed,.status-badge.completed{color:#248a3d;background:#eaf8ee;border:1px solid #c2f0ce}.status-badge.status-pending,.status-badge.pending{color:#c97200;background:#fff8eb;border:1px solid #ffe2b3}.status-badge-dot{background-color:currentColor;border-radius:50%;width:6px;height:6px}.action-buttons-cell,.action-buttons-group{justify-content:center;align-items:center;gap:6px;display:flex}.action-icon-btn{color:#6e6e73;cursor:pointer;background:#fff;border:1px solid #00000014;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;text-decoration:none;transition:all .18s cubic-bezier(.16,1,.3,1);display:flex}.action-icon-btn:hover{color:#1d1d1f;background-color:#f5f5f7;border-color:#00000029;transform:translateY(-1px)}.action-icon-btn.view-btn:hover,.action-icon-btn.edit-btn:hover,.action-icon-btn.print-btn:hover{color:#1d1d1f;background-color:#f5f5f7;border-color:#00000029}.action-icon-btn.delete-btn:hover{color:#d70015;background-color:#fff0ef;border-color:#ffcdca}.action-icon-btn.action-plus-btn{color:#374151;background-color:#f3f4f6;border-color:#d1d5db}.action-icon-btn.action-plus-btn:hover{color:#fff;background-color:#374151;border-color:#374151}.report-empty-state,.state-container,.empty-state-box{text-align:center;box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;min-height:260px;margin:0 auto;padding:40px 24px;display:flex}.report-empty-icon,.state-icon-wrapper,.empty-state-icon{background-color:var(--surface-soft,#f3f4f6);border:1px solid var(--border-default,#e5e7eb);width:60px;height:60px;color:var(--text-secondary,#6b7280);border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.report-empty-title,.state-title{color:var(--text-primary,#1f2937);letter-spacing:-.01em;margin:0;font-size:16px;font-weight:700}.report-empty-description,.state-desc{color:var(--text-secondary,#6b7280);max-width:440px;margin:0;font-size:13.5px;line-height:1.5}.report-empty-action{margin-top:8px}.btn-retry,.btn-clear-search{border-radius:var(--radius-input,10px);border:1px solid var(--border-default,#e5e7eb);color:var(--text-primary,#1f2937);cursor:pointer;background-color:#fff;align-items:center;gap:6px;margin-top:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .16s;display:inline-flex}.btn-retry:hover,.btn-clear-search:hover{background-color:var(--surface-soft,#f3f4f6);border-color:#d1d5db}.loading-spinner{border:3px solid #e5e7eb;border-top-color:#374151;border-radius:50%;width:36px;height:36px;margin-bottom:6px;animation:.8s linear infinite spin}.pagination-bar{border-top:1px solid var(--border-default,#e5e7eb);background:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 20px;display:flex}.pagination-info{color:var(--text-secondary,#6b7280);font-size:13px}.pagination-controls{align-items:center;gap:6px;display:flex}.page-btn{border:1px solid var(--border-default,#e5e7eb);min-width:32px;height:32px;color:var(--text-primary,#1f2937);cursor:pointer;background:#fff;border-radius:6px;justify-content:center;align-items:center;padding:0 10px;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.page-btn:hover:not(:disabled){background-color:var(--surface-soft,#f3f4f6);border-color:#d1d5db}.page-btn.active{color:#fff;background-color:#374151;border-color:#374151}.page-btn:disabled{opacity:.45;cursor:not-allowed}@media (width<=900px){.report-filter-row,.filter-row{flex-direction:column;align-items:stretch;gap:12px}.report-search,.filter-search-wrapper,.filter-search-box{width:100%;min-width:0}.report-filter-dropdowns,.filter-dropdowns-group{flex-wrap:wrap;gap:12px;width:100%}.report-filter-select,.filter-select{flex:calc(50% - 6px)!important;width:auto!important;min-width:130px!important}.btn-filter-reset{width:100%}}@media (width<=600px){.report-list-header,.list-page-header{flex-direction:column;align-items:flex-start;gap:12px}.btn-primary-add{justify-content:center;width:100%}.report-filter-select,.filter-select{flex:100%!important;width:100%!important}}.modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172aa6;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out modalOverlayFadeIn;display:flex;position:fixed;inset:0}@keyframes modalOverlayFadeIn{0%{opacity:0}to{opacity:1}}.modal-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;flex-direction:column;gap:20px;width:100%;max-width:480px;padding:28px;animation:.2s cubic-bezier(.16,1,.3,1) modalContentPop;display:flex;box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #0000000d}@keyframes modalContentPop{0%{opacity:0;transform:translateY(-10px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.modal-header-section{align-items:flex-start;gap:16px;display:flex}.modal-danger-icon{color:#dc2626;background-color:#fee2e2;border:1px solid #fecaca;border-radius:12px;justify-content:center;align-items:center;width:48px;min-width:48px;height:48px;display:flex}.modal-header-text{flex:1}.modal-title{color:#111827;letter-spacing:-.01em;margin:0 0 8px;font-size:18px;font-weight:700}.modal-message{color:#4b5563;margin:0;font-size:14px;line-height:1.55}.modal-error-alert{color:#b91c1c;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:10px;padding:10px 14px;font-size:13.5px;display:flex}.modal-actions{border-top:1px solid #f3f4f6;justify-content:flex-end;align-items:center;gap:12px;margin-top:4px;padding-top:16px;display:flex}.btn-modal-cancel{color:#374151;cursor:pointer;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;justify-content:center;align-items:center;padding:10px 18px;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.btn-modal-cancel:hover:not(:disabled){color:#111827;background-color:#f9fafb;border-color:#9ca3af}.btn-modal-delete{color:#fff;cursor:pointer;background-color:#dc2626;border:1px solid #dc2626;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex;box-shadow:0 1px 2px #dc26261a}.btn-modal-delete:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.btn-modal-cancel:disabled,.btn-modal-delete:disabled{opacity:.6;cursor:not-allowed}.modal-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite modalSpin}@keyframes modalSpin{to{transform:rotate(360deg)}}.custom-datepicker-container{width:100%;position:relative}.custom-datepicker-input-wrapper{cursor:pointer;align-items:center;width:100%;display:flex;position:relative}.custom-datepicker-input-wrapper .date-display-input,.custom-datepicker-input-wrapper input.form-control,.custom-datepicker-input-wrapper input.payment-input{cursor:pointer;transition:border-color .18s,box-shadow .18s;background-color:var(--surface,#fff)!important;border-radius:var(--radius-input,10px)!important;border:1px solid var(--border-default,#e5e7eb)!important;height:44px!important;color:var(--text-primary,#1f2937)!important;box-sizing:border-box!important;width:100%!important;padding-right:40px!important;font-size:13.5px!important;font-weight:500!important}.custom-datepicker-input-wrapper.is-focused .date-display-input,.custom-datepicker-input-wrapper:hover .date-display-input,.custom-datepicker-input-wrapper.is-focused input,.custom-datepicker-input-wrapper:hover input{border-color:var(--border-focus,#9ca3af)!important}.custom-datepicker-input-wrapper.is-focused .date-display-input,.custom-datepicker-input-wrapper.is-focused input{box-shadow:0 0 0 3px #9ca3af40!important}.calendar-icon-btn{cursor:pointer;color:var(--text-muted,#9ca3af);z-index:2;background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .18s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.calendar-icon-btn:hover{color:var(--text-primary,#1f2937)}.custom-calendar-popup{z-index:99999;border:1px solid var(--border,#e5e7eb);-webkit-user-select:none;user-select:none;box-sizing:border-box;background:#fff;border-radius:14px;width:300px;padding:14px 16px 12px;font-family:inherit;animation:.15s cubic-bezier(.16,1,.3,1) fadeInPopup;position:absolute;box-shadow:0 10px 25px -5px #00000014,0 8px 10px -6px #0000000a}@keyframes fadeInPopup{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.calendar-header{border-bottom:1px solid var(--border,#e5e7eb);justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:10px;display:flex}.calendar-nav-btn{background:var(--surface-soft,#f3f4f6);border:1px solid var(--border,#e5e7eb);width:30px;height:30px;color:var(--text-secondary,#6b7280);cursor:pointer;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.calendar-nav-btn:hover{color:#111827;background:#e5e7eb;border-color:#d1d5db}.calendar-selectors{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}.cal-picker-wrapper{position:relative}.cal-picker-trigger{border:1px solid var(--border,#e5e7eb);height:32px;color:var(--text-primary,#1f2937);cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border-radius:6px;outline:none;justify-content:space-between;align-items:center;gap:6px;padding:0 10px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.cal-picker-trigger:hover,.cal-picker-trigger.is-active{background:var(--surface-soft,#f3f4f6);color:#111827;border-color:#9ca3af}.cal-picker-trigger:focus-visible{border-color:var(--border-focus,#9ca3af);box-shadow:0 0 0 2px #9ca3af40}.cal-picker-val{white-space:nowrap}.cal-picker-chevron{color:#6b7280;flex-shrink:0;transition:transform .18s}.cal-picker-chevron.is-open{transform:rotate(180deg)}.cal-picker-menu{border:1px solid var(--border,#e5e7eb);z-index:100005;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#d1d5db #f3f4f6;background:#fff;border-radius:10px;max-height:220px;margin:0;padding:6px;list-style:none;animation:.12s cubic-bezier(.16,1,.3,1) pickerMenuFade;position:absolute;top:calc(100% + 4px);left:50%;overflow:hidden auto;transform:translate(-50%);box-shadow:0 10px 25px -5px #00000014,0 8px 10px -6px #0000000a}.cal-picker-menu.month-menu{width:130px}.cal-picker-menu.year-menu{width:100px}@keyframes pickerMenuFade{0%{opacity:0;transform:translate(-50%,-4px)}to{opacity:1;transform:translate(-50%)}}.cal-picker-menu::-webkit-scrollbar{width:5px}.cal-picker-menu::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.cal-picker-menu::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.cal-picker-menu::-webkit-scrollbar-thumb:hover{background:#9ca3af}.cal-picker-item{color:var(--text-primary,#1f2937);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:6px;justify-content:space-between;align-items:center;padding:6px 10px;font-size:12.5px;font-weight:500;transition:background-color .12s,color .12s;display:flex}.cal-picker-item:hover{background-color:var(--surface-soft,#f3f4f6);color:#111827}.cal-picker-item.is-selected{color:#111827;background-color:#e5e7eb;font-weight:700}.cal-picker-check{color:#111827;flex-shrink:0}.calendar-weekdays{text-align:center;color:var(--text-muted,#9ca3af);text-transform:uppercase;letter-spacing:.5px;grid-template-columns:repeat(7,1fr);margin-bottom:6px;font-size:11px;font-weight:700;display:grid}.calendar-weekdays span{padding:4px 0}.calendar-days-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.calendar-day-empty{aspect-ratio:1}.calendar-day-btn{aspect-ratio:1;cursor:pointer;color:var(--text-primary,#1f2937);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:12.5px;font-weight:500;transition:background-color .15s,color .15s,transform .1s;display:flex}.calendar-day-btn:hover:not(.is-disabled):not(.is-selected){background-color:var(--surface-soft,#f3f4f6);color:#111827}.calendar-day-btn.is-today{border:1.5px solid #374151;font-weight:700}.calendar-day-btn.is-selected{font-weight:700;box-shadow:0 1px 3px #0000001a;color:#fff!important;background-color:#374151!important}.calendar-day-btn.is-disabled{color:#d1d5db;cursor:not-allowed;background-color:#0000!important}.calendar-footer{border-top:1px solid var(--border,#e5e7eb);justify-content:space-between;margin-top:12px;padding-top:10px;display:flex}.cal-btn-today,.cal-btn-clear{cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600;transition:background-color .15s}.cal-btn-today{color:#374151}.cal-btn-today:hover{color:#111827;background:#f3f4f6}.cal-btn-clear{color:var(--danger,#ef4444)}.cal-btn-clear:hover{background:var(--danger-bg,#fef2f2)}.services-client-section{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;border-radius:16px;width:100%;min-width:0;margin:0;padding:28px 30px;box-shadow:0 3px 12px #0f172a09}.services-header-row,.services-header-banner{border-bottom:1px solid var(--border-default,#e5e7eb);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding-bottom:14px;display:flex}.services-header-titles,.services-title-wrap{flex-direction:column;display:flex}.services-section-title{color:var(--text-primary,#1f2937);letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.services-section-subtitle{color:var(--text-secondary,#6b7280);margin:4px 0 0;font-size:13px;font-weight:400}.btn-add-service,.btn-empty-add{background-color:var(--primary,#374151);color:#fff;border-radius:var(--radius-button,10px);cursor:pointer;white-space:nowrap;border:1px solid #374151;align-items:center;gap:8px;padding:9px 18px;font-size:13.5px;font-weight:700;transition:all .16s;display:inline-flex;box-shadow:0 1px 3px #0000001a}.btn-add-service:hover:not(:disabled),.btn-empty-add:hover:not(:disabled){background-color:var(--primary-hover,#1f2937);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.btn-add-service:active:not(:disabled),.btn-empty-add:active:not(:disabled){transform:translateY(0)}.btn-add-service:disabled{opacity:.55;cursor:not-allowed}.services-table-wrapper{border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-md,10px);background:var(--surface,#fff);-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.services-table{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.services-table th{background-color:var(--surface-soft,#f3f4f6);color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-default,#e5e7eb);white-space:nowrap;padding:12px 14px;font-size:11.5px;font-weight:700}.services-table td{color:var(--text-primary,#1f2937);vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:8px 12px}.services-table tbody tr:hover{background-color:#f9fafb}.services-table tbody tr:last-child td{border-bottom:none}.service-row-num{color:var(--text-muted,#9ca3af);text-align:center;width:32px;font-weight:700}.service-input{border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-input,10px);width:100%;height:40px;color:var(--text-primary,#1f2937);background-color:var(--surface,#fff);box-sizing:border-box;outline:none;padding:0 10px;font-size:13.5px;transition:all .18s}.service-input:focus{border-color:var(--border-focus,#9ca3af);box-shadow:0 0 0 2px #9ca3af40}.service-input.read-only,.service-input[readonly]{background-color:var(--surface-soft,#f3f4f6);color:var(--text-primary,#1f2937);border-color:var(--border-default,#e5e7eb);font-weight:600}.service-input.is-invalid{border-color:var(--danger,#ef4444);background-color:var(--danger-bg,#fef2f2)}.srv-sno-badge,.sno-badge{color:#1d1d1f;background-color:#f5f5f7;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:11.5px;font-weight:600;display:inline-flex}.service-input-readonly{cursor:default;color:#6e6e73!important;background-color:#f5f5f7!important}.services-summary-panel,.services-summary-footer{border:1px solid var(--border-default,#e5e7eb);text-align:right;box-sizing:border-box;background:#f8f9fb;border-radius:12px;justify-content:flex-end;align-items:center;gap:20px;width:fit-content;margin-top:20px;margin-left:auto;padding:16px 24px;display:flex}.services-summary-label,.services-total-label{color:var(--text-secondary,#4b5563);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:700}.services-summary-amount,.services-total-value{color:var(--text-primary,#111827);font-size:20px;font-weight:800;font-family:var(--font-heading,inherit)}.services-empty-state{text-align:center;background:var(--surface-soft,#f3f4f6);border:1px dashed var(--border-default,#e5e7eb);border-radius:var(--radius-md,10px);flex-direction:column;align-items:center;gap:12px;padding:40px 20px;display:flex}.empty-state-text{color:var(--text-secondary,#6b7280);font-size:13.5px}.dmc-services-section{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;border-radius:16px;width:100%;min-width:0;margin:0;padding:28px 30px;box-shadow:0 3px 12px #0f172a09}.dmc-header-row,.dmc-header-banner{border-bottom:1px solid var(--border-default,#e5e7eb);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding-bottom:14px;display:flex}.dmc-header-titles,.dmc-title-wrap{flex-direction:column;display:flex}.dmc-section-title{color:var(--text-primary,#1f2937);letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.dmc-section-subtitle{color:var(--text-secondary,#6b7280);margin:4px 0 0;font-size:13px;font-weight:400}.btn-add-dmc,.btn-empty-add-dmc{background-color:var(--primary,#374151);color:#fff;border-radius:var(--radius-button,10px);cursor:pointer;white-space:nowrap;border:1px solid #374151;align-items:center;gap:8px;padding:9px 18px;font-size:13.5px;font-weight:700;transition:all .16s;display:inline-flex;box-shadow:0 1px 3px #0000001a}.btn-add-dmc:hover:not(:disabled),.btn-empty-add-dmc:hover:not(:disabled){background-color:var(--primary-hover,#1f2937);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.btn-add-dmc:active:not(:disabled),.btn-empty-add-dmc:active:not(:disabled){transform:translateY(0)}.btn-add-dmc:disabled{opacity:.55;cursor:not-allowed}.dmc-table-wrapper{border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-md,10px);background:var(--surface,#fff);-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.dmc-table{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.dmc-table th{background-color:var(--surface-soft,#f3f4f6);color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-default,#e5e7eb);white-space:nowrap;padding:12px 14px;font-size:11.5px;font-weight:700}.dmc-table td{color:var(--text-primary,#1f2937);vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:8px 12px}.dmc-table tbody tr:hover{background-color:#f9fafb}.dmc-table tbody tr:last-child td{border-bottom:none}.dmc-row-num{color:var(--text-muted,#9ca3af);text-align:center;width:32px;font-weight:700}.dmc-input{border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-input,10px);width:100%;height:40px;color:var(--text-primary,#1f2937);background-color:var(--surface,#fff);box-sizing:border-box;outline:none;padding:0 10px;font-size:13.5px;transition:all .18s}.dmc-input:focus{border-color:var(--border-focus,#9ca3af);box-shadow:0 0 0 2px #9ca3af40}.dmc-input.read-only,.dmc-input[readonly]{background-color:var(--surface-soft,#f3f4f6);color:var(--text-primary,#1f2937);border-color:var(--border-default,#e5e7eb);font-weight:600}.dmc-input.is-invalid{border-color:var(--danger,#ef4444);background-color:var(--danger-bg,#fef2f2)}.sno-badge,.srv-sno-badge{color:#1d1d1f;background-color:#f5f5f7;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:11.5px;font-weight:600;display:inline-flex}.dmc-input-readonly{cursor:default;color:#6e6e73!important;background-color:#f5f5f7!important}.btn-remove-row{border-radius:var(--radius-sm,6px);width:34px;height:34px;color:var(--text-muted,#9ca3af);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-remove-row:hover:not(:disabled){background-color:var(--danger-bg,#fef2f2);color:var(--danger,#dc2626);border-color:var(--danger-border,#fecaca)}.btn-remove-row:disabled{opacity:.3;cursor:not-allowed}.dmc-summary-panel,.dmc-summary-footer{border:1px solid var(--border-default,#e5e7eb);text-align:right;box-sizing:border-box;background:#f8f9fb;border-radius:12px;justify-content:flex-end;align-items:center;gap:20px;width:fit-content;margin-top:20px;margin-left:auto;padding:16px 24px;display:flex}.dmc-summary-label,.dmc-total-label{color:var(--text-secondary,#4b5563);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:700}.dmc-summary-amount,.dmc-total-value{color:var(--text-primary,#111827);font-size:20px;font-weight:800;font-family:var(--font-heading,inherit)}.dmc-empty-state{text-align:center;background:var(--surface-soft,#f3f4f6);border:1px dashed var(--border-default,#e5e7eb);border-radius:var(--radius-md,10px);flex-direction:column;align-items:center;gap:12px;padding:40px 20px;display:flex}.profit-summary-section{border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);margin-top:var(--section-gap);background-color:#fff;padding:22px 26px}.profit-summary-header{border-bottom:1px solid var(--border);margin-bottom:20px;padding-bottom:12px}.profit-summary-title{color:var(--text-primary);letter-spacing:-.2px;margin:0 0 3px;font-size:16px;font-weight:700}.profit-summary-subtitle{color:var(--text-secondary);margin:0;font-size:12.5px;font-weight:400}.profit-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.profit-metric-card{border:1px solid var(--border);border-radius:var(--radius-md);background-color:#fafaf8;flex-direction:column;gap:8px;padding:20px;transition:all .2s;display:flex}.profit-metric-card:hover{box-shadow:var(--shadow-sm);background-color:#fff;border-color:#a9d99899;transform:translateY(-1px)}.profit-metric-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.6px;font-size:12px;font-weight:700}.profit-metric-value{color:var(--text-primary);font-size:24px;font-weight:800;font-family:var(--font-heading);letter-spacing:-.02em}.profit-metric-desc,.profit-metric-subtext{color:var(--text-muted);font-size:12px}.profit-metric-card.card-cost:hover,.profit-metric-card.card-expense:hover{border-color:#9ca3af}.profit-metric-card.positive{background:var(--primary-light);border-color:#a9d998b3}.profit-metric-card.positive .profit-metric-label,.profit-metric-card.positive .profit-metric-value{color:var(--primary-dark)}.profit-metric-card.negative{background:var(--danger-bg);border-color:var(--danger-border)}.profit-metric-card.negative .profit-metric-label,.profit-metric-card.negative .profit-metric-value{color:var(--danger)}@media (width<=768px){.profit-metrics-grid{grid-template-columns:1fr}}.first-report-form-page{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0 auto}.form-page-header{margin-bottom:24px}.back-nav-link{color:var(--text-secondary,#6b7280);border-radius:var(--radius-pill,9999px);background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);align-items:center;gap:8px;margin-bottom:12px;padding:6px 14px;font-size:13px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.back-nav-link:hover{color:var(--text-primary,#1f2937);background-color:var(--surface-soft,#f3f4f6);border-color:#d1d5db}.form-header-banner{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-card,14px);box-shadow:var(--shadow-card,0 1px 4px #0000000d);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px 28px;display:flex}.form-header-titles{flex-direction:column;display:flex}.form-main-heading{color:var(--text-primary,#1f2937);letter-spacing:-.015em;margin:0 0 4px;font-size:22px;font-weight:800}.form-sub-heading{color:var(--text-secondary,#6b7280);margin:0;font-size:13.5px}.form-alert{border-radius:var(--radius-sm,8px);align-items:center;gap:12px;margin-bottom:20px;padding:12px 18px;font-size:13.5px;animation:.2s fadeIn;display:flex}.form-alert.alert-success{background-color:var(--success-bg,#ecfdf5);border:1px solid var(--success-border,#a7f3d0);color:var(--success-color,#059669)}.form-alert.alert-danger{background-color:var(--danger-bg,#fef2f2);border:1px solid var(--danger-border,#fecaca);color:var(--danger-color,#dc2626)}.form-alert .alert-icon{flex-shrink:0}.form-alert .alert-message{flex:1}.report-form,.first-report-form,.final-report-sections{flex-direction:column;gap:24px;width:100%;display:flex}.report-section{background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;border-radius:16px;margin:0;padding:28px 30px;box-shadow:0 3px 12px #0f172a09}.section-heading{color:var(--text-primary,#1f2937);letter-spacing:-.015em;border-bottom:1px solid var(--border-default,#e5e7eb);margin:0 0 20px;padding-bottom:12px;font-size:17px;font-weight:700}.report-grid,.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.form-grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;display:grid}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.report-column{flex-direction:column;gap:16px;display:flex}.report-field,.form-field-group{flex-direction:column;gap:6px;display:flex}.report-field label,.form-field-label{color:var(--text-primary,#1f2937);font-size:13px;font-weight:600}.report-field label .req,.required-star{color:var(--danger,#ef4444);margin-left:2px;font-weight:700}.field-hint-msg{color:var(--text-muted,#9ca3af);font-size:11.5px}.field-error-msg{color:var(--danger,#ef4444);margin-top:2px;font-size:11.5px;font-weight:500}.form-actions-bar,.form-action-bar,.form-actions{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-card,14px);box-shadow:var(--shadow-card,0 1px 4px #0000000d);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:8px;padding:20px 28px;display:flex}.btn-form{border-radius:var(--radius-button,10px);cursor:pointer;box-sizing:border-box;white-space:nowrap;justify-content:center;align-items:center;gap:8px;height:44px;padding:0 22px;font-family:inherit;font-size:13.5px;font-weight:600;text-decoration:none;transition:transform .16s cubic-bezier(.4,0,.2,1),box-shadow .16s cubic-bezier(.4,0,.2,1),background-color .16s,border-color .16s,color .16s;display:inline-flex}.btn-form#reset-form-btn,.btn-form-reset{background-color:var(--surface-soft,#f3f4f6);color:var(--text-secondary,#6b7280);border:1px solid var(--border-default,#e5e7eb);margin-right:auto}.btn-form#reset-form-btn:hover:not(:disabled),.btn-form-reset:hover:not(:disabled){color:var(--text-primary,#1f2937);background-color:#e5e7eb;border-color:#d1d5db}.btn-form#cancel-btn,.btn-form-cancel{background-color:var(--surface,#fff);color:var(--text-primary,#1f2937);border:1px solid var(--border-default,#e5e7eb)}.btn-form#cancel-btn:hover,.btn-form-cancel:hover{background-color:var(--surface-soft,#f3f4f6);border-color:#d1d5db}.btn-form.btn-submit,.btn-form#save-report-btn,.btn-form-save{background-color:var(--primary,#374151);color:#fff;border:1px solid #374151;font-weight:700;box-shadow:0 1px 3px #0000001a}.btn-form.btn-submit:hover:not(:disabled),.btn-form#save-report-btn:hover:not(:disabled),.btn-form-save:hover:not(:disabled){background-color:var(--primary-hover,#1f2937);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.btn-form:disabled{opacity:.6;cursor:not-allowed;transform:none!important}@media (width<=992px){.report-grid,.form-grid-3,.form-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=768px){.report-grid,.form-grid-3,.form-grid-4,.form-grid-2{grid-template-columns:1fr}.form-actions-bar,.form-action-bar,.form-actions{flex-direction:column-reverse;align-items:stretch}.btn-form#reset-form-btn,.btn-form-reset{justify-content:center;margin-right:0}.btn-form,.btn-form-save,.btn-form-cancel{justify-content:center;width:100%}}.first-report-view-page{box-sizing:border-box;width:100%;min-width:0;max-width:100%;margin:0 auto}.view-page-header{margin-bottom:24px}.view-header-bar{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-card,14px);box-shadow:var(--shadow-card,0 1px 4px #0000000d);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.view-header-left{align-items:center;gap:14px;display:flex}.crm-pill-large{color:#1f2937;border-radius:var(--radius-pill,9999px);background:#f3f4f6;border:1px solid #e5e7eb;align-items:center;padding:7px 16px;font-family:monospace;font-size:14px;font-weight:800;display:inline-flex}.view-title-wrap h1{color:var(--text-primary,#1f2937);letter-spacing:-.015em;margin:0 0 2px;font-size:20px;font-weight:800}.view-title-wrap p{color:var(--text-secondary,#6b7280);margin:0;font-size:13px}.view-actions-right{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn-view-action{border-radius:var(--radius-button,10px);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;gap:6px;height:44px;padding:0 18px;font-size:13.5px;font-weight:600;text-decoration:none;transition:all .16s;display:inline-flex}.btn-view-action.btn-back,.btn-view-action.btn-view-back{background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);color:var(--text-primary,#1f2937)}.btn-view-action.btn-back:hover,.btn-view-action.btn-view-back:hover{background:var(--surface-soft,#f3f4f6);border-color:#d1d5db}.btn-view-action.btn-edit,.btn-view-action.btn-view-edit{background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);color:var(--text-primary,#1f2937)}.btn-view-action.btn-edit:hover,.btn-view-action.btn-view-edit:hover{background:var(--surface-soft,#f3f4f6);border-color:#9ca3af}.btn-view-action.btn-print,.btn-view-action.btn-view-print{background:var(--surface,#fff);color:var(--text-primary,#1f2937);border:1px solid var(--border-default,#e5e7eb)}.btn-view-action.btn-print:hover,.btn-view-action.btn-view-print:hover{background:var(--surface-soft,#f3f4f6);border-color:#9ca3af}.btn-view-action.btn-view-pdf{background:var(--primary,#374151);color:#fff;border:1px solid #374151;font-weight:700;box-shadow:0 1px 3px #0000001a}.btn-view-action.btn-view-pdf:hover:not(:disabled){background:var(--primary-hover,#1f2937);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.btn-view-action.btn-view-pdf:disabled{opacity:.65;cursor:wait}.view-sections-container{gap:var(--section-gap,24px);flex-direction:column;display:flex}.view-card{background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-card,14px);box-shadow:var(--shadow-card,0 1px 4px #0000000d);box-sizing:border-box;padding:24px 28px}.view-card-title{color:var(--text-primary,#1f2937);border-bottom:1px solid var(--border-default,#e5e7eb);letter-spacing:-.01em;margin:0 0 20px;padding-bottom:12px;font-size:16px;font-weight:700}.view-grid-3,.view-details-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px 20px;display:grid}.view-column{flex-direction:column;gap:12px;display:flex}.view-data-field{border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;background:#f8f9fb;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-height:44px;padding:11px 16px;display:flex}.field-label{color:var(--text-secondary,#6b7280);white-space:nowrap;flex-shrink:0;font-size:13px;font-weight:600}.field-value{color:var(--text-primary,#1f2937);text-align:right;word-break:break-word;font-size:13.5px;font-weight:700}.field-value.highlight-box{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:3px 10px;font-family:monospace;font-size:13px}.view-detail-item{flex-direction:column;gap:3px;display:flex}.detail-label{color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.5px;font-size:11.5px;font-weight:700}.detail-value{color:var(--text-primary,#1f2937);font-size:14.5px;font-weight:600}.view-signatures-card{background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-card,14px);box-shadow:var(--shadow-card,0 1px 4px #0000000d);margin-top:4px;padding:32px 36px}.view-signatures-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:flex-end;gap:32px;display:grid}.view-signature-item{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.view-signature-line{background-color:#9ca3af;width:100%;max-width:220px;height:1px;margin-bottom:4px}.view-signature-label{color:var(--text-primary,#374151);font-size:13px;font-weight:600}.view-signature-subtext{color:var(--text-secondary,#6b7280);font-size:11.5px}@media (width<=900px){.view-grid-3,.view-details-grid,.view-signatures-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.view-grid-3,.view-details-grid,.view-signatures-grid{grid-template-columns:1fr}}.print-only-container,.print-document{display:none!important}@media print{.print-only-container,.print-document{display:block!important}@page{size:A4 portrait;margin:15mm}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;font-size:12pt;color:#1e293b!important;background:#fff!important}.app-sidebar,.sidebar-mobile-toggle,.sidebar-backdrop,.main-content>:not(.print-only-container),.view-page-header,.view-sections-container,.list-page-header,.list-filter-card,.pagination-bar,.first-report-form-page,.first-report-list-page{display:none!important}.main-content{background:#fff!important;margin:0!important;padding:0!important}.print-only-container{width:100%!important;box-shadow:none!important;background:#fff!important;margin:0!important;padding:0!important;display:block!important}.print-sheet{background:#fff;border:1.5px solid #0f2744;width:100%}.print-header{text-align:center;background-color:#f1f5f9;border-bottom:2px solid #0f2744;padding:16px 20px}.print-company-name{color:#0f2744;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:16pt;font-weight:800}.print-subtitle{color:#334155;text-transform:uppercase;letter-spacing:.5px;font-size:12pt;font-weight:600}.print-section-title{color:#fff;text-transform:uppercase;letter-spacing:.5px;background-color:#0f2744;padding:6px 12px;font-size:11pt;font-weight:700}.print-table{border-collapse:collapse;width:100%;margin-bottom:0}.print-table td,.print-table th{vertical-align:middle;border:1px solid #cbd5e1;padding:8px 12px;font-size:10.5pt}.print-table .label-cell{color:#334155;background-color:#f8fafc;width:25%;font-size:10pt;font-weight:700}.print-table .value-cell{color:#0f172a;width:25%;font-weight:500}.print-table .value-highlight{color:#1e3a8a;font-weight:700}.excel-guest-grid{border-collapse:collapse;width:100%}.excel-guest-grid td,.excel-guest-grid th{border:1px solid #cbd5e1;padding:7px 10px;font-size:10.5pt}.excel-guest-grid .excel-col-header{color:#0f2744;text-align:center;text-transform:uppercase;background-color:#e2e8f0;font-size:10pt;font-weight:700}.print-footer-signatures{justify-content:space-between;margin-top:20px;padding:40px 24px 20px;display:flex}.sign-box{text-align:center;color:#334155;border-top:1px dashed #64748b;width:200px;padding-top:6px;font-size:10pt;font-weight:600}.print-meta-bar{color:#64748b;border-top:1px solid #cbd5e1;justify-content:space-between;padding:8px 14px;font-size:8.5pt;display:flex}}.gst-section-card{background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;border-radius:16px;width:100%;min-width:0;margin:0;box-shadow:0 3px 12px #0f172a09}.gst-header-banner{background:var(--surface,#fff);border-bottom:1px solid var(--border-default,#e5e7eb);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding:0 0 14px;display:flex}.gst-title-wrap{flex-direction:column;display:flex}.gst-title{color:var(--text-primary,#1f2937);letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.gst-subtitle{color:var(--text-secondary,#6b7280);margin:4px 0 0;font-size:13px;font-weight:400}.gst-status-pill{white-space:nowrap;border-radius:9999px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.gst-status-pill.pill-active,.gst-status-pill.active{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.gst-status-pill.pill-inactive,.gst-status-pill.inactive{background:var(--surface-soft,#f3f4f6);color:var(--text-muted,#9ca3af);border:1px solid var(--border-default,#e5e7eb)}.gst-status-dot{border-radius:50%;width:7px;height:7px}.pill-active .gst-status-dot{background-color:#10b981}.pill-inactive .gst-status-dot{background-color:#9ca3af}.gst-body{padding:0}.gst-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;display:grid}.gst-field-group{flex-direction:column;gap:8px;display:flex}.gst-field-label,.gst-label{color:var(--text-primary,#1f2937);margin-bottom:0;font-size:13px;font-weight:600}.gst-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.gst-input-prefix,.gst-input-suffix{color:var(--text-secondary,#6b7280);pointer-events:none;z-index:2;justify-content:center;align-items:center;width:36px;font-size:14px;font-weight:600;display:flex;position:absolute;top:0;bottom:0}.gst-input-prefix{left:0}.gst-input-suffix{right:0}.gst-input{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);width:100%;height:44px;color:var(--text-primary,#1f2937);box-sizing:border-box;border-radius:10px;outline:none;padding:0 14px;font-size:14px;transition:all .18s}.gst-input.has-prefix{padding-left:36px}.gst-input.has-suffix{padding-right:36px}.gst-input:focus{border-color:var(--border-focus,#9ca3af);box-shadow:0 0 0 3px #9ca3af40}.gst-input:disabled,.gst-input[disabled]{background-color:var(--surface-soft,#f3f4f6);color:var(--text-muted,#9ca3af);cursor:not-allowed;border-color:#e5e7eb}.gst-field-hint{color:var(--text-secondary,#6b7280);margin-top:2px;font-size:12px}.gst-error-msg{color:var(--danger,#ef4444);font-size:12px;font-weight:500}.gst-calculation-summary{border:1px solid var(--border-default,#e5e7eb);background:#f8f9fb;border-radius:12px;flex-direction:column;gap:12px;margin-top:24px;padding:20px 24px;display:flex}.gst-calc-label{color:#4b5563;font-weight:500}.gst-calc-value{color:#1f2937;font-size:15px;font-weight:700}.gst-calc-row.final-highlight{background:#f3f4f6;border-top:1px solid #e5e7eb;border-bottom-right-radius:12px;border-bottom-left-radius:12px;margin:6px -24px -20px;padding:14px 24px 16px}.gst-calc-row.final-highlight .gst-calc-label{color:#111827;font-size:15px;font-weight:700}.gst-calc-row.final-highlight .highlight-amount{color:#111827;font-size:18px;font-weight:800}.gst-view-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.gst-view-field{background:#f8f9fb;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;gap:4px;padding:12px 16px;display:flex}.gst-view-label{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;font-size:11.5px;font-weight:600}.gst-view-value{color:#1f2937;font-size:15px;font-weight:700}.gst-view-value.final-highlight{color:#111827;font-size:17px}@media (width<=768px){.gst-form-grid,.gst-view-grid{grid-template-columns:1fr}}.financial-summary-card{background:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;border-radius:16px;width:100%;min-width:0;margin:0;box-shadow:0 3px 12px #0f172a09}.financial-header-banner{background:var(--surface,#fff);border-bottom:1px solid var(--border-default,#e5e7eb);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding:0 0 14px;display:flex}.financial-title-wrap{flex-direction:column;display:flex}.financial-title{color:var(--text-primary,#1f2937);letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.financial-subtitle{color:var(--text-secondary,#6b7280);margin:4px 0 0;font-size:13px;font-weight:400}.financial-profit-badge{white-space:nowrap;border-radius:9999px;align-items:center;gap:6px;padding:6px 14px;font-size:12px;font-weight:700;display:inline-flex}.financial-profit-badge.badge-profit,.financial-profit-badge.badge-positive{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.financial-profit-badge.badge-loss,.financial-profit-badge.badge-negative{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.financial-profit-badge.badge-zero{color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb}.financial-badge-dot{border-radius:50%;width:7px;height:7px}.badge-profit .financial-badge-dot{background-color:#10b981}.badge-loss .financial-badge-dot{background-color:#ef4444}.badge-zero .financial-badge-dot{background-color:#9ca3af}.financial-rows-container{flex-direction:column;gap:12px;width:100%;display:flex}.financial-summary-row{border:1px solid var(--border-default,#e5e7eb);background-color:#f8f9fb;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;transition:all .15s;display:flex}.financial-summary-row:hover{background-color:#fff;border-color:#d1d5db}.financial-row-label-wrap{align-items:center;gap:14px;min-width:0;display:flex}.financial-row-num{border:1px solid var(--border-default,#e5e7eb);color:#4b5563;background-color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:inline-flex}.financial-row-label{color:#1f2937;font-size:14.5px;font-weight:700;display:block}.financial-row-hint{color:#6b7280;margin-top:2px;font-size:12px;display:block}.financial-row-value-wrap{flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.financial-row-value{color:#111827;font-size:17px;font-weight:700;font-family:var(--font-heading,inherit)}.financial-summary-row.row-cost-with-gst{background-color:#f3f4f6;border-color:#d1d5db}.financial-summary-row.row-cost-with-gst .financial-row-value{color:#111827;font-size:18px;font-weight:800}.financial-fee-wrapper{align-items:center;width:160px;display:flex;position:relative}.financial-fee-prefix{color:#6b7280;pointer-events:none;z-index:2;font-size:14px;font-weight:600;position:absolute;left:12px}.financial-fee-input{color:#111827;text-align:right;box-sizing:border-box;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;outline:none;width:100%;height:40px;padding:0 12px 0 28px;font-size:14.5px;font-weight:600;transition:all .15s}.financial-fee-input:focus{border-color:#9ca3af;box-shadow:0 0 0 3px #9ca3af40}.financial-summary-row.row-net-profit{background-color:#f8f9fb;border:2px solid #e5e7eb;margin-top:4px;padding:18px 20px}.financial-summary-row.row-net-profit .financial-row-label{color:#111827;font-size:16px;font-weight:800}.financial-summary-row.row-net-profit .financial-row-value{color:#111827;font-size:20px;font-weight:800}.financial-summary-row.row-net-profit.profit-profit{background-color:#f0fdf4;border-color:#bbf7d0}.financial-summary-row.row-net-profit.profit-profit .financial-row-value,.financial-summary-row.row-net-profit.profit-profit .financial-row-label{color:#047857}.financial-summary-row.row-net-profit.profit-loss{background-color:#fef2f2;border-color:#fecaca}.financial-summary-row.row-net-profit.profit-loss .financial-row-value,.financial-summary-row.row-net-profit.profit-loss .financial-row-label{color:#dc2626}@media (width<=640px){.financial-summary-row{flex-direction:column;align-items:flex-start;gap:10px}.financial-row-value-wrap{justify-content:flex-start;width:100%}.financial-fee-wrapper{width:100%}}.payment-collection-section{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;border-radius:16px;width:100%;min-width:0;margin:0;padding:28px 30px;box-shadow:0 3px 12px #0f172a09}.payment-header-row,.payment-header-banner{border-bottom:1px solid var(--border-default,#e5e7eb);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding-bottom:14px;display:flex}.payment-header-titles,.payment-title-wrap{flex-direction:column;display:flex}.payment-section-title{color:var(--text-primary,#1f2937);letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.payment-section-subtitle{color:var(--text-secondary,#6b7280);margin:4px 0 0;font-size:13px;font-weight:400}.btn-add-payment{background-color:var(--primary,#374151);color:#fff;border-radius:var(--radius-button,10px);cursor:pointer;white-space:nowrap;border:1px solid #374151;align-items:center;gap:8px;padding:9px 18px;font-size:13.5px;font-weight:700;transition:all .16s;display:inline-flex;box-shadow:0 1px 3px #0000001a}.btn-add-payment:hover:not(:disabled){background-color:var(--primary-hover,#1f2937);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.btn-add-payment:disabled{opacity:.55;cursor:not-allowed}.payment-table-wrapper{border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-md,10px);background:var(--surface,#fff);-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.payment-table{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.payment-table th{background-color:var(--surface-soft,#f3f4f6);color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-default,#e5e7eb);white-space:nowrap;padding:12px 14px;font-size:11.5px;font-weight:700}.payment-table td{color:var(--text-primary,#1f2937);vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:8px 12px}.payment-table tbody tr:hover{background-color:#f9fafb}.payment-table tbody tr:last-child td{border-bottom:none}.payment-row-num{color:var(--text-muted,#9ca3af);text-align:center;width:32px;font-weight:700}.payment-input{border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-input,10px);width:100%;height:40px;color:var(--text-primary,#1f2937);background-color:var(--surface,#fff);box-sizing:border-box;outline:none;padding:0 10px;font-size:13.5px;transition:all .18s}.payment-input:focus{border-color:var(--border-focus,#9ca3af);box-shadow:0 0 0 2px #9ca3af40}.payment-input.is-invalid{border-color:var(--danger,#ef4444);background-color:var(--danger-bg,#fef2f2)}.payment-amount-wrapper{align-items:center;width:100%;display:flex;position:relative}.payment-amount-currency{color:var(--text-muted,#86868b);pointer-events:none;font-size:13.5px;font-weight:600;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.payment-amount-input{font-variant-numeric:tabular-nums;font-weight:600;padding-left:28px!important}.payment-sno-badge{color:#1d1d1f;background-color:#f5f5f7;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:11.5px;font-weight:600;display:inline-flex}.btn-remove-payment-row{border-radius:var(--radius-sm,6px);width:34px;height:34px;color:var(--text-muted,#9ca3af);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-remove-payment-row:hover:not(:disabled){background-color:var(--danger-bg,#fef2f2);color:var(--danger,#dc2626);border-color:var(--danger-border,#fecaca)}.btn-remove-payment-row:disabled{opacity:.3;cursor:not-allowed}.payment-summary-panel,.payment-summary-footer{border:1px solid var(--border-default,#e5e7eb);text-align:right;box-sizing:border-box;background:#f8f9fb;border-radius:12px;justify-content:flex-end;align-items:center;gap:20px;width:fit-content;margin-top:20px;margin-left:auto;padding:16px 24px;display:flex}.payment-total-label{color:var(--text-secondary,#4b5563);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:700}.payment-total-value{color:var(--text-primary,#111827);font-size:20px;font-weight:800;font-family:var(--font-heading,inherit)}.payment-empty-state,.payment-empty-row{text-align:center;color:var(--text-secondary,#6b7280);padding:28px 20px;font-size:13.5px}.payment-spent-section{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;border-radius:16px;width:100%;min-width:0;margin:0;padding:28px 30px;box-shadow:0 3px 12px #0f172a09}.payment-spent-header-row,.payment-spent-header-banner{border-bottom:1px solid var(--border-default,#e5e7eb);justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding-bottom:14px;display:flex}.payment-spent-header-titles,.payment-spent-title-wrap{flex-direction:column;display:flex}.payment-spent-section-title{color:var(--text-primary,#1f2937);letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.payment-spent-section-subtitle{color:var(--text-secondary,#6b7280);margin:4px 0 0;font-size:13px;font-weight:400}.btn-add-spent{background-color:var(--primary,#374151);color:#fff;border-radius:var(--radius-button,10px);cursor:pointer;white-space:nowrap;border:1px solid #374151;align-items:center;gap:8px;padding:9px 18px;font-size:13.5px;font-weight:700;transition:all .16s;display:inline-flex;box-shadow:0 1px 3px #0000001a}.btn-add-spent:hover:not(:disabled){background-color:var(--primary-hover,#1f2937);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.btn-add-spent:disabled{opacity:.55;cursor:not-allowed}.payment-spent-table-wrapper{border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-md,10px);background:var(--surface,#fff);-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.payment-spent-table{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.payment-spent-table th{background-color:var(--surface-soft,#f3f4f6);color:var(--text-secondary,#6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-default,#e5e7eb);white-space:nowrap;padding:12px 14px;font-size:11.5px;font-weight:700}.payment-spent-table td{color:var(--text-primary,#1f2937);vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:8px 12px}.payment-spent-table tbody tr:hover{background-color:#f9fafb}.payment-spent-table tbody tr:last-child td{border-bottom:none}.spent-row-num{color:var(--text-muted,#9ca3af);text-align:center;width:32px;font-weight:700}.spent-input{border:1px solid var(--border-default,#e5e7eb);border-radius:var(--radius-input,10px);width:100%;height:40px;color:var(--text-primary,#1f2937);background-color:var(--surface,#fff);box-sizing:border-box;outline:none;padding:0 10px;font-size:13.5px;transition:all .18s}.spent-input:focus{border-color:var(--border-focus,#9ca3af);box-shadow:0 0 0 2px #9ca3af40}.spent-input.is-invalid{border-color:var(--danger,#ef4444);background-color:var(--danger-bg,#fef2f2)}.payment-spent-amount-wrapper{align-items:center;width:100%;display:flex;position:relative}.payment-spent-amount-currency{color:var(--text-muted,#86868b);pointer-events:none;font-size:13.5px;font-weight:600;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.payment-spent-amount-input{font-variant-numeric:tabular-nums;font-weight:600;padding-left:28px!important}.payment-spent-sno-badge{color:#1d1d1f;background-color:#f5f5f7;border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-size:11.5px;font-weight:600;display:inline-flex}.btn-remove-spent-row{border-radius:var(--radius-sm,6px);width:34px;height:34px;color:var(--text-muted,#9ca3af);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:all .15s;display:flex}.btn-remove-spent-row:hover:not(:disabled){background-color:var(--danger-bg,#fef2f2);color:var(--danger,#dc2626);border-color:var(--danger-border,#fecaca)}.btn-remove-spent-row:disabled{opacity:.3;cursor:not-allowed}.payment-spent-summary-panel,.spent-summary-footer{border:1px solid var(--border-default,#e5e7eb);text-align:right;box-sizing:border-box;background:#f8f9fb;border-radius:12px;justify-content:flex-end;align-items:center;gap:20px;width:fit-content;margin-top:20px;margin-left:auto;padding:16px 24px;display:flex}.payment-spent-total-label,.spent-total-label{color:var(--text-secondary,#4b5563);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:700}.payment-spent-total-value,.spent-total-value{color:var(--text-primary,#111827);font-size:20px;font-weight:800;font-family:var(--font-heading,inherit)}.payment-spent-empty-state,.payment-spent-empty-row{text-align:center;color:var(--text-secondary,#6b7280);padding:28px 20px;font-size:13.5px}.payment-balance-section{background-color:var(--surface,#fff);border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;border-radius:16px;width:100%;min-width:0;margin:0;padding:28px 30px;box-shadow:0 3px 12px #0f172a09}.balance-section-header{border-bottom:1px solid var(--border-default,#e5e7eb);margin-bottom:24px;padding-bottom:14px}.balance-section-title{color:var(--text-primary,#1f2937);letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.balance-section-subtitle{color:var(--text-secondary,#6b7280);margin:4px 0 0;font-size:13px;font-weight:400}.balance-panels-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:100%;display:grid}.balance-card{border:1px solid var(--border-default,#e5e7eb);box-sizing:border-box;background-color:#f8f9fb;border-radius:14px;flex-direction:column;justify-content:space-between;min-width:0;padding:24px;transition:all .15s;display:flex}.balance-card:hover{background-color:#fff;border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.balance-card-header{border-bottom:1px solid var(--border-default,#e5e7eb);justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.balance-card-title-group{align-items:center;gap:12px;min-width:0;display:flex}.balance-icon-circle{border:1px solid var(--border-default,#e5e7eb);color:#374151;background-color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:all .18s;display:flex}.balance-icon-circle.icon-wallet{color:var(--apple-blue,#0071e3);background-color:#0071e314;border-color:#0071e333}.balance-icon-circle.icon-building{color:#248a3d;background-color:#34c7591a;border-color:#34c75940}.balance-card-title{color:#1f2937;margin:0;font-size:15px;font-weight:700}.balance-card-meta{color:#6b7280;margin:2px 0 0;font-size:12px}.balance-badge{white-space:nowrap;border-radius:9999px;padding:4px 10px;font-size:11.5px;font-weight:700}.balance-badge.badge-pending{color:#d97706;background-color:#fffbeb;border:1px solid #fde68a}.balance-badge.badge-settled{color:#059669;background-color:#ecfdf5;border:1px solid #a7f3d0}.balance-badge.badge-excess,.balance-badge.badge-overpaid{color:#2563eb;background-color:#eff6ff;border:1px solid #bfdbfe}.balance-rows-list{flex-direction:column;gap:12px;display:flex}.balance-metric-row{justify-content:space-between;align-items:center;padding:8px 0;font-size:13.5px;display:flex}.metric-label-group{flex-direction:column;gap:2px;display:flex}.metric-label{color:#4b5563;font-weight:600}.metric-sub{color:#9ca3af;font-size:11.5px}.metric-val{color:#1f2937;font-size:15px;font-weight:700;font-family:var(--font-heading,inherit)}.balance-highlight-row{border:1px solid var(--border-default,#e5e7eb);background-color:#fff;border-radius:10px;justify-content:space-between;align-items:center;margin-top:8px;padding:16px 18px;display:flex}.highlight-label-title{color:#111827;font-size:14.5px;font-weight:700}.highlight-amount{color:#111827;font-size:18px;font-weight:800;font-family:var(--font-heading,inherit)}.balance-highlight-row.state-pending{border-left:4px solid #d97706}.balance-highlight-row.state-settled{border-left:4px solid #10b981}.balance-highlight-row.state-excess,.balance-highlight-row.state-overpaid{border-left:4px solid #3b82f6}@media (width<=800px){.balance-panels-grid{grid-template-columns:1fr}}:root{--app-bg:#f5f5f7;--app-background:#f5f5f7;--page-bg:#f5f5f7;--sidebar-bg:#ffffffd1;--sidebar-background:#ffffffd1;--surface:#fff;--surface-secondary:#fbfbfd;--card-bg:#fff;--surface-soft:#f5f5f7;--secondary-bg:#f5f5f7;--hover-bg:#0000000a;--active-bg:#0071e314;--apple-blue:#0071e3;--apple-blue-hover:#0077ed;--apple-blue-light:#ebf5ff;--primary:#1d1d1f;--primary-hover:#000;--primary-light:#f5f5f7;--primary-soft:#fbfbfd;--primary-dark:#000;--primary-green:#1d1d1f;--primary-green-dark:#000;--primary-green-light:#f5f5f7;--accent-peach:#f5f5f7;--peach:#f5f5f7;--accent-orange:#424245;--orange:#424245;--orange-dark:#1d1d1f;--peach-light:#fbfbfd;--text-primary:#1d1d1f;--text-secondary:#6e6e73;--text-muted:#86868b;--primary-text:#1d1d1f;--muted-text:#6e6e73;--border:#00000014;--border-default:#00000014;--border-color:#00000014;--border-subtle:#0000000a;--border-focus:#0071e3;--success:#34c759;--success-bg:#eaf8ee;--success-border:#c2f0ce;--success-color:#248a3d;--warning:#ff9500;--warning-bg:#fff8eb;--warning-border:#ffe2b3;--warning-color:#c97200;--danger:#ff3b30;--danger-bg:#fff0ef;--danger-border:#ffcdca;--danger-color:#d70015;--error-color:#d70015;--error-bg:#fff0ef;--error-border:#ffcdca;--radius-input:10px;--radius-button:10px;--radius-card:16px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-pill:9999px;--shadow-sm:0 1px 2px #0000000a;--shadow-card:0 2px 10px #0000000a, 0 0 1px #00000014;--shadow-card-hover:0 8px 24px #00000012, 0 0 1px #0000001a;--shadow-float:0 16px 36px #00000014, 0 2px 8px #0000000a;--shadow-focus:0 0 0 4px #0071e32e;--sidebar-width:240px;--content-padding:32px;--page-padding:32px;--section-gap:24px;--font-family:"Comfortaa", cursive, -apple-system, BlinkMacSystemFont, sans-serif;--font-heading:"Comfortaa", cursive, -apple-system, BlinkMacSystemFont, sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0;font-family:Comfortaa,cursive,-apple-system,BlinkMacSystemFont,sans-serif}html,body,#root{background-color:var(--app-bg);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;width:100%;min-height:100%;margin:0;padding:0;font-family:Comfortaa,cursive,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:500}body{background-color:var(--app-bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Comfortaa,cursive,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:500;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6,.section-title,.section-heading,.page-title,.page-main-title,.report-view-title{color:var(--text-primary);font-family:Comfortaa,cursive,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:700}button,input,optgroup,select,textarea{font-family:Comfortaa,cursive,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:500}.text-center{text-align:center!important}.text-right{text-align:right!important}.font-bold{font-weight:700!important}.font-semibold{font-weight:600!important}.btn{border-radius:var(--radius-button);cursor:pointer;justify-content:center;align-items:center;gap:8px;font-family:inherit;font-size:13.5px;font-weight:600;transition:all .16s;display:inline-flex}.btn-cancel{background-color:var(--surface);border:1px solid var(--border);color:var(--text-primary)}.btn-cancel:hover:not(:disabled){background-color:var(--surface-soft);border-color:#d1d5db}.alert-box{box-sizing:border-box;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:20px;padding:14px 18px;display:flex}.alert-box.alert-success{background-color:var(--success-bg);border:1px solid var(--success-border);color:var(--success-color)}.alert-box.alert-danger{background-color:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-color)}.alert-text-wrapper{flex-direction:column;gap:2px;display:flex}.alert-title{font-size:13.5px;font-weight:700}.alert-desc{opacity:.95;font-size:13px}.th-sno,.sno-cell,.srv-sno-cell{width:44px;text-align:center!important}.th-date{width:140px}.th-mode{width:130px}.th-amount{width:150px;text-align:right!important}.th-actions{width:50px;text-align:center!important}.animate-spin{animation:1s linear infinite spin}.app-container{background-color:var(--app-bg);width:100%;min-height:100vh;display:flex;position:relative}.main-content{min-width:0;width:calc(100% - var(--sidebar-width));margin-left:var(--sidebar-width);background-color:var(--app-bg);min-height:100vh;padding:var(--content-padding);box-sizing:border-box;flex:1 1 0;transition:margin-left .25s,width .25s}@media (width<=900px){.main-content{width:100%;margin-left:0;padding:16px}}input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],input[type=password],select,textarea,.form-control,.erp-select{font-family:var(--font-family);color:var(--text-primary);background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-input);box-sizing:border-box;outline:none;height:44px;min-height:44px;padding:0 14px;font-size:14px;transition:border-color .18s,box-shadow .18s,background-color .18s}textarea{height:auto;min-height:84px;padding:10px 14px}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled),.form-control:hover:not(:disabled),.erp-select:hover:not(:disabled){border-color:#d1d5db}input:focus,select:focus,textarea:focus,.form-control:focus,.erp-select:focus,.erp-select:focus-visible{border-color:var(--apple-blue);box-shadow:var(--shadow-focus);background-color:var(--surface)}input:disabled,select:disabled,textarea:disabled,input[readonly]:not(.date-display-input),.form-control:disabled,.form-control[readonly]:not(.date-display-input),.erp-select:disabled{background-color:var(--surface-soft);color:var(--text-muted);cursor:not-allowed;border-color:var(--border)}select,.erp-select,.dashboard-select,.filter-select{appearance:none;color:#1d1d1f;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236E6E73' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:14px;border:1px solid #0000001a;border-radius:10px;height:42px;min-height:42px;padding:0 38px 0 14px;font-family:Comfortaa,cursive,sans-serif;font-size:13.5px;font-weight:500;transition:all .18s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 2px #00000005}select:hover:not(:disabled),.erp-select:hover:not(:disabled),.dashboard-select:hover:not(:disabled),.filter-select:hover:not(:disabled){border-color:#0003}select:focus,.erp-select:focus,.dashboard-select:focus,.filter-select:focus{border-color:var(--apple-blue,#0071e3);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230071E3' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");outline:none;box-shadow:0 0 0 4px #0071e32e}select:disabled,.erp-select:disabled,.dashboard-select:disabled,.filter-select:disabled{color:#86868b;cursor:not-allowed;box-shadow:none;background-color:#f5f5f7;border-color:#0000000d}.erp-form-field{flex-direction:column;gap:8px;min-width:0;display:flex}.erp-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:opacity(.5);transition:filter .18s}input[type=date]::-webkit-calendar-picker-indicator:hover{filter:opacity(.9)}button:not(:disabled),.btn-primary:not(:disabled),.btn-secondary:not(:disabled),.btn-submit:not(:disabled),.btn-form:not(:disabled),.action-btn:not(:disabled),a.button-link{transition:transform .16s cubic-bezier(.4,0,.2,1),box-shadow .16s cubic-bezier(.4,0,.2,1),background-color .16s,border-color .16s,color .16s}button:not(:disabled):hover,.btn-primary:not(:disabled):hover,.btn-submit:not(:disabled):hover,.btn-form:not(:disabled):hover{transform:translateY(-1px)}button:not(:disabled):active,.btn-primary:not(:disabled):active,.btn-submit:not(:disabled):active,.btn-form:not(:disabled):active{transform:translateY(0)}.report-page,.first-report-form-page,.first-report-view-page{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.report-section,.view-card,.surface-card,.dashboard-panel,.list-table-card,.financial-summary-card,.payment-collection-section,.payment-spent-section,.services-client-section,.dmc-services-section,.profit-summary-section,.payment-balance-section,.gst-section-card{background:var(--surface)!important;border:1px solid var(--border-default)!important;border-radius:var(--radius-card)!important;width:100%!important;min-width:0!important;box-shadow:var(--shadow-card)!important;box-sizing:border-box!important}.table-responsive-wrapper,.services-table-wrapper,.dmc-table-wrapper,.payment-table-wrapper,.payment-spent-table-wrapper{background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius-md);box-sizing:border-box;-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}table th{background-color:var(--surface-soft);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-default);white-space:nowrap;padding:12px 14px;font-size:11.5px;font-weight:700}table td{color:var(--text-primary);vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:11px 14px}table tbody tr:hover{background-color:#f9fafb}table tbody tr:last-child td{border-bottom:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}.final-report-sections{flex-direction:column;gap:24px;width:100%;display:flex}.report-section-card{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:16px;min-width:0;padding:28px 30px;box-shadow:0 3px 12px #0f172a09}.report-section-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;padding-bottom:14px;display:flex}.report-section-heading{color:#1f2937;letter-spacing:-.015em;align-items:center;gap:8px;margin:0;font-size:17px;font-weight:700;display:flex}.report-section-subheading{color:#6b7280;margin:4px 0 0;font-size:13px;font-weight:400}.report-section-actions{flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.report-table-wrapper{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:100%;overflow-x:auto}.report-table{border-collapse:collapse;text-align:left;width:100%;font-size:13.5px}.report-table th{color:#4b5563;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;background-color:#f8f9fb;border-bottom:1px solid #e5e7eb;padding:12px 14px;font-size:12px;font-weight:700}.report-table td{color:#1f2937;vertical-align:middle;border-bottom:1px solid #f3f4f6;padding:10px 12px}.report-table tbody tr:hover{background-color:#f9fafb}.report-table tbody tr:last-child td{border-bottom:none}.report-total-summary{text-align:right;background:#f8f9fb;border:1px solid #e5e7eb;border-radius:12px;justify-content:flex-end;align-items:center;gap:20px;width:fit-content;margin-top:20px;margin-left:auto;padding:16px 24px;display:flex}.report-total-summary-label{color:#4b5563;text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:700}.report-total-summary-amount{color:#111827;font-size:20px;font-weight:800;font-family:var(--font-heading,inherit)}.gst-fields-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px;display:grid}.gst-calculation-summary{background:#f8f9fb;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:12px;margin-top:20px;padding:20px 24px;display:flex}.gst-calc-row{color:#374151;justify-content:space-between;align-items:center;padding:6px 0;font-size:14px;display:flex}.gst-calc-row.final-highlight{color:#111827;border-top:1px solid #e5e7eb;margin-top:4px;padding-top:12px;font-size:16px;font-weight:700}.financial-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.payment-balance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}@media (width<=900px){.financial-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gst-fields-grid{grid-template-columns:1fr}}@media (width<=768px){.report-section-card{border-radius:12px;padding:20px}.report-section-header{flex-direction:column;align-items:stretch;gap:14px}.report-section-actions{justify-content:flex-start}.financial-summary-grid,.payment-balance-grid{grid-template-columns:1fr}.report-total-summary{box-sizing:border-box;flex-wrap:wrap;justify-content:space-between;width:100%}}
