@keyframes youtubeShimmerSweep{0%{transform:translate(-100%)}to{transform:translate(100%)}}.shimmer-wrapper{position:relative;overflow:hidden;background-color:var(--shimmer-bg, #f1f5f9);border-radius:8px}.shimmer-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background-image:linear-gradient(90deg,#fff0 0,#ffffff73 20%,#ffffffb3 60%,#fff0);animation:youtubeShimmerSweep .9s infinite ease-in-out}.dark .shimmer-wrapper{background-color:#1e293b}.dark .shimmer-wrapper:after{background-image:linear-gradient(90deg,#fff0 0,#ffffff0f 20%,#ffffff1f 60%,#fff0)}.shimmer-block{display:block}.shimmer-line{height:12px;margin-bottom:8px;border-radius:4px}.shimmer-line.title{height:20px;width:60%}.shimmer-line.subtitle{height:14px;width:40%}.shimmer-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px;margin-bottom:20px}.shimmer-kpi-card{min-height:108px;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;display:flex;flex-direction:column;justify-content:space-between}.shimmer-chart-box{min-height:320px;padding:20px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;margin-bottom:20px}.shimmer-table-box{min-height:240px;padding:20px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}@media (max-width: 639px){.shimmer-kpi-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important}}:root{--primary: #4f46e5;--primary-dark: #3730a3;--primary-hover: #4338ca;--primary-light: #e0e7ff;--success: #059669;--success-dark: #064e3b;--warning: #d97706;--danger: #e11d48;--danger-dark: #9f1239;--grey-50: #f8fafc;--grey-100: #f1f5f9;--grey-200: #e2e8f0;--grey-300: #cbd5e1;--grey-400: #94a3b8;--grey-500: #64748b;--grey-600: #475569;--grey-700: #334155;--grey-800: #1e293b;--grey-900: #0f172a;--bg: #ffffff;--bg-secondary: #f8fafc;--text: #0f172a;--text-secondary: #64748b;--border: #e2e8f0;--shadow: 0 1px 3px 0 rgba(0, 0, 0, .05), 0 1px 2px -1px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .04), 0 4px 6px -4px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .05), 0 8px 10px -6px rgba(0, 0, 0, .05);--radius: 14px;--radius-sm: 8px;--radius-lg: 20px;--transition: all .25s cubic-bezier(.4, 0, .2, 1);--safe-top: max(0px, env(safe-area-inset-top));--safe-bottom: max(0px, env(safe-area-inset-bottom))}*{-webkit-tap-highlight-color:transparent}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.touch-pan-y{touch-action:pan-y!important}.active-press{transition:transform .12s ease,opacity .12s ease}.active-press:active{transform:scale(.97);opacity:.9}@media (max-width: 639px){html,body{overflow-x:hidden!important;max-width:100vw!important}input,select,textarea{font-size:16px!important}.topbar{padding:8px 12px!important}.brand-info h1{font-size:.92rem!important}.topbar-sub{font-size:.65rem!important}.filter-bar{flex-wrap:wrap!important;padding:12px 14px!important;gap:10px!important}.filter-group{min-width:120px!important;flex:1 1 calc(50% - 8px)!important}.chart-toolbar-btn-text{display:none!important}.data-table,.table-container,.card-body{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;max-width:100%!important}.heatmap-body{flex-direction:column!important}.heatmap-scroll{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;padding-bottom:12px!important}.chart-card-header{padding:10px 12px!important}.records-manager-modal{width:100vw!important;margin:0!important;border-radius:20px 20px 0 0!important}.records-manager-body{padding:12px!important}.records-table-container{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;max-width:100%!important}.portal-center-divider{display:none!important}.portal-mobile-divider{display:flex!important}.portal-admin-card,.portal-viewer-card{max-width:100%!important}.mobile-bottom-sheet{position:fixed!important;inset:auto 0 0 0!important;max-height:90vh!important;max-height:90dvh!important;border-radius:20px 20px 0 0!important;padding-bottom:max(16px,env(safe-area-inset-bottom))!important;box-shadow:0 -10px 40px #00000040!important;animation:slideUpSheet .25s cubic-bezier(.16,1,.3,1)!important}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}}#page-waste .waste-total .total-value{margin-right:14px}#page-waste .waste-total{justify-content:flex-start!important;gap:14px!important;padding:18px 20px!important;margin:8px 0 22px!important;border:1px solid #bfdbfe!important;border-top:1px solid #bfdbfe!important;border-radius:8px!important;background:linear-gradient(135deg,#eff6ff,#fff)!important;color:#0f172a!important;box-shadow:0 12px 28px #2563eb1a!important}#page-waste .waste-total .total-icon{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:8px;background:#2563eb;color:#fff;font-size:.72rem;font-weight:900;letter-spacing:0;text-transform:uppercase;box-shadow:0 10px 20px #2563eb38}#page-waste .waste-total .total-label{min-width:0;flex:1 1 auto;color:#1e3a8a;font-size:.86rem;font-weight:900;line-height:1.2;text-transform:uppercase;letter-spacing:0}#page-waste .waste-total .total-value{margin-right:0;color:#1d4ed8;font-size:2rem;font-weight:900;line-height:1;letter-spacing:0;white-space:nowrap}#page-waste .waste-total .total-unit{color:#1e3a8a;font-size:1rem;font-weight:900}#page-waste .waste-page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}#page-waste .waste-quick-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}#page-waste .waste-action-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;font-size:.88rem;font-weight:600;border:1px solid var(--border);background:var(--card-bg, #ffffff);color:var(--text);cursor:pointer;transition:all .2s ease}#page-waste .waste-action-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary);background:var(--primary-light, #e0e7ff)}#page-waste .waste-action-btn:disabled{opacity:.6;cursor:not-allowed}#page-waste .waste-action-primary{background:var(--primary, #4f46e5);color:#fff!important;border-color:var(--primary, #4f46e5)}#page-waste .waste-action-primary:hover:not(:disabled){background:var(--primary-hover, #4338ca)!important;border-color:var(--primary-hover, #4338ca)!important;color:#fff!important}#page-waste .waste-location-badge-tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;background:var(--primary-light, #e0e7ff);color:var(--primary, #4f46e5);font-size:.78rem;font-weight:700;text-transform:capitalize}#page-waste .waste-collapsible-header:hover{background:var(--bg-secondary, #f8fafc)}#page-waste .waste-compact-location-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:10px;background:var(--bg-secondary, #f8fafc);border:1px solid var(--border)}#page-waste .location-btn-compact{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:20px;font-size:.84rem;font-weight:600;border:1px solid var(--border);background:#fff;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}#page-waste .location-btn-compact:hover{border-color:var(--primary);color:var(--primary)}#page-waste .location-btn-compact.active{background:var(--primary, #4f46e5);color:#fff;border-color:var(--primary, #4f46e5)}#page-waste .location-badge-compact{font-size:.75rem;padding:2px 6px;border-radius:10px;background:#00000014;font-weight:700}#page-waste .location-btn-compact.active .location-badge-compact{background:#ffffff40;color:#fff}@media (max-width: 640px){#page-waste .waste-page-header{flex-direction:column;align-items:flex-start}#page-waste .waste-quick-actions{width:100%;justify-content:flex-start}}#page-waste .waste-visual-summary{display:grid;gap:16px;margin:0 0 24px}#page-waste .waste-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}#page-waste .waste-kpi-card{min-height:104px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:14px;border:1px solid #dbeafe;border-radius:8px;background:#fff;box-shadow:var(--shadow)}#page-waste .waste-kpi-card span{color:#475569;font-size:.72rem;font-weight:900;line-height:1.25;text-transform:uppercase;letter-spacing:0}#page-waste .waste-kpi-card strong{color:#0f172a;font-size:clamp(1rem,1.8vw,1.45rem);font-weight:900;line-height:1.08;overflow-wrap:anywhere}#page-waste .waste-kpi-card em{color:#2563eb;font-size:.78rem;font-style:normal;font-weight:900}#page-waste .waste-attention-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}#page-waste .waste-attention-item{min-height:72px;padding:12px 14px;border:1px solid #fed7aa;border-radius:8px;background:#fffbeb;color:#78350f}#page-waste .waste-attention-item.info{border-color:#bfdbfe;background:#eff6ff;color:#1e3a8a}#page-waste .waste-attention-item.attention{border-color:#fecdd3;background:#fff1f2;color:#881337}#page-waste .waste-attention-item strong,#page-waste .waste-attention-item span{display:block}#page-waste .waste-attention-item strong{margin-bottom:4px;font-size:.82rem;font-weight:900}#page-waste .waste-attention-item span{font-size:.8rem;font-weight:700;line-height:1.35}#page-waste .waste-graph-grid{display:grid;grid-template-columns:minmax(300px,1.1fr) minmax(260px,.9fr);gap:16px;align-items:stretch}#page-waste .waste-graph-panel{min-height:300px;padding:18px;border:1px solid var(--border);border-radius:8px;background:#fff;box-shadow:var(--shadow-md)}#page-waste .waste-trend-panel{grid-column:1 / -1;min-height:230px}#page-waste .waste-graph-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}#page-waste .waste-graph-heading h3{margin:0;color:#0f172a;font-size:1rem;font-weight:900;line-height:1.2}#page-waste .waste-graph-heading span{color:#2563eb;font-size:.82rem;font-weight:900;white-space:nowrap}#page-waste .waste-donut-layout{display:grid;grid-template-columns:minmax(160px,220px) minmax(180px,1fr);gap:20px;align-items:center}#page-waste .waste-donut{width:min(220px,100%);aspect-ratio:1;display:grid;place-items:center;position:relative;border-radius:50%;background:var(--waste-donut-gradient);box-shadow:inset 0 0 0 1px #0f172a14}#page-waste .waste-donut:after{content:"";position:absolute;top:28%;right:28%;bottom:28%;left:28%;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #e2e8f0}#page-waste .waste-donut span{z-index:1;max-width:82px;color:#0f172a;font-size:.92rem;font-weight:900;line-height:1.15;text-align:center}#page-waste .waste-chart-legend{display:grid;gap:8px}#page-waste .waste-legend-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:28px;color:#334155;font-size:.82rem;font-weight:800}#page-waste .waste-legend-row i{width:10px;height:10px;border-radius:50%}#page-waste .waste-legend-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#page-waste .waste-legend-row strong{color:#0f172a;font-size:.82rem;font-weight:900;white-space:nowrap}#page-waste .waste-location-bars{display:grid;gap:18px}#page-waste .waste-location-bar-row{display:grid;gap:8px}#page-waste .waste-location-bar-row>div:first-child{display:flex;justify-content:space-between;gap:12px;color:#334155;font-size:.86rem;font-weight:900}#page-waste .waste-location-bar-row strong{color:#0f172a;white-space:nowrap}#page-waste .waste-location-bar-track{height:14px;overflow:hidden;border-radius:8px;background:#e2e8f0}#page-waste .waste-location-bar-track i{display:block;min-width:4px;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#10b981)}#page-waste .waste-trend-chart{min-height:160px;display:grid;grid-template-columns:repeat(12,minmax(30px,1fr));gap:10px;align-items:end;padding-top:8px}#page-waste .waste-trend-column{min-width:0;display:grid;grid-template-rows:130px 20px;gap:8px;align-items:end;text-align:center}#page-waste .waste-trend-bar-wrap{height:130px;display:flex;align-items:flex-end;border-radius:8px;background:#f1f5f9;border:1px solid #e2e8f0;overflow:hidden}#page-waste .waste-trend-bar-wrap i{width:100%;display:block;border-radius:8px 8px 0 0;background:linear-gradient(180deg,#0f172a,#2563eb)}#page-waste .waste-trend-column span{color:#64748b;font-size:.72rem;font-weight:900;white-space:nowrap}#page-waste .waste-chart-empty{min-height:180px;display:grid;place-items:center;padding:18px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;color:#64748b;font-size:.9rem;font-weight:800;text-align:center}@media (max-width: 1120px){#page-waste .waste-kpi-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}#page-waste .waste-graph-grid{grid-template-columns:1fr}}@media (max-width: 760px){#page-waste .waste-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#page-waste .waste-donut-layout{grid-template-columns:1fr}#page-waste .waste-donut{justify-self:center;max-width:210px}#page-waste .waste-trend-chart{grid-template-columns:repeat(6,minmax(34px,1fr))}}@media (max-width: 520px){#page-waste .waste-kpi-grid{grid-template-columns:1fr}#page-waste .waste-graph-panel{padding:14px}#page-waste .waste-graph-heading{flex-direction:column;gap:4px}}.reports-fast-loading{min-height:220px;display:grid;place-items:center;gap:8px;padding:32px 20px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(90deg,#2563eb14,#2563eb05),#fff;color:var(--text);text-align:center;box-shadow:var(--shadow)}.reports-fast-loading strong{font-size:1.05rem;font-weight:900}.reports-fast-loading span{color:var(--text-secondary);font-size:.88rem;font-weight:700}.topbar .logo-wrapper{width:auto!important;height:auto!important;min-width:unset!important;display:flex;align-items:center}.topbar .logo{max-height:32px!important;width:auto!important;-o-object-fit:contain!important;object-fit:contain!important;image-rendering:auto}.records-manage-btn{background:#000!important;border-color:#fff!important;color:#fff!important;box-shadow:0 10px 22px #00000029!important}.records-manage-btn svg{color:#fff!important;stroke:#fff!important}.records-manage-btn:hover{background:#111827!important;border-color:#fff!important;color:#fff!important;box-shadow:0 14px 28px #00000038!important}#page-energy .water-type-btn.type-active .type-icon,.water-type-btn.type-active .type-icon{background:#fff!important;color:#000!important;stroke:#000!important;fill:none!important}#page-energy .water-type-btn.type-active .type-icon svg,.water-type-btn.type-active .type-icon svg{color:#000!important;stroke:#000!important;fill:none!important}*{margin:0;padding:0;box-sizing:border-box}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--grey-50)}::-webkit-scrollbar-thumb{background:var(--grey-300);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--grey-400)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-secondary);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}.hidden{display:none!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.topbar{background:#fff;border-bottom:1px solid #e2e8f0;padding:0 24px;height:42px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;box-shadow:0 1px #fff,0 4px 16px #0000000a}.brand{display:flex;align-items:center;gap:16px}.logo-wrapper{width:56px;height:56px;display:flex;align-items:center;justify-content:center}.logo{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;background:transparent}.brand-title{margin:0;font-size:.98rem;font-weight:800;color:var(--text, #0f172a);line-height:1.2;display:flex;align-items:center;gap:5px;white-space:nowrap}.brand-org{font-weight:800;color:var(--text, #0f172a)}.brand-dash{color:#94a3b8;font-weight:500;font-size:.85rem}.brand-sub{color:#16a34a;font-weight:700;font-size:.88rem}.topbar-sub{font-size:.875rem;color:var(--text-secondary);font-weight:500}.top-actions{display:flex;align-items:center;gap:12px}.date-badge,.user-info{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;color:var(--text-secondary);box-shadow:var(--shadow)}.backend-status{border-color:#10b98140;color:#047857;background:#ecfdf5}.backend-status[data-state=offline]{border-color:#f59e0b4d;color:#92400e;background:#f8fafc}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;transition:var(--transition);font-family:inherit}.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow)}.btn-secondary:hover{background:var(--grey-50);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-logout{background:var(--grey-900);color:#fff;border:none;padding:8px 20px;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow)}.btn-logout:hover{background:var(--grey-700);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.page-tabs{background:#fff;border-bottom:1px solid var(--border);padding:0 32px;display:flex;gap:0;position:sticky;top:64px;z-index:99;box-shadow:0 1px 0 var(--border)}.report-module-tabs{min-height:42px!important;align-items:center;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.report-module-tabs::-webkit-scrollbar{display:none}.page-tab{padding:0 16px;height:36px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--text-secondary);font-size:.84rem;font-weight:600;cursor:pointer;transition:all .15s ease;font-family:inherit;white-space:nowrap;display:inline-flex;align-items:center}.report-module-tab{padding:0 14px;height:34px;min-height:34px;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--text-secondary);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s ease;font-family:inherit;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center}.page-tab:hover,.report-module-tab:hover{color:var(--text);background:var(--grey-100)}.page-tab.active{background:#0f172a;color:#fff;border-color:#0f172a;font-weight:700;box-shadow:0 2px 4px #0f172a26}.report-module-tab.active{background:#16a34a;color:#fff;border-color:#16a34a;font-weight:700;box-shadow:0 2px 4px #16a34a33}.dashboard{max-width:1500px;width:100%;margin:0 auto;padding:6px 24px;animation:fadeIn .4s ease-out;display:none}.dashboard.page-active{display:block}.page-header{margin-bottom:32px;animation:slideIn .5s ease-out}.page-title{font-size:2rem;font-weight:800;color:var(--text);margin-bottom:8px;letter-spacing:-.03em}.page-subtitle{font-size:1rem;color:var(--text-secondary);font-weight:500}.card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-md);margin-bottom:24px;transition:var(--transition);animation:scaleIn .3s ease-out;overflow:hidden}.card:hover{box-shadow:0 8px 24px #00000012,0 2px 8px #00000008;border-color:var(--grey-200)}.card-header{padding:20px 24px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#ffffff 0%,var(--grey-50) 100%)}.card-header h3{font-size:1.125rem;font-weight:700;color:var(--text)}.card-body{padding:24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:32px}.stat-card{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:var(--radius-lg);padding:28px;color:#fff;box-shadow:var(--shadow-xl);transition:var(--transition);animation:scaleIn .4s ease-out;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%)}.stat-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 25px 50px #00000026}.stat-card.stat-info{background:linear-gradient(135deg,#3b82f6,#2563eb)}.stat-card.stat-success{background:linear-gradient(135deg,#10b981,#059669)}.stat-header{margin-bottom:20px}.stat-badge{padding:6px 14px;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-value{font-size:2.5rem;font-weight:800;margin-bottom:8px;letter-spacing:-.02em}.stat-label{font-size:.9375rem;opacity:.9;font-weight:600;margin-bottom:16px}.stat-progress{display:flex;align-items:center;gap:12px;margin-bottom:12px}.progress-track{flex:1;height:8px;background:#fff3;border-radius:20px;overflow:hidden}.progress-fill{height:100%;background:#fff;border-radius:20px;transition:width .6s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #ffffff80}.progress-text{font-size:.875rem;font-weight:700;min-width:45px}.stat-limit{font-size:.8125rem;opacity:.8}.content-grid{display:grid;grid-template-columns:1fr 380px;gap:24px}.form-modern{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-size:.875rem;font-weight:600;color:var(--text)}.form-input,.form-select{padding:12px 16px;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:.9375rem;font-family:inherit;color:var(--text);background:#fff;transition:var(--transition)}.form-input:focus,.form-select:focus,input:focus,select:focus,textarea:focus{outline:none;border-color:#0f172a!important;box-shadow:0 0 0 3px #0f172a2e,0 4px 12px #0f172a14!important;transform:translateY(-1px)}.form-input:hover,.form-select:hover{border-color:var(--grey-400)}textarea.form-input{resize:vertical;min-height:80px}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-primary:active{transform:translateY(0)}.btn-block{width:100%}.btn-lg{padding:14px 28px;font-size:1rem}.timeline{display:flex;flex-direction:column;gap:12px;max-height:400px;overflow-y:auto;padding-right:8px}.timeline::-webkit-scrollbar{width:6px}.timeline::-webkit-scrollbar-track{background:var(--grey-100);border-radius:10px}.timeline::-webkit-scrollbar-thumb{background:var(--grey-300);border-radius:10px}.timeline::-webkit-scrollbar-thumb:hover{background:var(--grey-400)}.timeline-empty{text-align:center;padding:48px 20px;color:var(--text-secondary)}.timeline-item{padding:16px;background:linear-gradient(135deg,#ffffff 0%,var(--grey-50) 100%);border-radius:var(--radius);border-left:4px solid #ffffff;border-color:#fff;transition:var(--transition);animation:slideIn .3s ease-out;box-shadow:var(--shadow)}.timeline-item:hover{transform:translate(4px);box-shadow:var(--shadow-md);border-left-color:#fff}.timeline-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.timeline-value{font-size:1rem;font-weight:700;color:var(--text)}.timeline-date{font-size:.8125rem;color:var(--text-secondary);font-weight:500}.location-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}.location-btn{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;background:#fff;border:2px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition);font-family:inherit;box-shadow:var(--shadow)}.location-btn:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.location-btn.location-active{border-color:var(--primary);background:linear-gradient(135deg,var(--primary-light) 0%,white 100%);box-shadow:var(--shadow-lg)}.location-name{font-size:1.125rem;font-weight:700;color:var(--text)}.location-badge{font-size:.875rem;padding:6px 14px;background:var(--grey-100);border-radius:20px;font-weight:600;color:var(--text-secondary)}.location-active .location-badge{background:var(--primary);color:#fff}.waste-location-selector{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:24px}.waste-location-selector .location-btn{min-width:0;min-height:94px;justify-content:center;border-width:2px}.waste-location-selector .location-name{color:var(--text);line-height:1.15}.waste-location-selector .location-badge{display:inline-flex;align-items:center;justify-content:center;min-width:58px;background:#dbeafe;color:#1e3a8a;border:1px solid #bfdbfe;font-size:.85rem;font-weight:900;line-height:1;white-space:nowrap}.waste-location-selector .location-btn.location-active{background:#000;border-color:#000}.waste-location-selector .location-btn.location-active .location-name{color:#fff}.waste-location-selector .location-btn.location-active .location-badge{background:#fff;color:var(--primary-dark);border-color:#ffffffe0}.waste-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:24px}.waste-entry-row{min-height:72px}.waste-entry-meta{flex:1 1 auto;min-width:0}.waste-entry-row .form-label{color:var(--text);line-height:1.25;font-size:1rem;letter-spacing:-.01em;text-align:left}.waste-qty-field{flex:0 0 250px;max-width:250px;min-width:170px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.waste-qty-input{width:100%;min-width:0;border-top-right-radius:0!important;border-bottom-right-radius:0!important;text-align:right;font-size:.95rem;padding:8px 10px}.waste-qty-unit{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:0 10px;border:1px solid var(--border);border-left:0;border-radius:0 6px 6px 0;background:var(--grey-100);color:var(--text-secondary);font-size:.78rem;font-weight:900;text-transform:uppercase}.entry-row{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s,background .15s;min-height:48px}.entry-row:hover{border-color:var(--primary);background:var(--grey-50)}.entry-row.entry-active{border-color:var(--primary);background:linear-gradient(90deg,var(--primary-light) 0%,white 100%)}.entry-cb{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0;margin:0}.entry-lbl{flex:1;font-size:.875rem;font-weight:600;color:var(--text);cursor:pointer;display:flex;align-items:center;gap:8px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.entry-unit-badge{font-size:.65rem;font-weight:700;padding:2px 6px;background:var(--primary-light);color:var(--primary-dark);border-radius:20px;text-transform:uppercase;letter-spacing:.04em}.entry-field{display:flex;align-items:center;gap:6px;flex-shrink:0}.entry-num{width:80px;padding:6px 10px;border:1.5px solid var(--border);border-radius:6px;font-size:.875rem;font-family:inherit;text-align:right;background:#fff;transition:border-color .15s}.entry-num:not(:disabled){border-color:var(--primary)}.entry-num:disabled{background:var(--grey-100);color:var(--text-secondary);cursor:default}.entry-num:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.entry-unit{font-size:.75rem;color:var(--text-secondary);font-weight:600;min-width:20px}.waste-grid,#waterLocationGrid,.wastewater-grid{display:flex;flex-direction:column;gap:6px;margin-bottom:20px}.waste-item{position:relative;display:flex;align-items:center;gap:10px;padding:10px 14px;background:#fff;border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s;min-height:48px}.waste-item.waste-active{border-color:var(--primary);background:var(--primary-light)}.waste-total{display:flex;align-items:center;justify-content:space-between;padding:24px;background:linear-gradient(135deg,var(--grey-900) 0%,var(--grey-700) 100%);border-radius:var(--radius-lg);margin-bottom:24px;color:#fff;box-shadow:var(--shadow-xl)}.total-label{font-size:1.125rem;font-weight:700}.total-value{color:#fff;font-size:26px;font-weight:800;letter-spacing:-.02em}.photo-upload{margin-bottom:24px}.upload-prompt{border:2px dashed var(--border);border-radius:var(--radius);padding:40px 24px;text-align:center;cursor:pointer;transition:var(--transition);background:linear-gradient(135deg,#ffffff 0%,var(--grey-50) 100%)}.upload-prompt:hover{border-color:var(--primary);background:var(--primary-light)}.upload-text{font-size:1rem;font-weight:600;color:var(--text);margin-bottom:6px}.upload-hint{font-size:.875rem;color:var(--text-secondary)}.upload-preview{position:relative;border-radius:var(--radius);overflow:hidden}.upload-preview img{width:100%;max-height:300px;-o-object-fit:cover;object-fit:cover}.preview-remove{position:absolute;top:12px;right:12px;width:36px;height:36px;background:var(--danger);color:#fff;border:none;border-radius:50%;font-size:1.25rem;cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-lg)}.preview-remove:hover{background:var(--danger-dark);transform:scale(1.1)}.report-container{display:block;width:100%}#solidWasteReports,#waterConsumptionReports,#wastewaterReports,#energyReports{display:block!important;width:100%!important}#solidWasteReports[style*="display: none"],#solidWasteReports[style*="display:none"],#waterConsumptionReports[style*="display: none"],#waterConsumptionReports[style*="display:none"],#wastewaterReports[style*="display: none"],#wastewaterReports[style*="display:none"],#energyReports[style*="display: none"],#energyReports[style*="display:none"]{display:none!important}.report-nav{display:flex!important;flex-direction:row!important;gap:8px!important;align-items:center!important;position:static!important;max-height:none!important;overflow-x:auto!important;white-space:nowrap!important;width:100%!important;max-width:100%!important;margin-bottom:20px!important;border-bottom:1px solid var(--border)!important;padding-bottom:12px!important}.report-nav-btn{display:inline-flex!important;align-items:center!important;gap:6px!important;padding:6px 14px!important;border-radius:8px!important;font-size:.82rem!important;font-weight:600!important;border:1px solid var(--border)!important;background:#fff!important;color:var(--text-secondary)!important;cursor:pointer!important;transition:all .15s ease!important;white-space:nowrap!important;box-shadow:none!important}.report-nav-btn:hover{border-color:#cbd5e1!important;color:var(--text)!important;transform:none!important;background:#f8fafc!important}.report-nav-btn.active{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important;box-shadow:0 2px 4px #16a34a33!important;transform:none!important}.report-content{min-width:0}.report-panel{display:none;animation:fadeIn .4s ease-out}.report-panel.active{display:block}.report-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;padding:24px;background:linear-gradient(135deg,#ffffff 0%,var(--grey-50) 100%);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-md)}.report-header h3{font-size:1.5rem;font-weight:800;color:var(--text)}.export-actions{display:flex;gap:12px}.btn-export{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border:none;border-radius:var(--radius-sm);font-size:.9375rem;font-weight:700;cursor:pointer;transition:var(--transition);font-family:inherit;text-transform:uppercase;letter-spacing:.05em;box-shadow:var(--shadow-lg)}.btn-export:hover{transform:translateY(-3px);box-shadow:var(--shadow-xl)}.btn-export:active{transform:translateY(-1px)}.btn-pdf{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-pdf:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)}.btn-excel{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-excel:hover{background:linear-gradient(135deg,#059669,#047857)}.metrics-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:32px}.metric-card{padding:24px;background:#fff;border:2px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;transition:var(--transition);animation:scaleIn .3s ease-out}.metric-card:hover{transform:translateY(-4px) scale(1.03);box-shadow:var(--shadow-xl);border-color:var(--primary)}.metric-card-primary{background:linear-gradient(135deg,#1d4ed8,#0f3ea8);color:#fff;border:1px solid #1e40af;box-shadow:0 14px 32px #1d4ed83d}.metric-card-primary .metric-value{color:#fff;font-weight:950;text-shadow:0 1px 1px rgba(15,23,42,.22)}.metric-card-primary .metric-label{color:#ffffffeb;font-weight:950;opacity:1}.metric-value{font-size:clamp(1.35rem,2.1vw,1.75rem);font-weight:800;margin-bottom:8px;letter-spacing:-.02em;line-height:1.12;max-width:100%;white-space:normal;overflow-wrap:anywhere}.metric-value span{display:inline-block;white-space:nowrap;margin-left:.15em}.metric-label{font-size:.875rem;font-weight:600;opacity:.8;text-transform:uppercase;letter-spacing:.05em;overflow-wrap:anywhere}.filter-bar{display:flex;gap:16px;margin-bottom:28px;padding:24px;background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-md);align-items:flex-end}.filter-group{flex:1;display:flex;flex-direction:column;gap:8px}.filter-group label{font-size:.875rem;font-weight:600;color:var(--text)}.results-area{min-height:400px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;color:var(--text-secondary);background:linear-gradient(135deg,#ffffff 0%,var(--grey-50) 100%);border-radius:var(--radius-lg);border:2px dashed var(--border)}.loading-spinner{width:40px;height:40px;border:4px solid var(--grey-200);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.loading-state p{font-size:1rem;font-weight:500}.report-loading-state{min-height:360px;padding:56px 24px!important;border:1px solid rgba(148,163,184,.26);background:radial-gradient(circle at 50% 0%,rgba(37,99,235,.1),transparent 34%),linear-gradient(135deg,#f8fbff,#eef6ff 52%,#fff)}.report-brand-loading{display:grid;justify-items:center;gap:18px;max-width:460px;text-align:center}.report-brand-loading strong{display:block;color:var(--text);font-size:clamp(1.1rem,2vw,1.45rem);font-weight:900;letter-spacing:-.02em}.report-brand-loading p{max-width:34rem;margin:8px 0 0;color:var(--text-secondary);font-size:.92rem;font-weight:650;line-height:1.55}.report-loading-bars{display:grid;gap:8px;width:min(320px,72vw)}.report-loading-bars span{height:8px;border-radius:999px;background:linear-gradient(90deg,#1d4ed81f,#0f766e4d,#1d4ed81f);background-size:220% 100%;animation:reportLoadingSweep 1.4s ease-in-out infinite}.report-loading-bars span:nth-child(2){width:78%;animation-delay:.12s}.report-loading-bars span:nth-child(3){width:54%;animation-delay:.24s}@keyframes reportLoadingSweep{0%{background-position:100% 0;opacity:.62}50%{opacity:1}to{background-position:-100% 0;opacity:.62}}.data-table{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--border)}.data-table table{width:100%;border-collapse:collapse}.data-table th{padding:16px;background:linear-gradient(135deg,var(--grey-900) 0%,var(--grey-700) 100%);color:#fff;font-size:.8125rem;font-weight:700;text-align:left;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.data-table td{padding:16px;border-bottom:1px solid var(--border);font-size:.9375rem;color:var(--text);background:#fff}.data-table tr:hover td{background:var(--grey-50)}.data-table .table-row-total td{font-weight:700;background:linear-gradient(135deg,var(--grey-100) 0%,var(--grey-50) 100%);border-top:2px solid var(--grey-300);font-size:1.0625rem}.search-box{margin-bottom:16px}.search-input{width:100%;padding:12px 16px 12px 40px;border:2px solid var(--border);border-radius:var(--radius-sm);font-size:.9375rem;font-family:inherit;color:var(--text);background:#fff url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="%236b7280" stroke-width="2"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.35-4.35"/></svg>') no-repeat 12px center;transition:var(--transition)}.search-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-light)}.toast{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:12px;padding:16px 24px;background:#fff;color:var(--text);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--border);transform:translateY(200px);transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1000;font-weight:600;font-size:.9375rem;min-width:300px}.toast.toast-show{transform:translateY(0)}.toast.toast-success{background:linear-gradient(135deg,var(--success) 0%,var(--success-dark) 100%);color:#fff;border:none}.toast.toast-error{background:linear-gradient(135deg,var(--danger) 0%,var(--danger-dark) 100%);color:#fff;border:none}.toast-icon{font-size:1.25rem}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999}.loading-spinner-large{width:60px;height:60px;border:6px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:20px}.loading-overlay p{color:#fff;font-size:1.125rem;font-weight:600}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;transition:opacity .3s ease}.modal-overlay.show{opacity:1}.modal-dialog{background:#fff;border-radius:var(--radius-lg);max-width:500px;width:90%;box-shadow:var(--shadow-xl);animation:scaleIn .3s ease-out}.modal-header{padding:24px 28px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,#ffffff 0%,var(--grey-50) 100%)}.modal-header h3{font-size:1.375rem;font-weight:700;color:var(--text)}.modal-body{padding:28px}.modal-body p{font-size:1rem;color:var(--text-secondary);line-height:1.6}.modal-footer{padding:20px 28px;border-top:1px solid var(--border);display:flex;gap:12px;justify-content:flex-end;background:var(--grey-50)}@media (max-width: 1024px){.report-container{grid-template-columns:1fr}.report-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;position:static}}.water-type-btn{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;background:#fff;border:2px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition);font-family:inherit;box-shadow:var(--shadow)}.water-type-btn:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.water-type-btn.type-active{border-color:var(--primary);background:linear-gradient(135deg,var(--primary-light) 0%,white 100%);box-shadow:var(--shadow-lg)}.water-type-btn .location-name{font-size:1.125rem;font-weight:700;color:var(--text)}.water-type-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px;perspective:1000px}.water-type-btn{position:relative;display:flex;align-items:center;gap:12px;padding:10px 16px;background:#fffc;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(0,0,0,.08);border-radius:10px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);font-family:inherit;box-shadow:0 2px 4px #0000000a,inset 0 1px #ffffffe6;overflow:hidden}.water-type-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#3b82f60d,#2563eb0d);opacity:0;transition:opacity .4s ease}.water-type-btn:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 6px 12px #00000014,0 10px 20px #3b82f60f,inset 0 1px #fff;border-color:#3b82f633}.water-type-btn:hover:before{opacity:1}.water-type-btn.type-active{background:linear-gradient(135deg,#3b82f6f2,#2563eb);border-color:#fff3;transform:translateY(-1px);box-shadow:0 6px 14px #2563eb33,inset 0 1px #ffffff4d}.water-type-btn.type-active .type-name,.water-type-btn.type-active .type-desc,.water-type-btn.type-active .type-icon{color:#fff}.type-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#0000000a;flex-shrink:0;transition:background .3s ease,transform .3s ease}.type-icon svg{width:18px;height:18px;display:block;transition:transform .25s ease}.water-type-btn:hover .type-icon{background:#00000012;transform:translateY(-1px)}.water-type-btn:hover .type-icon svg{transform:scale(1.1)}.water-type-btn.type-active .type-icon{background:#ffffff2e}.type-info{flex:1;display:flex;flex-direction:column;gap:4px}.water-mode-selector{gap:12px!important;perspective:none}.water-mode-btn{justify-content:center;min-height:108px;padding:20px 24px!important;text-align:center!important;transform:none!important;box-shadow:var(--shadow)!important;-webkit-backdrop-filter:none;backdrop-filter:none}.water-mode-btn:before,.water-mode-btn .type-icon{display:none!important}.water-mode-btn:hover{transform:none!important;box-shadow:var(--shadow-md)!important;border-color:var(--primary)!important}.water-mode-btn:hover:before{opacity:0!important}.water-mode-btn.type-active{transform:none!important;box-shadow:0 0 0 3px #4f46e529!important}.water-mode-btn .type-info{align-items:center;gap:8px}.water-mode-btn .type-name{font-size:1rem!important}.water-mode-btn .type-desc{font-size:.86rem!important}.type-name{font-size:1.125rem;font-weight:700;color:var(--text);letter-spacing:-.02em;transition:color .3s ease}.type-desc{font-size:.8125rem;color:var(--text-secondary);font-weight:500;transition:color .3s ease}.type-indicator{width:12px;height:12px;border-radius:50%;background:var(--grey-300);transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 0 #3b82f64d}.water-type-btn.type-active .type-indicator{background:#fff;box-shadow:0 0 0 4px #ffffff4d,0 0 20px #ffffff80;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.card-glass{background:#ffffffb3;-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(0,0,0,.06);box-shadow:0 8px 32px #0000000f,0 2px 8px #0000000a,inset 0 1px #ffffffe6}.card-glass:hover{background:#ffffffd9;box-shadow:0 12px 48px #00000014,0 4px 16px #0000000f,inset 0 1px #fff}.card-subtitle{font-size:.875rem;color:var(--text-secondary);font-weight:500;margin-top:4px}.wastewater-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-bottom:24px}.param-active{border-color:var(--primary)!important}.btn-apple{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border:none;box-shadow:0 2px 8px #4f46e533;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:700}.btn-apple:hover{box-shadow:0 4px 16px #4f46e54d;filter:brightness(1.06)}.btn-apple:active{filter:brightness(.97)}.btn-icon{font-size:1rem;opacity:.8}.wastewater-timeline-item{background:linear-gradient(135deg,#ffffffe6,#f9fafbe6);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left-width:3px}.timeline-preview{font-size:.8125rem;color:var(--text-secondary);margin-top:6px;line-height:1.5}.timeline-remarks{font-size:.75rem;color:var(--text-secondary);font-style:italic;margin-top:8px;padding-top:8px;border-top:1px solid rgba(0,0,0,.06)}@media (max-width: 768px){.water-type-selector,.wastewater-grid{grid-template-columns:1fr}.water-type-btn{padding:20px 24px}}.flow-display-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:32px}.flow-card{display:flex;align-items:center;gap:16px;padding:24px;background:linear-gradient(135deg,#3b82f61a,#2563eb0d);border:2px solid rgba(59,130,246,.2);border-radius:16px;box-shadow:0 4px 12px #3b82f61a;transition:all .3s ease}.flow-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f626;border-color:#3b82f666}.flow-icon{font-size:2.5rem;filter:drop-shadow(0 2px 4px rgba(59,130,246,.3));animation:pulse-subtle 3s ease-in-out infinite}@keyframes pulse-subtle{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.flow-info{display:flex;flex-direction:column;gap:4px;flex:1}.flow-label{font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.flow-value{font-size:1.75rem;font-weight:800;color:#2563eb;letter-spacing:-.02em}@media (max-width: 768px){.flow-display-cards{grid-template-columns:1fr}}.report-type-selector-main{margin-bottom:32px;padding:24px;background:var(--card-bg);border-radius:16px;box-shadow:0 2px 8px #0000000d}.report-type-cards-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:16px}.report-type-card-main{padding:20px 16px;background:linear-gradient(135deg,#fffffff2,#f9fafbf2);border:2px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center}.report-type-card-main:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001a;border-color:#3b82f6}.report-type-card-main.active{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#2563eb;box-shadow:0 8px 20px #3b82f64d}.report-type-card-main.active .type-icon-main{transform:scale(1.1)}.report-type-card-main.active h4,.report-type-card-main.active p{color:#fff}.type-icon-main{font-size:3rem;margin-bottom:16px;transition:transform .3s ease;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.report-type-card-main h4{font-size:1.125rem;font-weight:700;margin-bottom:8px;color:var(--text-primary);transition:color .3s ease}.report-type-card-main p{font-size:.875rem;color:var(--text-secondary);line-height:1.5;transition:color .3s ease}@media (max-width: 768px){.report-type-cards-main{grid-template-columns:repeat(2,1fr)!important;gap:10px}.report-type-card-main{padding:14px 10px}.report-type-card-main h4{font-size:.82rem!important}.report-type-card-main p{font-size:.72rem!important}.type-icon-main{font-size:1.8rem!important;margin-bottom:8px!important}}.report-type-cards-main{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}@media (min-width: 1100px){.report-type-cards-main{grid-template-columns:repeat(4,1fr)}}@media (min-width: 640px) and (max-width: 1099px){.report-type-cards-main{grid-template-columns:repeat(2,1fr)}}.type-icon-main{font-size:2.5rem;margin-bottom:12px;text-align:center}.custom-range-bar{flex-wrap:wrap;gap:16px;align-items:flex-end}.date-range-picker{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.range-field{display:flex;flex-direction:column;gap:6px}.range-field label{font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.range-selects{display:flex;gap:8px}.range-sel{min-width:90px!important}.range-arrow{font-size:1.5rem;color:var(--primary);font-weight:700;margin-top:20px;-webkit-user-select:none;-moz-user-select:none;user-select:none}.filter-bar .filter-group select.form-select{min-width:120px}#wwMonthlyResults .data-table,#wcMonthlyResults .data-table{overflow-x:auto}#wwMonthlyResults table th,#wwMonthlyResults table td{font-size:.75rem;padding:6px 8px;white-space:nowrap}@media (max-width: 640px){.mobile-bottom-nav{display:block;position:fixed;bottom:0;left:0;right:0;z-index:300;background:#fffffff5;border-top:1px solid var(--border);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 -2px 20px #0000001a;padding-bottom:env(safe-area-inset-bottom,0px)}.mobile-bottom-nav-inner{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:62px}.mobile-nav-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;background:transparent;cursor:pointer;padding:8px 4px;color:var(--text-secondary);font-family:inherit;position:relative;-webkit-tap-highlight-color:transparent;transition:color .15s}.mobile-nav-btn.active{color:var(--primary)}.mobile-nav-btn.active:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:36px;height:3px;background:var(--primary);border-radius:0 0 3px 3px}.mobile-nav-icon{font-size:1.3rem;line-height:1}.mobile-nav-btn.active .mobile-nav-icon{transform:scale(1.1)}.mobile-nav-label{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-tabs{display:none!important}.topbar{padding:10px 14px;top:0}.logo-wrapper{width:36px;height:36px}.brand{gap:10px}.brand-info h1{font-size:1rem}.topbar-sub{display:block;font-size:.6rem;font-weight:600;color:var(--text-secondary);letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px}.date-badge{display:none}.backend-status{display:flex;padding:6px 10px;font-size:.72rem;white-space:nowrap}.user-info{display:none}#darkModeToggle{padding:6px 10px;font-size:.72rem}#logoutBtn,.btn-logout{padding:6px 12px;font-size:.72rem}.dashboard{padding:14px 14px calc(70px + env(safe-area-inset-bottom,0px)) 14px;max-width:100%}.page-header{margin-bottom:18px}.page-title{font-size:1.3rem;font-weight:800}.page-subtitle{font-size:.8rem}.stats-grid{grid-template-columns:1fr;gap:12px;margin-bottom:18px}.stat-card{padding:18px 20px}.stat-value{font-size:1.875rem}.stat-label{font-size:.875rem}.content-grid{grid-template-columns:1fr;gap:14px}.card{border-radius:14px;margin-bottom:14px}.card:hover{transform:none;box-shadow:var(--shadow-md)}.card-header{padding:14px 16px}.card-header h3{font-size:.975rem}.card-body{padding:14px 16px}.location-selector{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.location-btn{padding:12px 8px;border-radius:12px;gap:6px}.location-name{font-size:.72rem!important;font-weight:700!important}.location-badge{font-size:.62rem!important;padding:2px 6px!important}.waste-grid{grid-template-columns:1fr 1fr;gap:8px}.waste-item{padding:12px 8px;border-radius:12px}.waste-emoji{font-size:1.5rem!important}.waste-label{font-size:.72rem!important}.waste-input-wrap input{font-size:16px!important;padding:8px 10px!important}.water-type-selector{grid-template-columns:1fr 1fr;gap:8px}.water-type-btn{padding:14px 10px;border-radius:12px;gap:6px}.type-name{font-size:.78rem!important}.type-desc{display:none}#waterLocationGrid{grid-template-columns:1fr 1fr!important;gap:8px!important}.wastewater-grid{grid-template-columns:1fr 1fr;gap:8px}.wastewater-item{padding:12px 8px;border-radius:12px}.param-label{font-size:.72rem!important}.flow-display-cards{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.flow-card{padding:12px 10px;gap:8px;border-radius:12px}.flow-value{font-size:1.2rem}.flow-label{font-size:.68rem}.form-modern{gap:12px}.form-row{grid-template-columns:1fr;gap:10px}.form-input,.form-select{padding:13px 14px;font-size:16px;border-radius:10px;min-height:48px}.form-label{font-size:.8rem}.btn-lg{padding:15px 20px;font-size:.95rem;min-height:52px}.photo-upload{margin:10px 0}.upload-prompt{padding:18px 14px}.timeline{max-height:280px;gap:8px}.timeline-item{padding:12px 14px;border-radius:10px}.timeline-value{font-size:.9rem}.timeline-date,.timeline-preview{font-size:.72rem}.timeline-remarks{font-size:.68rem}.waste-total{padding:12px 14px;border-radius:10px}.total-value{font-size:1.1rem}.report-type-selector-main{padding:14px;margin-bottom:16px;border-radius:14px}.report-type-selector-main>h3{font-size:.9rem;margin-bottom:10px}.report-type-cards-main{grid-template-columns:repeat(2,1fr)!important;gap:8px;margin-top:8px}.report-type-card-main{padding:12px 10px;display:flex!important;flex-direction:column;align-items:center;text-align:center;gap:4px;border-radius:12px}.report-type-card-main .type-icon-main{font-size:1.6rem;margin-bottom:4px!important;flex-shrink:0}.report-type-card-main h4{font-size:.78rem;margin-bottom:2px}.report-type-card-main p{font-size:.67rem;line-height:1.3}.report-container,#solidWasteReports,#waterConsumptionReports,#wastewaterReports,#energyReports{display:block!important;grid-template-columns:1fr!important}.report-nav{display:flex!important;flex-direction:row!important;position:static!important;overflow-x:auto;gap:6px;padding:0 0 8px;margin-bottom:14px;scrollbar-width:none;-webkit-overflow-scrolling:touch;align-self:auto!important}.report-nav::-webkit-scrollbar{display:none}.report-nav-btn{white-space:nowrap;flex-shrink:0;padding:9px 16px;font-size:.78rem;border-radius:20px;min-height:38px}.report-nav-btn:hover{transform:none}.report-header{flex-direction:column;gap:10px;align-items:flex-start;margin-bottom:14px}.report-header h3{font-size:1rem}.export-actions{display:flex;gap:8px;width:100%}.btn-export{flex:1;font-size:.78rem;padding:9px 10px;min-height:40px}.filter-bar{flex-direction:column;gap:10px;padding:14px;border-radius:12px;margin-bottom:14px}.filter-group{width:100%}.filter-group label{font-size:.76rem}.filter-group .form-select{width:100%;font-size:16px;min-height:48px}.filter-bar>.btn{width:100%;justify-content:center;min-height:48px}.date-range-picker{flex-direction:column;gap:12px;width:100%}.range-selects{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.range-sel{min-width:0!important;width:100%;font-size:14px!important;padding:10px 6px!important;min-height:44px}.range-arrow{transform:rotate(90deg);font-size:1.2rem;margin:0;text-align:center}.range-field label{font-size:.72rem}.custom-range-bar>.btn{width:100%;min-height:48px}.metrics-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;margin-bottom:14px!important}.metric-card{padding:14px 10px!important;border-radius:12px!important}.metric-card:hover{transform:none}.metric-value{font-size:1.25rem!important}.metric-label{font-size:.65rem!important;letter-spacing:.02em!important}.data-table{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:10px}.data-table table{font-size:.775rem}.data-table th{padding:10px 8px;font-size:.7rem}.data-table td{padding:9px 8px}.results-area{min-height:200px;border-radius:10px}.loading-state{padding:40px 16px}.loading-state p{font-size:.85rem;text-align:center}.report-content{border:none!important;background:transparent!important;padding:0!important;min-width:0}.toast{bottom:calc(70px + env(safe-area-inset-bottom,8px))!important;left:14px!important;right:14px!important;width:auto!important;border-radius:12px!important;font-size:.875rem!important}.modal-dialog{margin:12px!important;border-radius:18px!important;max-height:calc(100vh - 80px);overflow-y:auto}.card-subtitle{font-size:.75rem}#wwMonthlyResults .data-table table,#wcMonthlyResults .data-table table{font-size:.7rem}button,select,input{-webkit-tap-highlight-color:transparent}select,input[type=date],input[type=number],input[type=email],input[type=password]{min-height:48px}}@media (max-width: 640px){#waterConsumptionReports[style*="display: block"],#waterConsumptionReports[style*="display:block"],#solidWasteReports[style*="display: block"],#solidWasteReports[style*="display:block"],#wastewaterReports[style*="display: block"],#wastewaterReports[style*="display:block"],#energyReports[style*="display: block"],#energyReports[style*="display:block"]{display:block!important;grid-template-columns:1fr!important;gap:0!important}}@media (min-width: 641px) and (max-width: 1024px){.dashboard{padding:20px 24px}.report-type-cards-main{grid-template-columns:repeat(2,1fr);gap:12px}.waste-grid,.wastewater-grid{grid-template-columns:1fr 1fr}.content-grid,.stats-grid{grid-template-columns:1fr}}@media (max-width: 640px){.entry-row{padding:10px 12px;min-height:50px;gap:8px;border-radius:10px;border-left:3px solid var(--border);background:#fff;transition:border-color .2s}.entry-row:has(input:checked){border-left-color:var(--primary);background:#3b82f608}.entry-lbl{font-size:.8rem;gap:6px}.entry-num{width:70px;padding:6px 8px;font-size:16px!important;min-height:44px;border-radius:8px}.entry-unit{font-size:.7rem;min-width:16px}.waste-grid,.wastewater-grid,#waterLocationGrid{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;gap:5px}input[type=checkbox]{width:20px!important;height:20px!important;accent-color:var(--primary);flex-shrink:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:1;width:28px}.card-footer .btn,.form-actions .btn{width:100%;min-height:52px;font-size:1rem;border-radius:12px}input[type=date]{font-size:16px!important;min-height:48px}textarea.form-input{font-size:16px!important;min-height:90px}input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d!important}.location-btn:active,.water-type-btn:active,.report-nav-btn:active,.report-type-card-main:active,.btn:active{transform:scale(.97)!important;transition:transform .08s!important}.dashboard,main,.card,.card-body,.page-content{max-width:100%;overflow-x:hidden}.card{box-shadow:0 2px 12px #00000012}}.mobile-nav-svg{display:flex;align-items:center;justify-content:center;width:24px;height:24px}#energyTypeSelector{display:grid!important;grid-template-columns:repeat(2,1fr)!important}@media (max-width: 640px){#energyTypeSelector.water-type-selector{grid-template-columns:repeat(2,1fr)!important}#energyTypeSelector .water-type-btn{padding:14px 12px!important;min-height:72px}#energyTypeSelector .type-name{font-size:.78rem!important}#energyTypeSelector .type-desc{font-size:.66rem!important}#energyTypeSelector .type-icon{width:36px;height:36px;border-radius:8px}#energyTypeSelector .type-icon svg{width:20px;height:20px}#transportSubNav{flex-direction:column}#transportSubNav .location-btn{width:100%;min-height:44px}#vehicleListTable,#fuelLogTable{overflow-x:auto;-webkit-overflow-scrolling:touch}#vehicleListTable table,#fuelLogTable table{min-width:520px}}.card .card-body .form-row+.form-row{margin-top:4px}.form-label{font-size:.8125rem;font-weight:600;color:var(--text);letter-spacing:.01em}.form-label.required:after{content:" *";color:#dc2626;font-weight:700}.form-input[readonly]{background:#f3f4f6!important;border-color:#d1d5db;color:var(--primary, #2563eb);font-weight:700;cursor:default}input[type=number].form-input{font-variant-numeric:tabular-nums}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b7280' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px!important}.form-input:focus,.form-select:focus{transform:none!important;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f62e}.btn-lg.btn-primary{font-size:.9375rem;font-weight:700;letter-spacing:.02em;min-height:52px;border-radius:12px}.table-row-total{background:#f0f7ff!important;border-top:2px solid #bfdbfe}.table-row-total td{font-weight:700;color:#1e40af}.metric-value{white-space:normal;overflow:visible;text-overflow:initial;overflow-wrap:anywhere;word-break:normal}[data-etype=electrical] .type-icon{color:#2563eb}[data-etype=lpg] .type-icon{color:#d97706}[data-etype=transport] .type-icon{color:#16a34a}[data-etype=solar] .type-icon{color:#f59e0b}.type-icon svg{width:32px;height:32px;display:block;transition:transform .3s ease}.water-type-btn:hover .type-icon svg{transform:scale(1.15)}.water-type-btn.type-active .type-icon{color:#fff}[data-report-type=solid_waste] .type-icon-main:before{content:"SW";font-size:1rem;font-weight:800;color:#16a34a}[data-report-type=water_consumption] .type-icon-main:before{content:"H₂O";font-size:.9rem;font-weight:800;color:#0ea5e9}[data-report-type=wastewater] .type-icon-main:before{content:"WW";font-size:1rem;font-weight:800;color:#7c3aed}[data-report-type=energy] .type-icon-main:before{content:"NRG";font-size:.9rem;font-weight:800;color:#f59e0b}.report-type-card-main.active .type-icon-main:before{color:#fffffff2!important}.report-nav{overflow-y:auto;scrollbar-width:none}.report-nav::-webkit-scrollbar{display:none}.report-type-tabs{display:flex;gap:4px;background:#f1f5f9;border-radius:12px;padding:4px;margin-bottom:24px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.report-type-tabs::-webkit-scrollbar{display:none}.rtt-btn{flex:1;min-width:110px;padding:10px 16px;background:transparent;border:none;border-radius:9px;font-size:.875rem;font-weight:600;color:#64748b;cursor:pointer;transition:background .18s,color .18s,box-shadow .18s;white-space:nowrap;font-family:inherit;text-align:center}.rtt-btn:hover{background:#ffffffb3;color:var(--primary, #2563eb)}.rtt-btn.rtt-active{background:#fff;color:var(--primary, #2563eb);box-shadow:0 2px 8px #0000001a}@media (max-width: 640px){.report-type-tabs{gap:2px;padding:3px;margin-bottom:16px;border-radius:10px}.rtt-btn{min-width:72px;padding:9px 10px;font-size:.78rem;border-radius:8px}}.overview-year-sel{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:6px 34px 6px 12px!important;font-size:.8125rem!important;font-weight:600;border-radius:8px!important;border:1.5px solid var(--border)!important;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='10' viewBox='0 0 14 10'%3E%3Cpath d='M2 3l5 5 5-5' stroke='%230f172a' stroke-width='2.2' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:14px 10px!important;height:34px;min-width:108px;cursor:pointer}.overview-year-sel:hover{border-color:#94a3b8!important}.overview-year-sel:focus{outline:none;border-color:var(--primary)!important;box-shadow:0 0 0 3px #3b82f626!important}.entry-action-btn{display:inline-flex;align-items:center;padding:3px 9px;border-radius:6px;border:1.5px solid transparent;font-size:.7rem;font-weight:700;cursor:pointer;font-family:inherit;letter-spacing:.01em;transition:background .15s,border-color .15s,transform .1s;white-space:nowrap}.entry-action-btn.edit-btn{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.entry-action-btn.edit-btn:hover{background:#dbeafe;border-color:#93c5fd;transform:translateY(-1px)}.entry-action-btn.del-btn{background:#fef2f2;border-color:#fecaca;color:#dc2626}.entry-action-btn.del-btn:hover{background:#fee2e2;border-color:#fca5a5;transform:translateY(-1px)}.records-manage-btn{float:right;margin-top:-4px;margin-left:12px;border:1px solid #bfdbfe;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;border-radius:999px;padding:8px 14px;font-size:.78rem;font-weight:800;letter-spacing:.01em;cursor:pointer;box-shadow:0 8px 18px #2563eb1f;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.records-manage-btn:hover{transform:translateY(-1px);border-color:#60a5fa;box-shadow:0 12px 24px #2563eb2e}.records-manager-overlay{z-index:10020}.records-manager-modal{max-width:1380px;width:min(96vw,1380px);max-height:92vh;border:1px solid var(--grey-200);display:flex;flex-direction:column;overflow:hidden}.records-manager-subtitle{margin:4px 0 0;color:var(--text-secondary);font-size:.82rem}.records-manager-body{display:flex;flex-direction:column;gap:12px;overflow-y:hidden;flex:1;min-height:0;padding:20px 24px}.records-toolbar{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--grey-50)}.records-search-input{flex:1;min-width:220px;background:#fff}.records-period-select{width:180px;background:#fff}.records-count{white-space:nowrap;color:var(--text-secondary);font-size:.78rem;font-weight:700}.records-insight-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.records-insight-card{border:1px solid #dbeafe;border-radius:18px;padding:14px 16px;background:linear-gradient(135deg,#fffffff2,#eff6ffeb);box-shadow:0 12px 28px #0f172a0f}.records-insight-card span{display:block;color:var(--text-secondary);font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;margin-bottom:7px}.records-insight-card strong{display:block;color:var(--text);font-size:1.12rem;font-weight:900;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.records-workspace{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(460px,1.18fr);gap:16px;align-items:start}.records-list-panel{max-height:calc(92vh - 250px);overflow:auto;padding:6px;border:1px solid var(--border);border-radius:10px;background:var(--grey-50)}.records-list-limit-note{margin:0 0 8px;padding:10px 12px;border:1px dashed #93c5fd;border-radius:14px;background:#eff6ff;color:#1d4ed8;font-size:.75rem;font-weight:800;line-height:1.35}.record-list-card{width:100%;display:flex;flex-direction:column;gap:7px;text-align:left;padding:14px;margin-bottom:8px;border:1px solid transparent;border-radius:16px;background:#fff;color:var(--text);cursor:pointer;font-family:inherit;box-shadow:0 6px 16px #0f172a0d;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease,background .15s ease}.record-list-card:hover,.record-list-card.record-card-active{border-color:#60a5fa;transform:translateY(-1px);box-shadow:0 12px 28px #2563eb24}.record-list-card.record-card-active{background:linear-gradient(135deg,#eff6ff,#fff)}.record-card-period{width:-moz-fit-content;width:fit-content;color:#1d4ed8;background:#dbeafe;border-radius:999px;padding:3px 9px;font-size:.7rem;font-weight:900}.record-list-card strong{font-size:.9rem;line-height:1.35;color:var(--text)}.record-list-card em{color:var(--text-secondary);font-size:.78rem;line-height:1.35;font-style:normal}.record-card-badges{display:flex;gap:6px;flex-wrap:wrap}.record-card-badges span{border:1px solid #e2e8f0;border-radius:999px;padding:3px 8px;background:#f8fafc;color:#475569;font-size:.68rem;font-weight:800}.records-detail-panel{max-height:calc(92vh - 250px);overflow:auto;border:1px solid var(--border);border-radius:10px;padding:16px;background:#fff}.records-table-wrap{max-height:calc(92vh - 260px);overflow:auto;border:1px solid var(--border);border-radius:8px;background:#fff}.records-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0}.records-table th{position:sticky;top:0;z-index:1;background:var(--grey-50);color:var(--text-secondary);font-size:.7rem;text-transform:uppercase;letter-spacing:.07em;font-weight:700;text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);white-space:nowrap}.records-table td{padding:10px 12px;border-bottom:1px solid var(--grey-100);vertical-align:middle;color:var(--text);font-size:.83rem}.records-table tr:last-child td{border-bottom:0}.records-actions{display:flex;gap:8px;flex-wrap:wrap}.records-edit-form{display:flex;flex-direction:column;gap:16px}.records-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,#f8fafc,#eef6ff);color:var(--text-secondary);font-size:.84rem;font-weight:700}.records-editor-heading strong{display:block;color:var(--text);font-size:1.1rem;line-height:1.25}.records-editor-heading p{margin:4px 0 0;color:var(--text-secondary);font-size:.8rem;font-weight:600}.records-editor-eyebrow{display:block;color:#2563eb;font-size:.68rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.records-sync-pill{flex:0 0 auto;color:#047857;background:#d1fae5;border:1px solid #a7f3d0;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:900}.records-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.records-form-wide{grid-column:1 / -1}.records-editor-footer{display:flex;flex-direction:row-reverse;gap:10px;padding-top:4px;position:sticky;bottom:-18px;background:linear-gradient(180deg,#ffffffc2,#fff 42%);padding-bottom:2px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.records-delete-btn{background:#fee2e2!important;color:#991b1b!important;border:1px solid #fecaca!important}.records-empty{border:1px dashed var(--border);border-radius:14px;background:#f8fafc}.records-clickable-header{cursor:pointer}.records-clickable-header:hover h3{color:#1d4ed8}.records-manager-modal{width:min(96vw,1380px);max-height:92vh}.records-toolbar-grid{display:grid;grid-template-columns:minmax(200px,1.4fr) repeat(4,minmax(110px,.65fr)) minmax(100px,.5fr) repeat(3,auto) auto;align-items:center;gap:8px}.records-filter-select,.records-date-filter,.records-page-size{min-height:42px;background:#fff}.records-tool-btn{border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;padding:10px 13px;font-size:.78rem;font-weight:850;cursor:pointer;box-shadow:0 8px 18px #0f172a0f;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.records-tool-btn:hover:not(:disabled){transform:translateY(-1px);border-color:#60a5fa;box-shadow:0 12px 24px #2563eb24}.records-tool-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.records-status-line{border:1px solid #dbe3ee;border-radius:14px;background:#fff;color:#0f172a;padding:10px 12px;font-size:.78rem;font-weight:850}.records-status-line[data-state=saving],.records-status-line[data-state=editing]{border-color:#dbe3ee;background:#f8fafc;color:#0f172a}.records-status-line[data-state=error]{border-color:#fecaca;background:#fef2f2;color:#991b1b}.records-grid-wrap{flex:1 1 auto;min-height:220px;max-height:none;overflow:auto;overscroll-behavior:contain;scroll-padding:18px 18px 72px 18px;border:1px solid #dbeafe;border-radius:18px;background:#fff;box-shadow:inset 0 1px #ffffffbf,0 16px 38px #0f172a12}.records-grid-table{width:100%;min-width:1320px;border-collapse:separate;border-spacing:0;font-size:.8rem}.records-grid-table tbody:after{content:"";display:table-row;height:56px}.records-grid-table th{position:relative;background:linear-gradient(180deg,#eff6ff,#e0f2fe);border-bottom:1px solid #bfdbfe;border-right:1px solid #dbeafe;padding:0;text-align:left}.records-grid-table td{min-width:132px;max-width:260px;padding:8px;border-bottom:1px solid #eef2f7;border-right:1px solid #eef2f7;vertical-align:top;background:#fff}.records-grid-table tr:nth-child(2n) td{background:#f8fafc}.records-grid-table tr:hover td{background:#eff6ff}.records-sort-btn{width:100%;min-height:42px;border:0;background:transparent;color:#1e3a8a;padding:10px 12px;text-align:left;font:inherit;font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}.records-cell-input,.records-readonly-cell{width:100%;min-height:36px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;padding:8px 10px;font:inherit;font-size:.78rem}.records-cell-input:focus{outline:2px solid rgba(37,99,235,.22);border-color:#2563eb;box-shadow:0 0 0 4px #2563eb14}.records-cell-textarea{min-height:54px;resize:vertical}.records-readonly-cell{display:block;border-color:#e2e8f0;background:#f8fafc;color:#475569;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.records-actions-head,.records-row-actions{position:sticky;left:0;z-index:2;min-width:150px!important;background:#f8fafc!important;box-shadow:8px 0 18px #0f172a0f}.records-row-actions{display:table-cell;white-space:nowrap}.records-row-actions .entry-action-btn{margin-right:6px}.records-row-actions .entry-action-btn:last-child{margin-right:0}.records-row-actions-inner{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.records-draft-row td{background:#f8fafc!important}.records-pagination{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:12px 2px 0;color:var(--text-secondary);font-size:.78rem;font-weight:800}.records-manager-modal .eem-footer{flex:0 0 auto}@media (max-width: 640px){.entry-action-btn{padding:4px 8px;font-size:.68rem;min-height:28px}.records-manage-btn{float:none;display:inline-flex;margin:10px 0 0;width:-moz-fit-content;width:fit-content}.records-toolbar,.records-editor-heading,.records-editor-footer{align-items:stretch;flex-direction:column}.records-search-input{min-width:0;width:100%}.records-count{white-space:normal}.records-period-select{width:100%}.records-insight-grid,.records-workspace{grid-template-columns:1fr}.records-list-panel,.records-detail-panel{max-height:none}.records-form-grid{grid-template-columns:1fr}.records-table-wrap{max-height:52vh}.records-toolbar-grid{grid-template-columns:1fr}.records-manager-modal{width:98vw}.records-grid-wrap{max-height:58vh}.records-pagination{justify-content:stretch;flex-direction:column;align-items:stretch}}.energy-edit-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000;z-index:2000;display:flex;align-items:center;justify-content:center;padding:16px;transition:background .25s;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}.energy-edit-modal-overlay.eem-open{background:#00000073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.energy-edit-modal{background:#fff;border-radius:16px;box-shadow:0 24px 64px #0000002e;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;transform:translateY(24px) scale(.97);opacity:0;transition:transform .25s cubic-bezier(.34,1.56,.64,1),opacity .2s}.energy-edit-modal-overlay.eem-open .energy-edit-modal{transform:translateY(0) scale(1);opacity:1}.eem-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 16px;border-bottom:1px solid var(--border)}.eem-header h3{font-size:1rem;font-weight:700;margin:0}.eem-close{background:#f1f5f9;border:none;border-radius:8px;width:32px;height:32px;font-size:1.3rem;line-height:1;cursor:pointer;color:var(--text-secondary);font-family:inherit;transition:background .15s}.eem-close:hover{background:#e2e8f0;color:var(--text)}.eem-body{padding:20px 24px;display:flex;flex-direction:column;gap:14px}.eem-footer{padding:16px 24px 20px;border-top:1px solid var(--border);display:flex;gap:10px;flex-direction:row-reverse}.eem-footer .btn{padding:10px 20px;border-radius:10px;border:none;font-size:.875rem;font-weight:600;cursor:pointer;font-family:inherit}@media (max-width: 560px){.energy-edit-modal{border-radius:12px}.eem-header{padding:16px 16px 12px}.eem-body{padding:14px 16px;gap:12px}.eem-footer{padding:12px 16px 16px;flex-direction:column-reverse}.eem-footer .btn{width:100%;min-height:46px}}body.dark{--bg: #0f172a;--bg-secondary: #0b0f19;--text: #f1f5f9;--text-secondary: #94a3b8;--border: #1e293b;--primary-light: #1e293b;--grey-50: #1e293b;--grey-100: #1e293b;--grey-200: #334155;--grey-300: #475569;--grey-400: #64748b;--grey-500: #94a3b8;--grey-600: #cbd5e1;--grey-700: #e2e8f0;--grey-800: #f1f5f9;--grey-900: #ffffff}body.dark .card,body.dark .modal-content,body.dark .topbar,body.dark .records-list-panel,body.dark .records-detail-panel,body.dark .energy-edit-modal{background:var(--bg)!important;color:var(--text)!important;border-color:var(--border)!important}body.dark .topbar{background:var(--bg)!important}body.dark .form-input,body.dark .form-select,body.dark .range-selects select,body.dark .filter-bar select{background:#1e293b!important;color:#f1f5f9!important;border-color:#334155!important}body.dark .form-input:focus,body.dark .form-select:focus{border-color:var(--primary)!important}body.dark .timeline-item{background:linear-gradient(135deg,#1e293b,#0f172a)!important;border-color:var(--primary)!important}body.dark .report-type-tabs{background:#1e293b!important}body.dark .rtt-btn:not(.rtt-active){color:#94a3b8!important}body.dark .rtt-btn.rtt-active{background:#0f172a!important;color:#fff!important}body.dark .data-table table th{background:#1e293b!important;color:#f1f5f9!important;border-bottom:2px solid #334155!important}body.dark .data-table table td{border-bottom:1px solid #1e293b!important}body.dark .data-table table tr:hover td{background:#ffffff05!important}body.dark .toast{background:#1e293b!important;border:1px solid #334155!important}body.dark .toast-text{color:#fff!important}.bg-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;background:#080c16}.bg-img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;animation:slowZoom 30s ease-in-out infinite alternate;filter:brightness(.42) saturate(1.15) contrast(1.05)}@keyframes slowZoom{0%{transform:scale(1)}to{transform:scale(1.06)}}.bg-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 30%,#0f172a80,#080c16eb 80%),linear-gradient(180deg,#080c16cc,#080c16f2)}.portal-container{position:relative;z-index:2;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 24px 40px;box-sizing:border-box}.portal-glow-bg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:700px;height:500px;background:radial-gradient(circle,rgba(59,130,246,.14) 0%,rgba(99,102,241,.06) 50%,transparent 70%);pointer-events:none;z-index:1}.portal-card-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.12fr .88fr;gap:28px;width:100%;max-width:880px;align-items:stretch;margin:0 auto}.portal-card{position:relative;background:linear-gradient(145deg,#ffffff12,#ffffff08);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:36px 32px;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);box-shadow:0 20px 50px -10px #00000080,inset 0 1px #ffffff26;display:flex;flex-direction:column;justify:space-between;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;overflow:hidden}.portal-card:hover{border-color:#fff3;box-shadow:0 25px 60px -12px #0009,inset 0 1px #ffffff40;transform:translateY(-2px)}.admin-card-accent{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#3b82f6,#6366f1)}.public-card-accent{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#10b981,#06b6d4)}.portal-card-header{text-align:left;margin-bottom:24px}.card-badge{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:12px;font-size:.68rem;font-weight:800;letter-spacing:.8px;text-transform:uppercase;margin-bottom:12px}.admin-badge{background:#3b82f62e;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.public-badge{background:#10b98129;color:#34d399;border:1px solid rgba(16,185,129,.3)}.portal-card-header h2{font-family:Sora,sans-serif;font-size:1.45rem;font-weight:700;margin:0 0 6px;color:#fff;letter-spacing:-.01em}.portal-card-header p{font-size:.82rem;line-height:1.5;color:#ffffff9e;margin:0}.login-form{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:.78rem;font-weight:600;color:#ffffffd9;letter-spacing:.3px}.input-icon-wrap{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:14px;color:#fff6;pointer-events:none;transition:color .2s ease}.field input{width:100%;height:46px;padding:10px 14px 10px 44px;border-radius:10px;border:1px solid rgba(255,255,255,.18);background:#0f172ab3;color:#fff!important;caret-color:#38bdf8!important;font-family:DM Sans,sans-serif;font-size:.92rem;outline:none;transition:all .2s ease;box-sizing:border-box}.field input:-webkit-autofill,.field input:-webkit-autofill:hover,.field input:-webkit-autofill:focus{-webkit-text-fill-color:#ffffff!important;caret-color:#38bdf8!important;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s;box-shadow:0 0 0 1000px #0f172af2 inset!important}.field input::-moz-placeholder{color:#ffffff73}.field input::placeholder{color:#ffffff73}.field input:focus{border-color:#38bdf8!important;background:#0f172aeb;caret-color:#38bdf8!important;box-shadow:0 0 0 3px #38bdf84d!important}.field input:focus+.input-icon,.input-icon-wrap:focus-within .input-icon{color:#38bdf8}.btn-login-primary{width:100%;height:46px;margin-top:8px;border-radius:10px;border:none;font-family:Sora,sans-serif;font-size:.9rem;font-weight:700;color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 18px #2563eb61;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-login-primary:hover:not(:disabled){background:linear-gradient(135deg,#3b82f6,#1d4ed8);box-shadow:0 6px 24px #2563eb80;transform:translateY(-1px)}.btn-login-primary:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 10px #2563eb4d}.btn-login-primary:disabled{opacity:.65;cursor:not-allowed}.btn-viewer-secondary{width:100%;height:46px;margin-top:20px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#ffffff0d;font-family:Sora,sans-serif;font-size:.9rem;font-weight:700;color:#fff;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.btn-viewer-secondary:hover{background:#ffffff1f;border-color:#ffffff59;box-shadow:0 4px 20px #0000004d;transform:translateY(-1px)}.btn-viewer-secondary:active{transform:translateY(1px)}.error-msg{display:none;padding:10px 14px;border-radius:8px;background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5;font-size:.82rem;margin-bottom:12px}.error-msg.show{display:block}.admin-label{text-align:center;margin-top:14px;font-size:.76rem;color:#fff6}.known-user-panel{background:#3b82f61a;border:1px solid rgba(59,130,246,.25);border-radius:10px;padding:12px;margin-bottom:16px;display:flex;flex-direction:column;gap:8px;text-align:center;font-size:.8rem;color:#93c5fd}.known-user-panel button{background:#2563eb;color:#fff;border:none;padding:6px 12px;border-radius:6px;font-weight:700;cursor:pointer}.brand-bar{position:fixed;top:0;left:0;right:0;z-index:100;padding:16px 36px;display:flex;align-items:center;justify-content:space-between;background:#080c16b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}.brand-left{display:flex;align-items:center;gap:14px}.brand-bar img{width:42px;height:42px;-o-object-fit:contain;object-fit:contain}.brand-bar .brand-text h2{font-family:Sora,sans-serif;font-size:1.05rem;font-weight:800;color:#fff;line-height:1.15;margin:0}.brand-bar .brand-text p{font-size:.8rem;font-weight:600;color:#ffffffb3;line-height:1.2;margin:2px 0 0}.platform-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:20px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#ffffffd9;font-size:.75rem;font-weight:600;letter-spacing:.2px}.portal-footer{position:relative;z-index:2;margin-top:40px;text-align:center;font-size:.76rem;color:#ffffff73;letter-spacing:.2px}.portal-footer span{opacity:.6;margin:0 6px}@media (max-width: 820px){.portal-container{padding:90px 16px 30px}.portal-card-grid{grid-template-columns:1fr;max-width:440px;gap:20px}.brand-bar{padding:12px 16px}.brand-bar .brand-text h2{font-size:.92rem}.brand-bar .brand-text p{font-size:.75rem}.platform-pill{display:none}}html{min-height:100%;height:auto;scroll-behavior:smooth;overflow-x:clip}body,#root{min-height:100%;width:100%}body{overflow-x:clip;overflow-y:auto;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%}body.modal-scroll-locked{overflow:hidden}#root{isolation:isolate}img,svg,canvas,video{max-width:100%}button,input,select,textarea{font:inherit;max-width:100%}.topbar{min-height:64px!important;height:auto!important;gap:16px;background:var(--bg)!important}.top-actions,.brand{min-width:0}.brand-info,.topbar-sub,.user-info,#adminEmail{min-width:0;overflow:hidden;text-overflow:ellipsis}.topbar-sub,#adminEmail{white-space:nowrap}.page-tabs{min-height:52px!important;align-items:center;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}.page-tabs::-webkit-scrollbar,.report-nav::-webkit-scrollbar,.report-type-tabs::-webkit-scrollbar{display:none}.page-tab,.report-module-tab,.report-nav-btn,.rtt-btn,.btn,.btn-login,.btn-viewer,.btn-logout,.records-tool-btn,.records-manage-btn,.entry-action-btn{min-height:40px;line-height:1.2;align-items:center;justify-content:center;white-space:nowrap}.dashboard{width:min(100%,1440px);padding:clamp(16px,2vw,32px)!important;overflow:visible}.page-header,.card,.report-content,.results-area,.filter-bar,.metrics-row,.stats-grid,.content-grid,.water-type-selector,.location-selector,.form-row{min-width:0}.card{border-radius:14px}.card,.stat-card,.metric-card,.water-type-btn,.location-btn,.report-type-card-main{contain:layout paint}.card:hover,.stat-card:hover,.water-type-btn:hover,.location-btn:hover,.timeline-item:hover,.report-nav-btn:hover,.btn:hover{will-change:auto}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-width:0}.card-header>div,.card-header h3,.card-subtitle{min-width:0}.card-header h3,.page-title,.report-header h3{overflow-wrap:anywhere}.content-grid{grid-template-columns:minmax(0,1fr) minmax(280px,380px)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.form-row{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))!important}.form-input,.form-select,.records-cell-input,.records-readonly-cell,.field input{min-height:44px}.filter-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.filter-group{min-width:min(100%,180px);flex:1 1 180px}.filter-bar>.btn{flex:0 0 auto}.report-container,#solidWasteReports,#waterConsumptionReports,#wastewaterReports,#energyReports{display:block!important;width:100%!important;max-width:100%!important}.report-container:has(.report-nav),#solidWasteReports:has(.report-nav),#waterConsumptionReports:has(.report-nav),#wastewaterReports:has(.report-nav),#energyReports:has(.report-nav){display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;gap:0}.report-content{width:100%!important;max-width:100%!important;overflow:visible}.report-nav{max-width:100%;overscroll-behavior:contain}.report-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;min-width:0}.metrics-row{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))!important;gap:12px!important}.data-table,.records-grid-wrap,.records-table-wrap,#vehicleListTable,#fuelLogTable{max-width:100%;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.report-content .data-table{overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain;overscroll-behavior-y:auto}.data-table table{min-width:-moz-max-content;min-width:max-content}.data-table th{position:sticky;top:0;z-index:1}.data-table th,.data-table td{padding:12px 14px;vertical-align:middle}.records-manager-overlay,.energy-edit-modal-overlay,.modal-overlay{overflow:hidden;padding:clamp(10px,2vw,20px)}.records-manager-modal,.energy-edit-modal,.modal-dialog{max-width:min(96vw,1400px)!important;max-height:min(92dvh,920px)!important;display:flex;flex-direction:column}.records-manager-body,.modal-body,.eem-body{min-height:0}.records-manager-body{overflow:hidden!important}.records-grid-wrap{min-height:180px;flex:1 1 auto;scroll-padding:18px 18px 80px 18px}.records-grid-table{min-width:max(1080px,100%)}.records-grid-table th{position:sticky;top:0;z-index:3}.records-actions-head,.records-row-actions{left:0;z-index:4}.records-pagination,.eem-footer,.modal-footer{flex:0 0 auto}.records-toolbar-grid{grid-template-columns:minmax(180px,1.4fr) repeat(4,minmax(120px,.7fr)) minmax(112px,.5fr) repeat(3,auto)!important;overflow-x:auto;overscroll-behavior-x:contain}.timeline{overscroll-behavior:contain}.toast{max-width:min(420px,calc(100vw - 28px))}.split{min-height:100dvh;padding-top:76px}.left-panel,.right-panel{min-width:0}.viewer-card,.login-card{max-width:min(400px,calc(100vw - 32px))}@media (max-width: 1024px){.topbar{padding:10px 18px!important}.content-grid{grid-template-columns:1fr}.report-container,#solidWasteReports,#waterConsumptionReports,#wastewaterReports,#energyReports{display:block!important;grid-template-columns:1fr!important}.report-nav{position:static!important;display:flex!important;flex-direction:row!important;overflow-x:auto;overflow-y:hidden;gap:8px;padding-bottom:10px;margin-bottom:16px}.report-nav-btn{flex:0 0 auto}.records-toolbar-grid{grid-template-columns:repeat(3,minmax(160px,1fr))!important}}@media (max-width: 768px){.topbar{position:sticky;top:0;flex-wrap:wrap;min-height:58px!important;z-index:120}.top-actions{gap:8px!important;flex-wrap:wrap;justify-content:flex-end}.date-badge,.backend-status{display:none!important}.page-tabs{display:flex!important;position:sticky;top:58px;z-index:110;padding:8px 12px!important;gap:8px!important;background:var(--bg)!important}.page-tab{flex:0 0 auto;min-width:92px;padding:10px 14px!important}.dashboard{padding:14px!important}.page-title{font-size:clamp(1.35rem,7vw,1.75rem)}.page-subtitle,.card-subtitle{font-size:.82rem!important}.card-header{flex-direction:column;align-items:stretch;padding:14px 16px!important}.card-body{padding:14px 16px!important}.records-manage-btn{width:100%;margin:8px 0 0!important}.water-type-selector,#energyTypeSelector{grid-template-columns:1fr 1fr!important;gap:10px!important}.water-type-btn{padding:14px 12px!important;min-height:76px}.type-name{font-size:.82rem!important}.type-desc{font-size:.68rem!important;display:block}.filter-bar,.custom-range-bar,.report-header{flex-direction:column;align-items:stretch!important}.filter-group,.filter-bar>.btn,.custom-range-bar>.btn,.overview-year-sel,.export-actions,.export-actions .btn,.btn-export{width:100%!important}.range-selects{grid-template-columns:repeat(3,minmax(0,1fr))!important}.data-table table{font-size:.78rem}.records-manager-overlay{align-items:stretch!important;padding:8px}.records-manager-modal{width:100%!important;max-height:calc(100dvh - 16px)!important}.records-manager-body{overflow-y:auto!important;overscroll-behavior:contain}.records-toolbar-grid{display:grid!important;grid-template-columns:1fr!important;overflow:visible}.records-grid-wrap{min-height:220px;max-height:45dvh;flex:0 0 auto}.records-pagination{display:grid!important;grid-template-columns:1fr;gap:8px}.records-pagination span{text-align:center}.split{display:flex;flex-direction:column;min-height:100dvh;padding-top:70px}.brand-bar,.brand-bar .brand-text{min-width:0}.brand-bar .brand-text h2,.brand-bar .brand-text p{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}@media (max-width: 480px){.topbar{gap:10px}.brand-info h1{font-size:1rem!important}.topbar-sub{max-width:150px}.top-actions{width:100%}#logoutBtn,.btn-logout{margin-left:auto}.page-tabs{top:96px}.dashboard{padding:12px!important}.stats-grid,.metrics-row,.water-type-selector,#energyTypeSelector,.range-selects{grid-template-columns:1fr!important}.data-table{border-radius:10px}.data-table th,.data-table td{padding:10px 9px}.records-grid-table{min-width:960px}.records-actions-head,.records-row-actions{min-width:122px!important}.entry-action-btn{min-height:32px;padding:6px 8px!important}.login-card,.viewer-card{padding:24px 18px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.known-user-panel{display:grid;gap:10px;margin-bottom:18px;padding:12px;border:1px solid rgba(59,130,246,.35);border-radius:12px;background:#3b82f61a;color:#ffffffe0;font-size:.82rem}.known-user-panel button,.toast-action,.report-refresh-btn,.report-export-btn{border:1px solid transparent;border-radius:10px;cursor:pointer;font-weight:800;font-family:inherit}.known-user-panel button{min-height:40px;background:#fff;color:#1d4ed8}.toast-action{margin-left:10px;padding:6px 10px;background:#ffffff29;color:inherit;border-color:#ffffff47}.inline-form-error{margin:8px 0 12px;padding:8px 10px;border:1px solid #fecaca;border-radius:10px;background:#fef2f2;color:#991b1b;font-size:.78rem;font-weight:750}.sync-status-pill,.report-sync-status{display:inline-flex;align-items:center;gap:8px;border:1px solid #dbe3ee;border-radius:999px;background:#fff;color:#0f172a;padding:7px 11px;font-size:.76rem;font-weight:800;white-space:nowrap}.sync-status-pill{border-radius:9px;background:#fff;color:#000}.sync-status-pill[data-state=offline],.report-sync-status[data-state=offline]{border-color:#cbd5e1;background:#f8fafc;color:#475569}.report-ux-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0;border-bottom:1px solid var(--border);background:var(--bg)}.report-dashboard-title{color:#0f172a;font-size:1rem;font-weight:900;letter-spacing:0;white-space:nowrap}.report-export-panel{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px;width:auto;min-width:0;max-width:880px;margin-left:auto;padding:10px;border:1px solid #dbe3ee;border-radius:16px;background:#fff;box-shadow:0 10px 24px #0f172a0a}.report-export-panel[data-state=offline]{border-color:#cbd5e1;background:#f8fafc}.report-export-sync,.report-export-actions{display:inline-flex;align-items:center;gap:8px;min-width:0}.report-sync-status{min-height:34px;border-radius:10px}.report-refresh-btn,.report-export-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:6px 11px;background:#fff;color:#0f172a;border-color:#dbe3ee;white-space:nowrap}.report-export-btn{background:#020617;border-color:#020617;color:#fff}.report-refresh-btn:disabled,.report-export-btn:disabled{opacity:.6;cursor:wait}.report-export-filename{display:inline-grid;gap:3px;min-width:0}.report-export-filename span{color:var(--text-secondary);font-size:.66rem;font-weight:900;letter-spacing:.03em;line-height:1;text-transform:uppercase}.report-export-filename input{min-height:34px;width:100%;border:1px solid var(--border);border-radius:9px;padding:6px 10px;color:var(--text);background:#fff;font-size:.82rem;font-weight:700}.report-export-status{flex-basis:100%;max-width:none;padding:7px 10px;border:1px solid var(--border);border-radius:9px;background:var(--grey-50);color:var(--text-secondary);font-size:.76rem;font-weight:800;line-height:1.25}.solid-waste-report-container{grid-template-columns:minmax(0,1fr)!important}.solid-waste-report-content{width:100%}.report-export-status[data-state=done]{border-color:#dbe3ee;background:#f8fafc;color:#0f172a}.report-export-status[data-state=error]{border-color:#fecdd3;background:#fff1f2;color:#be123c}.report-download-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 10px;border:1px solid #bfdbfe;border-radius:9px;background:#eff6ff;color:#1d4ed8;font-size:.82rem;font-weight:800;text-decoration:none;white-space:nowrap}.report-download-link:hover{border-color:#60a5fa;background:#dbeafe;color:#1e40af}.ux-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:14px;margin-bottom:18px}.ux-skeleton-card{display:grid;gap:12px;padding:18px;border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:var(--shadow)}.ux-skeleton-card span,.ux-skeleton-card strong,.ux-skeleton-card em{display:block;border-radius:999px;background:linear-gradient(90deg,#e5e7eb,#f8fafc 48%,#e5e7eb);background-size:220% 100%;animation:skeletonShimmer 1.2s linear infinite}.ux-skeleton-card span{width:42%;height:12px}.ux-skeleton-card strong{width:70%;height:22px}.ux-skeleton-card em{width:54%;height:12px}@keyframes skeletonShimmer{0%{background-position:220% 0}to{background-position:-220% 0}}.timeline-empty{display:grid;gap:6px;border:1px dashed var(--border);border-radius:12px;background:var(--grey-50)}.timeline-empty strong{color:var(--text);font-size:.9rem}.timeline-empty p{margin:0}.export-ux-panel{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,320px) auto;gap:12px;align-items:end;margin-bottom:18px;padding:14px;border:1px solid #dbeafe;border-radius:14px;background:linear-gradient(135deg,#f8fafc,#eff6ff)}.export-ux-panel div,.export-ux-panel label{display:grid;gap:5px;min-width:0}.export-ux-panel strong{color:var(--text)}.export-ux-panel span,.export-ux-panel label{color:var(--text-secondary);font-size:.78rem;font-weight:750}.export-ux-panel em{min-width:86px;padding:9px 10px;border-radius:999px;background:#e0f2fe;color:#075985;text-align:center;font-size:.76rem;font-style:normal;font-weight:900;text-transform:capitalize}.export-ux-panel em[data-state=done]{background:#dcfce7;color:#166534}.export-ux-panel em[data-state=error]{background:#fee2e2;color:#991b1b}@media (max-width: 768px){.sync-status-pill{display:none}.report-ux-bar,.export-ux-panel{grid-template-columns:1fr;align-items:stretch}.report-ux-bar{display:grid;padding:10px 12px}}@media (max-width: 768px){.page-tabs,.report-module-tabs,.report-nav,.report-nav-tabs,.sw-report-subtabs{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;max-width:100%!important;gap:8px!important;padding:8px 12px!important;white-space:nowrap!important;scroll-behavior:smooth!important}.page-tabs{padding-inline:12px!important}.page-tab,.report-module-tab,.report-nav-btn{flex:0 0 auto!important;min-width:0!important;max-width:100%!important;white-space:nowrap!important;text-align:center!important;border-radius:20px!important;padding:8px 16px!important;font-size:.82rem!important;font-weight:600!important}.report-container,.report-content,.report-panel{min-width:0!important;max-width:100%!important;overflow-x:clip!important}.data-table{width:100%!important;max-width:100%!important;overflow-x:auto!important;overscroll-behavior-inline:contain}.data-table table{width:-moz-max-content!important;width:max-content!important;min-width:100%!important;max-width:none!important}}@media (max-width: 420px){.page-tab,.report-nav-btn{flex-basis:100%!important}}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--font-xs: .75rem;--font-sm: .82rem;--font-md: .9rem;--font-lg: 1.05rem;--font-xl: 1.25rem;--surface: var(--card-bg, #ffffff);--surface-muted: var(--bg-secondary, #f8fafc);--surface-raised: #ffffff;--focus-ring: 0 0 0 3px rgba(79, 70, 229, .18)}body.dark,html.dark{--bg: #0f172a;--bg-secondary: #111827;--card-bg: #182235;--surface: #182235;--surface-muted: #111827;--surface-raised: #1f2a3d;--text: #f8fafc;--text-secondary: #cbd5e1;--border: rgba(148, 163, 184, .28);--primary-light: rgba(99, 102, 241, .22);--shadow: 0 1px 2px rgba(0, 0, 0, .35);--shadow-md: 0 8px 18px rgba(0, 0, 0, .32);--shadow-lg: 0 18px 36px rgba(0, 0, 0, .36)}.app-route-loader{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.96),rgba(239,246,255,.9) 28%,transparent 29%),linear-gradient(135deg,#e0f2fe,#f8fafc 48%,#dbeafe);color:#0f172a;font-weight:800}.loading-brand-card{width:min(82vw,280px);min-height:230px;display:grid;place-items:center;align-content:center;gap:22px;padding:34px 28px;border-radius:32px;background:#ffffffdb;border:1px solid rgba(148,163,184,.26);box-shadow:0 26px 80px #0f172a24;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.loading-brand-card span{color:#0f172a;font-family:Sora,sans-serif;font-size:.92rem;letter-spacing:.01em;text-align:center}.brand-loader{width:112px;height:112px;position:relative;display:grid;place-items:center;border-radius:999px;background:#ffffffe6;box-shadow:0 22px 60px #0f172a1f,inset 0 0 0 1px #94a3b833}.brand-loader:before{content:"";position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px;border-radius:inherit;border:5px solid rgba(29,78,216,.16);border-top-color:#0f766e;border-right-color:#1d4ed8;animation:brandLoaderSpin .9s linear infinite}.brand-loader img{width:78px;height:78px;-o-object-fit:contain;object-fit:contain;border-radius:999px}@keyframes brandLoaderSpin{to{transform:rotate(360deg)}}.ui-btn,.btn,.records-tool-btn,.records-manage-btn,.entry-action-btn,.btn-logout{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:800;line-height:1}.ui-btn svg,.btn svg,.records-tool-btn svg,.records-manage-btn svg,.entry-action-btn svg,.btn-logout svg,.report-sync-status svg{width:16px;height:16px;flex:0 0 auto}.ui-btn:focus-visible,.btn:focus-visible,.records-tool-btn:focus-visible,.records-manage-btn:focus-visible,.entry-action-btn:focus-visible,.page-tab:focus-visible,.report-nav-btn:focus-visible,.form-input:focus,.form-select:focus{outline:none;box-shadow:var(--focus-ring)}.ui-card,.card,.metric-card,.records-manager-modal,.report-content,.export-ux-panel{background:var(--surface);border-color:var(--border);color:var(--text)}.ui-card,.card,.metric-card{border-radius:var(--radius-md);box-shadow:var(--shadow)}.ui-table-shell,.data-table,.records-table-wrap,.records-grid-wrap{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.data-table table,.records-grid-table,.records-table{color:var(--text)}.data-table th,.records-grid-table th,.records-table th{background:var(--surface-muted);color:var(--text-secondary)}.data-table td,.records-grid-table td,.records-table td{border-color:var(--border)}.chart-shell,.chart-container,.report-chart,canvas{max-width:100%}.chart-shell,.chart-container,.report-chart{min-width:0;overflow:hidden}.chart-shell canvas,.chart-container canvas,.report-chart canvas{width:100%!important;height:auto!important;max-height:360px}.viewer-mode-banner{background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;font-size:var(--font-sm);font-weight:700;padding:9px 20px;display:flex;align-items:center;justify-content:center;gap:var(--space-2);flex-wrap:wrap}.viewer-mode-banner button{background:none;border:none;color:#fff;text-decoration:underline;font:inherit;font-weight:800;cursor:pointer}body.dark .topbar,body.dark .page-tabs,body.dark .date-badge,body.dark .user-info,body.dark .report-ux-bar,body.dark .report-export-panel,body.dark .report-refresh-btn,body.dark .ux-skeleton-card{background:var(--surface);border-color:var(--border);color:var(--text)}body.dark .btn-secondary,body.dark .records-tool-btn,body.dark .records-manage-btn{background:var(--surface-raised);color:var(--text);border-color:var(--border)}body.dark .export-ux-panel{background:linear-gradient(135deg,#182235,#111827);border-color:#60a5fa4d}body.dark .inline-form-error{background:#7f1d1d3d;border-color:#f8717159;color:#fecaca}body.dark .timeline-empty{background:#0f172aa6}@media (max-width: 640px){.chart-shell,.chart-container,.report-chart{min-height:220px}.chart-shell canvas,.chart-container canvas,.report-chart canvas{max-height:280px}}:root{--text-secondary: #475569;--focus-color: #2563eb;--focus-ring-strong: 0 0 0 3px rgba(37, 99, 235, .24)}body.dark,html.dark{--text-secondary: #d1d5db;--focus-color: #60a5fa}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,.records-cell-input:focus-visible,.records-sort-btn:focus-visible,.preview-remove:focus-visible,.eem-close:focus-visible,.page-tab:focus-visible,.report-nav-btn:focus-visible,.location-btn:focus-visible,.water-type-option:focus-visible,.btn-viewer:focus-visible,.btn-login:focus-visible{outline:3px solid var(--focus-color)!important;outline-offset:3px!important;box-shadow:var(--focus-ring-strong)!important}.field input:focus-visible{outline:none!important;outline-offset:0!important;border-color:#60a5fac7!important;box-shadow:0 0 0 3px #2563eb3d!important}input:focus-visible,select:focus-visible,textarea:focus-visible,.records-cell-input:focus-visible{border-color:var(--focus-color)!important}.records-grid-table tr:focus-within td,.records-grid-table tr:focus-within th{background:#2563eb14!important}.records-sort-btn{min-height:30px;border-radius:var(--radius-xs)}.preview-remove,.eem-close{min-width:32px;min-height:32px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.inline-form-error{color:#7f1d1d}.form-label,.card-subtitle,.metric-label,.records-manager-subtitle,.topbar-sub,.upload-hint,.date-badge,.user-info{color:var(--text-secondary)}body.dark .metric-label,body.dark .card-subtitle,body.dark .records-manager-subtitle,body.dark .upload-hint,body.dark .topbar-sub,body.dark .date-badge,body.dark .user-info,body.dark .form-label{color:var(--text-secondary)!important}body.dark .records-grid-table tr:focus-within td,body.dark .records-grid-table tr:focus-within th{background:#fbbf2429!important}body.dark .records-cell-input,body.dark .form-input,body.dark .form-select,body.dark textarea{background:#0f172a;color:var(--text);border-color:var(--border)}.offline-fallback,.app-error-card{display:grid;gap:var(--space-3);margin-bottom:var(--space-5);padding:var(--space-5);border:1px solid #fed7aa;border-radius:var(--radius-md);background:#fff7ed;color:#7c2d12;box-shadow:var(--shadow)}.offline-fallback strong,.app-error-card strong{color:#7c2d12;font-size:var(--font-lg)}.offline-fallback p,.app-error-card p{margin:0;color:#9a3412;font-weight:700}.app-error-boundary{min-height:100dvh;display:grid;place-items:center;padding:var(--space-6);background:var(--bg-secondary)}.app-error-card{width:min(100%,520px)}.app-error-card div{display:flex;flex-wrap:wrap;gap:var(--space-2)}body.dark .offline-fallback,body.dark .app-error-card{background:#7c2d123d;border-color:#fb923c73}body.dark .offline-fallback strong,body.dark .app-error-card strong,body.dark .offline-fallback p,body.dark .app-error-card p{color:#fed7aa}.reporting-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-5)}.reporting-summary-card,.data-quality-panel{display:grid;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.reporting-summary-card span{color:var(--text-secondary);font-size:var(--font-xs);font-weight:900;text-transform:uppercase}.reporting-summary-card strong{color:var(--text);font-size:1.45rem;line-height:1.1}.reporting-summary-card p,.data-quality-panel p{margin:0;color:var(--text-secondary);font-size:var(--font-sm);font-weight:700}.reporting-summary-card[data-state=warn]{border-color:#fff;background:#fff}.forecast-summary-card{align-content:start}.xpin-dashboard-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.xpin-dashboard-metrics span{display:grid;gap:2px;padding:10px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#f8fafc;color:var(--text-secondary);font-size:var(--font-xs);font-weight:900}.xpin-dashboard-metrics b{color:var(--text);font-size:1rem}.forecast-link-btn{justify-self:start;min-height:34px;padding:7px 12px;border:1px solid var(--border-strong, var(--border));border-radius:var(--radius-sm);background:#fff;color:var(--text);font:inherit;font-size:var(--font-xs);font-weight:900;cursor:pointer;transition:border-color .2s ease,background .2s ease}.forecast-link-btn:hover{border-color:var(--text);background:var(--grey-50)}.forecast-container{align-items:start}.forecast-control-panel{display:grid;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.xpin-control-brand{display:grid;gap:2px;padding:12px;border:1px solid #cbd5e1;border-radius:var(--radius-sm);background:#0f172a;color:#fff}.xpin-control-brand strong{font-size:1.25rem;line-height:1}.xpin-control-brand span,.xpin-eyebrow,.xpin-model-card span{font-size:var(--font-xs);font-weight:900;text-transform:uppercase;letter-spacing:.04em}.xpin-control-brand span{color:#cbd5e1}.xpin-eyebrow{color:var(--text-secondary)}.xpin-save-btn{min-height:42px;padding:10px 16px;white-space:nowrap}.xpin-status{margin-bottom:var(--space-4);padding:10px 12px;border:1px solid #bfdbfe;border-radius:var(--radius-sm);background:#eff6ff;color:#1e3a8a;font-size:var(--font-sm);font-weight:900}.forecast-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-5)}.forecast-card-grid .metric-card{min-width:0;padding:18px}.forecast-card-grid .metric-value{overflow-wrap:anywhere}.forecast-explanation{border-color:var(--border);background:var(--surface)}.xpin-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4);margin-bottom:var(--space-5)}.xpin-model-card,.xpin-component-panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.xpin-model-card{display:grid;gap:6px;min-width:0;padding:var(--space-4)}.xpin-model-card span{color:var(--text-secondary)}.xpin-model-card strong{overflow-wrap:anywhere;color:var(--text);font-size:1.05rem;line-height:1.2}.xpin-model-card p{margin:0;color:var(--text-secondary);font-size:var(--font-sm);font-weight:700}.xpin-model-card[data-tone=good]{border-color:#86efac;background:#f0fdf4}.xpin-model-card[data-tone=warn],.xpin-model-card[data-tone=bad]{border-color:#fed7aa;background:#fff7ed}.xpin-reason-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.xpin-reason-grid div{display:flex;flex-wrap:wrap;gap:8px;align-content:start;min-width:0;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#f8fafc}.xpin-reason-grid b{width:100%;color:var(--text);font-size:var(--font-sm)}.xpin-reason-grid span,.xpin-empty-history{color:var(--text-secondary);font-size:var(--font-xs);font-weight:800}.xpin-component-panel{margin-bottom:var(--space-5);overflow:hidden}.xpin-component-list{display:grid;gap:1px;background:var(--border)}.xpin-component-row{display:grid;grid-template-columns:minmax(160px,1.3fr) minmax(120px,1fr) auto;gap:var(--space-3);align-items:center;padding:12px var(--space-4);background:var(--surface)}.xpin-component-row div:first-child{display:grid;gap:3px;min-width:0}.xpin-component-row strong{color:var(--text);font-size:var(--font-sm)}.xpin-component-row span,.xpin-component-row em{color:var(--text-secondary);font-size:var(--font-xs);font-style:normal;font-weight:800}.xpin-weight-bar{height:9px;overflow:hidden;border-radius:var(--radius-pill);background:#e2e8f0}.xpin-weight-bar i{display:block;height:100%;border-radius:inherit;background:#0f172a}.xpin-table-wrap{width:100%;overflow-x:auto}.xpin-table{width:100%;border-collapse:collapse;background:var(--surface)}.xpin-table th,.xpin-table td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.xpin-table th{color:var(--text-secondary);font-size:var(--font-xs);font-weight:900;text-transform:uppercase;letter-spacing:.04em}.xpin-table td{color:var(--text);font-size:var(--font-sm);font-weight:800}.xpin-history-list{display:grid;gap:1px;background:var(--border)}.xpin-history-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:14px var(--space-4);background:var(--surface)}.xpin-history-item div{display:grid;gap:4px;min-width:0}.xpin-history-item strong{color:var(--text);font-size:1.05rem}.xpin-history-item span,.xpin-history-item small{color:var(--text-secondary);font-size:var(--font-xs);font-weight:800}.xpin-empty-history{margin:0;padding:var(--space-4);background:var(--surface)}.forecast-chart-wrap{width:100%;height:min(46vh,380px);min-height:280px}.forecast-chart-wrap canvas{width:100%!important;height:100%!important}.heatmap-card{margin-bottom:var(--space-5);overflow:hidden;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow)}.heatmap-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.heatmap-eyebrow,.heatmap-header label span,.heatmap-stats span,.heatmap-detail-label{color:var(--text-secondary);font-size:var(--font-xs);font-weight:900;text-transform:uppercase;letter-spacing:.04em}.heatmap-header h3{margin:4px 0;color:var(--text);font-size:1.05rem;line-height:1.2}.heatmap-header p,.heatmap-footer p,.heatmap-detail p{margin:0;color:var(--text-secondary);font-size:var(--font-sm);font-weight:650}.heatmap-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);flex-wrap:wrap}.heatmap-actions label{display:grid;gap:4px}.heatmap-actions .form-select{min-width:112px;height:38px}.heatmap-score-pill{display:grid;min-width:104px;min-height:46px;align-content:center;justify-items:center;padding:6px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#f8fafc}.heatmap-score-pill span{color:var(--text-secondary);font-size:.66rem;font-weight:900;text-transform:uppercase}.heatmap-score-pill strong{color:var(--text);font-size:1rem;line-height:1.1}.heatmap-score-pill[data-level=excellent]{border-color:#86efac;background:#eff6ff}.heatmap-score-pill[data-level=good]{border-color:#bbf7d0;background:#f7fee7}.heatmap-score-pill[data-level=watch]{border-color:#fde68a;background:#f8fafc}.heatmap-score-pill[data-level=poor],.heatmap-score-pill[data-level=critical]{border-color:#fecaca;background:#fff1f2}.heatmap-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);padding:var(--space-4) var(--space-5) 0}.heatmap-stats div{display:grid;gap:5px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff}.heatmap-stats strong{overflow-wrap:anywhere;color:var(--text);font-size:1rem;line-height:1.2}.heatmap-body{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:var(--space-4);padding:var(--space-4) var(--space-5);align-items:stretch}.heatmap-scroll{min-width:0;overflow-x:auto;overflow-y:hidden;padding:8px 8px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:#f8fafc;scrollbar-width:thin}.heatmap-month-row{display:grid;grid-template-columns:36px repeat(53,14px);gap:4px;min-width:-moz-max-content;min-width:max-content;margin-bottom:6px}.heatmap-month-row span{min-height:14px;color:var(--text-secondary);font-size:.72rem;font-weight:800;line-height:14px;text-align:left;white-space:nowrap}.heatmap-grid-wrap{display:flex;gap:8px;min-width:-moz-max-content;min-width:max-content}.heatmap-day-labels,.heatmap-week{display:grid;grid-template-rows:repeat(7,14px);gap:4px}.heatmap-day-labels{width:28px;flex:0 0 28px}.heatmap-day-labels span{color:var(--text-secondary);font-size:.64rem;font-weight:800;line-height:14px}.heatmap-grid{display:flex;gap:4px}.heatmap-cell{width:14px;height:14px;padding:0;border:1px solid transparent;border-radius:4px;background:var(--heatmap-color, #e2e8f0);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,filter .15s ease}.heatmap-cell:hover{border-color:#0f172a;filter:saturate(1.08)}.heatmap-cell:focus-visible{outline:2px solid #0f172a;outline-offset:2px}.heatmap-cell[data-selected=true]{border-color:#0f172a;box-shadow:0 0 0 2px #0f172a2e}.heatmap-cell[data-outside-year=true]{visibility:hidden;pointer-events:none}.heatmap-cell[data-level=excellent],.heatmap-legend i[data-level=excellent]{--heatmap-color: #15803d}.heatmap-cell[data-level=good],.heatmap-legend i[data-level=good]{--heatmap-color: #4ade80}.heatmap-cell[data-level=watch],.heatmap-legend i[data-level=watch]{--heatmap-color: #fbbf24}.heatmap-cell[data-level=poor],.heatmap-legend i[data-level=poor]{--heatmap-color: #fb923c}.heatmap-cell[data-level=critical],.heatmap-legend i[data-level=critical]{--heatmap-color: #dc2626}.heatmap-cell[data-level=empty],.heatmap-legend i[data-level=empty]{--heatmap-color: #e2e8f0}.heatmap-detail{display:grid;align-content:start;gap:8px;min-width:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff}.heatmap-detail strong{color:var(--text);font-size:1.35rem;line-height:1.1}.heatmap-detail-list{display:flex;flex-wrap:wrap;gap:6px}.heatmap-detail-list span{padding:6px 8px;border-radius:var(--radius-sm);background:#f1f5f9;color:var(--text-secondary);font-size:var(--font-xs);font-weight:800}.heatmap-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding:0 var(--space-5) var(--space-4)}.heatmap-legend{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.heatmap-legend span{color:var(--text-secondary);font-size:var(--font-xs);font-weight:800}.heatmap-legend i{width:14px;height:14px;border:1px solid var(--border);border-radius:4px;background:var(--heatmap-color, #e2e8f0)}.data-quality-panel{margin-bottom:var(--space-5);border-color:#fbbf24;background:#f8fafc}.data-quality-panel strong{color:#92400e}.data-quality-panel div{display:flex;flex-wrap:wrap;gap:var(--space-2)}.data-quality-panel{border-color:#dbe3ee;background:#fff;box-shadow:0 10px 24px #0f172a0a}.data-quality-panel strong{color:#0f172a}.data-quality-panel span,.data-quality-chip{padding:6px 10px;border:1px solid #dbe3ee;border-radius:var(--radius-pill);background:#f8fafc;color:#0f172a;font-size:var(--font-xs);font-weight:900}.data-quality-chip{cursor:pointer;font-family:inherit;transition:transform .14s ease,border-color .14s ease,background .14s ease}.data-quality-chip:hover,.data-quality-chip:focus-visible{border-color:#0f172a;background:#fff;transform:translateY(-1px);outline:none}.records-quality-filter{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:12px 14px;border:1px solid #dbe3ee;border-radius:14px;background:#fff;color:#0f172a}.records-quality-filter div{display:grid;gap:3px}.records-quality-filter strong{color:#0f172a;font-size:.86rem;font-weight:950}.records-quality-filter span{color:#475569;font-size:.78rem;font-weight:750;line-height:1.35}.records-quality-filter button{flex:0 0 auto;min-height:36px;padding:7px 11px;border:1px solid #dbe3ee;border-radius:10px;background:#fff;color:#0f172a;cursor:pointer;font-family:inherit;font-size:.78rem;font-weight:900}body.dark .reporting-summary-card,body.dark .data-quality-panel{background:var(--surface);border-color:var(--border)}body.dark .reporting-summary-card[data-state=warn],body.dark .data-quality-panel{border-color:var(--border);background:var(--surface)}body.dark .data-quality-panel strong,body.dark .data-quality-panel span{color:var(--text)}body.dark .data-quality-panel span{background:var(--surface-raised)}@media (max-width: 768px){.reporting-summary-grid,.forecast-container{grid-template-columns:1fr}.forecast-control-panel{position:static;max-height:none}.forecast-card-grid,.xpin-model-grid,.xpin-reason-grid,.xpin-dashboard-metrics,.xpin-component-row{grid-template-columns:1fr}.xpin-history-item{align-items:flex-start;flex-direction:column}.forecast-chart-wrap{height:300px}.heatmap-header,.heatmap-body,.heatmap-footer{padding-left:var(--space-3);padding-right:var(--space-3);grid-template-columns:1fr;flex-direction:column;align-items:stretch}.heatmap-actions{justify-content:stretch}.heatmap-actions label,.heatmap-score-pill{flex:1 1 140px}.heatmap-stats{grid-template-columns:1fr;padding-left:var(--space-3);padding-right:var(--space-3)}.heatmap-detail{order:-1}}.records-manager-overlay,.records-workspace-route{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;align-items:stretch;justify-content:stretch;padding:0!important;overflow:hidden;background:var(--bg-secondary)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;pointer-events:auto;animation:recordsOverlayIn .12s ease-out both}.records-workspace-route .records-manager-modal{width:100vw!important;max-width:none!important;height:100dvh!important;max-height:100dvh!important;display:flex;flex-direction:column;overflow:hidden;border-radius:0!important;border:0;animation:recordsModalIn .18s cubic-bezier(.2,.8,.2,1) both}.records-workspace-route .records-manager-modal .eem-header{flex:0 0 auto;gap:16px;min-height:74px;background:var(--card-bg);box-shadow:0 1px 0 var(--border)}.records-workspace-route .records-back-btn{width:auto;min-width:148px;height:40px;padding:0 16px;border:1px solid var(--border)!important;border-radius:10px!important;background:#fff!important;color:var(--text)!important;font-size:.82rem!important;font-weight:850;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.records-workspace-route .records-back-btn:hover{background:var(--grey-50)!important;border-color:var(--primary)!important}.records-manager-body{flex:1 1 auto;min-height:0;overflow:hidden!important;display:grid!important;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:12px}.records-toolbar-grid{display:flex!important;flex-wrap:wrap;align-items:center;gap:10px!important;margin-bottom:0!important;padding:12px;border:1px solid var(--border);border-radius:14px;background:var(--bg-secondary)}.records-toolbar-grid .form-input,.records-toolbar-grid .form-select{min-height:42px;flex:1 1 140px}.records-toolbar-grid .records-search-input{flex-basis:260px}.records-toolbar-grid .records-page-size{flex:0 0 118px}.records-toolbar-grid .records-tool-btn{min-height:42px;flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap}.records-insight-grid,.records-status-line{margin-bottom:0!important}.records-grid-wrap{min-height:0!important;height:100%;max-height:none!important;overflow:auto!important;overscroll-behavior:contain;scroll-padding:72px 18px 72px 18px;-webkit-overflow-scrolling:touch}.records-grid-table{min-width:max(1180px,100%)}.records-grid-table thead th{position:sticky!important;top:0;z-index:5}.records-grid-table .records-actions-head{z-index:8}.records-row-actions{z-index:4}.records-row-actions-inner{display:flex;gap:6px;flex-wrap:nowrap}.records-row-actions .entry-action-btn{min-height:32px;display:inline-flex;align-items:center;gap:5px;scroll-margin-top:72px}.records-grid-table tbody tr{scroll-margin-top:72px}.records-pagination{flex:0 0 auto;margin-top:0!important;padding-top:4px}@keyframes recordsOverlayIn{0%{opacity:0}to{opacity:1}}@keyframes recordsModalIn{0%{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 1180px){.records-toolbar-grid{align-items:stretch}.records-toolbar-grid .records-search-input{flex-basis:100%}}@media (max-width: 760px){.records-manager-overlay,.records-workspace-route{align-items:stretch;padding:0}.records-workspace-route .records-manager-modal{width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0}.records-workspace-route .records-manager-modal .eem-header{align-items:flex-start!important;flex-direction:column}.records-manager-body{padding:12px!important}.records-toolbar-grid,.records-insight-grid{grid-template-columns:1fr!important}.records-toolbar-grid>*{flex:1 1 100%!important}.records-pagination{gap:8px}.records-pagination span{text-align:center}}@media (prefers-reduced-motion: reduce){.records-manager-overlay,.records-manager-modal{animation:none!important}}.records-workspace-route .records-manager-modal .eem-header{min-height:56px!important;padding:10px 18px!important}.records-workspace-route .records-manager-modal .eem-header h3{font-size:1rem!important;line-height:1.15}.records-workspace-route .records-manager-subtitle{font-size:.72rem!important;line-height:1.25}.records-workspace-route .records-back-btn{height:34px!important;min-width:132px!important;padding:0 12px!important;border-radius:8px!important}.records-workspace-route .records-manager-body{padding:10px 18px!important;grid-template-rows:auto auto auto auto auto!important;gap:8px!important;overflow-y:auto!important;overflow-x:hidden!important}.records-workspace-route .records-toolbar-grid{flex-wrap:nowrap!important;overflow-x:auto;overflow-y:hidden;padding:8px!important;gap:8px!important;border-radius:10px!important;scrollbar-width:thin}.records-workspace-route .records-toolbar-grid .form-input,.records-workspace-route .records-toolbar-grid .form-select{flex:0 0 168px!important;min-height:34px!important;height:34px!important;padding:6px 10px!important;border-radius:8px!important;font-size:.78rem!important}.records-workspace-route .records-toolbar-grid .records-search-input{flex-basis:240px!important}.records-workspace-route .records-toolbar-grid .records-page-size{flex-basis:96px!important}.records-workspace-route .records-toolbar-grid .records-tool-btn{min-height:34px!important;height:34px!important;padding:6px 10px!important;border-radius:8px!important;font-size:.74rem!important}.records-workspace-route .records-toolbar-grid .records-tool-btn svg{width:15px;height:15px}.records-workspace-route .records-insight-grid{grid-template-columns:repeat(4,minmax(130px,1fr))!important;gap:8px!important}.records-workspace-route .records-insight-card{padding:7px 10px!important;border-radius:8px!important;min-height:46px}.records-workspace-route .records-insight-card span{font-size:.65rem!important;line-height:1.1}.records-workspace-route .records-insight-card strong{display:block;margin-top:2px;font-size:.9rem!important;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.records-workspace-route .records-status-line{min-height:28px;padding:6px 10px!important;border-radius:9px!important;font-size:.72rem!important}.records-workspace-route .records-grid-wrap{border-radius:10px!important;flex:0 1 auto!important;height:auto!important;max-height:min(58dvh,620px)!important;scroll-padding:46px 12px 56px 12px!important;align-self:stretch}.records-workspace-route .records-grid-table{font-size:.74rem!important;min-width:max(1120px,100%)!important}.records-workspace-route .records-grid-table th{vertical-align:middle}.records-workspace-route .records-sort-btn{min-height:34px!important;padding:7px 9px!important;font-size:.66rem!important;line-height:1.25!important;letter-spacing:.03em!important}.records-workspace-route .records-grid-table td{min-width:112px!important;max-width:210px!important;padding:5px 6px!important}.records-workspace-route .records-cell-input,.records-workspace-route .records-readonly-cell{min-height:30px!important;padding:5px 7px!important;border-radius:7px!important;font-size:.72rem!important}.records-workspace-route .records-cell-textarea{min-height:38px!important}.records-workspace-route .records-actions-head,.records-workspace-route .records-row-actions{min-width:124px!important;width:124px!important}.records-workspace-route .records-row-actions-inner{gap:4px!important}.records-workspace-route .records-row-actions .entry-action-btn{min-height:28px!important;padding:4px 7px!important;font-size:.68rem!important}.records-workspace-route .records-grid-table tbody:after{height:24px!important}.records-workspace-route .records-pagination{min-height:36px;padding:4px 2px 0!important;gap:8px!important}.records-workspace-route .records-pagination .records-tool-btn{min-height:34px!important;padding:5px 10px!important;border-radius:8px!important}.records-workspace-route .records-pagination span{font-size:.76rem!important}.records-workspace-route .records-manager-modal .eem-footer{display:none!important}.chart-card-header{align-items:center;justify-content:space-between;gap:10px}.chart-card-header h3,.chart-card-header h4{color:var(--text);letter-spacing:0}.chart-expand-btn{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:7px 11px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);font-size:.76rem;font-weight:800;cursor:pointer;white-space:nowrap;box-shadow:var(--shadow)}.chart-expand-btn:hover{border-color:var(--primary);color:var(--primary)}.chart-expand-btn:disabled{cursor:not-allowed;opacity:.48;color:var(--text-secondary);border-color:var(--border)}.chart-expand-btn svg{width:15px;height:15px}.solid-waste-overview-dashboard{display:grid;gap:18px}.sw-report-overview-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(90deg,#2563eb14,#0596690d),#fff;box-shadow:var(--shadow)}.sw-report-eyebrow{display:block;margin-bottom:4px;color:#2563eb;font-size:.72rem;font-weight:900;letter-spacing:0;text-transform:uppercase}.sw-report-overview-header h3{margin:0;color:#0f172a;font-size:1.08rem;font-weight:900;line-height:1.2}.sw-report-overview-header p{margin:6px 0 0;color:var(--text-secondary);font-size:.84rem;font-weight:700}.sw-report-overview-header .is-good{color:#047857}.sw-report-overview-header .is-review{color:#be123c}.sw-report-filter{display:grid;gap:6px;min-width:180px}.sw-report-filter label{color:var(--text-secondary);font-size:.72rem;font-weight:900;text-transform:uppercase}.sw-interactive-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap}.sw-pill-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sw-pill-label{font-size:.72rem;font-weight:800;text-transform:uppercase;color:#64748b;margin-right:4px}.sw-filter-pill{padding:6px 14px;border-radius:20px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:.78rem;font-weight:700;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;gap:6px}.sw-filter-pill:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a;transform:translateY(-1px)}.sw-filter-pill.active{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 2px 8px #2563eb47}.sw-filter-pill.active.location-pill{background:#059669;border-color:#059669;box-shadow:0 2px 8px #05966947}.sw-view-toggle-btn{padding:5px 12px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:.76rem;font-weight:700;cursor:pointer;transition:all .15s ease}.sw-view-toggle-btn.active{background:#0f172a;border-color:#0f172a;color:#fff}.sw-report-kpi-card{transition:transform .2s ease,box-shadow .2s ease}.sw-report-kpi-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px -4px #0f172a14}.sw-report-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:10px}.sw-report-kpi-card{min-height:108px;display:flex;flex-direction:column;justify-content:space-between;gap:8px;padding:14px;border:1px solid #dbeafe;border-radius:8px;background:#fff;box-shadow:var(--shadow)}.sw-report-kpi-card.is-primary{background:#0f172a;border-color:#0f172a;color:#fff}.sw-report-kpi-card span{color:#475569;font-size:.7rem;font-weight:900;line-height:1.25;text-transform:uppercase}.sw-report-kpi-card.is-primary span{color:#bfdbfe}.sw-report-kpi-card strong{color:#0f172a;font-size:clamp(1rem,1.5vw,1.42rem);font-weight:900;line-height:1.08;overflow-wrap:anywhere}.sw-report-kpi-card.is-primary strong{color:#fff}.sw-report-kpi-card em{color:#2563eb;font-size:.78rem;font-style:normal;font-weight:900}.sw-report-kpi-card.is-primary em{color:#93c5fd}.sw-report-attention{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.sw-report-attention-item{padding:12px 14px;border:1px solid #fed7aa;border-radius:8px;background:#fffbeb;color:#78350f}.sw-report-attention-item.info{border-color:#bfdbfe;background:#eff6ff;color:#1e3a8a}.sw-report-attention-item.attention{border-color:#fecdd3;background:#fff1f2;color:#881337}.sw-report-attention-item strong,.sw-report-attention-item span{display:block}.sw-report-attention-item strong{margin-bottom:4px;font-size:.82rem;font-weight:900}.sw-report-attention-item span{font-size:.8rem;font-weight:700;line-height:1.35}.sw-report-chart-grid{display:grid;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr);gap:16px}.sw-overview-top-charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;width:100%;align-items:stretch;box-sizing:border-box}@media (max-width: 1024px){.sw-overview-top-charts-grid{grid-template-columns:1fr;gap:12px}}.sw-location-category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;width:100%;max-width:100%;margin:0 auto;align-items:stretch;box-sizing:border-box}@media (max-width: 900px){.sw-location-category-grid{grid-template-columns:1fr;max-width:600px}}.sw-report-chart-card{margin:0;border-radius:12px;background:var(--card-bg, #ffffff);border:1px solid #e2e8f0;box-shadow:0 10px 25px -5px #0f172a0d,0 4px 6px -2px #0f172a05;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .2s cubic-bezier(.16,1,.3,1);overflow:hidden}.sw-report-chart-card:hover{transform:translateY(-2px);box-shadow:0 20px 30px -10px #0f172a1a,0 8px 10px -4px #0f172a0a}.sw-report-chart-card.accent-blue,.sw-report-chart-card.accent-emerald,.sw-report-chart-card.accent-purple,.sw-report-chart-card.accent-teal{border-top:none}.sw-report-chart-card .chart-card-header{display:flex;padding:16px 18px}.sw-report-chart-card .chart-card-header h3{margin:0;font-size:.96rem;font-weight:900}.sw-report-chart-card .chart-card-header p,.sw-report-detail-card .card-header p{margin:4px 0 0;color:var(--text-secondary);font-size:.8rem;font-weight:700}.sw-report-chart-body{padding:16px 18px 18px}.sw-report-chart-frame{position:relative;width:100%;height:310px;min-height:310px}.sw-report-donut-frame{height:330px;min-height:330px}.sw-report-trend-frame{height:340px;min-height:340px}.sw-report-chart-frame canvas{width:100%!important;height:100%!important;max-height:none!important}.sw-report-insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0}.sw-report-insight-card{padding:16px;border-radius:10px;background:var(--bg-secondary, #f8fafc);border:1px solid var(--border, #e2e8f0)}.sw-report-insight-card span{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;color:var(--text-secondary, #64748b);margin-bottom:6px;letter-spacing:.04em}.sw-report-insight-card p{margin:0;font-size:.88rem;font-weight:600;color:var(--text, #0f172a);line-height:1.4}.sw-trend-meta-strip{display:flex;align-items:center;gap:20px;padding:12px 18px;border-top:1px solid var(--border, #e2e8f0);background:var(--bg-secondary, #f8fafc);font-size:.82rem;color:var(--text-secondary, #64748b);border-radius:0 0 10px 10px}.sw-trend-meta-strip strong{color:var(--text, #0f172a);font-weight:700}.trend-comp-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;font-size:.78rem;font-weight:700;background:var(--primary-light, #e0e7ff);color:var(--primary, #4f46e5)}@media (max-width: 768px){.sw-report-insights-grid{grid-template-columns:1fr}.sw-trend-meta-strip{flex-direction:column;align-items:flex-start;gap:8px}}.sw-report-detail-card{margin:0}.sw-report-detail-card .card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.sw-report-detail-card .card-header h3{margin:0;font-size:.98rem;font-weight:900}@media (max-width: 1120px){.sw-report-kpi-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}}@media (max-width: 820px){.sw-report-overview-header{flex-direction:column}.sw-report-filter{width:100%}.sw-report-kpi-grid,.sw-report-chart-grid{grid-template-columns:1fr}.sw-report-chart-frame,.sw-report-donut-frame,.sw-report-trend-frame{height:300px;min-height:300px}}@media (max-width: 560px){.sw-report-kpi-card{min-height:92px}.sw-report-chart-card .chart-card-header{align-items:stretch;flex-direction:column}}.card:has(.forecast-chart-wrap),.card:has(canvas){overflow:hidden}.card-body:has(canvas){background:linear-gradient(180deg,#f8fafce0,#fffffffa),#fff}.card-body canvas{max-width:100%}.report-content .card .card-body>div[style*="height: 280px"],.report-content .card .card-body>div[style*="height: 240px"]{min-height:300px}@media (max-width: 700px){.chart-card-header{align-items:stretch!important;flex-direction:column}.chart-expand-btn{width:100%;justify-content:center}.report-content .card .card-body>div[style*="height: 280px"],.report-content .card .card-body>div[style*="height: 240px"],.forecast-chart-wrap{height:320px!important;min-height:320px}}.chart-viewer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;display:flex;flex-direction:column;background:#0f172ac7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.chart-viewer-modal{display:flex;flex:1 1 auto;min-height:0;flex-direction:column;background:#fff;color:var(--text)}.chart-viewer-header{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid var(--border);background:#fff}.chart-viewer-header h2{margin:0;font-size:1rem;line-height:1.2}.chart-viewer-header p{margin:4px 0 0;color:var(--text-secondary);font-size:.78rem}.chart-viewer-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.chart-viewer-actions button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text);padding:7px 12px;font-size:.78rem;font-weight:800;cursor:pointer}.chart-viewer-actions button:hover{border-color:var(--primary);color:var(--primary)}.chart-viewer-actions svg{width:16px;height:16px}.chart-viewer-canvas-wrap{flex:1 1 auto;min-height:0;padding:18px;background:#f8fafc}.chart-viewer-canvas-wrap canvas{width:100%!important;height:100%!important;background:#fff;border:1px solid var(--border);border-radius:8px}.chart-viewer-error{margin:0;padding:24px;color:var(--danger);font-weight:800}@media (max-width: 760px){.records-workspace-route .records-manager-body{padding:8px!important}.records-workspace-route .records-manager-modal .eem-header{min-height:auto!important}.records-workspace-route .records-insight-grid{grid-template-columns:repeat(2,minmax(120px,1fr))!important}.chart-viewer-modal{width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.chart-viewer-header{align-items:flex-start;flex-direction:column;padding:10px 14px;gap:8px}.chart-viewer-header h2{font-size:1.05rem;font-weight:800}.chart-viewer-header p{font-size:.72rem;margin:2px 0 0}.chart-viewer-actions{width:100%;gap:6px;display:flex}.chart-viewer-actions button{flex:1 1 auto;min-height:32px;padding:5px 8px;font-size:.75rem;border-radius:6px}.chart-viewer-canvas-wrap{padding:6px 4px 10px;flex:1 1 auto;min-height:0}.chart-viewer-canvas-wrap canvas{border-radius:6px}.fullscreen-chart-modal{width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}}button:disabled,.btn:disabled,.records-tool-btn:disabled,.records-manage-btn:disabled{cursor:wait!important;opacity:.64!important}.spin-icon{animation:spin .9s linear infinite}.records-workspace-route .records-row-actions-inner{display:grid!important;grid-template-columns:repeat(2,minmax(0,auto));gap:4px!important;align-items:center}.records-workspace-route .entry-action-btn{min-height:28px!important;display:inline-flex!important;align-items:center;justify-content:center;gap:4px!important;padding:4px 7px!important;border:0!important;border-radius:7px!important;color:#fff!important;font-size:.68rem!important;font-weight:850!important;line-height:1!important;white-space:nowrap}.records-workspace-route .entry-action-btn svg{width:12px;height:12px;flex:0 0 auto}.records-workspace-route .edit-btn{background:#059669!important}.records-workspace-route .del-btn{background:#e11d48!important}.records-workspace-route .records-confirm-delete{background:#be123c!important}.records-workspace-route .records-cancel-delete{background:#64748b!important}.records-workspace-route .records-grid-table thead th:first-child,.records-workspace-route .records-grid-table tbody td:first-child{position:sticky;left:0;z-index:7;background:#fff;box-shadow:1px 0 0 var(--border)}.records-workspace-route .records-grid-table thead th:first-child{z-index:12;background:var(--grey-100)}.records-workspace-route .records-cell-input:focus,.records-workspace-route .records-sort-btn:focus-visible,.records-workspace-route .entry-action-btn:focus-visible,.report-export-filename input:focus{outline:3px solid rgba(37,99,235,.2)!important;border-color:#2563eb!important}.records-workspace-route .records-status-line[data-state=saving]{border:1px solid #dbe3ee;background:#f8fafc;color:#0f172a!important}.records-workspace-route .records-status-line[data-state=saved]{border:1px solid #dbe3ee;background:#fff;color:#0f172a!important}.reporting-summary-grid{position:relative}.reporting-summary-card[data-state=warn]{border-color:#fff!important;background:#fff!important}.offline-fallback{position:relative;z-index:2}@media (max-width: 900px){.report-ux-bar{align-items:stretch!important;flex-direction:column!important}.report-export-panel,.report-export-sync,.report-export-actions{width:100%}.report-export-panel{grid-template-columns:1fr;align-items:stretch}.report-export-sync,.report-export-actions{display:grid;grid-template-columns:1fr 1fr}.report-export-filename,.report-export-status,.report-download-link,.report-refresh-btn,.report-export-btn{width:100%;max-width:none}}@media (min-width: 768px){.water-type-selector{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:16px!important}.waste-grid,.wastewater-grid,.flow-display-cards{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:12px!important}.card-header{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important}}@media (max-width: 640px){.water-type-selector,.location-selector,.waste-location-selector,.reporting-summary-grid,.stats-grid{grid-template-columns:1fr!important}.card-header{gap:10px}.records-workspace-route .records-manager-modal .eem-header{align-items:stretch!important;flex-direction:column!important}.records-manage-btn,.records-tool-btn,.btn-block{width:100%;justify-content:center}}@media (max-width: 560px){.dashboard{padding:12px!important}.page-title{font-size:1.55rem!important}.card-body,.card-header{padding:12px!important}.form-row,.waste-grid{grid-template-columns:1fr!important}.waste-entry-row{min-height:0!important;align-items:center!important;flex-direction:row!important;gap:10px!important;padding:10px 12px!important;border-radius:8px!important}.waste-grid{gap:8px!important}.waste-entry-row .form-label{width:100%!important;font-size:.88rem!important}.waste-qty-field{width:auto!important;min-width:112px!important;max-width:132px!important;flex:0 0 112px!important}.waste-qty-input{min-height:40px;padding-inline:10px!important}.waste-qty-unit{min-width:34px;font-size:.76rem}.records-workspace-route .records-toolbar-grid{flex-wrap:wrap!important}.records-workspace-route .records-toolbar-grid>*{flex:1 1 100%!important}.records-workspace-route .records-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}:root{--text: #0f172a;--text-secondary: #334155;--primary-light: #f8fafc}html,body,#root{color:var(--text);-webkit-tap-highlight-color:transparent}.topbar{min-height:78px!important}.logo-wrapper{width:72px!important;height:72px!important;min-width:72px!important}.logo{width:72px!important;height:72px!important;max-width:none!important;max-height:none!important;-o-object-fit:contain!important;object-fit:contain!important}.brand-info h1{color:#1d4ed8!important;-webkit-text-fill-color:initial!important;background:none!important}.card,.metric-card,.reporting-summary-card,.records-insight-card,.timeline-item,.location-btn,.water-type-btn,.entry-row{color:var(--text)!important}.page-subtitle,.card-subtitle,.type-desc,.timeline-date,.timeline-item span,.reporting-summary-card p,.data-quality-panel p,.form-label,.topbar-sub{color:var(--text-secondary)!important}.entry-row,.location-btn,.water-type-btn,.reporting-summary-card,.card{-webkit-tap-highlight-color:transparent!important}.entry-row:focus,.entry-row:focus-visible,.location-btn:focus,.location-btn:focus-visible,.water-type-btn:focus,.water-type-btn:focus-visible,.card:focus,.card:focus-visible,.reporting-summary-card:focus,.reporting-summary-card:focus-visible{outline:none!important;box-shadow:none!important}.entry-row.entry-active,.location-btn.location-active{background:#fff!important;border-color:#0f172a!important;box-shadow:none!important}.waste-location-selector .location-btn.location-active{background:#000!important;border-color:#000!important;box-shadow:none!important}.waste-location-selector .location-btn.location-active .location-name{color:#fff!important}#page-water .water-mode-selector .water-mode-btn.type-active{background:#050505!important;border-color:#050505!important;box-shadow:0 18px 34px #00000038!important}#page-water .water-mode-selector .water-mode-btn.type-active .type-name{color:#fff!important}#page-water .water-mode-selector .water-mode-btn.type-active .type-desc{color:#ffffffc7!important}#page-energy .water-type-btn.type-active,.water-type-btn.type-active{background:#050505!important;border-color:#050505!important;box-shadow:0 18px 34px #00000038!important}#page-energy .water-type-btn.type-active .type-name,#page-energy .water-type-btn.type-active .type-desc,#page-energy .water-type-btn.type-active .type-icon,.water-type-btn.type-active .type-name,.water-type-btn.type-active .type-desc,.water-type-btn.type-active .type-icon{color:#fff!important;stroke:#fff!important;fill:#fff!important}#page-energy .water-type-btn.type-active .type-desc,.water-type-btn.type-active .type-desc{color:#ffffffc7!important}.flow-card{background:#fff!important;color:var(--text)!important}.metric-card.metric-card-primary,.metric-card.metric-card-primary.entry-active{background:linear-gradient(135deg,#1d4ed8,#0f3ea8)!important;color:#fff!important;border-color:#1e40af!important;box-shadow:0 14px 32px #1d4ed83d!important}.metric-card.metric-card-primary .metric-value{color:#fff!important;font-weight:950!important;opacity:1!important;text-shadow:0 1px 1px rgba(15,23,42,.22)}.metric-card.metric-card-primary .metric-label{color:#fffffff0!important;font-weight:950!important;opacity:1!important}.report-panel .metric-card{min-width:0!important;display:flex!important;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:clamp(16px,1.7vw,24px) clamp(12px,1.4vw,20px)!important}.report-panel .metric-value{width:100%;color:var(--text);font-size:clamp(1.15rem,1.55vw,1.65rem)!important;line-height:1.15!important;white-space:normal!important;overflow:visible!important;text-overflow:initial!important;overflow-wrap:anywhere!important;word-break:normal!important;text-align:center}.report-panel .metric-value span{display:inline-block;white-space:nowrap;font-size:.58em!important;line-height:1}.report-panel .metric-label{max-width:100%;font-size:clamp(.68rem,.75vw,.84rem)!important;line-height:1.35!important;overflow-wrap:anywhere;text-align:center}.report-panel .metric-card-primary .metric-value{color:#fff!important}.report-panel .results-area>div[style*="repeat(auto-fit,minmax(180px,1fr))"]{gap:12px!important;margin-bottom:16px!important}.report-panel .results-area>div[style*="repeat(auto-fit,minmax(180px,1fr))"] .metric-card{min-height:104px;padding:16px 14px;border-radius:14px;box-shadow:0 8px 22px #0f172a0a}.report-panel .results-area>div[style*="repeat(auto-fit,minmax(180px,1fr))"] .metric-card-primary{background:#0f172a!important;border-color:#0f172a!important;box-shadow:0 12px 28px #0f172a24}.carbon-section-subtitle{margin:5px 0 0;color:#64748b;font-size:.78rem;font-weight:700}.carbon-graphic-card{padding:clamp(16px,2vw,22px)!important;background:#fff!important}.carbon-graphic-layout{display:grid;grid-template-columns:minmax(240px,.78fr) minmax(320px,1.22fr);gap:clamp(16px,2.4vw,26px);align-items:center}.carbon-donut-stage{position:relative;min-height:300px;display:grid;place-items:center;border:1px solid rgba(226,232,240,.95);border-radius:22px;background:linear-gradient(180deg,#fff,#f8fafc)}.carbon-donut-halo{position:absolute;width:min(82%,300px);aspect-ratio:1;border-radius:50%;background:linear-gradient(#fff,#fff) padding-box;border:1px solid #e2e8f0;box-shadow:inset 0 0 0 18px #f8fafcd9}.carbon-donut-wrap{position:relative;width:min(80%,270px);height:min(80%,270px);min-height:250px}.carbon-side-panel{display:flex;flex-direction:column;gap:14px;min-width:0}.carbon-net-card{padding:16px 18px;border-radius:18px;color:#0f172a;box-shadow:none;overflow:hidden;position:relative;border:1px solid rgba(148,163,184,.26)}.carbon-net-card:after{display:none}.carbon-net-card.is-good{background:linear-gradient(135deg,#f0fdf4,#fff);border-color:#05966947}.carbon-net-card.is-review{background:linear-gradient(135deg,#fff1f2,#fff);border-color:#e11d4847}.carbon-net-card span,.carbon-net-card em{display:block;position:relative;z-index:1}.carbon-net-card span{font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.carbon-net-card strong{display:block;position:relative;z-index:1;margin:4px 0;color:#0f172a;font-size:clamp(1.45rem,2.5vw,2rem);line-height:1;letter-spacing:-.04em}.carbon-net-card em{font-style:normal;font-size:.86rem;font-weight:750;color:#475569}.carbon-section-note{display:grid;gap:4px;padding:12px 14px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.carbon-section-note strong{color:#0f172a;font-size:.82rem;font-weight:900}.carbon-section-note span{color:#64748b;font-size:.78rem;font-weight:700;line-height:1.45}.carbon-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.carbon-source-card{position:relative;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 12px 14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:none;overflow:hidden}.carbon-source-card strong,.carbon-source-card small{display:block;min-width:0}.carbon-source-card strong{color:#0f172a;font-size:.82rem;font-weight:900}.carbon-source-card small{color:#64748b;font-size:.72rem;font-weight:700;line-height:1.25}.carbon-source-card b{color:#0f172a;font-size:.86rem;white-space:nowrap}.carbon-source-card i{position:absolute;left:0;bottom:0;height:3px;border-radius:0 999px 999px 0}.carbon-factor-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:16px;padding:12px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.carbon-factor-strip span{color:#475569;font-size:.76rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}.carbon-factor-strip b{padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #e2e8f0;color:#334155;font-size:.74rem;font-weight:850}@media (max-width: 900px){.carbon-graphic-layout{grid-template-columns:1fr}.carbon-donut-stage{min-height:280px}}@media (max-width: 620px){.carbon-source-grid{grid-template-columns:1fr}}.energy-trend-card{border:1px solid #dbe3ee;background:#fff;box-shadow:0 10px 24px #0f172a0a}.energy-trend-card .chart-card-header{background:#fff;border-bottom:1px solid #e5e7eb}.energy-trend-subtitle{margin:5px 0 0;color:#64748b;font-size:.78rem;font-weight:700}.energy-trend-body{padding:clamp(16px,2vw,22px)!important;background:#fff!important}.energy-trend-story{display:grid;grid-template-columns:minmax(260px,1fr) repeat(3,minmax(0,.78fr));gap:12px;margin-bottom:18px;align-items:stretch}.energy-trend-headline{position:relative;overflow:hidden;min-width:0;min-height:124px;padding:20px 22px;border-radius:18px;background:#020617;color:#fff;box-shadow:0 16px 30px #0f172a1f}.energy-trend-headline:after{content:"";position:absolute;top:-42px;right:-34px;width:140px;height:140px;border-radius:999px;background:#ffffff14}.energy-trend-headline span,.energy-trend-headline strong,.energy-trend-headline em,.energy-trend-insights span,.energy-trend-insights strong,.energy-trend-insights em{display:block}.energy-trend-headline span{color:#ffffffb8;font-size:.7rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.energy-trend-headline strong{margin-top:8px;color:#fff;font-size:clamp(1.85rem,4vw,3rem);letter-spacing:-.07em;line-height:1.05;overflow-wrap:anywhere}.energy-trend-headline em{margin-top:10px;color:#dbeafe;font-size:.86rem;font-style:normal;font-weight:850}.energy-trend-insights{display:contents;gap:10px}.energy-trend-insights div{min-width:0;min-height:124px;padding:18px;border:1px solid #dbe3ee;border-radius:18px;background:#fff;box-shadow:0 10px 22px #0f172a0a}.energy-trend-insights span{color:#64748b;font-size:.68rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.energy-trend-insights strong{margin-top:7px;color:#0f172a;font-size:clamp(1.08rem,1.8vw,1.45rem);line-height:1;overflow-wrap:anywhere}.energy-trend-insights em{margin-top:7px;color:#475569;font-size:.76rem;font-style:normal;font-weight:750}.energy-trend-chart{position:relative;height:340px;padding:12px 14px 6px;border:1px solid #dbe3ee;border-radius:20px;background:#fff;box-shadow:inset 0 1px #0f172a08}.energy-solar-strip{margin-top:14px;padding:14px;border:1px solid #dbe3ee;border-radius:20px;background:#fff}.energy-solar-strip-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.energy-solar-strip-head span{color:#475569;font-size:.72rem;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.energy-solar-strip-head strong{color:#0f172a;font-size:.95rem;font-weight:950}.energy-solar-months{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:7px;align-items:end}.energy-solar-month{display:grid;grid-template-rows:auto 64px auto;justify-items:center;gap:5px;min-width:0}.energy-solar-month span,.energy-solar-month em{color:#475569;font-size:.68rem;font-weight:900;line-height:1}.energy-solar-month i{align-self:end;width:100%;min-height:4px;max-width:18px;border-radius:999px 999px 5px 5px;background:linear-gradient(180deg,#2563eb,#bfdbfe);box-shadow:0 8px 14px #2563eb1f}.energy-solar-month em{color:#0f172a;font-size:.62rem}@media (max-width: 900px){.energy-trend-story{grid-template-columns:repeat(2,minmax(0,1fr))}.energy-trend-chart{height:300px}}@media (max-width: 560px){.energy-trend-insights,.energy-solar-months{grid-template-columns:1fr}.energy-solar-month{grid-template-columns:38px 1fr 48px;grid-template-rows:auto;align-items:center}.energy-solar-month i{justify-self:stretch;width:100%;max-width:none;height:8px!important;background:linear-gradient(90deg,#bfdbfe,#2563eb)}}.form-input:focus,.form-select:focus,.entry-num:focus,.records-cell-input:focus,.report-export-filename input:focus{outline:2px solid #111827!important;outline-offset:1px!important;border-color:#111827!important;box-shadow:none!important}@media (max-width: 900px){.topbar{min-height:auto!important}.logo-wrapper,.logo{width:58px!important;height:58px!important;min-width:58px!important}}.card,.stat-card,.metric-card,.water-type-btn,.location-btn,.timeline-item,.report-nav-btn,.btn,.btn-login,.btn-viewer,.btn-logout,.records-tool-btn,.records-manage-btn,.entry-action-btn,.report-type-card-main,.flow-card,.record-list-card,.upload-prompt,.preview-remove,.chart-expand-btn{transition-property:background-color,border-color,color,box-shadow,opacity,filter!important;transition-duration:.18s!important;transition-timing-function:ease!important}.card:hover,.stat-card:hover,.metric-card:hover,.water-type-btn:hover,.location-btn:hover,.timeline-item:hover,.report-nav-btn:hover,.btn:hover,.btn-login:hover,.btn-viewer:hover,.btn-logout:hover,.records-tool-btn:hover,.records-manage-btn:hover,.entry-action-btn:hover,.report-type-card-main:hover,.flow-card:hover,.record-list-card:hover,.upload-prompt:hover,.preview-remove:hover,.chart-expand-btn:hover,.card:focus-within,.metric-card:focus-within,.record-list-card:focus-within,.upload-prompt:focus-within,.btn:active,.btn-login:active,.btn-viewer:active,.btn-logout:active{transform:none!important}.energy-edit-modal,.records-manager-modal,.modal-dialog,.chart-viewer-modal{transition-property:opacity,box-shadow!important;transition-duration:.18s!important;transition-timing-function:ease!important}.energy-edit-modal-overlay.eem-open .energy-edit-modal,.records-workspace-route .records-manager-modal,.modal-dialog,.chart-viewer-modal{transform:none!important}.app-route-loader{animation:fadeIn .16s ease-out both}.loading-spinner{will-change:transform}.profile-menu{position:relative;display:flex;align-items:center}.profile-menu-trigger{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:999px;background:var(--card-bg);color:var(--text);cursor:pointer}.profile-menu-trigger svg{width:24px;height:24px}.profile-menu-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:500;min-width:min(260px,calc(100vw - 24px));padding:10px;display:grid;gap:8px;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:0 18px 46px #0f172a2e;backdrop-filter:none;-webkit-backdrop-filter:none;opacity:1}.profile-menu-email{min-width:0;display:grid;gap:3px;padding:6px 8px 10px;border-bottom:1px solid var(--border)}.profile-menu-email small,.profile-menu-email strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-menu-email small{font-size:.82rem;color:var(--text-secondary)}.profile-menu-email strong{font-size:.88rem;color:var(--text)}.profile-menu-popover button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;background:var(--danger);color:#fff;font-weight:800;cursor:pointer}.transport-subnav{align-items:stretch}.transport-subnav-btn{flex:1 1 0;min-width:0;align-items:flex-start;justify-content:flex-start;position:relative;padding:12px 14px!important}.transport-subnav-copy{display:grid;gap:2px;min-width:0;text-align:left}.transport-subnav-title{display:block;font-size:.9rem;font-weight:700;line-height:1.25;color:var(--text)}.transport-subnav-state{display:block;font-size:.72rem;font-weight:700;color:var(--text-secondary)}.transport-subnav-btn.location-active{background:#0f172a!important;border-color:#0f172a!important;box-shadow:0 10px 24px #0f172a29!important}.transport-subnav-btn.location-active .transport-subnav-title,.transport-subnav-btn.location-active .transport-subnav-state{color:#fff}.transport-subnav-btn.location-active .transport-subnav-state{opacity:.84}.reporting-summary-card{text-align:left}button.reporting-summary-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);cursor:pointer}.anomalies-header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px}.anomalies-body{padding:20px;overflow:auto!important}.anomalies-overlay{animation:none!important;opacity:1!important}.anomaly-list{display:grid;gap:10px}.anomaly-row{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--border);border-radius:8px;background:var(--bg-secondary)}.anomaly-row strong,.anomaly-row p{display:block;margin:0}.anomaly-row p{margin-top:4px;color:var(--text-secondary);font-size:.82rem}.anomaly-issue{display:inline-flex;margin-bottom:6px;padding:3px 8px;border-radius:999px;background:#f59e0b24;color:#92400e;font-size:.72rem;font-weight:800}.anomaly-value{font-weight:900;color:var(--text)}.records-back-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:10px 14px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg);color:var(--text);font:inherit;font-size:.88rem;font-weight:800;white-space:nowrap;cursor:pointer;transition:transform .15s ease,background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;width:auto;height:auto;min-width:0}.records-back-btn svg{width:16px;height:16px;stroke-width:2.5;flex:0 0 auto}.records-back-btn:hover{background:var(--bg-secondary);border-color:var(--text-secondary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.records-back-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.records-mobile-list{display:none}@media (max-width: 640px){.topbar{flex-wrap:nowrap!important;min-height:64px!important;padding:8px 12px!important}.brand-info h1{font-size:.92rem!important}.topbar-sub,.sync-status-pill,.date-badge,.user-info,#logoutBtn,.page-tabs{display:none!important}.top-actions{width:auto!important;margin-left:auto;flex-wrap:nowrap!important}.profile-menu{display:flex}.dashboard{padding:12px 12px calc(82px + env(safe-area-inset-bottom,0px)) 12px!important}.mobile-bottom-nav{display:block!important}.mobile-bottom-nav-inner{height:66px}.mobile-nav-btn svg{width:22px;height:22px;stroke-width:2.4}.records-manager-overlay{padding:0!important}.records-manager-modal{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.eem-header{padding:12px 14px!important;gap:10px}.eem-header h3{font-size:1rem!important}.records-manager-subtitle{display:none}.records-back-btn{min-width:0;min-height:38px;padding:8px 12px!important;font-size:.78rem!important}.records-manager-body{padding:12px!important}.records-toolbar-grid{gap:8px!important}.records-insight-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}.records-grid-table{display:none!important}.records-grid-wrap{max-height:none!important;overflow:visible!important}.records-mobile-list{display:grid;gap:12px}.records-mobile-card{padding:12px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg)}.records-mobile-card-head{display:grid;gap:10px;margin-bottom:12px}.records-mobile-card-head span,.records-mobile-field span{color:var(--text-secondary);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:0}.records-mobile-card-head strong{display:block;margin-top:2px;font-size:.95rem}.records-row-actions-inner{display:grid;grid-template-columns:1fr 1fr;gap:8px}.records-mobile-fields{display:grid;gap:10px}.records-mobile-field{display:grid;gap:5px}.records-cell-input,.records-cell-textarea{width:100%;min-height:44px;padding:9px 10px;border:1px solid var(--border);border-radius:8px;background:var(--card-bg);color:var(--text)}.records-cell-textarea{min-height:84px}.records-readonly-cell{min-height:42px;display:flex;align-items:center;padding:9px 10px;border-radius:8px;background:var(--bg-secondary)}.records-pagination{margin-bottom:12px}.anomalies-modal{height:100dvh!important;max-height:100dvh!important;border-radius:0!important}.anomalies-header{padding:12px 14px}.anomalies-body{padding:12px}.anomaly-row{display:grid}.anomalies-overlay{z-index:10000!important}.anomalies-overlay .anomalies-modal{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background:#fff!important;color:var(--text)!important;opacity:1!important}.anomalies-overlay .anomalies-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;background:var(--bg-secondary)!important}.anomalies-overlay .anomalies-header{flex:0 0 auto!important;background:#fff!important}.records-manager-overlay,.records-workspace-route,.anomalies-overlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;height:100dvh!important;overflow:hidden!important;animation:none!important;opacity:1!important;background:#f8fafc!important}.records-workspace-route .records-manager-modal,.records-manager-overlay .records-manager-modal{background:#fff!important;opacity:1!important}.records-workspace-route .records-manager-body,.records-manager-body{display:block!important;gap:8px!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch}.records-workspace-route .records-toolbar-grid,.records-toolbar-grid{display:grid!important;grid-template-columns:1fr 1fr!important;align-items:stretch!important;gap:8px!important;padding:8px!important;border-radius:10px!important;overflow:visible!important}.records-workspace-route .records-toolbar-grid .records-search-input,.records-toolbar-grid .records-search-input{grid-column:1 / -1}.records-workspace-route .records-toolbar-grid .form-input,.records-workspace-route .records-toolbar-grid .form-select,.records-workspace-route .records-toolbar-grid .records-tool-btn,.records-toolbar-grid .form-input,.records-toolbar-grid .form-select,.records-toolbar-grid .records-tool-btn{width:100%!important;min-width:0!important;min-height:42px!important;height:42px!important;flex:none!important;padding:8px 10px!important;font-size:.78rem!important}.records-workspace-route .records-toolbar-grid .records-page-size,.records-toolbar-grid .records-page-size{grid-column:auto}.records-workspace-route .records-grid-wrap,.records-grid-wrap{flex:none!important;min-height:0!important;height:auto!important;max-height:none!important;overflow-y:visible!important;overflow-x:hidden!important}.records-workspace-route .records-insight-grid,.records-insight-grid{display:none!important}.records-workspace-route .records-pagination,.records-pagination{position:static!important;bottom:auto!important;z-index:auto!important;flex:0 0 auto!important;margin-top:10px!important;padding:8px!important;background:#f8fafcf5;border-top:1px solid var(--border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.records-mobile-summary{margin:6px 0 0;color:var(--text-secondary);font-size:.86rem;font-weight:700;line-height:1.35}.records-mobile-card{content-visibility:auto;contain-intrinsic-size:220px}.records-mobile-card-head{align-items:start;grid-template-columns:minmax(0,1fr)}}.report-content .data-table,.report-panel .data-table{overflow-x:auto!important;overflow-y:visible!important;overscroll-behavior-x:auto!important;overscroll-behavior-y:auto!important;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable both-edges;touch-action:pan-x pan-y}.report-content .data-table table,.report-panel .data-table table{min-width:100%}.timeline-actions .entry-action-btn.view-btn,.records-row-actions .entry-action-btn.view-btn,.records-workspace-route .entry-action-btn.view-btn{background:#fff!important;border-color:#cbd5e1!important;color:#475569!important;box-shadow:0 1px 2px #0000000a!important}.timeline-actions .entry-action-btn.view-btn:hover,.records-row-actions .entry-action-btn.view-btn:hover,.records-workspace-route .entry-action-btn.view-btn:hover{background:#f8fafc!important;border-color:#93c5fd!important;color:#2563eb!important}.timeline-actions .entry-action-btn.edit-btn,.records-row-actions .entry-action-btn.edit-btn,.records-workspace-route .entry-action-btn.edit-btn{background:#eff6ff!important;border-color:#bfdbfe!important;color:#1d4ed8!important;box-shadow:0 1px 2px #0000000a!important}.timeline-actions .entry-action-btn.edit-btn:hover,.records-row-actions .entry-action-btn.edit-btn:hover,.records-workspace-route .entry-action-btn.edit-btn:hover{background:#dbeafe!important;border-color:#93c5fd!important;color:#1e40af!important}.timeline-actions .entry-action-btn.del-btn,.records-row-actions .entry-action-btn.del-btn,.records-workspace-route .entry-action-btn.del-btn{background:#fef2f2!important;border-color:#fecaca!important;color:#dc2626!important;box-shadow:0 1px 2px #0000000a!important}.timeline-actions .entry-action-btn.del-btn:hover,.records-row-actions .entry-action-btn.del-btn:hover,.records-workspace-route .entry-action-btn.del-btn:hover{background:#fee2e2!important;border-color:#fca5a5!important;color:#b91c1c!important}.timeline-actions .entry-action-btn.del-btn.records-confirm-delete,.records-row-actions .entry-action-btn.del-btn.records-confirm-delete,.records-workspace-route .entry-action-btn.del-btn.records-confirm-delete{background:#dc2626!important;border-color:#dc2626!important;color:#fff!important;box-shadow:0 1px 2px #0000000d!important}.timeline-actions .entry-action-btn.del-btn.records-confirm-delete:hover,.records-row-actions .entry-action-btn.del-btn.records-confirm-delete:hover,.records-workspace-route .entry-action-btn.del-btn.records-confirm-delete:hover{background:#b91c1c!important;border-color:#b91c1c!important;color:#fff!important}.timeline-actions .entry-action-btn svg,.records-row-actions .entry-action-btn svg,.records-workspace-route .entry-action-btn svg{stroke:currentColor!important}body .field input#email:focus,body .field input#email:focus-visible,body .field input#password:focus,body .field input#password:focus-visible{outline:0 solid transparent!important;outline-offset:0!important;border-color:#60a5fac7!important;box-shadow:0 0 0 3px #2563eb3d!important}html,body,#root{min-width:0;max-width:100%}body{overflow-x:clip}.dashboard{width:min(100%,1400px)}.profile-menu{flex:0 0 auto}.mobile-bottom-nav{display:none}@media (max-width: 900px){.dashboard{width:100%;padding:20px}.topbar{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:14px;padding-inline:18px}.top-actions{display:flex!important;flex-direction:row!important;align-items:center!important;width:auto!important;margin-left:auto}.brand,.brand-info{min-width:0}.brand-info h1,.topbar-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content-grid,.energy-workspace,.carbon-dashboard-grid,.energy-insight-grid,.energy-overview-grid,.reporting-summary-grid{grid-template-columns:1fr!important}.report-ux-bar{padding:10px 12px!important}.report-export-panel{width:100%;max-width:none;min-width:0;grid-template-columns:1fr;align-items:stretch;border-radius:8px}.report-export-sync,.report-export-actions{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;width:100%}.report-export-actions{grid-template-columns:1fr 1fr}.report-sync-status,.report-refresh-btn,.report-export-btn,.report-download-link,.report-export-filename input{min-height:44px}.records-manager-modal,.records-workspace-route .records-manager-modal{width:min(100vw,980px)!important;max-width:100vw!important}}@media (max-width: 640px){html,body,#root{min-height:100dvh;overflow-x:clip}body{background:var(--bg-secondary)}.topbar{position:sticky;top:0;z-index:420;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;height:auto!important;min-height:58px!important;padding:8px 12px!important;gap:10px;border:0}.brand{flex:1 1 auto;gap:9px;min-width:0}.logo-wrapper,.logo{width:40px!important;height:40px!important;min-width:40px!important}.brand-info{min-width:0}.brand-info h1{max-width:44vw;font-size:.96rem!important;line-height:1.15}.topbar-sub,.date-badge,.sync-status-pill,.user-info,#logoutBtn,.btn-logout,.page-tabs{display:none!important}.top-actions{display:flex!important;flex-direction:row!important;align-items:center!important;flex:0 0 auto;width:auto!important;margin-left:auto;gap:8px!important}.profile-menu-trigger{width:42px;height:42px;border-radius:8px}.profile-menu-popover{position:fixed;top:58px;right:10px;width:min(300px,calc(100vw - 20px));min-width:0}.transport-subnav{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}.transport-subnav-btn{width:100%;min-height:58px}.transport-subnav-title{font-size:.85rem}.transport-subnav-state{font-size:.68rem}.dashboard{max-width:100%;padding:12px 12px calc(92px + env(safe-area-inset-bottom,0px))!important;overflow-x:clip}.card,.report-panel,.results-area{border-radius:8px!important}.card-header,.card-body{padding-inline:12px!important}.mobile-bottom-nav{display:block!important;position:fixed;inset-inline:0;bottom:0;z-index:430;padding:6px 10px max(6px,env(safe-area-inset-bottom,0px));background:#fffffffa;border-top:1px solid var(--border);box-shadow:0 -10px 24px #0f172a1f;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.mobile-bottom-nav-inner{height:58px!important;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.mobile-nav-btn{min-width:0;min-height:52px;border-radius:8px;padding:6px 3px}.mobile-nav-btn.active{background:#020617;color:#fff}.mobile-nav-btn.active:before{display:none}.mobile-nav-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:.62rem;letter-spacing:0;white-space:nowrap}.mobile-nav-svg,.mobile-nav-btn svg{width:21px;height:21px}.page-header{margin-bottom:14px}.page-title{font-size:1.32rem!important;letter-spacing:0}.page-subtitle{font-size:.84rem!important;line-height:1.45}.form-row,.water-type-selector,.fuel-diesel-grid,.transport-action-grid,.reporting-summary-grid{grid-template-columns:1fr!important}.form-input,.form-select,.records-cell-input,.records-cell-textarea,input,select,textarea{font-size:16px!important}.location-selector,.report-type-cards-main,.metrics-row,.records-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.location-btn,.water-type-btn,.report-type-card-main,.btn,.records-tool-btn,.topbar{padding:10px 12px!important;gap:8px!important}.topbar .brand-info h1{font-size:1.02rem!important}.topbar .top-actions{width:auto!important;justify-content:flex-end!important}.report-module-tabs,.report-nav,.report-nav-tabs{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;gap:8px!important;padding:8px 12px!important;white-space:nowrap!important;position:sticky!important;top:0!important;background:var(--card-bg)!important;z-index:98!important}.report-module-tab,.report-nav-btn{flex:0 0 auto!important;width:auto!important;min-height:38px!important;padding:8px 16px!important;border-radius:20px!important;white-space:nowrap!important;font-size:.82rem!important;font-weight:600!important}.report-ux-bar{margin-inline:0!important;padding:10px 12px!important;border-top:1px solid var(--border);background:#fff;width:100%!important;box-sizing:border-box!important}.report-export-panel{display:flex!important;flex-direction:column!important;grid-template-columns:none!important;width:100%!important;max-width:100%!important;gap:10px!important;padding:12px!important;border-radius:12px!important;background:#fff!important;box-shadow:0 2px 8px #0f172a0d!important;box-sizing:border-box!important}.report-export-sync{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;width:100%!important;gap:8px!important}.report-sync-status{font-size:.78rem!important;color:#475569!important;text-align:left!important;min-height:0!important;line-height:1.3!important}.report-refresh-btn{flex-shrink:0!important;min-height:36px!important;padding:6px 14px!important;font-size:.78rem!important;font-weight:700!important;border-radius:8px!important}.report-export-filename{width:100%!important;display:flex!important;flex-direction:column!important;gap:4px!important}.report-export-filename span{font-size:.72rem!important;font-weight:700!important;color:#64748b!important;text-transform:uppercase!important;letter-spacing:.03em!important}.report-export-filename input{width:100%!important;min-height:40px!important;padding:8px 12px!important;font-size:.85rem!important;border:1px solid #cbd5e1!important;border-radius:8px!important;box-sizing:border-box!important}.report-export-actions{width:100%!important;display:flex!important}.report-export-btn{width:100%!important;min-height:42px!important;justify-content:center!important;font-size:.88rem!important;font-weight:700!important;border-radius:8px!important;background:#0f172a!important;color:#fff!important}.report-export-status{width:100%!important;font-size:.76rem!important;text-align:center!important;margin-top:2px!important}.filter-bar{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;width:100%!important}.filter-group,.range-field{width:100%!important;display:flex!important;flex-direction:column!important;gap:4px!important}.filter-group select,.filter-group input,.range-field select,.range-field input,.form-select{width:100%!important;min-height:42px!important;padding:8px 12px!important;font-size:.88rem!important;border-radius:8px!important;box-sizing:border-box!important}.report-container,.report-content,.report-panel,.results-area,.data-table{min-width:0!important;max-width:100%!important;overflow-x:clip}.data-table,.report-content .data-table,.report-panel .data-table,.records-table-wrap{overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y}.data-table table{width:-moz-max-content!important;width:max-content!important;min-width:100%!important;max-width:none!important}.report-chart,.report-content .card .card-body>div[style*="height: 280px"],.report-content .card .card-body>div[style*="height: 240px"]{min-height:260px!important;height:min(62vh,360px)!important}.records-manager-overlay,.records-workspace-route,.anomalies-overlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100vw!important;height:100dvh!important;overflow:hidden!important;padding:0!important}.records-manager-modal,.records-workspace-route .records-manager-modal,.anomalies-modal{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;display:flex!important;flex-direction:column!important;border-radius:0!important;overflow:hidden!important}.eem-header,.anomalies-header{flex:0 0 auto;min-height:58px;padding:10px 12px!important;flex-wrap:wrap}.eem-header h3,.anomalies-header h3{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.records-back-btn{width:auto!important;height:auto!important;min-width:0!important;min-height:38px!important;padding:8px 12px!important}.records-manager-body,.anomalies-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:10px!important;-webkit-overflow-scrolling:touch}.records-workspace-route .records-toolbar-grid,.records-toolbar-grid{grid-template-columns:1fr!important;padding:8px!important}.records-workspace-route .records-toolbar-grid .records-search-input,.records-toolbar-grid .records-search-input,.records-workspace-route .records-toolbar-grid .records-page-size,.records-toolbar-grid .records-page-size{grid-column:1 / -1!important}.records-toolbar-grid .form-input,.records-toolbar-grid .form-select,.records-toolbar-grid .records-tool-btn{height:auto!important;min-height:44px!important;font-size:.86rem!important}.records-grid-table{display:none!important}.records-grid-wrap{height:auto!important;max-height:none!important;overflow:visible!important}.records-mobile-list{display:grid!important;gap:10px}.records-mobile-card{border-radius:8px;padding:12px}.records-mobile-card-head{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.records-row-actions-inner{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}.records-row-actions-inner .entry-action-btn{width:100%;justify-content:center}.records-mobile-fields{grid-template-columns:1fr!important}.records-pagination{display:grid!important;grid-template-columns:1fr;gap:8px;text-align:center}.records-pagination .records-tool-btn{width:100%}.toast{bottom:calc(86px + env(safe-area-inset-bottom,0px))!important}}@media (max-width: 390px){.brand-info h1{max-width:38vw}.location-selector,.report-type-cards-main,.metrics-row,.records-insight-grid{grid-template-columns:1fr!important}.mobile-nav-label{font-size:.58rem}}@media (max-width: 640px){#page-waste .waste-total{display:grid!important;grid-template-columns:42px minmax(0,1fr);align-items:center;padding:14px!important}#page-waste .waste-total .total-value{grid-column:1 / -1;font-size:1.65rem;padding-top:2px}}.graph-control-panel{margin-bottom:12px;padding:14px;border:1px solid rgba(37,99,235,.18);border-radius:16px;background:linear-gradient(180deg,#eff6ffd1,#fffffff0);box-shadow:0 12px 28px #0f172a0f}.graph-control-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.graph-control-header strong{display:block;color:#0f172a;font-size:.82rem;line-height:1.2}.graph-control-header span,.graph-selected-summary,.graph-empty-filter{color:#475569;font-size:.74rem;font-weight:700}.graph-control-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.graph-filter-toggle,.graph-action-btn{border:1px solid rgba(37,99,235,.24);border-radius:999px;padding:7px 12px;background:#fff;color:#1e293b;font-size:.73rem;font-weight:850;cursor:pointer;box-shadow:0 6px 16px #0f172a0f}.graph-filter-toggle.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#1d4ed8;color:#fff}.graph-selected-summary{margin-top:9px;min-height:1.2em}.graph-filter-panel{margin-top:12px;padding-top:12px;border-top:1px solid rgba(37,99,235,.14)}.graph-filter-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(160px,220px);gap:10px;align-items:end;margin-bottom:12px}.graph-filter-row label{display:grid;gap:6px;color:#334155;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.graph-filter-input,.graph-sort-select{width:100%;min-height:40px;border:1px solid rgba(148,163,184,.38);border-radius:12px;background:#fff;color:#0f172a;font-size:.82rem;font-weight:750;outline:none;padding:9px 12px}.graph-filter-input:focus,.graph-sort-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.graph-chip-list{display:flex;flex-wrap:wrap;gap:8px;max-height:170px;overflow-y:auto;padding-right:4px}.graph-location-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(148,163,184,.38);border-radius:999px;padding:8px 11px;background:#fff;color:#334155;font-size:.74rem;font-weight:850;cursor:pointer}.graph-location-chip small{color:#64748b;font-size:.68rem;font-weight:850}.graph-location-chip.active{border-color:#1d4ed8;background:#dbeafe;color:#0f172a;box-shadow:0 7px 18px #1d4ed81f}.graph-location-chip.active small{color:#1d4ed8}.graph-results-toggle{margin-top:10px;border:0;background:transparent;color:#1d4ed8;cursor:pointer;font-size:.74rem;font-weight:900;padding:4px 2px}.graph-results-toggle:hover{color:#1e40af;text-decoration:underline}@media (max-width: 640px){.graph-control-panel{padding:12px}.graph-control-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.graph-filter-toggle,.graph-action-btn{width:100%;justify-content:center}.graph-filter-row{grid-template-columns:1fr}.graph-chip-list{max-height:210px}}.table-responsive{width:100%;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;margin-bottom:1rem;border-radius:8px}.table-responsive table{width:100%;white-space:nowrap}img,svg,video,canvas{max-width:100%;height:auto}@media (max-width: 1280px){.dashboard{max-width:100%;padding:16px 20px}.sw-location-category-grid{gap:16px}}@media (max-width: 1024px){.dashboard{padding:14px 16px}.topbar{padding:8px 16px!important}.sw-location-category-grid{grid-template-columns:repeat(2,1fr)!important;gap:16px!important}.report-ux-bar{flex-direction:column!important;align-items:stretch!important;gap:10px!important}.report-title-header{width:100%!important;justify-content:space-between!important}.report-toolbar-group{width:100%!important;justify-content:flex-start!important;flex-wrap:wrap!important;gap:8px!important}}@media (max-width: 768px){.viewer-mode-banner{padding:8px 12px!important;font-size:.75rem!important}.topbar{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;gap:8px!important;padding:10px 12px!important}.topbar .brand{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;width:auto!important;flex-shrink:1!important;min-width:0!important}.topbar .logo{height:28px!important;width:auto!important;flex-shrink:0!important}.topbar .brand-info{display:flex!important;align-items:center!important;min-width:0!important;overflow:hidden!important}.topbar .brand-info h1{font-size:.88rem!important;white-space:nowrap!important;display:flex!important;align-items:center!important;gap:4px!important}.topbar-sub{font-size:.68rem!important}.top-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;padding:0!important;border:none!important;background:transparent!important;flex-shrink:0!important;margin-left:auto!important}.page-tabs{padding:6px 12px!important;gap:6px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important}.page-tabs::-webkit-scrollbar{display:none!important}.page-tab{padding:6px 14px!important;font-size:.82rem!important;min-height:42px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex-shrink:0!important;white-space:nowrap!important;touch-action:manipulation}.report-module-tabs{padding:6px 12px!important;gap:4px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important}.report-module-tabs::-webkit-scrollbar{display:none!important}.report-module-tab{padding:5px 12px!important;font-size:.78rem!important;flex-shrink:0!important;white-space:nowrap!important}.sw-location-category-grid{grid-template-columns:1fr!important;gap:14px!important}.sw-report-overview-header{flex-direction:column!important;align-items:flex-start!important;gap:10px!important}.report-period-selector-container{width:100%!important}.report-period-selector-container>div{flex-direction:column!important;align-items:stretch!important;width:100%!important}.report-export-filename{width:100%!important;justify-content:space-between!important}.report-export-filename input{width:100%!important;max-width:200px!important}.report-export-actions{width:100%!important}.report-export-btn{width:100%!important;justify-content:center!important}.chart-card-container{border-radius:10px!important}.chart-card-header{padding:10px 12px!important}.chart-card-body{padding:8px 10px!important}.form-row,.form-grid{grid-template-columns:1fr!important;gap:12px!important}}@media (max-width: 480px){.dashboard{padding:10px 8px!important}.topbar .brand-info h1{font-size:.8rem!important}.top-actions,.sync-status-pill,.date-badge{font-size:.72rem!important}.report-export-filename{flex-direction:column!important;align-items:flex-start!important;gap:4px!important}.report-export-filename input{width:100%!important;max-width:100%!important}.sw-report-kpi-grid{grid-template-columns:1fr!important}}@media (max-width: 900px){header.topbar,.topbar{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;flex-wrap:nowrap!important;width:100%!important;padding:8px 12px!important;box-sizing:border-box!important}.topbar .brand{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;width:auto!important;flex:0 1 auto!important;min-width:0!important}.topbar .logo-wrapper{display:flex!important;align-items:center!important;flex-shrink:0!important}.topbar .logo{height:28px!important;width:auto!important;flex-shrink:0!important;display:block!important}.topbar .brand-info{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;min-width:0!important;flex-shrink:1!important;overflow:visible!important}.topbar .brand-info .brand-title,.topbar .brand-info h1{margin:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:1px!important;line-height:1.15!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.topbar .brand-info .brand-dash{display:none!important}.topbar .brand-info .brand-org{font-size:.88rem!important;font-weight:800!important;color:var(--text, #0f172a)!important;line-height:1.15!important;white-space:nowrap!important}.topbar .brand-info .brand-sub{font-size:.74rem!important;font-weight:700!important;color:#16a34a!important;line-height:1.15!important;white-space:nowrap!important}.topbar .date-badge,.topbar .topbar-date-badge{display:none!important}.top-actions,.topbar .top-actions{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;width:auto!important;flex-shrink:0!important;margin-left:auto!important;background:transparent!important;border:none!important;padding:0!important}}.report-viewer-container,.report-container,.dashboard-page-container{padding-bottom:96px!important}.report-module-tabs,.report-nav,.report-nav-tabs{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;white-space:nowrap!important;scrollbar-width:none!important;-ms-overflow-style:none!important}.report-module-tabs::-webkit-scrollbar,.report-nav::-webkit-scrollbar,.report-nav-tabs::-webkit-scrollbar{display:none!important}.report-module-tab,.report-nav-btn{flex-shrink:0!important;white-space:nowrap!important}.chart-card-body,.echart-wrapper,.chart-container{min-height:280px!important}@media (max-width: 640px){.report-period-selector-row{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:6px!important;width:100%!important}.report-period-selector-row select{width:100%!important}.report-export-filename{display:none!important}.report-export-sync{display:flex!important;justify-content:space-between!important;align-items:center!important;width:100%!important}.report-ux-bar,.report-toolbar-group{width:100%!important;gap:8px!important}}@media (max-width: 768px){#energyReports,#energyReports:has(.report-nav),.report-container:has(#energyReports),.report-container{display:flex!important;flex-direction:column!important;grid-template-columns:1fr!important;width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;box-sizing:border-box!important}#energyReports .report-content,#energyReports .report-panel,.report-container .report-content,.report-container .report-panel{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important}.energy-trend-story{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;width:100%!important;margin-bottom:16px!important}.energy-trend-headline{grid-column:1 / -1!important;width:100%!important;box-sizing:border-box!important}.energy-trend-insights{display:contents!important}.energy-trend-insights div{width:100%!important;min-width:0!important;padding:14px 12px!important;box-sizing:border-box!important}.energy-kpi-grid,.report-panel .results-area>div[style*=grid]{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important}.metric-card{width:100%!important;min-width:0!important;box-sizing:border-box!important}.metric-value,.energy-trend-headline strong,.energy-trend-insights strong{white-space:nowrap!important}.energy-trend-card,.energy-trend-card .card-body,.energy-trend-chart,.energy-solar-strip{width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;float:none!important}.energy-trend-card .card-header{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;flex-wrap:wrap!important;gap:10px!important;width:100%!important}}@media (max-width: 640px){.card-header{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important;width:100%!important;box-sizing:border-box!important}.card-header>div:last-child,.form-action-header-group{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;width:100%!important;overflow-x:auto!important;white-space:nowrap!important;padding-bottom:4px!important;-webkit-overflow-scrolling:touch}.card-header button,.records-tool-btn,.records-manage-btn{flex:1 1 auto!important;white-space:nowrap!important}.form-row,.form-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important}.form-group input,.form-group select,.form-input,.form-select{width:100%!important;max-width:100%!important;box-sizing:border-box!important}.data-table,.records-grid-table,.table-responsive{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch}}.report-ux-bar{position:relative!important;top:auto!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;width:100%!important;padding:10px 24px!important;background:var(--card-bg)!important;border-bottom:1px solid var(--border)!important;margin:0!important}.report-module-tabs{position:relative!important;top:auto!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:6px!important;width:100%!important;padding:8px 24px!important;background:var(--card-bg)!important;border-bottom:1px solid var(--border)!important;margin:0!important;z-index:1!important;overflow-x:auto!important;white-space:nowrap!important;-webkit-overflow-scrolling:touch!important}@media (max-width: 640px){.report-ux-bar{flex-direction:column!important;align-items:flex-start!important;gap:10px!important;padding:10px 16px!important}.report-module-tabs{padding:8px 16px!important}}.chart-card-header,.sw-report-chart-card .chart-card-header{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:6px!important;padding:8px 12px!important;min-height:auto!important;height:auto!important;flex:0 0 auto!important}@media (max-width: 640px){.chart-card-header,.sw-report-chart-card .chart-card-header{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:6px!important;padding:8px 12px!important;min-height:auto!important;height:auto!important}.chart-card-header>div:first-child{width:100%!important;flex:0 0 auto!important;margin:0!important}.chart-card-header>div:last-child{width:100%!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;margin-top:4px!important;padding-bottom:0!important}.chart-card-body{padding:4px 6px!important;margin-top:0!important}}@media (min-width: 1024px){.report-ux-bar{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;width:100%!important;padding:8px 24px!important;background:var(--card-bg)!important;border-bottom:1px solid var(--border)!important;margin:0!important;min-height:48px!important;height:auto!important}.report-title-header{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;flex-shrink:0!important;width:auto!important}.report-toolbar-group{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;width:auto!important;flex-shrink:0!important}.report-top-period-selector,.report-period-selector-container,.report-period-selector-row{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:6px!important;width:auto!important}.report-export-sync{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;width:auto!important;margin:0!important}.report-export-sync .report-sync-status{display:inline-block!important;white-space:nowrap!important}.report-export-filename{display:inline-flex!important;align-items:center!important;gap:6px!important;width:auto!important}.report-export-actions{display:inline-flex!important;align-items:center!important;width:auto!important}.report-refresh-btn,.report-export-btn{white-space:nowrap!important;flex-shrink:0!important}}@media (max-width: 640px){.chart-card-container{width:100%!important;max-width:100%!important;border-radius:10px!important;overflow:hidden!important}.chart-toolbar-compact{width:100%!important;justify-content:flex-start!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;padding:2px 4px!important}.chart-toolbar-compact button{padding:4px 6px!important}.chart-card-body{padding:4px!important;overflow:hidden!important}.chart-card-body canvas{max-width:100%!important}.sw-overview-top-charts-grid{grid-template-columns:1fr!important;gap:12px!important}.sw-location-category-grid{grid-template-columns:1fr!important;gap:12px!important;width:100%!important}.sw-shared-category-legend{padding:6px 10px!important;gap:6px 12px!important;font-size:.72rem!important}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-0{bottom:0}.bottom-6{bottom:1.5rem}.left-0{left:0}.right-0{right:0}.right-5{right:1.25rem}.isolate{isolation:isolate}.z-30{z-index:30}.z-40{z-index:40}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mt-0\.5{margin-top:.125rem}.mt-2\.5{margin-top:.625rem}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.\!table{display:table!important}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-14{height:3.5rem}.h-9{height:2.25rem}.h-full{height:100%}.max-h-\[85vh\]{max-height:85vh}.w-12{width:3rem}.w-14{width:3.5rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-fit{max-width:-moz-fit-content;max-width:fit-content}.max-w-full{max-width:100%}.rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.touch-pan-y{--tw-pan-y: pan-y;touch-action:var(--tw-pan-x) var(--tw-pan-y) var(--tw-pinch-zoom)}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.auto-rows-fr{grid-auto-rows:minmax(0,1fr)}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-nowrap{flex-wrap:nowrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-t-3xl{border-top-left-radius:1.5rem;border-top-right-radius:1.5rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-amber-100{--tw-border-opacity: 1;border-color:rgb(254 243 199 / var(--tw-border-opacity, 1))}.border-blue-100{--tw-border-opacity: 1;border-color:rgb(219 234 254 / var(--tw-border-opacity, 1))}.border-cyan-100{--tw-border-opacity: 1;border-color:rgb(207 250 254 / var(--tw-border-opacity, 1))}.border-emerald-100{--tw-border-opacity: 1;border-color:rgb(209 250 229 / var(--tw-border-opacity, 1))}.border-orange-100{--tw-border-opacity: 1;border-color:rgb(255 237 213 / var(--tw-border-opacity, 1))}.border-slate-100{--tw-border-opacity: 1;border-color:rgb(241 245 249 / var(--tw-border-opacity, 1))}.border-slate-200{--tw-border-opacity: 1;border-color:rgb(226 232 240 / var(--tw-border-opacity, 1))}.border-slate-200\/80{border-color:#e2e8f0cc}.border-slate-900{--tw-border-opacity: 1;border-color:rgb(15 23 42 / var(--tw-border-opacity, 1))}.border-violet-100{--tw-border-opacity: 1;border-color:rgb(237 233 254 / var(--tw-border-opacity, 1))}.bg-amber-50\/70{background-color:#fffbebb3}.bg-amber-600{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.bg-blue-50\/70{background-color:#eff6ffb3}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-cyan-50\/70{background-color:#ecfeffb3}.bg-cyan-600{--tw-bg-opacity: 1;background-color:rgb(8 145 178 / var(--tw-bg-opacity, 1))}.bg-emerald-50\/70{background-color:#ecfdf5b3}.bg-emerald-600{--tw-bg-opacity: 1;background-color:rgb(5 150 105 / var(--tw-bg-opacity, 1))}.bg-orange-50\/70{background-color:#fff7edb3}.bg-orange-500{--tw-bg-opacity: 1;background-color:rgb(249 115 22 / var(--tw-bg-opacity, 1))}.bg-slate-100{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.bg-slate-100\/90{background-color:#f1f5f9e6}.bg-slate-300{--tw-bg-opacity: 1;background-color:rgb(203 213 225 / var(--tw-bg-opacity, 1))}.bg-slate-50{--tw-bg-opacity: 1;background-color:rgb(248 250 252 / var(--tw-bg-opacity, 1))}.bg-slate-800{--tw-bg-opacity: 1;background-color:rgb(30 41 59 / var(--tw-bg-opacity, 1))}.bg-slate-900{--tw-bg-opacity: 1;background-color:rgb(15 23 42 / var(--tw-bg-opacity, 1))}.bg-slate-900\/60{background-color:#0f172a99}.bg-violet-50\/70{background-color:#f5f3ffb3}.bg-violet-600{--tw-bg-opacity: 1;background-color:rgb(124 58 237 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/90{background-color:#ffffffe6}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.from-blue-600{--tw-gradient-from: #2563eb var(--tw-gradient-from-position);--tw-gradient-to: rgb(37 99 235 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }.to-indigo-600{--tw-gradient-to: #4f46e5 var(--tw-gradient-to-position) }.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-3{padding-left:.75rem;padding-right:.75rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.pb-28{padding-bottom:7rem}.pb-3{padding-bottom:.75rem}.pt-0\.5{padding-top:.125rem}.text-left{text-align:left}.text-\[0\.68rem\]{font-size:.68rem}.text-\[0\.72rem\]{font-size:.72rem}.text-\[0\.82rem\]{font-size:.82rem}.text-\[10\.5px\]{font-size:10.5px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-snug{line-height:1.375}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-amber-700{--tw-text-opacity: 1;color:rgb(180 83 9 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-cyan-700{--tw-text-opacity: 1;color:rgb(14 116 144 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-orange-700{--tw-text-opacity: 1;color:rgb(194 65 12 / var(--tw-text-opacity, 1))}.text-slate-400{--tw-text-opacity: 1;color:rgb(148 163 184 / var(--tw-text-opacity, 1))}.text-slate-500{--tw-text-opacity: 1;color:rgb(100 116 139 / var(--tw-text-opacity, 1))}.text-slate-600{--tw-text-opacity: 1;color:rgb(71 85 105 / var(--tw-text-opacity, 1))}.text-slate-900{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.text-violet-700{--tw-text-opacity: 1;color:rgb(109 40 217 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-slate-100{--tw-shadow-color: #f1f5f9;--tw-shadow: var(--tw-shadow-colored) }.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-blue-500{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1)) }.ring-slate-900{--tw-ring-opacity: 1;--tw-ring-color: rgb(15 23 42 / var(--tw-ring-opacity, 1)) }.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.hover\:border-slate-300:hover{--tw-border-opacity: 1;border-color:rgb(203 213 225 / var(--tw-border-opacity, 1))}.hover\:bg-slate-100:hover{--tw-bg-opacity: 1;background-color:rgb(241 245 249 / var(--tw-bg-opacity, 1))}.hover\:bg-slate-200\/60:hover{background-color:#e2e8f099}.hover\:bg-slate-50\/60:hover{background-color:#f8fafc99}.hover\:from-blue-700:hover{--tw-gradient-from: #1d4ed8 var(--tw-gradient-from-position);--tw-gradient-to: rgb(29 78 216 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) }.hover\:to-indigo-700:hover{--tw-gradient-to: #4338ca var(--tw-gradient-to-position) }.hover\:text-slate-900:hover{--tw-text-opacity: 1;color:rgb(15 23 42 / var(--tw-text-opacity, 1))}.hover\:ring-2:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-blue-500:hover{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1)) }.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:bg-amber-100:active{--tw-bg-opacity: 1;background-color:rgb(254 243 199 / var(--tw-bg-opacity, 1))}.active\:bg-blue-100:active{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.active\:bg-cyan-100:active{--tw-bg-opacity: 1;background-color:rgb(207 250 254 / var(--tw-bg-opacity, 1))}.active\:bg-emerald-100:active{--tw-bg-opacity: 1;background-color:rgb(209 250 229 / var(--tw-bg-opacity, 1))}.active\:bg-orange-100:active{--tw-bg-opacity: 1;background-color:rgb(255 237 213 / var(--tw-bg-opacity, 1))}.active\:bg-violet-100:active{--tw-bg-opacity: 1;background-color:rgb(237 233 254 / var(--tw-bg-opacity, 1))}@media (min-width: 640px){.sm\:hidden{display:none}.sm\:w-auto{width:auto}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:p-5{padding:1.25rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}}@media (min-width: 1024px){.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}}
