:root{color-scheme:dark;--bg: #0b0f17;--surface: #0f1623;--surface2: #101a2b;--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.12);--text: rgba(255,255,255,.92);--muted: rgba(255,255,255,.62);--muted2: rgba(255,255,255,.46);--accent: #7c3aed;--danger: #ef4444;--warn: #f59e0b;--ok: #22c55e;--shadow: 0 10px 30px rgba(0,0,0,.35);--r: 14px;--r2: 10px;--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji"}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans)}code,.mono{font-family:var(--mono)}.small{font-size:12px}.h2{font-size:16px;font-weight:650}.muted{color:var(--muted)}.spacer{height:12px}.gap8{gap:8px}.gap12{gap:12px}.row{display:flex;align-items:center}.spaceBetween{justify-content:space-between}.appRoot{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px}.centerCard{width:min(460px,100%);background:linear-gradient(180deg,#ffffff0a,#ffffff05);border:1px solid var(--border);border-radius:var(--r);padding:22px;box-shadow:var(--shadow)}.title{font-size:18px;font-weight:700;letter-spacing:.2px}.loginMeta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px}.infoBox{border:1px solid var(--border);background:#ffffff05;border-radius:12px;padding:12px 12px 10px}.bullets{margin:10px 0 0;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.45}.bullets li{margin:6px 0}.form{display:flex;flex-direction:column;gap:10px}.label{display:flex;flex-direction:column;gap:6px;color:var(--muted);font-size:13px}.input{background:#ffffff0a;border:1px solid var(--border);border-radius:10px;padding:10px 12px;color:var(--text);outline:none}.input:focus{border-color:#7c3aed99;box-shadow:0 0 0 3px #7c3aed26}.input-inline{width:240px}.select{background:#ffffff0a;border:1px solid var(--border);border-radius:10px;padding:9px 10px;color:var(--text);outline:none}.button{border:1px solid var(--border);background:#ffffff0a;color:var(--text);border-radius:10px;padding:9px 12px;cursor:pointer;transition:transform .06s ease,background .12s ease,border-color .12s ease}.button:hover{background:#ffffff0f;border-color:var(--border2)}.button:active{transform:translateY(1px)}.button:disabled{opacity:.55;cursor:not-allowed}.button-primary{background:#7c3aed2e;border-color:#7c3aed80}.button-primary:hover{background:#7c3aed3d}.button-danger{background:#ef444424;border-color:#ef444480}.button-danger:hover{background:#ef44442e}.button-ghost{background:transparent}.iconButton{background:transparent;border:1px solid transparent;color:var(--muted);border-radius:8px;cursor:pointer;padding:4px 8px}.iconButton:hover{background:#ffffff0f;color:var(--text)}.dividerRow{display:flex;align-items:center;gap:10px;margin:14px 0}.dividerLine{flex:1;height:1px;background:var(--border)}.dividerText{color:var(--muted2);font-size:12px}.shell{height:100%;display:flex}.sidebar{width:250px;border-right:1px solid var(--border);background:#ffffff05;padding:18px 14px;display:flex;flex-direction:column;gap:14px;overflow:auto}.brand{display:flex;align-items:center;gap:10px;padding:6px 6px 12px}.brandMark{width:34px;height:34px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#7c3aed33;border:1px solid rgba(124,58,237,.35);font-weight:800}.brandTitle{font-weight:750}.brandSub{color:var(--muted);font-size:12px;margin-top:1px}.nav{display:flex;flex-direction:column;gap:6px}.navSectionTitle{margin-top:10px;padding:10px 10px 6px;color:#ffffff6b;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.navItem{text-align:left;border:1px solid transparent;background:transparent;color:var(--muted);padding:10px;border-radius:12px;cursor:pointer}.navItem:hover{background:#ffffff0a;color:var(--text)}.navItem.active{background:#ffffff0d;border-color:var(--border);color:var(--text)}.sidebarFooter{margin-top:auto;padding:10px 6px 0;border-top:1px dashed rgba(255,255,255,.08);display:flex;flex-direction:column;gap:4px}.content{flex:1;display:flex;flex-direction:column;min-width:0}.topbar{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 18px;border-bottom:1px solid var(--border);background:#ffffff05}.topbarLeft,.topbarRight{display:flex;align-items:center;gap:10px;min-width:0}.pageCrumb{color:var(--muted);font-size:13px}.userPill{display:flex;flex-direction:column;gap:1px;border:1px solid var(--border);background:#ffffff08;border-radius:12px;padding:8px 10px;min-width:0}.userName{font-size:13px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.statusPill,.envPill{display:flex;align-items:center;gap:8px;border:1px solid var(--border);background:#ffffff08;border-radius:999px;padding:7px 10px;font-size:12px;color:var(--muted)}.statusPill .dot{width:8px;height:8px;border-radius:999px;background:var(--muted2)}.status-healthy .dot{background:var(--ok)}.status-degraded .dot{background:var(--warn)}.status-down .dot{background:var(--danger)}.env-dev{border-color:#7c3aed59;color:#7c3aede6}.env-staging{border-color:#f59e0b59;color:#f59e0be6}.env-prod{border-color:#22c55e59;color:#22c55ee6}.main{flex:1;overflow:auto}.page{padding:18px}.pageHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.pageTitle{font-size:18px;font-weight:750}.split{display:grid;grid-template-columns:360px minmax(0,1fr);gap:14px;align-items:start}.panel{border:1px solid var(--border);border-radius:var(--r);background:#ffffff05;overflow:hidden}.panelHeader{padding:12px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.panelTitle{font-weight:700}.badge{border:1px solid var(--border);background:#ffffff08;border-radius:999px;padding:4px 8px;font-size:12px;color:var(--muted)}.badge-ok{border-color:#22c55e59;color:#22c55ee6}.badge-warn{border-color:#f59e0b59;color:#f59e0be6}.list{display:flex;flex-direction:column}.listItem{text-align:left;padding:12px;background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.06);cursor:pointer;color:var(--text)}.listItem:hover{background:#ffffff08}.listItem.active{background:#7c3aed1f}.listItemTitle{font-weight:650}.listRow{height:52px;border-bottom:1px solid rgba(255,255,255,.06)}.skeleton{background:linear-gradient(90deg,#ffffff05,#ffffff0f,#ffffff05);background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.detail{padding:14px}.preview{border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;background:#00000059}.previewMedia{display:block;width:100%;max-height:360px;object-fit:cover}.previewPlaceholder{padding:18px;display:flex;flex-direction:column;gap:4px}.previewPlaceholderTitle{font-weight:700}.cardGrid{margin-top:12px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{border:1px solid var(--border);border-radius:var(--r2);background:#ffffff05;padding:12px}.cardTitle{font-weight:700;margin-bottom:8px}.kv{display:flex;justify-content:space-between;gap:10px;padding:4px 0;border-bottom:1px dashed rgba(255,255,255,.06)}.kv:last-child{border-bottom:0}.k{color:var(--muted);font-size:12px}.v{font-size:12px;text-align:right;overflow-wrap:anywhere}.table{margin-top:10px;border:1px solid rgba(255,255,255,.06);border-radius:10px;overflow:hidden}.tableHeader,.tableRow{display:grid;grid-template-columns:120px 90px minmax(0,1fr);gap:10px;padding:10px}.tableHeader{background:#ffffff08;color:var(--muted);font-size:12px;border-bottom:1px solid rgba(255,255,255,.06)}.tableRow{border-bottom:1px solid rgba(255,255,255,.06);font-size:12px}.tableRowButton{background:transparent;border:0;color:var(--text);text-align:left;cursor:pointer}.tableRowButton:hover{background:#ffffff08}.tableRow:last-child{border-bottom:0}.tableRowHover{cursor:pointer}.tableRowHover:hover{background:#ffffff08}.tableRowActive{background:#7c3aed1f}.avatar{width:44px;height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#ffffff08;overflow:hidden;display:flex;align-items:center;justify-content:center}.avatar img{width:100%;height:100%;object-fit:cover}.avatarFallback{color:var(--muted);font-weight:800}.errorRow{display:flex;gap:10px;align-items:center;margin-bottom:12px}.errorBox{flex:1;border:1px solid rgba(239,68,68,.35);background:#ef44441a;border-radius:12px;padding:10px 12px;color:#ffffffe6}.empty{padding:18px;display:flex;flex-direction:column;gap:4px}.empty.compact{padding:12px}.emptyTitle{font-weight:700}.toastHost{position:fixed;right:14px;bottom:14px;display:flex;flex-direction:column;gap:10px;width:min(420px,calc(100vw - 28px));z-index:50}.menuRoot{position:relative}.menuPanel{position:absolute;right:0;top:calc(100% + 8px);width:320px;border:1px solid var(--border);background:#101a2bfa;border-radius:14px;box-shadow:var(--shadow);padding:12px;z-index:75}.menuTitle{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6}.menuGrid{margin-top:10px;display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px 10px;align-items:baseline}.menuDivider{height:1px;background:#ffffff14;margin:12px 0}.menuButton{width:100%;text-align:left;padding:10px;border-radius:12px;border:1px solid var(--border);background:#ffffff08;color:var(--text);cursor:pointer}.menuButton:hover{background:#ffffff0f;border-color:var(--border2)}.progressBar{height:10px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);overflow:hidden}.progressFill{height:100%;width:0%;background:#7c3aedbf;border-radius:999px;transition:width .12s linear}.toast{border:1px solid var(--border);background:#101a2bf2;border-radius:var(--r);padding:12px;box-shadow:var(--shadow)}.toastHeader{display:flex;justify-content:space-between;align-items:center;gap:10px}.toastTitle{font-weight:700}.toastMsg{color:var(--muted);margin-top:6px;font-size:13px}.toast-success{border-color:#22c55e59}.toast-error{border-color:#ef444459}.toast-info{border-color:#7c3aed59}.modalOverlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;padding:18px;z-index:60}.modalCard{width:min(520px,100%);border:1px solid var(--border);background:#101a2bfa;border-radius:var(--r);padding:16px;box-shadow:var(--shadow)}.modalCardWide{width:min(1120px,100%);padding:0;max-height:calc(100vh - 36px);overflow:hidden;display:flex;flex-direction:column}.modalHeader{padding:16px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border)}.modalBody{padding:16px;overflow:auto}.modalTitle{font-size:16px;font-weight:800}.modalDesc{margin-top:8px;color:var(--muted)}.modalActions{margin-top:14px;display:flex;justify-content:flex-end;gap:10px}.phoneFrame{position:relative;width:100%;aspect-ratio:9 / 16;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.12);background:#000000a6}.phoneMedia{width:100%;height:100%;object-fit:cover;display:block}.phoneGradient{position:absolute;inset:0;background:linear-gradient(180deg,#0000 55%,#000000bf);pointer-events:none}.phoneHud{position:absolute;left:12px;right:12px;bottom:12px;display:flex;flex-direction:column;gap:10px;pointer-events:none}.phoneAttribution{display:flex;gap:10px;align-items:center}.phoneAvatar{width:36px;height:36px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;overflow:hidden;flex:0 0 auto}.phoneAvatar img{width:100%;height:100%;object-fit:cover;display:block}.phoneAvatarFallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-weight:900;color:#ffffffdb}.phoneName{font-weight:800;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.phoneCaption{white-space:pre-wrap;font-size:13px;line-height:1.32;color:#ffffffeb;text-shadow:0 2px 10px rgba(0,0,0,.45)}@media(max-width:980px){.split{grid-template-columns:1fr}}@media(max-width:760px){.shell>.sidebar{display:none}.input-inline{width:160px}.userName{max-width:140px}.cardGrid{grid-template-columns:1fr}}.mobileOnly{display:none}@media(max-width:760px){.mobileOnly{display:inline-flex}.sidebarOverlay{position:fixed;inset:0;background:#0000008c;display:none;z-index:80;align-items:stretch;justify-content:flex-start}.sidebarOverlay.open{display:flex}.sidebarOverlay .sidebar{display:flex;width:min(320px,86vw);height:100%;border-right:1px solid var(--border)}}
