section{width:100%;max-width:760px;text-align:center;position:relative}.chat{display:flex;flex-direction:column;gap:16px;max-width:640px;margin:0 auto}.msg{display:flex;align-items:flex-end;gap:12px;animation:msg-in .45s cubic-bezier(.2,.8,.2,1) both}.msg-left{justify-content:flex-start}.msg-right{justify-content:flex-end;animation-delay:.4s}@keyframes msg-in{0%{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}.chat-avatar{width:clamp(52px,12vw,72px);height:clamp(52px,12vw,72px);border-radius:50%;object-fit:cover;box-shadow:var(--shadow);flex:0 0 auto;border:2px solid #fff}.bubble{background:#fff;border:1px solid #f3cad8;border-radius:22px;padding:16px 20px;font-size:clamp(17px,3.4vw,23px);font-style:italic;color:var(--rose-deep);line-height:1.35;box-shadow:0 6px 16px #e8638a1f;text-align:left;max-width:76%}.msg-left .bubble{border-bottom-left-radius:6px}.msg-right .bubble{border-bottom-right-radius:6px;background:linear-gradient(160deg,#fff,#fde7ee)}.bubble-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-style:normal}.btn-yes{background:linear-gradient(135deg,#ec6a92,var(--rose));color:#fff;padding:13px 28px;border-radius:26px;font-size:16px;box-shadow:var(--shadow);transition:transform .15s}.btn-yes:hover{transform:translateY(-2px) scale(1.03)}.btn-no{background:#fff;color:#cf90a6;padding:11px 20px;border-radius:26px;font-size:14px;border:1px solid #f3cad8;transition:left .28s ease,top .28s ease}.wink{color:#cf90a6;font-style:italic;font-size:13px;text-align:center;margin:8px 0 0}.garden-title{font-size:clamp(24px,5vw,36px);font-style:italic;color:var(--rose-deep);margin-bottom:28px}.garden-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.activity-card{position:relative;overflow:visible;background:#fff;border:1px solid #f3cad8;border-radius:20px;padding:22px 12px;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 6px 16px #e8638a1f;transition:transform .15s,box-shadow .15s}.activity-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.activity-card .emoji{font-size:34px}.activity-card .label{font-size:14px;color:var(--ink)}.activity-card.selected{background:linear-gradient(160deg,#fff,#fde7ee);border-color:var(--rose)}.activity-card.selected:after{content:"✓ on the list";position:absolute;bottom:6px;font-size:10px;color:var(--rose)}.add-card{background:#fdf6ee;border:1px dashed var(--sage);border-radius:20px;padding:18px 12px;display:flex;flex-direction:column;align-items:center;gap:8px}.add-trigger{background:transparent;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--sage)}.add-trigger .emoji{font-size:30px}.add-form{display:flex;flex-direction:column;gap:8px;width:100%}.add-input{padding:8px 10px;border:1px solid var(--sage);border-radius:12px;font-family:var(--serif)}.add-submit{background:var(--sage);color:#fff;border-radius:12px;padding:8px}.added-chip{font-size:11px;color:var(--sage)}.particle{position:absolute;top:50%;font-size:22px;pointer-events:none;will-change:transform,opacity;opacity:0}@keyframes rise{0%{opacity:1;transform:translateY(0) scale(.6)}to{opacity:0;transform:translateY(-120px) scale(1.1)}}@keyframes flutter{0%{opacity:1;transform:translateY(0) rotate(0)}to{opacity:0;transform:translateY(-90px) rotate(40deg)}}@keyframes pop{0%{opacity:1;transform:translateY(0) scale(.4)}60%{opacity:1;transform:translateY(-70px) scale(1.2)}to{opacity:0;transform:translateY(-40px) scale(1)}}@keyframes burst{0%{opacity:1;transform:translate(0) scale(.5)}to{opacity:0;transform:translate(var(--dx,40px),-90px) scale(1)}}@keyframes swirl{0%{opacity:1;transform:rotate(0) translate(0)}to{opacity:0;transform:rotate(180deg) translate(30px) translateY(-80px)}}@keyframes fan{0%{opacity:1;transform:translateY(0) rotate(-20deg)}to{opacity:0;transform:translateY(-80px) rotate(20deg)}}@keyframes twirl{0%{opacity:1;transform:rotate(0) scale(.6)}to{opacity:0;transform:rotate(360deg) scale(1.2) translateY(-90px)}}@keyframes drift{0%{opacity:1;transform:translateY(0) rotate(0)}to{opacity:0;transform:translateY(-100px) translate(30px) rotate(60deg)}}.particle.rise{animation:rise 1.1s ease-out forwards}.particle.flutter{animation:flutter 1.2s ease-out forwards}.particle.pop{animation:pop 1s ease-out forwards}.particle.burst{animation:burst 1.1s ease-out forwards}.particle.swirl{animation:swirl 1.2s ease-in-out forwards}.particle.fan{animation:fan 1.1s ease-out forwards}.particle.twirl{animation:twirl 1.2s ease-out forwards}.particle.drift{animation:drift 1.4s ease-in-out forwards}
