@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@500;700;800&family=IBM+Plex+Mono:wght@400;600&display=swap";
:root{--ink:#eef4ff;--muted:#90a0bb;--line:#ffffff21;--panel:#0b111fc7;--accent:#84f7d4;--accent-2:#ffcf5a;--danger:#ff6b8b;--bg:#070a12}*{box-sizing:border-box}html{background:var(--bg)}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 12% 8%,#84f7d42e,#0000 28rem),radial-gradient(circle at 78% 2%,#ffcf5a29,#0000 24rem),linear-gradient(135deg,#070a12,#0c1020 45%,#071321);margin:0;font-family:Bricolage Grotesque,ui-sans-serif,sans-serif}body:before{pointer-events:none;content:"";opacity:.34;background-image:linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:42px 42px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 78%);mask-image:radial-gradient(circle,#000,#0000 78%)}button,input,select,textarea{font:inherit}button{cursor:pointer}.login-shell{place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border:1px solid var(--line);background:linear-gradient(150deg,#0f192ceb,#060a13d1);border-radius:38px;width:min(720px,100%);padding:clamp(28px,8vw,76px);position:relative;overflow:hidden;box-shadow:0 30px 90px #0000007a,inset 0 1px #ffffff14}.orb{filter:blur(4px);opacity:.65;border-radius:999px;position:absolute}.orb-a{background:#84f7d433;width:190px;height:190px;top:-52px;right:-54px}.orb-b{background:#ffcf5a2e;width:140px;height:140px;bottom:-40px;left:-36px}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;font-family:IBM Plex Mono,monospace;font-size:12px}.login-card h1,.topbar h1{letter-spacing:-.055em;margin:0;line-height:.95}.login-card h1{max-width:650px;font-size:clamp(44px,8vw,86px)}.login-copy{max-width:560px;color:var(--muted);font-size:18px;line-height:1.6}.github-button,.primary-action{color:#06100d;background:linear-gradient(135deg,var(--accent),#d8fff3);border:0;border-radius:18px;justify-content:center;align-items:center;gap:12px;padding:15px 20px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 18px 44px #84f7d438}.login-error,.error-panel{color:#ffd4dd;background:#ff6b8b1c;border:1px solid #ff6b8b59;border-radius:18px;margin:18px 0;padding:14px 16px}.login-footnote{color:var(--muted);flex-wrap:wrap;gap:10px;margin-top:24px;font-family:IBM Plex Mono,monospace;font-size:12px;display:flex}.login-footnote span{border:1px solid var(--line);border-radius:999px;padding:7px 10px}.dashboard-shell{width:min(1620px,100%);margin:0 auto;padding:clamp(18px,3vw,42px)}.topbar{justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;display:flex}.topbar h1{font-size:clamp(38px,6vw,78px)}.user-pill{border:1px solid var(--line);background:#ffffff0f;border-radius:999px;align-items:center;gap:12px;padding:8px 10px;display:flex}.user-pill img{border-radius:50%;width:34px;height:34px}.user-pill button,.actions-row button,.result-head button{border:1px solid var(--line);color:var(--ink);background:#ffffff12;border-radius:12px;padding:9px 12px}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px;display:grid}.metrics-grid article,.schema-panel,.query-panel,.result-set,.mutation-card,.empty-state{border:1px solid var(--line);background:var(--panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:26px;box-shadow:inset 0 1px #ffffff14}.metrics-grid article{padding:20px}.metrics-grid span,.metrics-grid small,label,.danger-copy{color:var(--muted)}.metrics-grid strong{margin:6px 0;font-size:34px;display:block}.workbench{grid-template-columns:380px 1fr;align-items:start;gap:16px;display:grid}.schema-panel,.query-panel{padding:18px}label{text-transform:uppercase;letter-spacing:.12em;margin:14px 0 8px;font-family:IBM Plex Mono,monospace;font-size:12px;display:block}select,input,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#03070fb8;border-radius:16px;outline:none}select,input{padding:13px 14px}textarea{resize:vertical;min-height:310px;padding:18px;font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.7}.table-list{gap:10px;max-height:62vh;margin-top:16px;padding-right:3px;display:grid;overflow:auto}.table-card{width:100%;color:var(--ink);text-align:left;background:#ffffff0b;border:1px solid #ffffff1a;border-radius:18px;padding:14px;transition:transform .18s,border-color .18s,background .18s;display:block}.table-card:hover{background:#84f7d414;border-color:#84f7d480;transform:translateY(-2px)}.table-card span{word-break:break-word;font-weight:800;display:block}.table-card small{color:var(--muted)}.query-toolbar{justify-content:space-between;gap:18px;margin-bottom:14px;display:flex}.toggle{align-items:center;gap:10px;font-weight:800;display:inline-flex}.toggle input{width:20px;height:20px;accent-color:var(--accent-2)}.rows-input{gap:6px;width:130px;display:grid}.actions-row{gap:10px;margin-top:12px;display:flex}.actions-row button{min-height:48px}.primary-action:disabled{opacity:.55}.results-panel{gap:14px;margin-top:16px;display:grid}.empty-state,.mutation-card{color:var(--muted);padding:22px}.mutation-card{color:var(--accent);font-family:IBM Plex Mono,monospace}.result-set{overflow:hidden}.result-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.result-head span{color:var(--muted);margin-top:4px;display:block}.table-scroll{max-height:520px;overflow:auto}table{border-collapse:collapse;width:100%;font-family:IBM Plex Mono,monospace;font-size:12px}th,td{text-align:left;white-space:nowrap;border-bottom:1px solid #ffffff14;padding:11px 12px}th{z-index:1;color:var(--accent);background:#0e1628f0;position:sticky;top:0}td{color:#d7e2f7}.skeleton{color:var(--muted);background:#ffffff0d;border-radius:18px;padding:18px}@media (max-width:980px){.topbar{flex-direction:column;align-items:flex-start}.metrics-grid{grid-template-columns:repeat(2,1fr)}.workbench{grid-template-columns:1fr}.table-list{max-height:320px}}@media (max-width:620px){.dashboard-shell{padding:14px}.metrics-grid{grid-template-columns:1fr}.query-toolbar,.result-head,.actions-row{flex-direction:column;align-items:stretch}.rows-input{width:100%}.user-pill{justify-content:space-between;width:100%}.login-card{border-radius:26px}}
