@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500;9..40,600&display=swap";:root{--violet: #5754A0;--violet-light: #7b78c0;--violet-deep: #3f3d7a;--violet-mist: #efeff9;--violet-pale: #f7f7fc;--green: #5E9E65;--green-light: #88bb8e;--green-deep: #3d7244;--green-mist: #eef6ef;--green-pale: #f5faf5;--offwhite: #f8f6f1;--offwhite-2: #f2efe8;--offwhite-3: #ede9e0;--stone-50: #faf9f7;--stone-100: #f2f0eb;--stone-200: #e4e0d8;--stone-300: #c8c3b8;--stone-400: #a09890;--stone-500: #7a7268;--stone-600: #5e5850;--stone-700: #46413a;--stone-800: #302c26;--stone-900: #1e1b16;--bg: var(--offwhite);--surface: #ffffff;--surface-2: var(--offwhite-2);--border: #e2ddd4;--border-md: #cec8bc;--text-1: var(--stone-900);--text-2: var(--stone-700);--text-3: var(--stone-500);--accent: var(--violet);--accent-2: var(--violet-light);--accent-bg: var(--violet-mist);--accent-pale: var(--violet-pale);--green-accent: var(--green);--green-accent-bg: var(--green-mist);--radius-sm: 8px;--radius: 14px;--radius-lg: 20px;--radius-pill: 999px;--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "DM Sans", "Helvetica Neue", Arial, sans-serif;--nav-h: 62px;--shadow-xs: 0 1px 3px rgba(87,84,160,.06);--shadow-sm: 0 2px 8px rgba(87,84,160,.08);--shadow-md: 0 4px 20px rgba(87,84,160,.11);--shadow-lg: 0 8px 36px rgba(87,84,160,.14)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--text-1);line-height:1.6;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 900px 600px at 0% 0%,rgba(87,84,160,.06) 0%,transparent 70%),radial-gradient(ellipse 700px 700px at 100% 100%,rgba(94,158,101,.05) 0%,transparent 70%),radial-gradient(ellipse 500px 400px at 50% 50%,rgba(248,246,241,.4) 0%,transparent 70%)}#root{position:relative;z-index:1}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:var(--offwhite-2)}::-webkit-scrollbar-thumb{background:var(--violet-light);border-radius:10px;opacity:.5}::-webkit-scrollbar-thumb:hover{background:var(--violet)}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-1);font-weight:600;line-height:1.25}a{text-decoration:none;color:inherit}button{cursor:pointer;font-family:var(--font-body);border:none;outline:none}input,textarea,select{font-family:var(--font-body);outline:none;border:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes heartPop{0%{transform:scale(1)}35%{transform:scale(1.55)}65%{transform:scale(.9)}to{transform:scale(1)}}@keyframes wingFloat{0%,to{transform:translateY(0) rotate(-4deg)}25%{transform:translateY(-12px) rotate(3deg)}50%{transform:translateY(-5px) rotate(-2deg)}75%{transform:translateY(-15px) rotate(4deg)}}@keyframes drift{0%{transform:translate(-80px) translateY(0);opacity:0}6%{opacity:1}90%{opacity:1}to{transform:translate(110vw) translateY(-40px);opacity:0}}.card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:box-shadow .28s ease,transform .28s ease}.card:hover{box-shadow:var(--shadow-md)}.btn{display:inline-flex;align-items:center;gap:7px;padding:9px 20px;border-radius:var(--radius-pill);font-size:.875rem;font-weight:500;letter-spacing:.01em;transition:all .22s ease}.btn-primary{background:var(--violet);color:#fff;box-shadow:0 3px 12px #5754a047}.btn-primary:hover{background:var(--violet-deep);transform:translateY(-1px);box-shadow:0 5px 18px #5754a05c}.btn-secondary{background:var(--accent-bg);color:var(--violet);border:1px solid #d0ceee}.btn-secondary:hover{background:#e4e3f5;transform:translateY(-1px)}.btn-green{background:var(--green);color:#fff;box-shadow:0 3px 12px #5e9e6547}.btn-green:hover{background:var(--green-deep);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-2)}.btn-ghost:hover{background:var(--accent-bg);color:var(--violet)}.input-field{width:100%;padding:11px 15px;background:var(--offwhite);border:1.5px solid var(--border-md);border-radius:var(--radius-sm);font-size:.9rem;color:var(--text-1);transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--violet);box-shadow:0 0 0 3px #5754a01f;background:#fff}.input-field::placeholder{color:var(--text-3)}.tag{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-pill);font-size:.72rem;font-weight:500;letter-spacing:.03em;background:var(--violet-mist);color:var(--violet);border:1px solid #d0ceee}.tag-green{background:var(--green-mist);color:var(--green-deep);border-color:#c0dbc3}.avatar{border-radius:50%;background:linear-gradient(135deg,var(--violet-mist),#d0ceee);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;color:var(--violet-deep);flex-shrink:0}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e1b1666;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease;padding:20px}.modal{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:scaleIn .22s ease;max-height:90vh;overflow-y:auto;width:100%}.toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);background:var(--stone-800);color:#fff;padding:11px 22px;border-radius:var(--radius-pill);font-size:.875rem;font-weight:400;z-index:9999;animation:fadeUp .3s ease;box-shadow:var(--shadow-lg);letter-spacing:.01em;white-space:nowrap}.spinner{width:34px;height:34px;border:2px solid var(--border-md);border-top-color:var(--violet);border-radius:50%;animation:spin .75s linear infinite;margin:40px auto}.divider{height:1px;background:var(--border);margin:12px 0}.no-clip{overflow:visible!important}
