*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--theme-bg, #FAFAF8);color:var(--theme-text, #1F1F1F);overflow-x:hidden}:root{--theme-primary: #5E7F6B;--theme-primary-soft: #8FA79A;--theme-bg: #FAFAF8;--theme-text: #1F1F1F;--theme-muted: #6B6B6B;--theme-border: rgba(0, 0, 0, .08);--theme-surface: #FFFFFF;--theme-surface-alt: #F3F4F2;--font-heading: "Playfair Display", Georgia, serif;--font-body: -apple-system, BlinkMacSystemFont, "Inter", "Segoe UI", sans-serif}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;letter-spacing:-.02em;color:var(--theme-text)}p{font-family:var(--font-body);line-height:1.6;color:var(--theme-text)}a{color:var(--theme-primary);text-decoration:none;transition:opacity .2s ease}a:hover{opacity:.7}input,textarea,select{font-family:var(--font-body);font-size:1rem;color:var(--theme-text);background:var(--theme-surface);border:1px solid var(--theme-border);border-radius:12px;padding:12px 16px;transition:all .2s ease;width:100%;appearance:none;-webkit-appearance:none}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--theme-primary);box-shadow:0 0 0 3px #5e7f6b1a}input::placeholder,textarea::placeholder,select::placeholder{color:var(--theme-muted);opacity:.6}input:disabled,textarea:disabled,select:disabled{opacity:.5;cursor:not-allowed}textarea{resize:vertical;min-height:100px;line-height:1.6}input[type=checkbox],input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:var(--theme-primary);margin:0;padding:0}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}button{font-family:var(--font-body);font-size:1rem;font-weight:500;border:none;background:none;cursor:pointer;padding:0;margin:0;border-radius:12px;transition:all .2s ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus{outline:none}button:focus-visible{outline:2px solid var(--theme-primary);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;font-size:17px;font-weight:600;line-height:1.2;text-align:center;border-radius:12px;transition:all .2s ease;border:none;cursor:pointer;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--theme-primary);color:#fff}.btn-primary:hover:not(:disabled){background:color-mix(in srgb,var(--theme-primary) 90%,black);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:transparent;color:var(--theme-primary);border:2px solid var(--theme-primary)}.btn-secondary:hover:not(:disabled){background:color-mix(in srgb,var(--theme-primary) 10%,transparent)}.btn-secondary:active:not(:disabled){background:color-mix(in srgb,var(--theme-primary) 20%,transparent)}.btn-block{width:100%;display:flex}.btn-large{height:52px;font-size:17px;font-weight:600;padding:0 24px}.btn-small{height:44px;font-size:15px;font-weight:500;padding:0 20px}.btn-outline{background:transparent;color:var(--theme-primary);border:2px solid var(--theme-primary)}.btn-outline:hover:not(:disabled){background:#5e7f6b1a}@supports (padding: env(safe-area-inset-top)){body{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}}
