:root{--bg: #0b0f14;--bg-elevated: #121821;--bg-panel: #141b25;--border: #23303f;--text: #e8eef6;--text-muted: #93a4b8;--accent: #4da3ff;--ok: #35c48a;--warn: #e2b33c;--fail: #f2645a;--radius: 12px;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.layout{display:grid;grid-template-columns:268px 1fr;min-height:100%}.sidebar{display:flex;flex-direction:column;gap:18px;padding:20px 16px;background:var(--bg-elevated);border-right:1px solid var(--border)}.sidebar__brand{display:flex;gap:12px;align-items:center}.sidebar__logo{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#2f6fd0,#4da3ff);font-weight:700;letter-spacing:.5px}.sidebar__title{font-weight:650;font-size:15px}.sidebar__subtitle{color:var(--text-muted);font-size:11.5px}.sidebar__nav{display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sidebar__item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}.sidebar__item:hover:not(:disabled){background:#1a2431}.sidebar__item--active{background:#1b2a3d;border-color:#2c4a6e;color:#fff}.sidebar__item:disabled{color:#5f7186;cursor:not-allowed}.sidebar__badge{font-size:10.5px;color:#7d8fa5;border:1px solid #2a3a4d;border-radius:999px;padding:1px 6px}.sidebar__footer{margin-top:auto;color:#6d8098;font-size:11.5px}.content{padding:26px 30px 60px;overflow-x:hidden}.page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.page h1{margin:0 0 6px;font-size:24px}.page__lead{margin:0;max-width:720px;color:var(--text-muted)}.panel{margin-top:24px;padding:18px 20px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius)}.panel h2{margin:0 0 12px;font-size:16px}.panel__note{margin:0 0 14px;color:var(--text-muted)}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.card{padding:16px 18px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius)}.card__label{color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.4px}.card__value{display:flex;align-items:center;gap:8px;margin:6px 0;font-size:19px;font-weight:600}.card__hint{color:var(--text-muted);font-size:12px}.badge{padding:1px 8px;border-radius:999px;font-size:11px;font-weight:600;text-transform:lowercase;border:1px solid transparent}.badge--ok{color:var(--ok);border-color:#35c48a66;background:#35c48a1a}.badge--degraded{color:var(--warn);border-color:#e2b33c66;background:#e2b33c1a}.badge--fail{color:var(--fail);border-color:#f2645a66;background:#f2645a1a}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:9px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.table th{color:var(--text-muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.alert{margin-top:14px;padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:#101823}.alert--error{border-color:#f2645a73;background:#f2645a14}.alert--info{border-color:#4da3ff59;background:#4da3ff12}.alert--ok{border-color:#35c48a66;background:#35c48a14}.alert__note{margin:8px 0 0;color:var(--text-muted);font-size:12px}.env-list{margin:8px 0 0;padding-left:18px}.button{padding:9px 16px;border-radius:9px;border:1px solid #2c4a6e;background:#1b2a3d;color:var(--text);font:inherit;font-weight:550;cursor:pointer}.button:hover:not(:disabled){background:#22354c}.button:disabled{opacity:.6;cursor:progress}.input{flex:1;min-width:240px;padding:9px 12px;border-radius:9px;border:1px solid var(--border);background:#0d1319;color:var(--text);font:inherit}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.mono{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px}.pre{margin:10px 0 0;padding:10px;max-height:240px;overflow:auto;border-radius:8px;background:#0b1118;border:1px solid var(--border);font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px}@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border)}.content{padding:18px 16px 40px}}.auth{display:grid;place-items:center;min-height:100%;padding:40px 20px}.auth__card{width:100%;max-width:460px;padding:26px 28px;background:var(--bg-panel);border:1px solid var(--border);border-radius:16px}.auth__card--narrow{max-width:340px;text-align:center}.auth__brand{display:flex;gap:12px;align-items:center;margin-bottom:22px}.auth__title{margin:0 0 8px;font-size:21px}.auth__lead{margin:0 0 16px;color:var(--text-muted)}.auth__footer{margin:16px 0 0}.page__actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.who{display:flex;flex-direction:column;align-items:flex-end;margin-right:4px;line-height:1.25}.who__email{font-weight:550}.who__role{color:var(--text-muted);font-size:12px}.panel__head{display:flex;gap:16px;align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.panel__lead-muted{margin:0 0 14px;color:var(--text-muted)}.form-grid{display:grid;gap:12px;margin-bottom:12px}.form-grid--two{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.form-grid--three{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.field{display:flex;flex-direction:column;gap:5px}.field--inline{flex-direction:row;align-items:center;gap:10px}.field--inline .field__label{white-space:nowrap}.field__label{color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.3px}.field__hint{margin:0;color:var(--text-muted);font-size:12px}.field .input,.form-grid .input{width:100%;min-width:0;flex:none}.input--area{resize:vertical;font-family:inherit}.fieldset{margin:6px 0 16px;padding:12px 14px;border:1px solid var(--border);border-radius:10px}.fieldset legend{padding:0 6px}.checks{display:flex;flex-wrap:wrap;gap:8px 22px}.check{display:flex;gap:8px;align-items:center;cursor:pointer}.check--inline{align-self:flex-end;padding-bottom:8px}.button{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.button--primary{border-color:#2f6fd0;background:linear-gradient(180deg,#2f7ae0,#2560bf);color:#fff}.button--primary:hover:not(:disabled){background:linear-gradient(180deg,#3d89ee,#2b6cd4)}.button--danger{border-color:#f2645a8c;background:#f2645a1f;color:#ffb4ae}.button--danger:hover:not(:disabled){background:#f2645a38}.button--ghost{background:none}.button--link{border:none;background:none;padding:0;color:var(--accent);font-weight:500}.button--link:hover:not(:disabled){background:none;text-decoration:underline}.button--small{padding:5px 10px;font-size:12.5px}.button--block{width:100%;margin-top:8px}.row--end{justify-content:flex-end}.row--tight{gap:6px}.tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:4px;border-bottom:1px solid var(--border)}.tabs__item{display:flex;gap:7px;align-items:center;padding:9px 14px;border:none;border-bottom:2px solid transparent;background:none;color:var(--text-muted);font:inherit;cursor:pointer}.tabs__item:hover{color:var(--text)}.tabs__item--active{color:var(--text);border-bottom-color:var(--accent)}.tabs__badge{padding:0 6px;border-radius:999px;background:#1b2a3d;color:var(--text-muted);font-size:11px}.cards--tight{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:12px 0}.card--project{display:flex;flex-direction:column}.card__head{display:flex;gap:10px;align-items:center;justify-content:space-between}.card__title{font-size:16px;font-weight:650}.card__text{margin:8px 0 12px;color:var(--text-muted)}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:0 0 14px}.facts dt{color:var(--text-muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.3px}.facts dd{margin:2px 0 0;overflow-wrap:anywhere}.panel--flow{border-color:#2f6fd0;box-shadow:0 0 0 1px #4da3ff26}.steps{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:16px 0 10px}.steps__code{display:flex;flex-direction:column;gap:6px}.steps__label{color:var(--text-muted);font-size:12px;text-transform:uppercase;letter-spacing:.4px}.code-badge{padding:10px 18px;border:1px dashed #2f6fd0;border-radius:10px;background:#0f1a28;font-family:JetBrains Mono,ui-monospace,monospace;font-size:24px;font-weight:700;letter-spacing:.16em}.steps__action{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.steps__list{margin:10px 0 16px;padding-left:20px;color:var(--text-muted)}.steps__list li{margin-bottom:4px}.table-wrap{overflow-x:auto}.cell-error{margin-top:4px;color:#ff9d95;font-size:12px}.muted{color:var(--text-muted)}.link{color:var(--accent)}.list{margin:8px 0 0;padding-left:18px}.details{margin-top:14px;color:var(--text-muted)}.details summary{cursor:pointer}.badge--muted{color:var(--text-muted);border-color:#2a3a4d;background:#93a4b814}.filters{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;margin-bottom:10px}.filters .input{min-width:180px}.checklist{display:grid;gap:6px;margin:14px 0 0;padding:0;list-style:none}.checklist__item{display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;padding:7px 10px;border:1px solid var(--border);border-radius:9px;background:#101823}.checklist__item--off{color:var(--text-muted)}.checklist__mark{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:12px;font-weight:700}.checklist__mark--ok{color:var(--ok);background:#35c48a24}.checklist__mark--off{color:var(--text-muted);background:#93a4b81f}.issues{margin-top:14px}.issues__title{margin:0 0 8px;font-size:14px;display:flex;gap:8px;align-items:center}.issues__list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.issues__item{padding:10px 12px;border:1px solid var(--border);border-radius:9px;background:#101823}.issues__message{font-weight:550}.issues__meta{margin:5px 0 0;color:var(--text-muted)}.sidebar__user{display:flex;flex-direction:column;align-items:stretch}.sidebar__user-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:12.5px}.sidebar__user-meta{color:#6d8098;font-size:11.5px}
