:root{--primary:#2563eb;--primary-hover:#1d4ed8;--primary-active:#1e40af;--primary-subtle:#eff6ff;--ring:#2563eb;--success:#15803d;--success-subtle:#f0fdf4;--warning:#b45309;--warning-subtle:#fffbeb;--danger:#dc2626;--danger-subtle:#fef2f2;--danger-on-subtle:#b91c1c;--promo:#7e22ce;--promo-subtle:#faf5ff;--text:#0f172a;--text-secondary:#334155;--text-weak:#64748b;--text-faint:#94a3b8;--border:#e2e8f0;--border-strong:#cbd5e1;--bg:#f2f2f7;--surface:#fff;--surface-hover:#f8fafc;--surface-muted:#f1f5f9;--code-bg:#0f172a;--code-fg:#dbeafe;--radius-sm:6px;--radius:8px;--radius-lg:12px;--radius-pill:999px;--shadow-sm:0 1px 2px rgba(16,24,40,.06);--shadow-md:0 4px 12px rgba(16,24,40,.08);--shadow-modal:0 18px 48px rgba(15,23,42,.2);--text-xs:12px;--text-sm:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:24px;--text-3xl:28px;--leading-tight:1.15;--leading-snug:1.4;--leading-normal:1.6}*{box-sizing:border-box}body,html{background:var(--bg)}body{margin:0;color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,sans-serif;font-size:var(--text-md);line-height:var(--leading-normal);letter-spacing:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}a{color:inherit}button,input,select,textarea{font:inherit;letter-spacing:0}a,button{-webkit-tap-highlight-color:transparent}.mono,code,pre{font-family:ui-monospace,SF Mono,JetBrains Mono,Menlo,Consolas,Liberation Mono,monospace;overflow-wrap:break-word}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}::selection{background:#bfdbfe;color:var(--text)}.badge{display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:2px 9px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:600;line-height:18px;white-space:nowrap}.badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 auto}.badge.active,.badge.available,.badge.healthy,.badge.running,.badge.success{color:var(--success);background:var(--success-subtle)}.badge.primary{color:var(--primary);background:var(--primary-subtle)}.badge.promo{color:var(--promo);background:var(--promo-subtle)}.badge.danger,.badge.error,.badge.failed,.badge.unavailable{color:var(--danger-on-subtle);background:var(--danger-subtle)}.badge.degraded,.badge.pending,.badge.warning{color:var(--warning);background:var(--warning-subtle)}.badge.disabled,.badge.expired,.badge.inactive,.badge.neutral{color:var(--text-weak);background:var(--surface-muted)}.type-tag{display:inline-flex;align-items:center;gap:5px;min-height:22px;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600;line-height:18px;white-space:nowrap}.type-tag.success{color:var(--success);background:var(--success-subtle)}.type-tag.primary{color:var(--primary);background:var(--primary-subtle)}.type-tag.promo{color:var(--promo);background:var(--promo-subtle)}.type-tag.warning{color:var(--warning);background:var(--warning-subtle)}.type-tag.neutral{background:var(--surface-muted)}.button,.type-tag.neutral{color:var(--text-secondary)}.button{height:36px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);font-size:var(--text-sm);font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.button:hover{background:var(--surface-hover);border-color:#94a3b8}.button:active{background:var(--surface-muted)}.button.primary{color:#fff;border-color:var(--primary);background:var(--primary)}.button.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.button.primary:active{background:var(--primary-active);border-color:var(--primary-active)}.button.ghost{border-color:transparent;background:transparent}.button.ghost:hover{background:var(--surface-muted)}.button.danger{color:#fff;border-color:var(--danger);background:var(--danger)}.button.danger:hover{background:#b91c1c;border-color:#b91c1c}.button.small{height:32px;padding:0 11px;font-size:var(--text-xs);border-radius:var(--radius-sm)}.button.large{height:40px;padding:0 18px;font-size:var(--text-md)}.button:disabled{cursor:not-allowed;opacity:.5}.button:disabled:hover{background:var(--surface);border-color:var(--border-strong)}.button.primary:disabled:hover{background:var(--primary);border-color:var(--primary)}.link-button{border:0;background:none;padding:4px 6px;border-radius:var(--radius-sm);color:var(--primary);font-size:var(--text-xs);font-weight:600;cursor:pointer;white-space:nowrap}.link-button:hover{background:var(--primary-subtle)}.link-button.danger{color:var(--danger)}.link-button.danger:hover{background:var(--danger-subtle)}.link-button.muted{color:var(--text-weak)}.link-button.muted:hover{background:var(--surface-muted)}.field,.select,.textarea{width:100%;min-height:40px;padding:9px 12px;border:1px solid var(--border-strong);border-radius:var(--radius);outline:none;color:var(--text);background:var(--surface);font-size:var(--text-md)}.field::placeholder{color:var(--text-faint)}.field:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-subtle)}.field:disabled,.select:disabled,.textarea:disabled{background:var(--surface-muted);color:var(--text-weak);cursor:not-allowed}.textarea{resize:vertical}.label{display:grid;grid-gap:7px;gap:7px;color:var(--text-secondary);font-size:var(--text-sm);font-weight:600}:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-sm)}h1,h2,h3,h4{text-wrap:balance;overflow-wrap:break-word}.list-secondary,.metric-foot,.page-description,p{text-wrap:pretty}.long-text{overflow-wrap:anywhere}.nowrap{white-space:nowrap}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html:lang(ja) body{font-family:Hiragino Sans,Yu Gothic UI,Noto Sans JP,Noto Sans CJK JP,system-ui,sans-serif}html:lang(ko) body{font-family:Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,system-ui,sans-serif}html:lang(ar) body{font-family:Noto Sans Arabic,Geeza Pro,Segoe UI,Tahoma,system-ui,sans-serif}