*{box-sizing:border-box;margin:0;padding:0}:root{--ink:#3c260ce0;--ink-soft:#64461499;--ink-faint:#8c5f0fa6;--paper:#f2e8ce;--gold-border:#b48c3c47;--gold-active:#b4781e8c;--glow:#ffd2504d;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Inter", -apple-system, sans-serif}html,body{background:var(--paper);min-height:100%;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-weight:300}.washi{background:radial-gradient(at 42% 39%,#fff8d7cc,#eedca880 45%,#d2b97873 80%,#b99b5599),#f2e8ce;min-height:100dvh}h1,h2,h3,.serif{font-family:var(--serif);color:var(--ink);font-weight:300}h1{font-size:clamp(28px,7vw,36px);line-height:1.1}h2{font-size:clamp(22px,5.5vw,28px);line-height:1.15}.eyebrow{font-family:var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);font-size:10px}.btn{font-family:var(--serif);color:#50370fe6;border:1px solid var(--gold-border);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;background:#fff6;border-radius:22px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:10px 22px;font-size:15px;font-weight:500;line-height:1;text-decoration:none;transition:background .2s,border-color .2s,box-shadow .2s,transform 60ms;display:inline-flex}.btn:not(:disabled):hover{border-color:var(--gold-active);background:#ffecb98c}.btn:not(:disabled):active{transform:translateY(1px)}.btn.primary{color:#422a06f5;background:linear-gradient(#ffd462fa,#f0ba48fa);border-color:#c69428a6;font-weight:600;box-shadow:0 2px 9px #b9872d3d}.btn.primary:not(:disabled):hover{background:linear-gradient(#ffde70,#f6c452);box-shadow:0 4px 13px #b9872d4d}.btn.ghost{color:var(--ink-soft);box-shadow:none;background:0 0;border-color:#0000;padding-left:14px;padding-right:14px}.btn.ghost:not(:disabled):hover{color:var(--ink);background:#b48c3c21;border-color:#0000}.btn.danger{color:#963714eb;box-shadow:none;background:0 0;border-color:#96371452}.btn.danger:not(:disabled):hover{background:#aa3c191a;border-color:#96371499}.btn:disabled,.btn[aria-disabled=true]{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.btn.active{border-color:var(--gold-active);background:var(--glow)}.chip{font-family:var(--serif);color:var(--ink-soft);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#ffffff3d;border:1.5px solid #b48c3c47;border-radius:20px;align-items:center;gap:7px;min-height:44px;padding:10px 20px;font-size:15px;transition:all .2s;display:inline-flex}.chip:hover{border-color:var(--gold-active);color:var(--ink)}.chip.selected{color:#462d08f5;background:#ffd66473;border-color:#c69428b3;font-weight:500}.chip.selected:before{content:"✓";color:#a06e14f2;font-size:12px;line-height:1}.field{font-family:var(--sans);color:var(--ink);border:1px solid var(--gold-border);background:#fffdf699;border-radius:12px;outline:none;width:100%;padding:12px 16px;font-size:16px;font-weight:300;transition:border-color .25s,box-shadow .25s;box-shadow:inset 0 1px 3px #785a2814}.field:focus{border-color:var(--gold-active);box-shadow:inset 0 1px 3px #785a2814,0 0 0 3px #ffd25a40}textarea.field{resize:vertical;min-height:110px;line-height:1.5}.field::placeholder{color:#785a2866;font-style:italic}.card{border:1px solid var(--gold-border);background:#ffffff47;border-radius:18px;padding:22px}a{color:#5a3205d9}@keyframes rise{0%{opacity:0;translate:0 8px}to{opacity:1;translate:0}}.rise{animation:.8s both rise}@keyframes name-breath{0%,to{opacity:.82}50%{opacity:1}}.leaf-name{font-family:var(--serif);letter-spacing:.01em;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;white-space:nowrap;background:#faf4e0b8;border:none;border-radius:11px;padding:3px 9px;font-size:clamp(12.5px,3.4vw,15px);font-style:italic;transition:color .4s,background .3s,transform .2s;animation:5s ease-in-out infinite name-breath}.leaf-name:hover{color:#965f0afa!important;background:#fff0c8eb!important;transform:translate(-50%,-50%)scale(1.08)!important}@media (max-width:480px){.card{padding:18px}.btn{padding:10px 18px}.chip{padding:10px 16px}.leaf-name{padding:3px 8px}}@media (prefers-reduced-motion:reduce){.leaf-name{animation:none}}
