:root{
  --bg:#080712; --bg2:#17102b; --card:rgba(255,255,255,.08); --card2:rgba(255,255,255,.12);
  --text:#f7f1ff; --muted:#b7aecd; --accent:#ff4fd8; --accent2:#00e5ff; --good:#51ff9a; --bad:#ff5d6c;
  --border:rgba(255,255,255,.16); --shadow:0 24px 80px rgba(0,0,0,.45);
}
*{box-sizing:border-box} body{margin:0;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--text);background:radial-gradient(circle at 20% 10%,#302060 0,#15102b 30%,#080712 70%),linear-gradient(135deg,var(--bg),var(--bg2));}
body:before{content:"";position:fixed;inset:0;background:linear-gradient(120deg,rgba(255,79,216,.16),transparent 36%,rgba(0,229,255,.12));pointer-events:none}
a{color:#bdf7ff;text-decoration:none}a:hover{text-decoration:underline}.wrap{position:relative;max-width:1180px;margin:0 auto;padding:28px}.glass{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);backdrop-filter:blur(18px);border-radius:24px}.topbar{position:relative;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 30px;border-bottom:1px solid var(--border);background:rgba(0,0,0,.18);backdrop-filter:blur(14px)}.topbar h1{margin:0;font-size:clamp(1.5rem,3vw,2.4rem);letter-spacing:-.04em}.topbar p{margin:.25rem 0 0;color:var(--muted)}nav{display:flex;gap:14px;align-items:center}.pill{padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid var(--border)}.pill.good{background:rgba(81,255,154,.15);color:var(--good)}.pill.bad{background:rgba(255,93,108,.15);color:var(--bad)}.hero,.panel{padding:24px;margin-bottom:22px}.hero{display:flex;justify-content:space-between;gap:20px;align-items:center}h2,h3{margin-top:0;letter-spacing:-.02em}.muted{color:var(--muted)}button,.primary{border:1px solid var(--border);border-radius:14px;color:var(--text);background:rgba(255,255,255,.09);padding:10px 14px;font-weight:700;cursor:pointer;transition:.18s transform,.18s background,.18s border}button:hover{transform:translateY(-1px);background:rgba(255,255,255,.16)}button.primary,.primary{background:linear-gradient(135deg,var(--accent),#7b61ff 55%,var(--accent2));border:none;color:white}.hidden{display:none}.stations{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}.station-card{padding:20px}.station-main{display:flex;gap:14px;align-items:center}.station-main h3{margin:0;font-size:1.35rem}.station-meta{display:flex;gap:8px;margin:18px 0}.station-meta span{padding:6px 10px;border-radius:12px;background:rgba(255,255,255,.08);color:var(--muted)}.status-dot{width:15px;height:15px;border-radius:50%;box-shadow:0 0 24px currentColor}.status-dot.on{background:var(--good);color:var(--good)}.status-dot.off{background:var(--bad);color:var(--bad)}.actions{display:flex;flex-wrap:wrap;gap:10px}.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;align-items:end}label{display:flex;flex-direction:column;gap:8px;color:var(--muted);font-weight:700}input,select{width:100%;padding:12px 14px;border-radius:14px;border:1px solid var(--border);background:rgba(0,0,0,.22);color:var(--text);outline:none}input:focus,select:focus{border-color:var(--accent2);box-shadow:0 0 0 3px rgba(0,229,255,.12)}.login-body{display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);padding:34px;text-align:center}.logo-orb{width:82px;height:82px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;font-size:42px;background:linear-gradient(135deg,var(--accent),var(--accent2));box-shadow:0 0 70px rgba(255,79,216,.4)}.stack{display:grid;gap:16px;text-align:left}.alert{padding:12px;border-radius:14px;background:rgba(255,93,108,.18);border:1px solid rgba(255,93,108,.35);margin:18px 0}.station-layout{display:grid;grid-template-columns:minmax(260px,360px) 1fr;gap:22px}.station-layout .files-panel{grid-column:1/-1}.drop-zone{position:relative;border:2px dashed rgba(255,255,255,.26);border-radius:22px;min-height:190px;display:grid;place-items:center;text-align:center;padding:24px;background:rgba(0,0,0,.16);cursor:pointer}.drop-zone.drag{border-color:var(--accent2);background:rgba(0,229,255,.12)}.drop-zone input{position:absolute;inset:0;opacity:0;cursor:pointer}.drop-icon{font-size:44px;color:var(--accent2)}.files-head{display:flex;justify-content:space-between;gap:18px;align-items:center}.trash{border:1px solid rgba(255,93,108,.4);background:rgba(255,93,108,.13);color:#ffd5da;border-radius:16px;padding:12px 16px;transition:.18s}.trash.hot{transform:scale(1.04);background:rgba(255,93,108,.28)}.file-list{display:grid;gap:10px}.file-row{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1)}.file-row.dragging{opacity:.42}.file-row em{color:var(--muted);font-style:normal}.delete-file{color:#ffd5da}.output{white-space:pre-wrap;min-height:80px;max-height:220px;overflow:auto;border-radius:16px;background:rgba(0,0,0,.28);border:1px solid var(--border);padding:14px;color:#d9faff}.empty{padding:22px;color:var(--muted);text-align:center}@media(max-width:760px){.topbar,.hero{flex-direction:column;align-items:flex-start}.station-layout{grid-template-columns:1fr}.file-row{grid-template-columns:1fr}.files-head{flex-direction:column;align-items:stretch}}
