:root{--bg:#0b1020;--bg-soft:#11182e;--surface:#fff;--surface-2:#f6f8fc;--line:#e4e8f0;--line-strong:#d2d8e4;--text:#1a2032;--muted:#6b7488;--brand:#4f46e5;--brand-2:#6366f1;--brand-weak:#eef0fe;--ok:#0e9f6e;--warn:#b7791f;--danger:#e02424;--radius:14px;--radius-sm:10px;--shadow:0 1px 2px #1018280f, 0 8px 24px #1018280f;--shadow-pop:0 12px 32px #10182829;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:radial-gradient(1200px 600px at 100% -10%, #eef1ff 0%, transparent 60%), radial-gradient(1000px 500px at -10% 0%, #eafaf4 0%, transparent 55%), var(--surface-2);min-height:100vh;color:var(--text);-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.45}h1,h2,h3,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}.btn{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:40px;color:var(--text);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:0 16px;font-weight:600;transition:background .15s,border-color .15s,transform 50ms;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:linear-gradient(180deg, var(--brand-2), var(--brand));color:#fff;border-color:#0000;box-shadow:0 1px 2px #4f46e559}.btn-primary:hover{filter:brightness(1.05);background:linear-gradient(180deg, var(--brand-2), var(--brand))}.btn-block{width:100%}.btn-sm{min-height:32px;padding:0 12px;font-size:13px}.btn-row{flex-wrap:wrap;gap:8px;display:flex}.icon-btn{border:1px solid var(--line);background:var(--surface);width:38px;height:38px;color:var(--text);cursor:pointer;border-radius:10px;place-items:center;font-size:16px;transition:background .15s;display:inline-grid}.icon-btn:hover{background:var(--surface-2)}.field{gap:6px;display:grid}.field>span{color:var(--muted);font-size:12.5px;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface);outline:none;width:100%;min-height:42px;padding:0 12px;transition:border-color .15s,box-shadow .15s}.field textarea{resize:vertical;min-height:92px;padding:10px 12px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #4f46e524}.field-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.form{gap:12px;display:grid}.alert{border-radius:var(--radius-sm);padding:8px 12px;font-size:13px}.alert-error{color:var(--danger);background:#fdecec}.alert-ok{color:var(--ok);background:#e7f7f0}.login-screen{place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{background:var(--surface);border:1px solid var(--line);width:min(400px,100%);box-shadow:var(--shadow);border-radius:18px;gap:14px;padding:26px;display:grid}.login-brand{align-items:center;gap:12px;margin-bottom:4px;display:flex}.login-brand strong{font-size:17px;display:block}.login-brand small{color:var(--muted)}.login-status{color:var(--muted);justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.brand-dot{background:linear-gradient(135deg, var(--brand-2), #22d3ee);width:14px;height:14px;box-shadow:0 0 0 4px var(--brand-weak);border-radius:50%;flex:none}.appbar{z-index:30;-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--line);background:#fffc;align-items:center;gap:16px;padding:10px 18px;display:flex;position:sticky;top:0}.appbar-left{align-items:center;gap:12px;display:flex}.brand{align-items:center;gap:10px;display:flex}.brand-text strong{font-size:14.5px;line-height:1.1;display:block}.brand-text small{color:var(--muted);font-size:11.5px}.mode-badge{letter-spacing:.02em;border-radius:999px;padding:3px 9px;font-size:11.5px;font-weight:700}.mode-a{background:var(--brand-weak);color:var(--brand)}.mode-b{color:var(--ok);background:#e7f7f0}.appbar-nav{background:var(--surface-2);border:1px solid var(--line);border-radius:999px;gap:4px;margin:0 auto;padding:4px;display:flex}.nav-item{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-weight:600;transition:background .15s,color .15s;display:inline-flex;position:relative}.nav-item:hover{color:var(--text)}.nav-item.active{background:var(--surface);color:var(--brand);box-shadow:var(--shadow)}.nav-badge{background:var(--brand);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;display:inline-grid}.appbar-right{align-items:center;gap:8px;display:flex}.status-chip{border-radius:50%;place-items:center;width:30px;height:30px;display:inline-grid}.menu{position:relative}.menu-pop{z-index:40;background:var(--surface);border:1px solid var(--line);min-width:180px;box-shadow:var(--shadow-pop);border-radius:12px;gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.menu-pop button{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;font-weight:600;display:flex}.menu-pop button:hover{background:var(--surface-2)}.menu-pop button.danger{color:var(--danger)}.menu-sep{background:var(--line);height:1px;margin:4px 2px}.menu-backdrop{z-index:25;position:fixed;inset:0}.content{width:min(1240px,100%);margin:0 auto;padding:22px 18px 96px}.view{gap:18px;display:grid}.toolbar{gap:8px;display:flex}.stat-row{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.stat{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);gap:6px;padding:14px 16px;display:grid}.stat span{color:var(--muted);font-size:12px}.stat strong{font-size:22px;line-height:1}.grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);gap:12px;padding:18px;display:grid}.card-wide{grid-column:1/-1}.card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.card-head h2{font-size:14.5px;font-weight:700}.pill{background:var(--brand-weak);min-width:26px;height:24px;color:var(--brand);border-radius:999px;place-items:center;padding:0 8px;font-size:12px;font-weight:700;display:inline-grid}.pill.danger{color:var(--danger);background:#fdecec}.empty{color:var(--muted);padding:6px 0;font-size:13px}.muted{color:var(--muted)}.sm{font-size:12.5px}.rows{gap:6px;margin:0;padding:0;list-style:none;display:grid}.rows li{border-radius:var(--radius-sm);background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;display:flex}.rows strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.row-main{gap:2px;min-width:0;display:grid}.badge{font-size:12.5px;font-weight:700}.mini-stats{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.mini-stats>div{border-radius:var(--radius-sm);background:var(--surface-2);gap:4px;padding:10px;display:grid}.mini-stats span{color:var(--muted);font-size:11.5px}.mini-stats strong{font-size:18px;line-height:1}.mini-stats strong.sm{font-size:13px}.tasks{gap:10px;margin:0;padding:0;list-style:none;display:grid}.task{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);gap:10px;padding:12px;display:grid}.task-info{gap:2px;display:grid}.task-info span{color:var(--muted);font-size:12.5px}.task-info .warn{color:var(--warn);font-size:12px;font-weight:600}.task-actions{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.task-actions button{border:1px solid var(--line-strong);background:var(--surface);min-height:34px;color:var(--text);cursor:pointer;border-radius:8px;font-size:13px;font-weight:600;transition:background .15s}.task-actions button:hover{background:var(--brand-weak)}.task-actions button.ok{background:var(--ok);color:#fff;border-color:#0000}.dot{background:var(--muted);border-radius:50%;width:9px;height:9px;display:inline-block}.dot-ok{background:var(--ok)}.dot-degraded,.dot-unknown,.dot-checking{background:var(--warn)}.dot-down{background:var(--danger)}.txt-ok{color:var(--ok)}.txt-degraded,.txt-unknown,.txt-checking{color:var(--warn)}.txt-down{color:var(--danger)}.mobile-nav{z-index:30;padding:6px 8px calc(6px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--line);background:#ffffffeb;gap:2px;display:none;position:fixed;bottom:0;left:0;right:0}.m-item{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:8px 4px;font-size:12px;font-weight:600}.m-item.active{background:var(--brand-weak);color:var(--brand)}.rows li{gap:8px}.row-btns{flex:none;gap:4px;display:flex}.ibtn{border:1px solid var(--line-strong);background:var(--surface);cursor:pointer;border-radius:8px;place-items:center;width:32px;height:32px;font-size:14px;transition:background .15s;display:inline-grid}.ibtn:hover{background:var(--brand-weak)}.ibtn.danger:hover{background:#fdecec}.ibtn:disabled{opacity:.5;cursor:not-allowed}.quick-card{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand-weak), var(--shadow)}.quick-grid{grid-template-columns:1fr 1.4fr;gap:16px;display:grid}.pick-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.pick-tools{align-items:center;gap:6px;display:flex}.mini-select{border:1px solid var(--line-strong);background:var(--surface);border-radius:8px;font-size:12.5px;min-height:30px!important;padding:0 8px!important}.pick-list{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);gap:2px;max-height:240px;padding:6px;display:grid;overflow-y:auto}.pick{cursor:pointer;border-radius:7px;align-items:center;gap:8px;padding:7px 8px;display:flex}.pick:hover{background:var(--surface)}.pick input{width:17px;height:17px;accent-color:var(--brand)}.pick.off{opacity:.5}.run-wrap{gap:14px;width:min(620px,100%);margin:0 auto;display:grid}.run-progress{gap:6px;display:grid}.run-progress span{color:var(--muted);font-size:13px;font-weight:700}.run-bar{background:var(--line);border-radius:999px;height:8px;overflow:hidden}.run-bar>div{background:linear-gradient(90deg, var(--brand-2), var(--brand));height:100%;transition:width .25s}.run-card{gap:16px;padding:22px}.run-card .card-head h2{font-size:18px}.run-post{border-radius:var(--radius-sm);background:var(--surface-2);gap:8px;padding:14px;display:grid}.run-text{white-space:pre-wrap;word-break:break-word;color:var(--text);margin:0;font-family:inherit;font-size:14.5px;line-height:1.5}.run-media{color:var(--brand);font-weight:600;text-decoration:none}.run-image{gap:8px;display:grid}.run-image img{object-fit:contain;border-radius:var(--radius-sm);border:1px solid var(--line);background:#fff;width:100%;max-height:280px}.run-image-btns{flex-wrap:wrap;gap:8px;display:flex}.run-steps,.run-final{grid-template-columns:1fr 1fr;gap:10px;display:grid}.btn-lg{min-height:52px;font-size:15px}.btn.stepdone{border-color:var(--ok);color:var(--ok);background:#e7f7f0}.btn.btn-primary.stepdone{background:#e7f7f0}.btn.ok{background:var(--ok);color:#fff;border-color:#0000}.run-hint{text-align:center;color:var(--muted);font-size:13.5px}.run-nav{justify-content:space-between;display:flex}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#10182873;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.modal{background:var(--surface);width:min(520px,100%);max-height:90vh;box-shadow:var(--shadow-pop);border-radius:16px;padding:20px;overflow-y:auto}.modal-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.modal-head h2{font-size:16px}@media (width<=920px){.appbar-nav{display:none}.stat-row{grid-template-columns:repeat(2,1fr)}.mobile-nav{display:flex}}@media (width<=560px){.field-2,.mini-stats{grid-template-columns:1fr 1fr}.brand-text{display:none}}@media (width<=760px){.quick-grid{grid-template-columns:1fr}}
