@font-face{font-family:Roboto;src:url('./fonts/roboto-latin-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Roboto;src:url('./fonts/roboto-latin-500-normal.woff2') format('woff2');font-weight:500;font-display:swap}@font-face{font-family:Roboto;src:url('./fonts/roboto-latin-600-normal.woff2') format('woff2');font-weight:600;font-display:swap}@font-face{font-family:Roboto;src:url('./fonts/roboto-latin-700-normal.woff2') format('woff2');font-weight:700;font-display:swap}
:root{font-family:Roboto,Arial,sans-serif;--md-primary:#00796b;--md-primary-container:#d9eee9;--md-surface:#fff;--md-outline:#cedbd8;--md-elevation:0 2px 3px #123b3f12,0 1px 2px #123b3f0a;--teal:#00796b}body{background:#f4f6f6}button{font-weight:500;letter-spacing:.02em;min-height:36px;border-radius:4px;position:relative;overflow:hidden;transition:background .15s,box-shadow .15s}button:active{background:#cce4dd}button.primary{box-shadow:0 2px 4px #004d402d}.primary:hover{background:#00695c;box-shadow:0 3px 7px #004d4033}button.textbutton{min-height:32px;padding:0 8px}.card,.kpi{border-radius:5px;border:1px solid #e2e8e6;box-shadow:var(--md-elevation)}h1{font-size:1.9rem;letter-spacing:-.02em;font-weight:400}h2{font-weight:500;font-size:1.1rem}h3{font-weight:500}.kpi-number{font-weight:400}.topbar{box-shadow:0 2px 3px #203b4408;z-index:2;position:relative}.sidebar{box-shadow:1px 0 4px #173d4208}.sidebar nav a{border-radius:0 24px 24px 0;margin-right:4px;font-weight:400}.sidebar nav a.active{background:#dceee9;font-weight:500}.nav-icon{width:24px;height:24px;display:inline-flex;flex-shrink:0}.material-icon{width:24px;height:24px;opacity:.68;vertical-align:middle}.active .material-icon{opacity:1;filter:invert(33%) sepia(39%) saturate(1674%) hue-rotate(128deg) brightness(88%) contrast(103%)}.tabs{min-height:48px;gap:0}.tabs button{letter-spacing:.04em;font-weight:500;text-transform:uppercase;font-size:.8rem;padding:16px 24px;min-height:48px}.tabs button.active{border-bottom:2px solid var(--md-primary);background:#eaf4f0}input:not([type=range]):not([type=checkbox]),select{border-radius:4px 4px 0 0;border:0;border-bottom:1px solid #829b96;background:#f0f4f3;padding:14px 12px;min-height:48px;transition:background .15s,box-shadow .15s}input:focus,select:focus{outline:none;box-shadow:0 2px 0 var(--md-primary);background:#eaf1ef}input[type=checkbox]{accent-color:var(--teal);width:18px;height:18px}input[type=range]{height:24px}.badge{border-radius:16px;padding:5px 10px;letter-spacing:.01em;font-weight:500}dialog{border-radius:5px;box-shadow:0 11px 15px -7px #0003,0 24px 38px 3px #0002,0 9px 46px 8px #0002}.modal-head{padding:24px 24px 12px;border-bottom:0}.modal-head h2{font-size:1.25rem}.modal-body{padding:12px 24px 24px}.modal-foot{padding:8px 24px 20px;border:0}.detail-item{border-radius:4px}.modal-body label{color:#4d6868}.table-wrap th{height:56px;background:#fafbfb;font-size:.75rem}.table-wrap td{height:57px;padding-top:14px;padding-bottom:14px}.table-wrap tr:hover td{background:#f6faf8}.scene-controls button.active{background:#00796b}.card-head .badge{max-width:100%}.ripple{position:absolute;border-radius:50%;background:currentColor;opacity:.14;transform:scale(0);animation:material-ripple .5s ease-out;pointer-events:none}@keyframes material-ripple{to{transform:scale(3.5);opacity:0}}.brandmark{font-family:Arial,sans-serif}.salon{font-weight:500}#toast{border-radius:4px;min-width:300px;background:#323b3b;text-align:center}.eyebrow{font-weight:500}.legend{flex-wrap:wrap}.scene-chip{border-radius:4px}.sidebar-bottom .textbutton{font-size:.73rem;text-align:left;padding:0}.topbar .iconbutton{min-width:36px}.analysis-grid .tabs button{padding-left:12px;padding-right:12px;flex:1;font-size:.75rem}.kpi-label{font-size:.875rem}.kpi-note,.timestamp,.chart-legend,.legend,.table-footer,.building-row p,.card-head p,.alert-row p{font-size:.8rem}.alert-row h3{font-size:.9375rem}.sidebar nav a{font-size:.9375rem}@media(max-width:600px){h1{font-size:1.65rem}.sidebar nav a{border-radius:50%;margin:0;padding:8px}.nav-icon,.material-icon{width:22px;height:22px}.kpi-label{font-size:.8rem}.kpi-note{font-size:.75rem}.card-head{flex-wrap:wrap}}
