@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Inter:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap");:root{--bg:#12141a;--surface:#1b1e27;--surface-2:#21242f;--border:hsla(0,0%,100%,.08);--text:#edeef2;--text-muted:#8b8fa3;--accent-lume:#e8b75d;--accent-lume-soft:rgba(232,183,93,.16);--accent-teal:#5fd4c4;--radius:14px}*{box-sizing:border-box}body,html{padding:0;margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent-lume);outline-offset:2px}.wordmark{font-family:Fraunces,serif;font-weight:500;letter-spacing:-.01em}.eyebrow{font-family:IBM Plex Mono,monospace;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.login-shell{min-height:100dvh;display:grid;place-items:center;position:relative;overflow:hidden;padding:24px}.login-glow{position:absolute;width:640px;height:640px;border-radius:50%;background:radial-gradient(circle,var(--accent-lume-soft) 0,transparent 70%);top:50%;left:50%;transform:translate(-50%,-55%);filter:blur(10px);pointer-events:none;animation:lume-breathe 6s ease-in-out infinite}@keyframes lume-breathe{0%,to{opacity:.7;transform:translate(-50%,-55%) scale(1)}50%{opacity:1;transform:translate(-50%,-55%) scale(1.06)}}@media (prefers-reduced-motion:reduce){.login-glow{animation:none}}.login-card{position:relative;width:100%;max-width:380px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:40px 32px 32px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.35)}.login-mark{font-size:28px;margin:0 0 4px}.login-mark span{color:var(--accent-lume)}.login-sub{color:var(--text-muted);font-size:14px;margin:0 0 28px}.gsi-container{display:flex;justify-content:center;min-height:44px}.login-error{margin-top:16px;font-size:13px;color:#e08a8a;background:hsla(0,58%,71%,.1);border:1px solid hsla(0,58%,71%,.25);border-radius:8px;padding:10px 12px}.login-footnote{margin-top:24px;font-size:12px;color:var(--text-muted)}.dash-shell{min-height:100dvh;max-width:1040px;margin:0 auto;padding:40px 24px 80px}.dash-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:40px;padding-bottom:24px;border-bottom:1px solid var(--border)}.dash-title{font-size:26px;margin:6px 0}.dash-greeting{color:var(--text-muted);font-size:14px;margin:0}.dash-user{display:flex;align-items:center;gap:12px}.avatar-wrap{position:relative}.avatar-glow{position:absolute;inset:-6px;border-radius:50%;background:radial-gradient(circle,var(--accent-lume-soft) 0,transparent 72%)}.avatar{position:relative;width:36px;height:36px;border-radius:50%;display:block}.avatar,.logout-btn{border:1px solid var(--border)}.logout-btn{background:transparent;color:var(--text-muted);border-radius:8px;padding:8px 14px;font-size:13px;cursor:pointer;transition:border-color .15s ease,color .15s ease}.logout-btn:hover{border-color:var(--text-muted);color:var(--text)}.tile-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:18px;gap:18px}@media (max-width:640px){.tile-grid{grid-template-columns:1fr}.dash-header{flex-direction:column}}.tile{position:relative;display:block;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;overflow:hidden;transition:transform .18s ease,border-color .18s ease}.tile:before{content:"";position:absolute;inset:-40%;background:radial-gradient(circle at 30% 20%,var(--accent-lume-soft) 0,transparent 60%);opacity:0;transition:opacity .25s ease;pointer-events:none}.tile:hover{transform:translateY(-2px);border-color:rgba(232,183,93,.35)}.tile:hover:before{opacity:1}.tile-status{display:inline-flex;align-items:center;gap:6px;font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-teal);margin-bottom:14px}.tile-status .dot{width:6px;height:6px;border-radius:50%;background:var(--accent-teal)}.tile-status.dot--muted,.tile-status.dot--muted .dot{color:var(--text-muted)}.tile-status.dot--muted .dot{background:var(--text-muted)}.tile-title{font-family:Fraunces,serif;font-weight:500;font-size:19px;margin:0 0 8px;position:relative}.tile-desc{font-size:13.5px;color:var(--text-muted);margin:0;line-height:1.5;position:relative}