:root{--bg: #FAF9F6;--surface: #FAF9F6;--white: #FFFFFF;--green: #59766C;--green-light: rgba(89, 118, 108, .08);--green-mid: rgba(89, 118, 108, .15);--green-dim: rgba(89, 118, 108, .12);--peach: #D4A574;--peach-light: rgba(212, 164, 116, .1);--peach-dim: rgba(212, 165, 116, .15);--dark: #0f0f0f;--text: #0f0f0f;--text-2: #666666;--mid: #666666;--muted: #999999;--text-3: #999999;--border: rgba(0, 0, 0, .06);--border-mid: rgba(0, 0, 0, .1);--shadow-sm: 0 1px 4px rgba(0, 0, 0, .06);--shadow: 0 2px 8px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--radius-sm: 8px;--radius: 12px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--transition: all .2s cubic-bezier(.16, 1, .3, 1);--transition-slow: all .35s cubic-bezier(.16, 1, .3, 1);--font-head: "Cormorant Garamond", Georgia, serif;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Quicksand", system-ui, -apple-system, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;transition:background-color .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}html,body,#root{height:100%;height:100dvh;overflow:hidden}body{background-color:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}#root{display:flex;flex-direction:column}button{transition:background-color .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease,transform .12s cubic-bezier(.16,1,.3,1),opacity .15s ease}button:hover:not(:disabled){filter:brightness(.94);transform:translateY(-1px)}button:active:not(:disabled){transform:scale(.97) translateY(0);transition:transform .08s cubic-bezier(.16,1,.3,1)}input,textarea,select{transition:border-color .15s ease,box-shadow .15s ease}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--green)!important;box-shadow:0 0 0 3px var(--green-light)}input::placeholder,textarea::placeholder{color:var(--muted)}.card-tap{transition:box-shadow .15s ease,transform .12s cubic-bezier(.16,1,.3,1)}.card-tap:hover{box-shadow:var(--shadow-md)}.card-tap:active{transform:scale(.99)}.fade-up{animation:fadeUp .25s cubic-bezier(.16,1,.3,1) both}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-4px)}}
