@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap";:root{--bg-dark:#09090b;--panel-bg:#18181b;--text-main:#fafafa;--text-muted:#a1a1aa;--accent:#3b82f6;--accent-hover:#60a5fa;--border:#27272a}*{box-sizing:border-box}body{background-color:var(--bg-dark);color:var(--text-main);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,sans-serif}.dashboard-layout{grid-template-columns:280px 1fr;min-height:100vh;display:grid}.sidebar{background-color:var(--panel-bg);border-right:1px solid var(--border);flex-direction:column;gap:24px;height:100vh;padding:24px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{color:var(--text-main);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding-bottom:24px;font-size:1.25rem;font-weight:600;display:flex}.control-group{flex-direction:column;gap:8px;display:flex}.control-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:500}.select-input,.date-input{background-color:var(--bg-dark);border:1px solid var(--border);color:var(--text-main);border-radius:8px;outline:none;width:100%;padding:10px 12px;font-family:Inter,sans-serif;font-size:.95rem;transition:all .2s}.select-input:focus,.date-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px #3b82f633}.button-primary{background-color:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;margin-top:12px;padding:10px 16px;font-weight:500;transition:background-color .2s}.button-primary:hover{background-color:var(--accent-hover)}.main-content{padding:32px;overflow-y:auto}.header{margin-bottom:32px}.header h1{margin:0 0 8px;font-size:1.75rem;font-weight:600}.header p{color:var(--text-muted);margin:0}.graphs-grid{grid-template-columns:1fr;gap:24px;display:grid}.graph-card{background-color:var(--panel-bg);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.graph-card.summary{border:1px solid var(--accent);grid-column:1/-1}.graph-header{justify-content:space-between;align-items:center;display:flex}.graph-header h3{margin:0;font-size:1.1rem;font-weight:500}.graph-header .device-id{color:var(--text-muted);background:var(--bg-dark);border-radius:4px;padding:4px 8px;font-family:monospace;font-size:.85rem}.graph-body{width:100%;height:300px}.loader-container{height:50vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.tabular-container{background-color:var(--panel-bg);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--border);padding:16px 24px}.data-table th{color:var(--text-muted);background-color:#ffffff05;font-weight:500}.data-table tr:last-child td{border-bottom:none}.tab-container{gap:16px;margin-bottom:24px;display:flex}.tab-button{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-family:Inter,sans-serif;font-size:1rem;font-weight:500;transition:all .2s}.tab-button.active{background-color:var(--accent);border-color:var(--accent);color:#fff}.tab-button:hover:not(.active){background-color:#ffffff0d}
