:root{color:#e2e8f0;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 0 0,#8b5cf62e,#0000 30%),linear-gradient(135deg,#020817 0%,#0f172a 42%,#111827 100%);font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:0 0;min-width:320px;min-height:100vh;margin:0}button,a{font:inherit}img{max-width:100%;display:block}#root{min-height:100vh}.login-screen{background:radial-gradient(circle at top,#8b5cf633,#0000 32%),linear-gradient(135deg,#08101d 0%,#111827 100%);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:#0f172ad1;border:1px solid #94a3b82e;border-radius:28px;width:min(100%,440px);padding:32px 28px;box-shadow:0 30px 60px #0f172a73}.login-brand{align-items:center;gap:14px;margin-bottom:22px;display:flex}.subtitle{letter-spacing:.14em;text-transform:uppercase;color:#a78bfa;margin:0;font-size:.74rem}.brand-tag{color:#7dd3fc;letter-spacing:.12em;text-transform:uppercase;background:#22d3ee1f;border:1px solid #22d3ee3d;border-radius:999px;margin:-4px 0 18px;padding:.3rem .65rem;font-size:.72rem;font-weight:700;display:inline-block}.login-brand h1{color:#f8fafc;margin:4px 0 0;font-size:2rem}.brand-mark{color:#fff;background:linear-gradient(135deg,#8b5cf6,#22d3ee);border-radius:16px;place-items:center;width:52px;height:52px;font-weight:700;display:grid;box-shadow:0 16px 30px #6366f159}.login-form{flex-direction:column;gap:18px;display:flex}.login-form label,.meter-form label{color:#dfe7f3;flex-direction:column;gap:8px;font-weight:600;display:flex}.remember-user-option{align-items:center;margin-top:-4px;font-size:.92rem;color:#cbd5e1!important;flex-direction:row!important;gap:10px!important;font-weight:500!important}.remember-user-option input{height:16px;margin:0;width:16px!important}.login-form input,.meter-form input,.meter-form select{color:#f8fafc;background:#0f172acc;border:1px solid #94a3b833;border-radius:14px;width:100%;padding:.95rem 1rem;font-size:1rem}.login-form input::placeholder,.meter-form input::placeholder{color:#94a3b8b3}.primary-btn,.logout-button,.tab-button,.secondary-btn,.close-button,.meter-tab{font:inherit;cursor:pointer;border:none;border-radius:12px}.primary-btn{color:#fff;background:linear-gradient(135deg,#8b5cf6,#4f46e5);font-weight:700;box-shadow:0 12px 28px #6366f159}.secondary-btn{color:#e2e8f0;background:#94a3b81f;padding:.8rem 1.1rem}.login-btn{width:100%;margin-top:8px;padding:1rem 1.2rem}.error-message,.form-error{color:#fca5a5;margin:0;font-size:.9rem}.helper-text{text-align:center;color:#94a3b8cc;margin:18px 0 0;font-size:.88rem}.app-shell{width:min(1200px,100% - 32px);margin:0 auto;padding:28px 0 48px}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0f172acc;border:1px solid #94a3b82e;border-radius:18px;justify-content:space-between;align-items:center;gap:18px;padding:18px 20px;display:flex}.brand-wrap{color:#f8fafc;align-items:center;gap:12px;display:flex}.brand-wrap strong{font-size:1.1rem;display:block}.brand-wrap small{color:#94a3b8cc}.user-box{color:#dbeafe;align-items:center;gap:14px;display:flex}.logout-button,.topbar-primary-button{color:#f8fafc;background:#94a3b824;padding:.7rem 1rem}.topbar-primary-button{background:linear-gradient(135deg,#8b5cf647,#22d3ee2e);border:1px solid #8b5cf652;font-weight:700}.topbar-primary-button.active{box-shadow:0 0 0 1px #a78bfa66,0 12px 22px #6366f133}.menu-tabs{flex-wrap:wrap;gap:14px;margin-top:24px;display:flex}.tab-button{color:#e2e8f0cc;background:#0f172a80;border:1px solid #94a3b82e;padding:.9rem 1.3rem;font-weight:600}.tab-button.active{color:#f8fafc;background:linear-gradient(135deg,#8b5cf638,#22d3ee2e);border-color:#8b5cf659}.dashboard-panel{background:#0f172ab8;border:1px solid #94a3b82e;border-radius:28px;margin-top:22px;padding:26px}.dashboard-header-block{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.eyebrow{color:#a78bfa;letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:700}.dashboard-header-block h2{color:#f8fafc;margin:0;font-size:clamp(1.8rem,2.8vw,2.6rem)}.small-btn{padding:.8rem 1.1rem}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.summary-card{background:#111827cc;border:1px solid #94a3b824;border-radius:18px;padding:20px 18px}.summary-card span{color:#e2e8f0b8;margin-bottom:10px;display:block}.summary-card strong{color:#f8fafc;margin-bottom:10px;font-size:clamp(1.6rem,2.8vw,2.4rem);display:block}.summary-card em{font-style:normal;font-weight:700}.summary-card em.up{color:#6ee7b7}.summary-card em.down{color:#fca5a5}.content-grid{grid-template-columns:2fr 1fr;gap:18px;margin-top:24px;display:grid}.table-card,.status-card,.panel-box{background:#111827cc;border:1px solid #94a3b829;border-radius:20px;padding:20px 18px}.table-card h3,.status-card h3,.panel-box h3{color:#f8fafc;margin:0 0 18px}table{border-collapse:collapse;width:100%}th,td{text-align:left;color:#dfe7f3;border-bottom:1px solid #94a3b81f;padding:12px 10px}th{color:#a5b4fc;letter-spacing:.04em;text-transform:uppercase;font-size:.8rem}.status-card ul{flex-direction:column;gap:18px;margin:0;padding:0;list-style:none;display:flex}.status-card li{color:#e2e8f0;align-items:center;gap:10px;display:flex}.dot{border-radius:50%;width:12px;height:12px;display:inline-block}.dot.green{background:#34d399}.dot.amber{background:#fbbf24}.dot.blue{background:#60a5fa}.metering-page{flex-direction:column;gap:20px;display:flex}.meter-subtabs{flex-wrap:wrap;gap:10px;margin-bottom:6px;display:flex}.meter-tab{color:#e2e8f0cc;background:#0f172a80;border:1px solid #94a3b826;padding:.75rem 1rem;font-weight:600}.meter-tab.active{color:#fff;background:linear-gradient(135deg,#8b5cf62e,#22d3ee2e);border-color:#8b5cf659}.meter-summary-grid{margin-bottom:0}.unit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.unit-card{background:#111827cc;border:1px solid #94a3b829;border-radius:20px;padding:20px 18px}.unit-card-top{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.unit-label{color:#9bb7ff;letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:.75rem}.unit-card h3{color:#f8fafc;margin:0;font-size:1.25rem}.unit-meta{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.unit-meta span{color:#dbeafe;background:#94a3b81f;border-radius:999px;padding:.35rem .55rem;font-size:.72rem;display:inline-flex}.unit-stat-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.unit-stat-row small{color:#94a3b8cc;margin-bottom:8px;display:block}.unit-stat-row strong{color:#f8fafc}.status-badge{border-radius:999px;align-items:center;padding:.35rem .6rem;font-size:.7rem;font-weight:700;display:inline-flex}.status-badge.ok{color:#6ee7b7;background:#10b98126}.status-badge.warn{color:#fcd34d;background:#fbbf2426}.meter-table-section{margin-top:0}.three-panel-block{grid-template-columns:2fr 1fr;gap:18px;display:grid}.spotlight-box{background:linear-gradient(#8b5cf61f,#0f172ad9)}.spotlight-box ul{color:#e2e8f0;flex-direction:column;gap:10px;margin:0 0 18px;padding:0;list-style:none;display:flex}.spotlight-box li:before{content:"•";color:#a78bfa;margin-right:10px}.spotlight-value{background:#0f172ae6;border:1px solid #94a3b824;border-radius:16px;flex-direction:column;gap:8px;padding:16px;display:flex}.spotlight-value span,.spotlight-value small{color:#e2e8f0bd}.spotlight-value strong{color:#f8fafc;font-size:1.3rem}.billing-grid{grid-template-columns:1fr;display:grid}.user-management-page{flex-direction:column;gap:20px;display:flex}.user-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.user-layout{grid-template-columns:2fr 1fr;gap:18px;display:grid}.user-header-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.user-cell{flex-direction:column;gap:6px;display:flex}.user-cell strong{color:#f8fafc}.user-cell small{color:#94a3b8cc}.action-group{flex-wrap:wrap;gap:8px;display:flex}.ghost-action{color:#e2e8f0;cursor:pointer;background:#94a3b814;border:1px solid #94a3b82e;border-radius:10px;padding:.45rem .7rem}.ghost-action.danger{color:#fca5a5;border-color:#f8717147}.user-form{flex-direction:column;gap:14px;display:flex}.user-form label{color:#dfe7f3;flex-direction:column;gap:8px;font-weight:600;display:flex}.user-form input,.user-form select{color:#f8fafc;background:#0f172acc;border:1px solid #94a3b833;border-radius:12px;width:100%;padding:.8rem .9rem}.form-aside{align-self:start}.full-width{width:100%}.meter-cell{flex-direction:column;gap:6px;display:flex}.meter-cell strong{color:#f8fafc}.meter-cell small{color:#94a3b8cc}.modal-overlay{z-index:20;background:#020617b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.meter-modal{background:#0f172af5;border:1px solid #94a3b82e;border-radius:24px;width:min(100%,760px);padding:22px}.modal-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.modal-header h3{color:#f8fafc;margin:0}.close-button{color:#f8fafc;background:#94a3b81f;width:36px;height:36px}.meter-form{flex-direction:column;gap:18px;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.modal-actions{justify-content:flex-end;gap:12px;margin-top:8px;display:flex}@media (width<=820px){.summary-grid,.content-grid,.form-grid,.three-panel-block,.unit-grid{grid-template-columns:1fr}.dashboard-header-block,.topbar{flex-direction:column;align-items:flex-start}}@media (width<=560px){.app-shell{width:min(100% - 18px,1200px);padding-top:18px}.dashboard-panel{padding:20px 16px}.menu-tabs,.meter-subtabs{grid-template-columns:1fr;display:grid}.user-box{justify-content:space-between;width:100%}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}
