| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- .iot-page .main-container {
- display: flex;
- flex: 1;
- min-height: 0;
- }
- .iot-page .sidebar {
- flex-shrink: 0;
- }
- .iot-page .content-area {
- flex: 1;
- padding: 16px 20px 24px;
- overflow: auto;
- min-width: 0;
- }
- .iot-page .stat-row {
- margin-bottom: 12px;
- }
- .iot-page .stat-card {
- text-align: center;
- background: var(--card);
- border: 1px solid var(--border);
- }
- .iot-page .stat-num {
- font-size: 28px;
- font-weight: 700;
- color: var(--primary);
- }
- .iot-page .stat-num.stat-success {
- color: #16a34a;
- }
- .iot-page .stat-num.stat-warn {
- color: #ea580c;
- }
- .iot-page .stat-label {
- font-size: 13px;
- color: var(--muted);
- margin-top: 4px;
- }
- .iot-page .iot-card {
- margin-top: 12px;
- background: var(--card);
- border: 1px solid var(--border);
- }
- .iot-page .card-header {
- display: flex;
- align-items: center;
- justify-content: space-between;
- }
- .iot-page .card-header h2 {
- margin: 0;
- font-size: 16px;
- }
- .iot-page .search-form {
- margin-bottom: 12px;
- }
- .iot-page .date-separator {
- margin: 0 8px;
- color: var(--muted);
- }
|