@import"https://fonts.googleapis.com/css2?family=Readex+Pro:wght@400;500;600;700&display=swap";:root{--navy: #0E1B33;--navy-raised: #1D2C49;--text-on-dark-muted: #D5DBE8;--ground: #F3F5F9;--surface: #FFFFFF;--line: #E1E6EF;--line-input: #DDE2EC;--divider: #E9EDF3;--dash: #B9C2D3;--dash-on-dark: #6F7C96;--teal: #2CC5B4;--teal-deep: #0B6E66;--teal-deeper: #0B5C55;--teal-tint: #DDF3EF;--teal-ring: #BFEAE4;--amber: #FFB224;--amber-deep: #7A4A00;--amber-tint: #FFF1D1;--verified: #0B6E66;--verified-soft: #DDF3EF;--star: #E09400;--success: #0B6E66;--success-soft: #DDF3EF;--pending: #7A4A00;--pending-soft: #FFF1D1;--danger: #C62828;--danger-soft: #FDE7E7;--danger-deep: #A12020;--info: #0B5C55;--info-soft: #DDF3EF;--accent: var(--teal);--accent-deep: var(--teal-deep);--accent-tint: var(--teal-tint);--on-accent: var(--navy);--brand: var(--accent-deep);--brand-strong: var(--accent-deep);--brand-tint: var(--accent-tint);--brand-contrast: var(--navy);--text-strong: var(--navy);--text-body: var(--navy);--text-muted: #4A5670;--text-faint: #4A5670;--canvas: var(--ground);--surface-page: var(--ground);--surface-card: var(--surface);--surface-sunken: var(--divider);--border: var(--line);--border-strong: var(--line-input);--focus-ring: color-mix(in oklch, var(--accent-deep) 45%, transparent);--font-display: "Readex Pro", system-ui, sans-serif;--font-text: "Readex Pro", system-ui, sans-serif;--font-mono: "Readex Pro", ui-monospace, "SFMono-Regular", monospace;--radius-sm: 12px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--radius-pill: 999px;--shadow-sm: none;--shadow-md: 0 8px 24px rgba(14,27,51,.08);--shadow-lg: 0 8px 24px rgba(14,27,51,.12);--ease-out: cubic-bezier(.22,.61,.36,1);--ease-spring: cubic-bezier(.34,1.56,.64,1)}[data-mode=traveler]{--accent: var(--amber);--accent-deep: var(--amber-deep);--accent-tint: var(--amber-tint)}[data-mode=sender]{--accent: var(--teal);--accent-deep: var(--teal-deep);--accent-tint: var(--teal-tint)}*{-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;padding:0;height:100%;font-family:Readex Pro,system-ui,sans-serif;color:var(--text-strong);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{background:var(--ground)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em}.wsl-mono{font-family:var(--font-mono);font-feature-settings:"tnum" 1}@keyframes homers-fade{0%{opacity:0}to{opacity:1}}@keyframes homers-pop{0%{opacity:0;transform:translateY(10px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes homers-ring{0%{transform:scale(.6);opacity:.55}to{transform:scale(1.25);opacity:0}}@media (prefers-reduced-motion: reduce){[style*=homers-fade],[style*=homers-pop],[style*=homers-ring]{animation:none!important}}@keyframes homers-logo-in{0%{opacity:0;transform:translateY(12px) scale(.92)}55%{opacity:1;transform:translateY(-3px) scale(1.015)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes homers-logo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.homers-logo-anim{animation:homers-logo-in .75s cubic-bezier(.2,.9,.3,1.25) both}.homers-logo-anim>*{animation:homers-logo-float 4s ease-in-out .9s infinite}@media (prefers-reduced-motion: reduce){.homers-logo-anim,.homers-logo-anim>*{animation:none!important}}input,textarea,select,button{font-family:inherit}.app-frame-outer{min-height:100vh;min-height:100dvh;display:flex;align-items:stretch;justify-content:center;background:var(--canvas)}.app-frame{position:relative;display:flex;flex-direction:column;overflow:hidden;background:var(--canvas);width:100%;height:100vh;height:100dvh}@media (min-width: 600px){.app-frame-outer{align-items:center;background:#e1e6ef}.app-frame{width:390px;height:780px;max-height:calc(100dvh - 32px);border:1px solid var(--border);border-radius:44px;box-shadow:0 24px 64px #0e1b332e}}::placeholder{color:var(--text-faint)}button:not(:disabled){transition:transform .14s var(--ease-out),opacity .14s var(--ease-out),filter .16s var(--ease-out)}button:not(:disabled):active{transform:scale(.96);opacity:.92}@media (hover: hover) and (pointer: fine){button:not(:disabled):hover{filter:brightness(1.05)}}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.homers-view-enter{animation:homers-fade .2s var(--ease-out) both}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}
