:root{--font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 2rem;--font-size-4xl: 2.5rem;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--color-bg: #ffffff;--color-bg-secondary: #f5f5f7;--color-bg-tertiary: #e8e8ed;--color-text: #1d1d1f;--color-text-secondary: #86868b;--color-text-tertiary: #a1a1a6;--color-accent: #0071e3;--color-accent-hover: #0077ed;--color-success: #34c759;--color-warning: #ff9500;--color-error: #ff3b30;--color-border: rgba(0, 0, 0, .1);--safe-top: env(safe-area-inset-top);--safe-right: env(safe-area-inset-right);--safe-bottom: env(safe-area-inset-bottom);--safe-left: env(safe-area-inset-left);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .35s ease;--nav-height: 56px}@media(prefers-color-scheme:dark){:root{--color-bg: #000000;--color-bg-secondary: #1c1c1e;--color-bg-tertiary: #2c2c2e;--color-text: #f5f5f7;--color-text-secondary: #a1a1a6;--color-text-tertiary: #636366;--color-border: rgba(255, 255, 255, .1)}}*,*:before,*:after{box-sizing:border-box}html{font-family:var(--font-family);font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{margin:0;padding:0;background-color:var(--color-bg);color:var(--color-text);line-height:1.5;min-height:100vh;min-height:100dvh;padding-top:var(--safe-top);padding-right:var(--safe-right);padding-bottom:var(--safe-bottom);padding-left:var(--safe-left)}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;letter-spacing:-.02em}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}p{margin:0}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}button{font-family:var(--font-family);font-size:var(--font-size-base);cursor:pointer;border:none;background:none;padding:0}button:disabled{cursor:not-allowed;opacity:.5}input,textarea,select{font-family:var(--font-family);font-size:var(--font-size-base);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);padding:var(--spacing-sm) var(--spacing-md);outline:none;transition:border-color var(--transition-fast)}input:focus,textarea:focus,select:focus{border-color:var(--color-accent)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:100%;max-width:480px;margin:0 auto;padding:0 var(--spacing-md)}.scroll-container{-webkit-overflow-scrolling:touch;overflow-y:auto}.no-overscroll{overscroll-behavior:contain}*{-webkit-tap-highlight-color:transparent}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:24px;height:24px;border:2px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite}
