:root{color-scheme:light;--welcome-bg: #f9f6f1;--welcome-surface: #fffdf9;--welcome-text: #29332c;--welcome-muted: #686b63;--welcome-border: #d8d8ce;--welcome-accent: #274c3b;--welcome-error: #a33030;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--welcome-bg);color:var(--welcome-text);-webkit-text-size-adjust:100%}:root[data-theme=dark]{color-scheme:dark;--welcome-bg: #000;--welcome-surface: #171a17;--welcome-text: #f2f0e9;--welcome-muted: #aaa99f;--welcome-border: #383c36;--welcome-accent: #acc9ad;--welcome-error: #ffb4ab}*{box-sizing:border-box}[hidden]{display:none!important}body{position:relative;margin:0;min-height:100vh;min-height:100dvh;display:flex;padding:max(32px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) calc(72px + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}.native-welcome{width:100%;max-width:360px;margin:auto}.native-welcome-header{text-align:center;margin-bottom:32px}.native-welcome-language{position:absolute;right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:44px;padding:4px;border-radius:6px;color:var(--welcome-muted);font-size:12px}.native-welcome-language select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.native-welcome-language:focus-within{outline:2px solid var(--welcome-accent);outline-offset:2px}.native-welcome-language option{color:var(--welcome-text);background:var(--welcome-bg)}.native-welcome-icon{display:block;margin:0 auto 18px;border-radius:23px}.native-welcome-name{font-size:32px;font-weight:650;letter-spacing:-1.2px;margin:0 0 10px}h1{font-size:17px;line-height:1.5;font-weight:400;color:var(--welcome-muted);margin:0;text-wrap:balance}.supabase-auth-buttons,.supabase-auth-form{display:grid;gap:12px}button,input{font:inherit;font-size:16px}button{position:relative;min-height:54px;width:100%;padding:12px 20px;border:1px solid var(--welcome-border);border-radius:14px;color:var(--welcome-text);background:var(--welcome-surface);font-weight:600;cursor:pointer;touch-action:manipulation;transition:background .15s,transform .15s;-webkit-tap-highlight-color:transparent}button:active:not(:disabled){transform:scale(.985)}button:disabled{opacity:.55;cursor:default}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--welcome-accent);outline-offset:4px}.btn-sso{display:flex;align-items:center;justify-content:center;gap:12px}.btn-sso-icon{display:flex;flex:0 0 20px;align-items:center;justify-content:center}.btn-sso-text{min-width:0}.btn-supabase{background:#274c3b;border-color:#274c3b;color:#fffdf4}:root[data-theme=dark] .btn-supabase{background:#b8cdae;border-color:#b8cdae;color:#172a1e}.supabase-auth-divider{display:flex;align-items:center;gap:16px;margin:24px 0;font-size:13px;color:var(--welcome-muted)}.supabase-auth-divider:before,.supabase-auth-divider:after{content:"";height:1px;background:var(--welcome-border);flex:1}.supabase-auth-label{font-size:13px;font-weight:500}input{width:100%;min-height:54px;border:1px solid var(--welcome-border);border-radius:14px;padding:14px 16px;background:var(--welcome-surface);color:var(--welcome-text)}input::-moz-placeholder{color:var(--welcome-muted);opacity:.8}input::placeholder{color:var(--welcome-muted);opacity:.8}.supabase-auth-terms{margin:26px 4px 0;color:var(--welcome-muted);font-size:12px;line-height:1.8;text-align:center;text-wrap:balance}a{color:inherit;text-underline-offset:3px}.supabase-auth-message,.supabase-auth-error,.native-welcome-notice,.native-welcome-error{margin:0 0 18px;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.supabase-auth-message,.native-welcome-notice{color:var(--welcome-accent)}.supabase-auth-error,.native-welcome-error{color:var(--welcome-error)}.native-welcome-error p{margin:0}button.is-loading{color:transparent;opacity:.8}button.is-loading .btn-sso-icon{visibility:hidden}button.is-loading:after{content:"";position:absolute;inset:0;width:20px;height:20px;margin:auto;border:2px solid var(--welcome-muted);border-top-color:transparent;border-radius:50%;animation:welcome-spin .7s linear infinite}.btn-supabase.is-loading:after{border-color:#fffdf4;border-top-color:transparent}:root[data-theme=dark] .btn-supabase.is-loading:after{border-color:#172a1e;border-top-color:transparent}@keyframes welcome-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){button{transition:none}button.is-loading:after{animation:none}}
