:root{--bg: #f4efe6;--card: #fffaf2;--line: #e8dcc7;--text: #1f1c17;--muted: #6a5d4d;--ink: #0e4b50;--ink-2: #1f2d5c;--danger: #c0392b;--ok: #0f766e}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:Avenir Next,Helvetica Neue,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(circle at 12% 16%,#fff3db,#f4efe6 48%,#efe5d8)}.app-shell{display:grid;grid-template-rows:auto 1fr;grid-template-columns:1fr;min-height:100vh}.app-header{background:linear-gradient(180deg,#1f2d5c,#0e4b50);color:#f6f8ff;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:flex-start;gap:8px;position:relative;z-index:101}.menu-toggle{display:none;background:none;border:none;color:#f6f8ff;font-size:24px;padding:4px 8px;cursor:pointer;flex-shrink:0}.header-left{flex-shrink:0;margin-right:16px}.header-left .brand{color:#f6f8ff;margin:0}.header-nav{display:flex;gap:8px;flex:1;justify-content:center;position:static}.header-nav.open{position:absolute;top:100%;left:12px;right:12px;background:linear-gradient(180deg,#1f2d5c,#0e4b50);border:1px solid rgba(255,255,255,.18);border-top:none;border-radius:0 0 12px 12px;padding:8px 12px;flex-direction:column;z-index:100}.header-right{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-left:auto}.hamburger{display:none;position:fixed;top:16px;left:16px;z-index:999;background:linear-gradient(180deg,#1f2d5c,#0e4b50);color:#fff;border:none;font-size:24px;padding:8px 12px;border-radius:8px;cursor:pointer}.sidebar{display:none}.content{padding:24px;overflow-y:auto}.content-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.toolbar-left{display:flex;align-items:center;gap:12px}.toolbar-left label{font-size:13px;font-weight:600}.toolbar-left .select{width:120px;border:1px solid var(--line);background:var(--card);color:var(--text);padding:8px 10px;border-radius:8px;cursor:pointer}.toolbar-right{display:flex;align-items:center;gap:12px}.nav-item{background:#ffffff1f;color:#f6f8ff;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px 12px;font-weight:600;cursor:pointer;transition:all .2s ease;text-align:center;font-size:13px;white-space:nowrap}.header-nav .nav-item{background:#ffffff1f}.nav-item:hover{background:#ffffff2e;border-color:#ffffff4d}.nav-item.active{background:#f59e0b;color:#21160a;border-color:#f59e0b}.brand{font-size:26px;font-weight:700;letter-spacing:.4px}.brand-sub{opacity:.78;font-size:12px;margin-bottom:22px}.field-label{font-size:12px;text-transform:uppercase;letter-spacing:.8px;opacity:.85;margin:14px 0 8px;display:block}.token-input,.select{width:100%;border:1px solid rgba(255,255,255,.3);background:#ffffff1f;color:#fff;border-radius:10px;padding:10px 12px}.select option{color:#222}.actions{margin-top:10px}.row{display:flex;gap:8px}.btn{border:0;border-radius:8px;padding:8px 12px;font-weight:600;font-size:13px;cursor:pointer;background:#f6e8c3;color:#30220f;transition:all .2s ease}.btn:hover{opacity:.9}.btn.ghost{background:#ffffff2e;color:#f6f8ff;border:1px solid rgba(255,255,255,.3)}.btn.ghost:hover{background:#ffffff40;border-color:#ffffff80}.btn.primary{background:#f59e0b;color:#21160a;border:none}.btn.primary:hover{background:#f59e0b;opacity:.9}.btn.full{width:100%;margin-top:18px}.meta{margin-top:16px;font-size:12px;opacity:.9}.error{margin-top:10px;background:#c0392b2e;border:1px solid rgba(192,57,43,.46);color:#ffd8d2;padding:8px;border-radius:8px;font-size:12px}.content{padding:24px}.headline h1{margin:0;font-size:34px;letter-spacing:.2px}.headline p{margin:6px 0 18px;color:var(--muted)}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.kpi,.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:0 12px 28px #241d120f}.kpi-title{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.7px}.kpi-value{margin-top:10px;font-size:30px;line-height:1;color:var(--ink-2)}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.chart-panel h3,.panel h3{margin:0 0 10px}.plain-list{margin:0;padding-left:16px;display:grid;gap:8px}.health{display:inline-flex;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:700;margin-bottom:10px}.health.healthy{color:#04524d;background:#d1fae5}.health.degraded{color:#8a4b08;background:#fef3c7}.health.critical{color:#7f1d1d;background:#fee2e2}.sub-status{font-size:12px;color:var(--muted);margin-bottom:8px}.code-box{margin:0;border:1px solid var(--line);background:#fff;border-radius:10px;padding:10px;max-height:240px;overflow:auto;font-size:12px}.error-panel{background:#dc26261a;border:2px solid #dc2626;border-radius:12px;padding:16px;margin-bottom:20px;color:#fca5a5;font-weight:600;text-align:center}.login-shell{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg)}.login-container{display:flex;align-items:center;justify-content:center;width:100%;padding:20px}.login-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:48px;box-shadow:0 20px 64px #241d121a;width:100%;max-width:420px}.login-header{text-align:center;margin-bottom:36px}.login-header h1{margin:0;font-size:28px;color:var(--ink-2)}.login-header p{margin:6px 0 0;color:var(--muted);font-size:14px}.login-form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column}.form-group .field-label{margin:0 0 8px;color:var(--ink-2)}.form-group .token-input{border:1px solid var(--line);background:#fff;color:var(--text)}.form-group .token-input:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px #0e4b501a}.message{padding:12px;border-radius:10px;font-size:12px;background:#c0392b1a;border:1px solid rgba(192,57,43,.3);color:#c0392b}.message.success{background:#0f766e1a;border-color:#0f766e4d;color:#0f766e}.button-group{display:flex;gap:8px;margin-top:8px}.button-group.secondary{margin-top:12px}.button-group.secondary .btn{flex:1;font-size:12px}.button-group .btn.full{width:100%;margin:0}.language-switcher{display:flex;gap:4px}.header-right .language-switcher{margin:0}.lang-btn{padding:4px 8px;border:1px solid rgba(255,255,255,.4);background:#ffffff26;color:#fff;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease}.lang-btn:hover{border-color:#fff9;background:#ffffff38}.lang-btn.active{background:#f59e0b;color:#21160a;border-color:#f59e0b}.login-card .lang-btn{border:1px solid rgba(159,122,102,.4);background:#9f7a661f;color:var(--text)}.login-card .lang-btn:hover{border-color:#9f7a6699;background:#9f7a6633}.login-card .lang-btn.active{background:#f59e0b;color:#21160a;border-color:#f59e0b}.login-footer{text-align:center;margin-top:36px;padding-top:24px;border-top:1px solid var(--line)}.login-footer p{margin:6px 0;font-size:13px;color:var(--muted)}.section-label{font-size:11px;text-transform:uppercase;letter-spacing:.8px;opacity:.7;margin:16px 0 12px;display:block;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:8px}.divider{height:1px;background:#ffffff26;margin:16px 0}@media (max-width: 1100px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-grid{grid-template-columns:1fr}}@media (max-width: 768px){.app-header{padding:12px 16px;flex-wrap:nowrap}.header-left .brand{font-size:20px}.menu-toggle{display:block}.header-nav{display:none;position:fixed;top:56px;left:12px;right:12px;max-width:calc(100vw - 24px);background:linear-gradient(180deg,#1f2d5c,#0e4b50);border:1px solid rgba(255,255,255,.18);border-radius:0 0 12px 12px;padding:8px 12px;flex-direction:column;z-index:200}.header-nav.open{display:flex}.header-right{order:unset}.content{padding:16px 12px}.content-toolbar{flex-direction:column;align-items:flex-start}.toolbar-left{width:100%;flex-wrap:wrap}.toolbar-left .select{flex:1;min-width:100px}.toolbar-right{width:100%}.kpi-grid{grid-template-columns:1fr 1fr;gap:8px}.split-grid{grid-template-columns:1fr}.headline h1{font-size:24px}.chart-panel{padding:10px}.nav-item{font-size:12px;padding:6px 10px}}@media (max-width: 480px){.kpi-grid{grid-template-columns:1fr}.headline h1{font-size:20px}.headline p{font-size:12px}.kpi-value{font-size:24px}.content{padding:12px 8px}.panel{padding:10px}.login-card{padding:24px 16px}.btn{padding:8px 10px;font-size:12px}.field-label{font-size:11px}.error-panel{padding:12px;font-size:12px;border-width:1px}}
