:root{--bg:#f4f7fb;--card:#fff;--text:#172033;--muted:#667085;--line:#e4e9f1;--blue:#2864dc;--green:#12805c;--red:#c43b4d}*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}h1{margin:.25rem 0;font-size:2rem;letter-spacing:-.04em}.muted{color:var(--muted);margin:.3rem 0}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--blue);margin:0}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(135deg,#2864dc,#6938d3);color:white;font-weight:800;box-shadow:0 8px 20px #2864dc40}.brand-mark.small{width:34px;height:34px;border-radius:10px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 5%,#dce9ff,transparent 35%),radial-gradient(circle at 90% 80%,#e8ddff,transparent 32%),var(--bg)}.login-card{width:min(420px,100%);padding:42px;background:#ffffffee;border:1px solid #fff;border-radius:22px;box-shadow:0 24px 70px #2e426a20}.login-card .brand-mark{margin-bottom:28px}.login-form{display:grid;gap:18px;margin-top:28px}label{display:grid;gap:7px;font-size:.84rem;font-weight:700}input{height:46px;border:1px solid #ccd4e0;border-radius:10px;padding:0 13px;font:inherit;outline:none}input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2864dc1f}.button{border:0;border-radius:9px;padding:10px 15px;font-weight:700;font:inherit;font-size:.86rem;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.button:disabled{opacity:.42;cursor:not-allowed}.primary{background:var(--blue);color:#fff}.wide{width:100%;height:46px}.secondary,.ghost{color:#344054;background:#fff;border:1px solid var(--line)}.topbar{height:70px;padding:0 max(24px,calc((100% - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;font-weight:800}.container{max-width:1180px;margin:0 auto;padding:48px 24px}.heading-row{display:flex;align-items:end;justify-content:space-between;margin-bottom:28px}.table-card{background:var(--card);border:1px solid var(--line);border-radius:15px;overflow:hidden;box-shadow:0 8px 24px #263a5d0a}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;padding:17px 20px;border-bottom:1px solid var(--line);white-space:nowrap}th{font-size:.73rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);background:#fafbfc}td{font-size:.9rem}tbody tr:last-child td{border:0}td small{display:block;color:var(--muted);margin-top:4px}.status{display:inline-flex;align-items:center;gap:7px;text-transform:capitalize;background:#f1f3f6;color:#596273;border-radius:99px;padding:6px 10px;font-weight:700;font-size:.78rem}.status i{width:7px;height:7px;border-radius:50%;background:currentColor}.status.running{background:#e8f7f1;color:var(--green)}.status.stopped{background:#fcecef;color:var(--red)}.status.pending,.status.stopping{background:#fff4dd;color:#a66400}.actions{display:flex;gap:7px}.actions form{margin:0}.start{background:#e8f7f1;color:var(--green)}.stop{background:#fcecef;color:var(--red)}.view{background:#eaf1ff;color:var(--blue)}.alert{padding:12px 14px;border-radius:9px;margin:16px 0;font-size:.88rem}.alert.error{background:#fcecef;color:#a32638}.alert.success{background:#e8f7f1;color:#0d6c4d}.alert.warning{background:#fff4dd;color:#885400}.empty{text-align:center;color:var(--muted);padding:50px}@media(max-width:650px){.login-card{padding:30px 24px}.container{padding:30px 15px}.heading-row{align-items:start;gap:20px}.topbar{padding:0 15px}h1{font-size:1.65rem}}
.link-dialog{width:min(460px,calc(100% - 30px));border:0;border-radius:18px;padding:0;box-shadow:0 28px 90px #17203342;color:var(--text)}
.link-dialog::backdrop{background:#1720338f;backdrop-filter:blur(3px)}
.dialog-heading{display:flex;justify-content:space-between;gap:20px;padding:25px 25px 18px;border-bottom:1px solid var(--line)}
.dialog-heading h2{margin:4px 0;font-size:1.35rem}.dialog-close{flex:0 0 auto;width:34px;height:34px;border:0;border-radius:50%;background:#f1f3f6;color:#596273;font-size:1.4rem;cursor:pointer}
.link-list{display:grid;gap:9px;padding:18px 25px 25px}.link-list a{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border:1px solid var(--line);border-radius:10px;color:var(--text);font-weight:700;text-decoration:none;transition:.15s ease}
.link-list a:hover{border-color:#a9c1f4;background:#f5f8ff;color:var(--blue);transform:translateY(-1px)}
