:root{--bg: #F8F5EF;--bg-warm: #F2EDE3;--surface: #FFFFFF;--border: #E4DDD1;--border-light: #EDE8DF;--text: #18140F;--text-muted: #7A6E62;--text-light: #A89E92;--accent: #B8820A;--accent-dim: #F3E6C4;--accent-hover: #9A6D08;--danger: #B33A2A;--success: #2D7A4F;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "DM Sans", system-ui, sans-serif;--radius-sm: 4px;--radius: 8px;--radius-lg: 14px;--shadow-sm: 0 1px 3px rgba(24,20,15,.06);--shadow: 0 2px 8px rgba(24,20,15,.08), 0 1px 2px rgba(24,20,15,.04);--shadow-lg: 0 8px 32px rgba(24,20,15,.12), 0 2px 8px rgba(24,20,15,.06);--transition: .15s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-weight:400;color:var(--text);background:var(--bg);min-height:100vh;line-height:1.6}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");pointer-events:none;z-index:9999}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:var(--font-body);border:none;background:none}input,select,textarea{font-family:var(--font-body)}.font-display{font-family:var(--font-display)}.container{max-width:1280px;margin:0 auto;padding:0 24px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInFast{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.animate-in{animation:fadeIn .3s ease forwards}.spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--radius);font-size:14px;font-weight:500;transition:all var(--transition);white-space:nowrap}.btn-primary{background:var(--text);color:#fff}.btn-primary:hover{background:#2e2820}.btn-ghost{color:var(--text-muted);border:1px solid var(--border);background:var(--surface)}.btn-ghost:hover{border-color:var(--text-muted);color:var(--text)}.btn-accent{background:var(--accent);color:#fff}.btn-accent:hover{background:var(--accent-hover)}.input{width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:var(--radius);font-size:14px;color:var(--text);background:var(--surface);transition:border-color var(--transition),box-shadow var(--transition);outline:none}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input::placeholder{color:var(--text-light)}select.input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%237A6E62' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:100px;font-size:11px;font-weight:500;letter-spacing:.02em;background:var(--bg-warm);color:var(--text-muted);border:1px solid var(--border-light)}.tag{display:inline-flex;align-items:center;padding:3px 10px;border-radius:100px;font-size:12px;background:var(--accent-dim);color:var(--accent);border:1px solid #E8D5A0}.divider{height:1px;background:var(--border);margin:0}@media(max-width:640px){.container{padding:0 16px}}
