.marlo-auth{--auth-bg:#f5f3ee;--auth-ink:#131311;--auth-surface:#e8e4dd;--auth-line:#e4e2da;--auth-muted:#4a4943;--background:var(--auth-bg);--foreground:var(--auth-ink);--muted-foreground:var(--auth-muted);--border:var(--auth-line);--input:var(--auth-line);--ring:var(--auth-ink);--primary:var(--auth-ink);--primary-foreground:var(--auth-bg);--popover:var(--auth-bg);--popover-foreground:var(--auth-ink);--accent:var(--auth-surface);--accent-foreground:var(--auth-ink);--destructive:var(--auth-ink);background:var(--auth-bg);color:var(--auth-ink);font-family:Manrope,system-ui,sans-serif}.marlo-auth-page{top:var(--app-top,0px);height:var(--app-height,100dvh);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;position:fixed;left:0;right:0;overflow:hidden auto}.marlo-auth-inner{min-height:100%;padding:max(20px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));flex-direction:column;display:flex}.marlo-auth-top{justify-content:space-between;align-items:center;display:flex}.marlo-auth-wordmark{letter-spacing:-.02em;color:var(--auth-ink);font-family:Inter Tight,Manrope,system-ui,sans-serif;font-size:1.25rem;font-weight:600;text-decoration:none}.marlo-auth-main{flex:1 0 auto;justify-content:center;align-items:center;padding:40px 0;display:flex}.marlo-auth-column{width:100%;max-width:400px;margin:auto}.marlo-auth-column>*+*{margin-top:2rem}.marlo-auth-head{text-align:center}.marlo-auth-title{letter-spacing:-.035em;color:var(--auth-ink);font-family:Inter Tight,Manrope,system-ui,sans-serif;font-size:2.25rem;font-weight:600;line-height:1.1}.marlo-auth-sub{color:var(--auth-muted);margin-top:.75rem;font-size:.875rem;line-height:1.55}.marlo-auth-fields>*+*{margin-top:1.25rem}.marlo-auth-field>label,.marlo-auth-label{color:var(--auth-ink);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.marlo-auth-label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.marlo-auth-input-wrap{position:relative}.marlo-auth-input{border:1px solid var(--auth-line);background:color-mix(in srgb, var(--auth-surface) 45%, var(--auth-bg));width:100%;height:3rem;color:var(--auth-ink);border-radius:.75rem;outline:none;padding:0 1rem;font-size:1rem;transition:border-color .15s,box-shadow .15s;display:block}.marlo-auth-input::placeholder{color:color-mix(in srgb, var(--auth-muted) 60%, transparent)}.marlo-auth-input:focus-visible{border-color:var(--auth-ink);box-shadow:0 0 0 3px color-mix(in srgb, var(--auth-ink) 12%, transparent)}.marlo-auth-input[aria-invalid=true]{border-color:var(--auth-ink);border-width:1.5px}.marlo-auth-input.has-toggle{padding-right:4.25rem}.marlo-auth-toggle{height:2rem;color:var(--auth-muted);background:0 0;border-radius:.5rem;padding:0 .6rem;font-size:.8125rem;position:absolute;top:50%;right:.5rem;transform:translateY(-50%)}.marlo-auth-toggle:focus-visible,.marlo-auth-link:focus-visible,.marlo-auth-secondary:focus-visible,.marlo-auth-primary:focus-visible{outline:2px solid var(--auth-ink);outline-offset:2px}.marlo-auth-field-error,.marlo-auth-error{color:var(--auth-ink);align-items:baseline;gap:.45rem;font-weight:500;display:flex}.marlo-auth-field-error:before,.marlo-auth-error:before{content:"!";border:1px solid var(--auth-ink);border-radius:999px;flex:none;place-items:center;width:1rem;height:1rem;font-size:.6875rem;font-weight:700;line-height:1;display:inline-grid;transform:translateY(-1px)}.marlo-auth-field-error{margin-top:.4rem;font-size:.8125rem}.marlo-auth-error{border-left:2px solid var(--auth-ink);padding-left:.75rem;font-size:.875rem;line-height:1.5}.marlo-auth-error:before{display:none}.marlo-auth-primary{background:var(--auth-ink);width:100%;height:3rem;color:var(--auth-bg);border-radius:.75rem;justify-content:center;align-items:center;font-size:1.125rem;font-weight:500;transition:opacity .15s;display:flex}.marlo-auth-primary:disabled{opacity:.55;cursor:not-allowed}.marlo-auth-secondary{width:100%;height:3rem;color:var(--auth-ink);background:0 0;border-radius:.75rem;justify-content:center;align-items:center;font-size:1rem;font-weight:500;transition:background-color .15s;display:flex}.marlo-auth-secondary:hover:not(:disabled){background:var(--auth-surface)}.marlo-auth-google{color:#1f1f1f;width:100%;height:3rem;font-family:Roboto, var(--auth-body-font,inherit), system-ui, sans-serif;background:#fff;border:1px solid #747775;border-radius:.75rem;justify-content:center;align-items:center;gap:12px;padding:0 12px;font-size:1rem;font-weight:500;transition:background-color .15s,box-shadow .15s;display:flex}.marlo-auth-google-mark{flex:none;width:20px;height:20px}.marlo-auth-google:hover:not(:disabled){background:#f8f8f8;box-shadow:0 1px 2px #00000014}.marlo-auth-google:active:not(:disabled){background:#f1f1f1}.marlo-auth-google:focus-visible{outline:2px solid var(--auth-ink);outline-offset:2px}.marlo-auth-google:disabled,.marlo-auth-secondary:disabled,.marlo-auth-link:disabled,.marlo-auth-toggle:disabled,.marlo-auth-input:disabled{opacity:.55;cursor:not-allowed}.marlo-auth-divider{text-transform:uppercase;letter-spacing:.08em;color:var(--auth-muted);align-items:center;gap:.75rem;font-size:.75rem;display:flex}.marlo-auth-divider:before,.marlo-auth-divider:after{content:"";background:var(--auth-line);flex:1;height:1px}.marlo-auth-foot{text-align:center;color:var(--auth-muted);font-size:.875rem}.marlo-auth-link{color:var(--auth-ink);text-underline-offset:4px;background:0 0;border-radius:4px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px}.marlo-auth-link.quiet{color:var(--auth-muted);font-size:.8125rem;font-weight:400}.marlo-auth-note{border-top:1px solid var(--auth-line);color:var(--auth-muted);padding-top:1.25rem;font-size:.875rem;line-height:1.6}.marlo-auth-note strong{color:var(--auth-ink);word-break:break-all;font-weight:600}.marlo-auth-checking{text-align:center;color:var(--auth-muted);font-size:.875rem}.marlo-onb-group+.marlo-onb-group{border-top:1px solid var(--auth-line);margin-top:2.25rem;padding-top:2.25rem}.marlo-onb-group-title{text-transform:uppercase;letter-spacing:.08em;color:var(--auth-muted);margin-bottom:1.25rem;font-size:.75rem}.marlo-auth .onboarding-actions{background:var(--auth-bg);border-top:1px solid var(--auth-line)}.marlo-auth [data-slot=input],.marlo-auth [data-slot=select-trigger]{border-radius:.75rem;height:3rem;font-size:1rem}@media (prefers-reduced-motion:reduce){.marlo-auth *{transition:none!important}}.marlo-auth-social>*+*{margin-top:2rem}.marlo-auth-optional{color:var(--auth-muted);font-weight:400}.marlo-auth-foot p{margin:0}.marlo-auth-overlay{z-index:70;background:#13131152;animation:.16s ease-out marlo-auth-fade;position:fixed;inset:0}.marlo-auth-overlay[data-state=closed]{pointer-events:none;animation:.18s ease-in both marlo-auth-backdrop-out}@media (width<=767px){.marlo-auth-overlay{animation:.4s cubic-bezier(.32,.72,0,1) both marlo-auth-fade}.marlo-auth-overlay[data-state=closed]{animation:.32s cubic-bezier(.4,0,.6,1) forwards marlo-auth-backdrop-out}:is(.keyboard-open .marlo-auth-overlay,:root:has(.marlo-auth-dialog :is(input,textarea,select):focus) .marlo-auth-overlay){background:#f5f3ee}}.marlo-auth-dialog{z-index:71;width:min(480px,100vw - 32px);max-height:calc(var(--app-height,100dvh) - 48px);scrollbar-width:none;overscroll-behavior:contain;border-radius:20px;outline:none;padding:20px 40px 40px;animation:.18s ease-out marlo-auth-pop;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 24px 60px -24px #13131159}.marlo-auth-dialog::-webkit-scrollbar{display:none}.marlo-auth-dialog-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.marlo-auth-close{width:44px;height:44px;color:var(--auth-ink);background:0 0;border-radius:999px;place-items:center;margin-right:-12px;transition:background-color .15s;display:inline-grid}.marlo-auth-close svg{width:20px;height:20px}.marlo-auth-close:hover{background:var(--auth-surface)}.marlo-auth-close:focus-visible{outline:2px solid var(--auth-ink);outline-offset:2px}.marlo-auth-dialog .marlo-auth-column{margin:0 auto}@media (width<=767px){.marlo-auth-dialog{--auth-sheet-inset:clamp(0px, calc((var(--app-height,100dvh) - 640px) * .12), 24px);left:0;right:0;top:calc(var(--app-top,0px) + var(--auth-sheet-inset));width:100%;height:calc(var(--app-height,100dvh) - var(--auth-sheet-inset));border-radius:min(20px, var(--auth-sheet-inset)) min(20px, var(--auth-sheet-inset)) 0 0;max-height:none;box-shadow:none;padding:max(12px, env(safe-area-inset-top)) max(24px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));-webkit-overflow-scrolling:touch;animation:.4s cubic-bezier(.32,.72,0,1) both marlo-auth-sheet-in;bottom:auto;transform:none}.keyboard-open .marlo-auth-dialog{--auth-sheet-inset:0px}.marlo-auth-dialog[data-state=closed]{pointer-events:none;animation:.32s cubic-bezier(.4,0,.6,1) forwards marlo-auth-sheet-out}.marlo-auth-dialog-top{margin-bottom:20px}.marlo-auth-dialog .marlo-auth-wordmark{letter-spacing:0;font-size:1.125rem}.marlo-auth-dialog .marlo-auth-title{letter-spacing:0;font-size:1.625rem;line-height:1.2}.marlo-auth-dialog .marlo-auth-sub{margin-top:10px}.marlo-auth-dialog .marlo-auth-column>*+*{margin-top:1.5rem}.marlo-auth-dialog .marlo-auth-social>*+*{margin-top:20px}.marlo-auth-dialog .marlo-auth-divider{text-transform:none;letter-spacing:0}.marlo-auth-dialog .marlo-auth-fields>*+*{margin-top:16px}.marlo-auth-dialog .marlo-auth-field>label{margin-bottom:8px;font-size:.8125rem}.marlo-auth-dialog .marlo-auth-primary{font-size:1rem}.marlo-auth-dialog .marlo-auth-primary,.marlo-auth-dialog .marlo-auth-google,.marlo-auth-dialog .marlo-auth-close{transition:transform .12s,background-color .15s,opacity .15s}.marlo-auth-dialog .marlo-auth-primary:active:not(:disabled),.marlo-auth-dialog .marlo-auth-google:active:not(:disabled),.marlo-auth-dialog .marlo-auth-close:active{transform:scale(.985)}.marlo-auth-dialog[data-auth-mode=signup] .marlo-auth-column{animation:.18s ease-out marlo-auth-view-signup}.marlo-auth-dialog[data-auth-mode=signin] .marlo-auth-column{animation:.18s ease-out marlo-auth-view-signin}.marlo-auth-dialog[data-auth-mode=forgot] .marlo-auth-column{animation:.18s ease-out marlo-auth-view-forgot}.marlo-auth-dialog:has(.marlo-auth-note[role=status]) .marlo-auth-column{animation-name:marlo-auth-view-done}.marlo-auth-dialog:not([data-auth-settled]) .marlo-auth-column{animation-duration:0s}}@keyframes marlo-auth-sheet-in{0%{opacity:1;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes marlo-auth-sheet-out{0%{opacity:1;transform:translateY(0)}to{opacity:1;transform:translateY(100%)}}@keyframes marlo-auth-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes marlo-auth-view-signup{0%{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes marlo-auth-view-signin{0%{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes marlo-auth-view-forgot{0%{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes marlo-auth-view-done{0%{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes marlo-auth-fade{0%{opacity:0}}@keyframes marlo-auth-pop{0%{opacity:0;transform:translate(-50%,calc(6px - 50%))}}@media (prefers-reduced-motion:reduce){.marlo-auth-overlay,.marlo-auth-dialog,.marlo-auth-dialog .marlo-auth-column{animation:none!important}}.marlo-setup .setup-header{padding:max(20px, env(safe-area-inset-top)) 20px 16px;border-bottom:1px solid var(--auth-line);flex:none;justify-content:space-between;align-items:center;font-size:12px;display:flex}.marlo-setup .marlo-auth-wordmark,.marlo-setup h1{letter-spacing:0;font-family:Sora,system-ui,sans-serif}.marlo-setup .onboarding-scroll{padding-top:28px}.marlo-setup .setup-column{width:100%;max-width:440px;margin:auto;padding-inline:20px}.marlo-setup h1{outline:none;font-size:26px;line-height:1.3}.marlo-setup .setup-step-head{margin-bottom:28px;animation:.25s both marlo-auth-view-done}.marlo-setup .setup-step-head p,.marlo-setup .setup-note{color:var(--auth-muted);margin-top:10px;font-size:13px;line-height:1.65}.marlo-setup .setup-fields{min-width:0}.marlo-setup .setup-goals{gap:12px;display:grid}.marlo-setup .setup-goal{white-space:normal;text-align:left;border-radius:12px;flex-direction:column;align-items:flex-start;gap:6px;min-height:80px;padding:16px}.marlo-setup .setup-goal span{font-size:12px;font-weight:400}.marlo-setup [aria-pressed=true]{background:var(--auth-ink);color:var(--auth-bg);border-color:var(--auth-ink)}.marlo-setup input,.marlo-setup [data-slot=select-trigger]{background:var(--auth-surface)}.marlo-setup .setup-nav{gap:12px;display:flex}.marlo-setup .setup-nav>button{border-radius:12px;min-height:48px}.marlo-setup .setup-nav>button:last-child{flex:1}.marlo-setup .setup-skip{width:100%;min-height:44px;margin-top:6px}.marlo-setup summary{cursor:pointer;text-underline-offset:4px;min-height:44px;padding-block:12px;font-size:14px;text-decoration:underline}.marlo-setup .setup-target-editor{display:none}.marlo-setup details[open]+.setup-target-editor{display:block}.marlo-setup section:has([role=status]) .setup-target-editor{display:block}.marlo-setup .setup-target-editor input{border-radius:12px;min-height:44px}.marlo-setup .setup-metrics>div{margin-top:12px}.marlo-setup .setup-metrics button{min-height:44px}@media (prefers-reduced-motion:reduce){.marlo-setup .setup-step-head{animation:none}}
