:root{--paper: #ffffff;--surface: #fafaf7;--ink: #141414;--muted: #6b6b66;--hairline: #e8e5de;--indigo-50: #f3f2fb;--indigo-100: #e4e2f5;--indigo-200: #c7c2eb;--indigo-500: #4f47c7;--indigo-600: #3e37a8;--indigo-700: #2e2884;--brand: var(--indigo-500);--brand-hover: var(--indigo-600);font-family:Geist,system-ui,-apple-system,Helvetica Neue,sans-serif;color:var(--ink);background:var(--surface)}*{box-sizing:border-box}body{margin:0;background:var(--surface);color:var(--ink);font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}.brand{display:inline-flex;align-items:center;gap:8px;color:var(--ink);text-decoration:none;font-size:20px;line-height:1;font-weight:700;letter-spacing:-.015em}.brand img{display:block;width:32px;height:32px;filter:drop-shadow(0 1px 1px rgba(20,20,20,.2)) drop-shadow(0 3px 5px rgba(20,20,20,.14)) drop-shadow(0 7px 12px rgba(79,71,199,.28))}.btn,.btn-ghost{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;font:inherit;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer}.btn{gap:10px;min-height:46px;padding:12px 18px;border:1px solid transparent;border-radius:10px;background:var(--brand);color:#fff;transition:background .14s ease}.btn:hover{background:var(--brand-hover)}.btn-ghost{gap:8px;min-height:40px;padding:9px 18px;border:1px solid var(--indigo-200);background:transparent;color:var(--indigo-700)}.btn-ghost:hover{border-color:var(--indigo-500);background:var(--indigo-50)}.eyebrow{margin:0 0 32px;color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.lede{max-width:48ch;margin:24px 0 0;color:var(--muted);font-size:18px;line-height:1.33}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{min-height:100vh;display:grid;grid-template-rows:auto 1fr;padding:32px;background:var(--surface)}.auth-brand{width:fit-content}.auth-panel{align-self:center;width:min(100%,440px);margin:0 auto;padding:40px;border:1px solid var(--hairline);border-radius:12px;background:var(--paper);box-shadow:0 2px 6px #1414140a,0 18px 48px #14141414}.auth-panel h1{margin:0;font-size:34px;line-height:1.08;letter-spacing:-.02em;font-weight:500}.auth-form{display:grid;gap:12px;margin-top:32px}.auth-form label{color:var(--muted);font-size:13px;font-weight:500}.auth-form input{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--hairline);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit;font-size:15px}.auth-form input:focus{outline:2px solid var(--indigo-100);border-color:var(--indigo-500)}.auth-form .btn{width:100%;margin-top:8px}.auth-form .btn:disabled{cursor:wait;opacity:.72}.form-message{margin:18px 0 0;color:var(--muted);font-size:14px}.form-message.is-error{color:#a33a2f}.app-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.app-shell{min-height:100vh;background:var(--surface)}.app-topbar{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 32px;border-bottom:1px solid var(--hairline);background:var(--paper)}.app-main{width:min(100% - 48px,760px);margin:0 auto;padding:80px 0}.app-main h1{margin:0;font-size:42px;line-height:1.08;letter-spacing:-.024em;font-weight:500}@media (max-width: 640px){.auth-page{padding:24px}.auth-panel{padding:32px 28px}.auth-panel h1{font-size:28px}.app-topbar{height:68px;padding:0 20px}.app-main{width:min(100% - 40px,760px);padding:56px 0}.app-main h1{font-size:32px}.brand{gap:7px;font-size:17px;letter-spacing:-.01em}.brand img{width:27px;height:27px}}
