:root{--bone: #FBFBFA;--bone-warm: #F4F2EC;--paper: #FFFFFE;--ink: #14161A;--ink-2: #2D2F36;--ink-3: #5C5E66;--ink-4: #8B8E96;--hairline: rgba(20,22,26,.08);--hairline-strong: rgba(20,22,26,.14);--depth-1: rgba(20,22,26,.04);--depth-2: rgba(20,22,26,.07);--depth-3: rgba(20,22,26,.1);--accent-500: #C6A35E;--accent-600: #A98748;--ok: #1E7A4D;--warn: #B6852A;--err: #B43A3A;--info: #2A5B8C;--font-display: "Atkinson Hyperlegible", system-ui, sans-serif;--font-app: "Fira Sans", system-ui, sans-serif;--font-mono: "Fira Code", ui-monospace, monospace;--tracking-mono: .14em;--tracking-eyebrow: .18em}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bone);color:var(--ink);font-family:var(--font-app);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.04 0'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E"),radial-gradient(ellipse at 78% -10%,rgba(255,213,74,.08) 0%,transparent 50%),radial-gradient(ellipse at 5% 110%,rgba(3,105,161,.05) 0%,transparent 55%);background-attachment:fixed,fixed,fixed}a{color:var(--ink)}a:hover{text-decoration:underline;text-underline-offset:3px}::selection{background:var(--accent-500);color:var(--paper)}.strip{position:relative;border-bottom:1px solid var(--hairline);padding:14px 0}.strip:after{content:"";position:absolute;left:0;bottom:-1px;width:96px;height:2px;background:var(--accent-500)}.strip-inner{max-width:1240px;margin:0 auto;padding:0 40px;display:flex;align-items:center;gap:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--ink-3)}.strip-inner .flag-co{width:16px;height:11px;background:linear-gradient(to bottom,#fcd116 0 50%,#003893 50% 75%,#ce1126 75% 100%);border-radius:1px}.strip-inner .spacer{flex:1}.top{padding:22px 0 18px;border-bottom:1px solid var(--hairline)}.top-inner{max-width:1240px;margin:0 auto;padding:0 40px;display:flex;align-items:center;gap:24px}.brand{font-family:var(--font-display);font-weight:700;font-size:22px;letter-spacing:-.01em}.brand .dot{display:inline-block;width:6px;height:6px;background:var(--accent-500);border-radius:50%;vertical-align:middle;margin:0 8px 4px}.brand .sub{font-family:var(--font-mono);font-weight:500;font-size:11px;letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--ink-3);margin-left:10px}.top-spacer{flex:1}.nav{display:flex;gap:22px;margin-left:24px}.nav a{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--ink-3);text-decoration:none;padding:6px 0;border-bottom:2px solid transparent;transition:color .15s ease,border-color .15s ease}.nav a:hover{color:var(--ink)}.nav a.active{color:var(--ink);border-bottom-color:var(--accent-500)}.who{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--ink-3)}.who b{color:var(--ink)}.logout-btn{margin-left:18px;background:transparent;border:1px solid var(--hairline-strong);color:var(--ink-2);font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-mono);text-transform:uppercase;padding:7px 14px;cursor:pointer;transition:all .15s ease}.logout-btn:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.page{max-width:1240px;margin:0 auto;padding:56px 40px 80px}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}h1{font-family:var(--font-display);font-weight:700;font-size:42px;line-height:1.1;letter-spacing:-.015em;margin:0 0 12px}h2{font-family:var(--font-display);font-weight:700;font-size:24px;letter-spacing:-.005em;margin:0 0 16px}.lede{color:var(--ink-3);max-width:60ch;margin:0 0 36px}.card{position:relative;background:var(--paper);border:1px solid var(--hairline-strong);padding:1px}.card-inner{border:1px solid var(--hairline);padding:36px;background:var(--paper)}.card-narrow{max-width:480px;margin:0 auto}.form-row{margin-bottom:22px}.label{display:block;font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.input{width:100%;background:var(--bone);border:1px solid var(--hairline-strong);padding:12px 14px;font-family:var(--font-app);font-size:15px;color:var(--ink);outline:none;transition:border-color .15s ease,background .15s ease}.input:focus{border-color:var(--ink);background:var(--paper)}.input::placeholder{color:var(--ink-4)}.cta{position:relative;display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-mono);text-transform:uppercase;padding:4px;border:none;cursor:pointer;width:100%;transition:opacity .15s ease}.cta-inner{display:flex;align-items:center;justify-content:center;width:100%;border:1px solid rgba(255,255,255,.18);padding:14px 20px}.cta:hover{opacity:.88}.cta:disabled{opacity:.4;cursor:not-allowed}.alert{border:1px solid var(--hairline-strong);border-left:3px solid;padding:14px 16px;font-size:14px;margin-bottom:22px;background:var(--bone)}.alert.err{border-left-color:var(--err);color:var(--err)}.alert.warn{border-left-color:var(--warn);color:var(--warn)}.alert.info{border-left-color:var(--info);color:var(--info)}.alert.ok{border-left-color:var(--ok);color:var(--ok)}.auth-stage{min-height:calc(100vh - 110px);display:flex;align-items:center;justify-content:center;padding:40px 20px}.helper{font-size:13px;color:var(--ink-3);margin-top:8px}.spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:var(--paper);border-radius:50%;animation:spin .8s linear infinite;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.foot{border-top:1px solid var(--hairline);padding:18px 0;margin-top:60px}.foot-inner{max-width:1240px;margin:0 auto;padding:0 40px;font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--ink-4)}
