@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800&display=swap');
:root{--ink:#262142;--muted:#766f7c;--purple:#7042b0;--pink:#ee6482;--cream:#fffaf6;--line:#eae3eb;--yellow:#ffdc86}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:#fffdfb}button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a{text-decoration:none;color:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}[hidden]{display:none!important}.topbar{height:78px;max-width:1300px;padding:0 48px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;font:700 23px Outfit;white-space:nowrap;letter-spacing:-.8px}.brand b{color:#f17c97}.brandmark{font:700 34px Outfit;color:#7c4cb3}.topbar nav{display:flex;gap:34px;align-items:center}.topbar nav a{font-size:13px;font-weight:700;color:#494251}.topbar nav a:hover{color:var(--purple)}.btn{background:#7146b2;color:white;border:none;border-radius:9px;padding:15px 24px;display:inline-flex;align-items:center;justify-content:center;gap:16px;font-size:14px;font-weight:800;box-shadow:0 5px 0 rgba(70,33,115,.11);transition:transform .2s}.btn:hover{transform:translateY(-2px);background:#5e349d}.btn-small{padding:11px 17px;font-size:12px;white-space:nowrap}.btn-ghost{background:#fff;border:1px solid #ded2e7;color:var(--purple);box-shadow:none}.btn-ghost:hover{background:#faf4ff}.hero{background:#fff0eb;min-height:510px;display:grid;grid-template-columns:1fr 1fr;position:relative;overflow:hidden;padding:65px max(48px,calc((100vw - 1204px)/2));gap:40px}.hero-copy{max-width:625px;z-index:1}.eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#9b489a}.eyebrow-dark{color:#8b60b5}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Outfit,sans-serif}h1{font-size:clamp(42px,5vw,70px);letter-spacing:-3.5px;line-height:1.08;margin:21px 0 24px;font-weight:800}h1 em,.intro h2 em,.suggest-copy em{color:#ed708e;font-style:normal}.hero-copy>p{font-size:16px;line-height:1.85;color:#6f6774;max-width:445px}.hero-actions{display:flex;gap:13px;margin:30px 0}.micro{font-size:12px;color:#8d7982;font-weight:700}.hero-art{display:grid;place-items:center;position:relative}.art-circle{width:min(355px,75%);aspect-ratio:1;border-radius:50%;background:#ffcfda;position:relative;display:grid;place-items:center;box-shadow:inset 0 -25px 0 #ffbfcf}.art-bag{font-size:145px;filter:drop-shadow(0 16px 5px #db8bba55)}.art-cup,.art-spark,.art-cake{position:absolute;font-size:63px}.art-cup{left:-15%;top:17%;transform:rotate(-16deg)}.art-spark{right:-12%;top:8%}.art-cake{right:-13%;bottom:5%;transform:rotate(12deg)}.floating-note{position:absolute;bottom:24px;left:0;background:white;padding:15px 19px;border-radius:12px;font-size:12px;font-weight:800;box-shadow:0 12px 26px #8b4d7840;transform:rotate(-5deg)}.confetti{position:absolute;color:#f58aa4;font-size:28px}.conf1{top:35px;left:47%}.conf2{bottom:40px;left:50%;color:#b399e8}.conf3{right:35px;top:35px;color:#d5a45f}.intro,.content,.checklist-section,.suggest-section,.admin-section{max-width:1204px;margin:auto;padding:75px 32px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-bottom:30px}.intro h2,.section-head h2,.suggest-copy h2{font-size:clamp(30px,3.4vw,45px);line-height:1.18;letter-spacing:-1.4px;margin:16px 0}.intro>p{font-size:15px;color:var(--muted);line-height:1.9;margin-top:34px}.content{padding-top:45px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}.flower{font-size:31px;color:#eeb05b}.count{background:#f7efff;color:#875db5;padding:9px 15px;border-radius:50px;font-size:12px;font-weight:800;white-space:nowrap}.tools{display:flex;gap:12px}.search{flex:1;display:flex;align-items:center;border:1px solid #e8deeb;background:#fff;border-radius:10px;padding:0 15px;gap:10px}.search span{font-size:26px;color:#9b84b0}.search input{width:100%;border:0;outline:0;padding:16px 0;font-size:14px}.tools select,.suggest-form input,.suggest-form select,.suggest-form textarea,.modal input{border:1px solid #e8deeb;border-radius:9px;background:white;padding:14px;color:#53475b;outline-color:#8458bd}.tools select{min-width:185px}.pills{display:flex;flex-wrap:wrap;gap:8px;margin:21px 0 28px}.pill{border:1px solid #eee3f0;border-radius:30px;padding:10px 16px;background:white;color:#74687c;font-size:12px;font-weight:800}.pill.active{background:#7045b0;border-color:#7045b0;color:white}.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}.offer-card{border:1px solid #eee6ed;border-radius:14px;padding:21px;background:white;display:flex;flex-direction:column;min-height:262px;box-shadow:0 4px 17px #46305c06}.offer-top{display:flex;align-items:center;gap:14px}.offer-icon{height:57px;width:57px;background:#fff0f1;border-radius:14px;display:grid;place-items:center;font-size:30px}.offer-card:nth-child(3n + 2) .offer-icon{background:#f1e9ff}.offer-card:nth-child(3n + 3) .offer-icon{background:#fdf2da}.offer-meta{font-size:11px;color:#a178ab;font-weight:800}.offer-card h3{font-size:19px;letter-spacing:-.3px;margin:5px 0}.offer-card p{font-size:13px;color:#746b78;line-height:1.6;margin:17px 0 8px;flex:1}.offer-note{color:#978e98;font-size:11px;line-height:1.5;margin:0 0 12px}.offer-bottom{display:flex;gap:9px;align-items:center;justify-content:space-between;padding-top:13px;border-top:1px solid #f0eaf2}.offer-bottom a{font-size:12px;color:#7544aa;font-weight:800}.add-button{border:0;background:#faf2ff;color:#6b3e9f;border-radius:7px;font-size:12px;font-weight:800;padding:10px 12px}.add-button.saved{background:#e8f7ee;color:#368257}.footnote{font-size:12px;color:#a095a3;line-height:1.7;margin:20px 0 0}.checklist-section{background:#faf7ff;max-width:none;padding-left:max(32px,calc((100vw - 1140px)/2));padding-right:max(32px,calc((100vw - 1140px)/2))}.year-selector{display:flex;gap:12px;align-items:center}.year-selector button{background:white;border:1px solid #dfd2ec;border-radius:8px;font-size:24px;width:36px;height:36px;color:#7242b0}.section-sub{font-size:14px;color:#766d7c;margin:0 0 25px}.progress-card{background:#fff;border:1px solid #ece3f1;padding:20px;border-radius:12px;margin:18px 0}.progress-stats{display:flex;justify-content:space-between;font-size:13px;margin-bottom:12px}.progress-stats span{color:#7e6c8a}.progress-track{height:10px;background:#f1eaf6;border-radius:10px;overflow:hidden}.progress-track div{height:100%;background:linear-gradient(90deg,#ed8ca2,#8355ba);width:0;transition:width .3s}.list-box{background:white;border:1px solid #e8ddee;border-radius:12px;overflow:hidden}.check-row{padding:18px 20px;display:flex;align-items:center;gap:13px;border-bottom:1px solid #f0eaf3}.check-row:last-child{border-bottom:0}.check-row input{accent-color:#784db5;height:19px;width:19px;cursor:pointer}.check-row strong{font-size:14px}.check-row small{display:block;color:#918697;margin-top:4px;font-size:12px}.check-row.claimed strong{text-decoration:line-through;color:#9b91a3}.remove{margin-left:auto;border:0;background:#faf3fb;color:#9a6787;border-radius:8px;padding:7px 10px;font-size:12px}.empty{padding:35px;text-align:center;color:#8b7d95;line-height:1.8;font-size:14px}.suggest-section{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.suggest-copy{padding:30px 0}.suggest-copy h2{font-size:54px}.suggest-copy>p{max-width:380px;line-height:1.9;color:var(--muted)}.suggest-form{background:#fff8f5;border:1px solid #f8e5e3;border-radius:18px;padding:30px;display:grid;gap:16px}.suggest-form label,.modal label{font-size:12px;font-weight:800;color:#53475c;display:grid;gap:8px}.suggest-form label input,.suggest-form textarea,.suggest-form select,.modal input{width:100%;font-weight:500;font-size:13px}.suggest-form button{width:100%}.form-note{font-size:12px;color:#9c8a99;margin:0;line-height:1.5}.admin-section{padding-top:20px}footer{padding:45px;text-align:center;background:#352647;color:white}footer .brand{justify-content:center}footer p{margin:12px 0;color:#d6c8db;font-size:13px}footer small{color:#a99ab6;font-size:11px}.modal{position:fixed;inset:0;z-index:20;display:grid;place-items:center}.modal-backdrop{position:absolute;inset:0;background:#2b1b3d9e}.modal-panel{position:relative;background:white;width:min(92vw,420px);padding:35px;border-radius:19px;box-shadow:0 20px 50px #25152d40}.modal-panel h2{font-size:34px;margin:13px 0 8px}.modal-intro{font-size:13px;color:#8c7c90;line-height:1.6}.modal-panel form{display:grid;gap:17px;margin-top:23px}.modal-close{position:absolute;right:20px;top:15px;border:0;background:none;font-size:28px;color:#9b8b9f}.text-button{margin:15px 0;background:none;border:0;color:#7949b8;font-size:13px;font-weight:800;padding:0}.toast{position:fixed;bottom:22px;right:22px;padding:14px 20px;border-radius:11px;background:#3d3153;color:white;box-shadow:0 5px 20px #25162d50;z-index:30;font-size:13px;font-weight:700;opacity:0;pointer-events:none;transition:opacity .2s}.toast.show{opacity:1}.admin-item{padding:20px;border:1px solid #e9ddf2;background:#fff;border-radius:12px;margin:14px 0}.admin-item p{font-size:13px;color:#796a81}.admin-item button{margin-right:8px}.user-chip{border:0;background:#f8f0ff;color:#634091;border-radius:30px;padding:10px 15px;font-size:12px;font-weight:700;max-width:185px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:900px){.topbar{padding:0 20px;gap:12px}.topbar nav{gap:13px}.topbar nav a{font-size:11px}.hero{padding:60px 32px;gap:10px}.art-bag{font-size:100px}.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.suggest-section{gap:35px}.suggest-copy h2{font-size:42px}}@media(max-width:650px){.topbar{height:auto;min-height:75px;padding:13px 16px;flex-wrap:wrap}.brand{font-size:21px}.topbar nav{width:100%;order:3;justify-content:space-around;padding-bottom:5px}.topbar nav a{font-size:11px}.hero{grid-template-columns:1fr;padding:48px 24px}.hero-art{min-height:240px}.art-circle{width:190px}.art-bag{font-size:85px}.art-cup,.art-cake,.art-spark{font-size:38px}.floating-note{bottom:4px;left:8%}h1{font-size:48px;letter-spacing:-2.4px}.hero-actions{flex-wrap:wrap}.intro{grid-template-columns:1fr;gap:0;padding:57px 24px 12px}.intro>p{margin:5px 0}.content,.suggest-section,.admin-section{padding:55px 24px}.section-head{align-items:start}.section-head h2{font-size:31px}.offer-grid{grid-template-columns:1fr}.tools{flex-direction:column}.tools select{width:100%}.checklist-section{padding:56px 24px}.suggest-section{grid-template-columns:1fr;gap:10px}.suggest-copy{padding:0}.suggest-copy h2{font-size:43px}.count{font-size:11px;padding:8px}.year-selector{gap:5px}.year-selector strong{font-size:13px}.year-selector button{width:29px;height:30px}.topbar .btn-small{padding:10px 12px}}
