@tailwind base;@tailwind components;@tailwind utilities;:root{--font-syne:"Syne",sans-serif;--font-dm:"DM Sans",sans-serif;--ink:#1a1209;--ink-soft:#2e1f0e;--ink-muted:#4a3728;--ink-faint:#8a7060;--border:#e8ddd4;--border-soft:#f2ede8;--surface:#faf7f4;--white:#fffcf9;--accent:#a8694a;--accent-dark:#8a5239;--accent-light:#faede6;--success:#16a34a;--warn:#d97706;--danger:#dc2626}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-dm);color:var(--ink);background:var(--white);line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-syne);letter-spacing:-.02em;line-height:1.15}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-syne);font-weight:600;font-size:.875rem;letter-spacing:.01em;padding:.65rem 1.4rem;border-radius:8px;border:none;cursor:pointer;transition:all .15s ease;text-decoration:none;white-space:nowrap}.btn-primary{background:var(--ink);color:var(--white)}.btn-primary:hover{background:var(--ink-muted);transform:translateY(-1px);box-shadow:0 4px 14px rgba(0,0,0,.15)}.btn-secondary{background:transparent;color:var(--ink);border:1.5px solid var(--border)}.btn-secondary:hover{border-color:var(--ink-muted);background:var(--surface)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:0 4px 20px rgba(168,105,74,.3)}.input{width:100%;padding:.7rem 1rem;border:1.5px solid var(--border);border-radius:8px;font-family:var(--font-dm);font-size:.9rem;color:var(--ink);background:#fff;transition:border-color .15s ease,box-shadow .15s ease;outline:none}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(168,105,74,.12)}.input::placeholder{color:var(--ink-faint)}.card{background:#fff;border:1.5px solid var(--border);border-radius:12px;padding:1.5rem}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .5s ease forwards}.fade-up-1{animation-delay:.05s;opacity:0}.fade-up-2{animation-delay:.12s;opacity:0}.fade-up-3{animation-delay:.2s;opacity:0}.fade-up-4{animation-delay:.28s;opacity:0}.fade-up-5{animation-delay:.36s;opacity:0}