@import url('https://fonts.googleapis.com/css2?family=Allura&family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500;1,600&family=Inter:wght@400;500;600;700&display=swap');

:root{
  --ink:#2e3f63;
  --ink-soft:#536786;
  --muted:#74839c;
  --white:#fff;
  --pearl:#fbfcff;
  --mist:#f1f6ff;
  --powder:#dfeaff;
  --blue:#9ebbe9;
  --blue-strong:#6e90d5;
  --deep:#344d7a;
  --lavender:#d9d5f3;
  --lilac:#b6a9e1;
  --champagne:#efd9ad;
  --gold:#c99d52;
  --line:rgba(93,118,165,.18);
  --shadow:0 24px 70px rgba(74,93,133,.14);
  --soft-shadow:0 12px 34px rgba(74,93,133,.10);
  --radius-xl:34px;
  --radius-lg:24px;
  --radius-md:16px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--pearl);color:var(--ink);font-family:"Inter",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}
button{transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
button:hover{transform:translateY(-1px)}
a{color:inherit;text-decoration:none}
.hidden{display:none!important}
.muted{color:var(--muted)}
.optional{color:var(--muted);font-size:12px;font-weight:400}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:"Cormorant Garamond",Georgia,serif;letter-spacing:-.035em}
h3{letter-spacing:-.015em}

.brand{display:inline-flex;align-items:center;gap:9px;font-weight:700}
.brand-icon{width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 5px 9px rgba(97,116,170,.12))}
.brand-icon.large{width:58px;height:58px}
.brand-script span{font-family:"Allura",cursive;font-size:35px;line-height:1;color:var(--deep);font-weight:400;letter-spacing:.01em}

.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:14px max(22px,6vw);background:rgba(255,255,255,.82);backdrop-filter:blur(20px) saturate(145%);border-bottom:1px solid rgba(158,187,233,.18)}
.nav nav,.account-actions{display:flex;gap:20px;align-items:center}
.nav nav>a{font-size:13px;color:var(--ink-soft)}
.nav nav>a:hover{color:var(--deep)}

.eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:700;color:var(--blue-strong)}
.eyebrow:before{content:"";width:18px;height:1px;background:currentColor;opacity:.65}
.eyebrow.light{color:#f4e7c8}

.primary,.secondary,.ghost,.google{border:0;border-radius:999px;padding:12px 19px;font-weight:600;cursor:pointer}
.primary{background:var(--deep);color:#fff;box-shadow:0 10px 25px rgba(52,77,122,.18)}
.primary-gradient{background:linear-gradient(110deg,#829fe0 0%,#8588dc 46%,#78b6d8 100%);box-shadow:0 14px 32px rgba(102,129,198,.28)}
.primary-gradient:hover{box-shadow:0 18px 36px rgba(102,129,198,.34)}
.secondary,.ghost{background:rgba(255,255,255,.68);border:1px solid var(--line);color:var(--deep)}
.secondary:hover,.ghost:hover{background:#fff}
.google{width:100%;background:#fff;border:1px solid var(--line);color:var(--ink);box-shadow:var(--soft-shadow)}
.full{width:100%}
.button-link{display:inline-flex;align-items:center;justify-content:center}
.text-link{font-size:13px;color:var(--deep);font-weight:600;border-bottom:1px solid rgba(52,77,122,.25);padding-bottom:3px}

/* Landing */
.landing-page{background:
 radial-gradient(circle at 14% 8%,rgba(216,207,246,.42),transparent 27%),
 radial-gradient(circle at 88% 13%,rgba(181,213,249,.45),transparent 29%),
 linear-gradient(180deg,#fff 0%,#f7faff 45%,#fff 100%)}

.hero-romantic{min-height:720px;position:relative;overflow:hidden;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:44px;padding:48px max(24px,7vw) 64px}
.hero-romantic:before{content:"";position:absolute;inset:0;background:
 radial-gradient(circle at 30% 90%,rgba(204,224,255,.52),transparent 30%),
 radial-gradient(circle at 68% 24%,rgba(222,211,249,.34),transparent 24%);pointer-events:none}
.hero-copy{position:relative;z-index:2;max-width:590px}
.hero-copy h1{font-size:clamp(58px,7.1vw,105px);line-height:.78;margin:18px 0 28px;color:#31476d;font-weight:600}
.hero-copy h1 em{font-family:"Allura",cursive;font-size:1.05em;font-weight:400;color:#7279c7;letter-spacing:0}
.hero-copy p{max-width:520px;font-size:17px;line-height:1.7;color:var(--ink-soft)}
.hero-copy small{display:block;color:var(--muted);font-size:12px;margin-top:11px}
.actions,.auth-actions{display:flex;gap:14px;align-items:center;margin:27px 0 11px}

.hero-art{position:relative;z-index:1;min-height:570px;display:grid;place-items:center}
.hero-art:before{content:"";position:absolute;width:72%;height:72%;border-radius:50%;background:rgba(255,255,255,.55);filter:blur(30px);box-shadow:0 0 80px rgba(136,163,221,.16)}
.hero-art>img{position:relative;width:min(100%,720px);filter:drop-shadow(0 30px 55px rgba(76,92,138,.18))}
.hero-note{position:absolute;right:3%;bottom:17%;font-family:"Cormorant Garamond",serif;font-style:italic;color:#64749c;font-size:21px;line-height:1.08;transform:rotate(-4deg)}
.hero-note b{font-family:"Allura",cursive;font-size:33px;color:#7978c0;font-weight:400}

.hero-bloom{position:absolute;border-radius:50%;filter:blur(2px);opacity:.5}
.hero-bloom-left{width:260px;height:260px;left:-110px;top:12%;background:radial-gradient(circle,#cddcff 0 10%,transparent 11%),radial-gradient(circle at 70% 40%,#ddd0ef 0 12%,transparent 13%)}

.occasion-section{padding:96px max(24px,7vw);background:linear-gradient(180deg,rgba(255,255,255,.92),#f6f9ff)}
.section-title{max-width:760px}
.section-title.centered{text-align:center;margin:0 auto 40px}
.section-title.centered .eyebrow{justify-content:center}
.section-title h2{font-size:clamp(37px,4.6vw,64px);margin:10px 0 28px;color:var(--deep)}
.occasion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.occasion-card{position:relative;overflow:hidden;min-height:330px;border:1px solid rgba(155,179,222,.2);border-radius:28px;background:rgba(255,255,255,.88);box-shadow:var(--soft-shadow);padding:16px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .22s ease,box-shadow .22s ease}
.occasion-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.occasion-art{height:205px;border-radius:22px;display:grid;place-items:center;position:relative;overflow:hidden}
.occasion-art:before,.occasion-art:after{content:"";position:absolute;border-radius:50%;filter:blur(1px)}
.occasion-wedding .occasion-art{background:linear-gradient(145deg,#fff,#edf4ff 58%,#ece7fb)}
.occasion-wedding .occasion-art:before{width:150px;height:150px;border:2px solid rgba(212,177,104,.45)}
.occasion-baby .occasion-art{background:linear-gradient(145deg,#fff,#e9f5ff 52%,#e9e0f7)}
.occasion-gifts .occasion-art{background:linear-gradient(145deg,#fff,#f0e8ff 45%,#dcecff)}
.occasion-donation .occasion-art{background:linear-gradient(145deg,#fff,#e5f2f4 50%,#e8edff)}
.occasion-art span{font-family:"Cormorant Garamond",serif;font-size:72px;color:#a47b37;text-shadow:0 8px 24px rgba(83,103,154,.15)}
.occasion-baby .occasion-art span{color:#7d91cb}
.occasion-gifts .occasion-art span{color:#9282c4}
.occasion-donation .occasion-art span{color:#689a9d}
.occasion-card h3{font-family:"Cormorant Garamond",serif;font-size:29px;margin:18px 6px 4px;color:var(--deep)}
.occasion-card p{font-size:13px;color:var(--muted);line-height:1.55;margin:0 6px 5px}

.story-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:108px max(24px,7vw);background:#fff}
.story-art{position:relative;min-height:500px;display:grid;place-items:center}
.story-frame{width:min(100%,590px);border-radius:38px;overflow:hidden;border:1px solid rgba(157,180,224,.22);box-shadow:var(--shadow);background:linear-gradient(145deg,#eef5ff,#f9f4ff)}
.story-frame img{display:block;width:100%;height:auto;transform:scale(1.02)}
.story-copy h2{font-size:clamp(39px,4.7vw,67px);line-height:.96;margin:14px 0 34px;color:var(--deep)}
.story-copy h2 em{font-family:"Allura",cursive;font-size:.88em;font-weight:400;color:#7a7bc3}
.story-steps{display:grid;gap:0}
.story-steps>div{display:grid;grid-template-columns:46px 1fr;gap:18px;padding:19px 0;border-top:1px solid var(--line)}
.story-steps b{font-family:"Cormorant Garamond",serif;color:#9b87c7;font-size:20px}
.story-steps span{display:grid;gap:3px;color:var(--muted);font-size:13px}
.story-steps strong{color:var(--deep);font-size:15px}

.price-band{margin:0 max(24px,7vw) 94px;padding:48px 54px;display:flex;justify-content:space-between;gap:28px;align-items:center;border-radius:36px}
.romantic-price{position:relative;overflow:hidden;color:var(--deep);background:linear-gradient(120deg,#eef5ff,#e6e3fb 52%,#e2f2fa);border:1px solid rgba(143,166,215,.22);box-shadow:var(--soft-shadow)}
.romantic-price:after{content:"";position:absolute;width:260px;height:260px;right:-70px;top:-120px;border-radius:50%;border:40px solid rgba(255,255,255,.4)}
.price-band h2{font-size:clamp(38px,4.2vw,58px);margin:8px 0 3px}
.price-band p{margin:0;color:var(--ink-soft)}
.price-band .primary{position:relative;z-index:1;white-space:nowrap}

.footer-romantic,footer{padding:32px max(24px,7vw);border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto auto;gap:24px;align-items:center;background:rgba(255,255,255,.78)}
footer>div{display:flex;gap:18px}
footer a{font-size:13px;color:var(--ink-soft)}
footer small{color:var(--muted)}

/* Modals / forms */
.modal{position:fixed;inset:0;z-index:60;background:rgba(36,48,78,.44);backdrop-filter:blur(9px);display:grid;place-items:center;padding:18px}
.modal-card{position:relative;width:min(460px,100%);max-height:92vh;overflow:auto;background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid rgba(153,177,221,.22);border-radius:28px;padding:30px;box-shadow:0 30px 90px rgba(36,48,78,.24)}
.modal-romantic{text-align:center}
.modal-bell{width:66px;height:66px;object-fit:contain;margin:0 auto 7px}
.modal-card h2{font-size:38px;margin:7px 0 20px}
.modal-card form{display:grid;gap:10px}
.modal-card input,.modal-card select,.modal-card textarea,.stack-form input,.stack-form select,.stack-form textarea{width:100%;border:1px solid rgba(128,155,204,.25);background:rgba(255,255,255,.86);border-radius:14px;padding:13px;color:var(--ink);outline:none}
.modal-card input:focus,.modal-card select:focus,.modal-card textarea:focus,.stack-form input:focus,.stack-form select:focus,.stack-form textarea:focus{border-color:#91ace2;box-shadow:0 0 0 4px rgba(145,172,226,.12)}
.modal-card textarea,.stack-form textarea{min-height:98px;resize:vertical}
.close{position:absolute;right:17px;top:12px;background:none;border:0;font-size:29px;color:var(--muted);cursor:pointer}
.or{text-align:center;color:var(--muted);font-size:12px;margin:12px}
.status{min-height:20px;color:var(--muted);font-size:13px;margin-top:5px}
.consent{position:fixed;z-index:70;left:18px;right:18px;bottom:18px;margin:auto;max-width:780px;background:rgba(255,255,255,.95);border:1px solid var(--line);border-radius:18px;padding:14px 16px;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:16px}
.consent p{margin:0;color:var(--muted);font-size:13px}
.consent>div{display:flex;gap:8px}

/* Authenticated area */
.app-shell{background:
 radial-gradient(circle at 8% 3%,rgba(214,226,251,.58),transparent 25%),
 radial-gradient(circle at 92% 8%,rgba(224,215,247,.5),transparent 22%),
 #f7faff}
.app-nav .brand span{font-family:"Allura",cursive;font-size:32px;font-weight:400}
.account-main{padding:50px max(20px,6vw) 90px}
.account-hero{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}
.account-hero h1{font-size:clamp(44px,5vw,65px);margin:8px 0 3px}
.account-hero p{margin:0;color:var(--muted)}
.price-pill{display:flex;flex-direction:column;gap:3px;padding:14px 18px;border-radius:18px;background:rgba(255,255,255,.86);border:1px solid var(--line);box-shadow:var(--soft-shadow)}
.price-pill span{font-size:12px;color:var(--muted)}
.verification-notice{margin-bottom:22px;padding:16px 18px;border:1px solid rgba(198,168,96,.3);background:linear-gradient(100deg,#fffaf0,#f6f8ff);border-radius:18px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.verification-notice>div:first-child{display:flex;flex-direction:column;gap:3px}
.verification-notice span{color:#7a6a4a;font-size:13px}
.verification-actions{display:flex;gap:8px;flex-shrink:0}
.account-grid{display:grid;grid-template-columns:350px minmax(0,1fr);gap:25px}
.create-panel,.lists-panel{background:rgba(255,255,255,.9);border:1px solid var(--line);border-radius:28px;padding:24px;box-shadow:var(--soft-shadow)}
.create-panel{align-self:start;position:sticky;top:90px}
.create-panel h2,.lists-panel h2{font-size:34px;margin:7px 0 20px}
.stack-form{display:grid;gap:13px}
.stack-form label{display:grid;gap:6px;font-size:12px;font-weight:600;color:var(--ink-soft)}
.donation-fields{display:grid;gap:13px;padding:14px;background:#f5f8ff;border-radius:16px}
.panel-head{display:flex;justify-content:space-between;align-items:start;gap:20px}
.billing-badge{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:8px 12px;background:#f5f8ff;color:var(--ink-soft)}
.notice{border:1px solid rgba(118,166,140,.25);background:#f1faf6;color:#456b57;padding:12px 14px;border-radius:14px;margin-bottom:16px}
.my-lists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.list-card{border:1px solid var(--line);border-radius:23px;overflow:hidden;background:#fff;box-shadow:0 8px 24px rgba(69,91,132,.08)}
.list-cover{height:170px;background:linear-gradient(145deg,#f0f5ff,#eee9fb) center/cover no-repeat;display:grid;place-items:center;font-size:42px;position:relative}
.list-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(52,77,122,.06))}
.list-card-body{padding:18px}
.list-card-body small{color:#7895cf;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:9px}
.list-card-body h3{font-family:"Cormorant Garamond",serif;font-size:29px;margin:7px 0 4px}
.list-card-body p{color:var(--muted);font-size:12px}
.card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}
.card-actions .secondary,.card-actions .ghost{padding:8px 11px;font-size:11px}
.empty-state{grid-column:1/-1;text-align:center;padding:48px 20px;border:1px dashed rgba(126,152,199,.28);border-radius:20px;color:var(--muted);background:#fbfdff}
.empty-state span{font-size:34px}
.empty-state h3{font-family:"Cormorant Garamond",serif;font-size:26px;color:var(--deep);margin:8px 0 4px}
.editor-card{width:min(1080px,96vw)}
.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.editor-grid section{min-width:0}
.editor-grid h3{font-family:"Cormorant Garamond",serif;font-size:26px;margin:16px 0 12px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cover-preview{height:160px;border:1px dashed rgba(128,155,204,.3);border-radius:17px;background:linear-gradient(145deg,#f5f8ff,#f5f1fb);display:grid;place-items:center;overflow:hidden;color:var(--muted)}
.cover-preview img{width:100%;height:100%;object-fit:cover}
.share-box{display:grid;gap:10px;justify-items:start;background:linear-gradient(145deg,#f4f8ff,#f8f4ff);border-radius:18px;padding:16px}
.share-box input{width:100%;border:1px solid var(--line);padding:11px;border-radius:12px;background:#fff}
.qr-image{display:block;object-fit:contain;image-rendering:pixelated;background:#fff;border-radius:13px;padding:6px}
.editor-items{display:grid;gap:8px;margin-top:14px}
.editor-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:13px;background:#fff}
.editor-item div{display:flex;flex-direction:column;gap:3px}
.editor-item small{color:var(--muted)}
.danger-small{padding:7px 10px!important;font-size:11px;color:#9b4b56;border-color:#ecc9cf}
.payment-card{text-align:center}
.payment-card h2{font-size:51px;margin:8px 0}

/* Public lists */
.public-list{background:#fff}
.public-list-main{max-width:1220px;margin:auto;padding:28px 20px 90px}
.public-nav .brand span{font-family:"Allura",cursive;font-size:33px;font-weight:400}
.loading-card{text-align:center;padding:100px 20px;color:var(--muted)}
.loading-card span{font-size:42px}
.public-cover{min-height:500px;border-radius:34px;background:linear-gradient(135deg,#dbeaff,#eae3f7) center/cover no-repeat;position:relative;overflow:hidden;display:flex;align-items:end;box-shadow:var(--shadow);isolation:isolate}
.public-cover.default-cover:before{content:"";position:absolute;inset:0;background:
 radial-gradient(circle at 12% 16%,rgba(255,255,255,.9),transparent 17%),
 radial-gradient(circle at 83% 18%,rgba(255,255,255,.7),transparent 22%),
 linear-gradient(135deg,#f7fbff,#eaf2ff 48%,#eee7fb)}
.public-cover.default-cover:after{content:"";position:absolute;right:5%;top:9%;width:320px;height:320px;background:url('/assets/listbell-bell.svg') center/contain no-repeat;opacity:.22;filter:saturate(.8)}
.cover-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,28,51,.02) 25%,rgba(36,48,78,.68));z-index:1}
.public-cover-copy{position:relative;z-index:2;color:#fff;padding:42px;max-width:860px}
.public-cover-copy h1{font-size:clamp(55px,7.5vw,98px);margin:6px 0 4px;line-height:.88;font-weight:600}
.public-cover-copy p{margin:0;font-size:16px;color:rgba(255,255,255,.86)}
.public-intro{display:grid;grid-template-columns:1fr 220px;gap:52px;padding:48px 12px}
.lead{font-family:"Cormorant Garamond",serif;font-size:27px;line-height:1.45;max-width:720px;color:#536480}
.share-panel{background:linear-gradient(145deg,#fff,#f5f8ff);border:1px solid var(--line);border-radius:22px;padding:16px;display:grid;gap:12px;justify-items:center;align-self:start;box-shadow:var(--soft-shadow)}
.share-panel .qr-image{max-width:100%;height:auto}
.donation-public{margin-top:34px;padding:28px;background:linear-gradient(145deg,#eef7f8,#f4f7ff);border-radius:23px}
.donation-public h2{font-size:38px;margin:9px 0}
.recipient-card{display:flex;flex-direction:column;gap:4px;background:#fff;padding:14px 16px;border-radius:14px;margin-top:16px}
.pix-section{margin:0 12px 54px;background:linear-gradient(120deg,#344d7a,#5e74a9);color:#fff;border-radius:29px;padding:31px;display:flex;justify-content:space-between;gap:30px;align-items:center;box-shadow:var(--soft-shadow)}
.pix-section .eyebrow{color:#f2dcae}
.pix-section h2{font-size:44px;margin:8px 0}
.pix-section p{color:#dce5f6}
.pix-key-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.pix-key-row code{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.11);color:#fff}
.pix-section .ghost{color:#fff;border-color:rgba(255,255,255,.24);background:rgba(255,255,255,.08)}
.public-items-section{padding:24px 12px 64px}
.public-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.public-item{display:grid;grid-template-columns:62px 1fr auto;gap:16px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:19px;padding:17px;box-shadow:0 7px 22px rgba(68,88,130,.06)}
.item-icon{width:58px;height:58px;border-radius:17px;background:linear-gradient(145deg,#eef4ff,#eee9fb);display:grid;place-items:center;font-family:"Cormorant Garamond",serif;font-size:28px;color:#9a7a38}
.item-copy h3{font-family:"Cormorant Garamond",serif;font-size:23px;margin:0 0 3px}
.item-copy p{color:var(--muted);font-size:12px;margin:0 0 6px}
.item-meta{display:flex;gap:12px;font-size:12px}
.item-meta span{color:var(--muted)}
.item-action{white-space:nowrap;font-size:11px}
.listbell-signature{display:flex;align-items:center;gap:15px;padding:22px;border:1px solid var(--line);background:linear-gradient(145deg,#fff,#f7f9ff);border-radius:23px}
.listbell-signature div{display:flex;flex-direction:column}
.listbell-signature b{font-family:"Allura",cursive;font-size:26px;font-weight:400;color:var(--deep)}
.listbell-signature span{color:var(--muted);font-size:12px}
.listbell-signature .primary{margin-left:auto}

/* theme: wedding */
body[data-theme="wedding"]{background:#fff}
body[data-theme="wedding"] .public-nav{background:rgba(255,255,255,.9)}
body[data-theme="wedding"] .public-cover.default-cover:before{background:
 radial-gradient(circle at 12% 18%,rgba(255,255,255,.98) 0 7%,transparent 8%),
 radial-gradient(circle at 18% 11%,rgba(237,243,255,.96) 0 8%,transparent 9%),
 radial-gradient(circle at 86% 14%,rgba(255,255,255,.98) 0 8%,transparent 9%),
 linear-gradient(140deg,#fff,#f6f9ff 58%,#efebf9)}
body[data-theme="wedding"] .public-cover.default-cover:after{opacity:.35}
body[data-theme="wedding"] .public-cover-copy h1{font-family:"Allura",cursive;font-weight:400;font-size:clamp(68px,9vw,126px);letter-spacing:0}
body[data-theme="wedding"] .cover-overlay{background:linear-gradient(180deg,rgba(56,74,112,.02),rgba(66,82,118,.38))}
body[data-theme="wedding"] .public-items-section{position:relative}
body[data-theme="wedding"] .public-items-section:before{content:"";position:absolute;left:-60px;top:10px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle at 50% 50%,#fff 0 12%,transparent 13%),radial-gradient(circle at 30% 40%,#e8f0ff 0 15%,transparent 16%);opacity:.7;pointer-events:none}
body[data-theme="wedding"] .public-item{background:linear-gradient(145deg,#fff,#fbfcff)}

/* theme: baby */
body[data-theme="baby"]{--deep:#536a99;--blue-strong:#7d9acb;background:#fbfdff}
body[data-theme="baby"] .public-cover.default-cover:before{background:linear-gradient(135deg,#fff,#e9f5ff 55%,#ece8fa)}
body[data-theme="baby"] .item-icon{background:linear-gradient(145deg,#e6f4ff,#efe8fb);color:#7b91c5}

/* theme: gifts */
body[data-theme="gifts"]{--deep:#5e568f;--blue-strong:#8b78c8;background:#fcfbff}
body[data-theme="gifts"] .public-cover.default-cover:before{background:linear-gradient(135deg,#fff,#f0e8ff 46%,#e2efff)}
body[data-theme="gifts"] .item-icon{background:linear-gradient(145deg,#f0e8ff,#e6f1ff);color:#8773bd}

/* theme: donation */
body[data-theme="donation"]{--deep:#466f7f;--blue-strong:#6598a5;background:#fbfefe}
body[data-theme="donation"] .public-cover.default-cover:before{background:linear-gradient(135deg,#fff,#e7f4f5 50%,#edf1ff)}
body[data-theme="donation"] .item-icon{background:linear-gradient(145deg,#e7f4f5,#edf1ff);color:#65989a}

@media(max-width:1060px){
  .occasion-grid{grid-template-columns:repeat(2,1fr)}
  .account-grid{grid-template-columns:1fr}
  .create-panel{position:static}
  .editor-grid{grid-template-columns:1fr}
  .my-lists{grid-template-columns:1fr}
  .public-items{grid-template-columns:1fr}
}
@media(max-width:820px){
  .nav nav>a,.nav-cta{display:none}
  .hero-romantic{grid-template-columns:1fr;min-height:auto;padding:54px 22px 72px}
  .hero-art{min-height:420px}
  .hero-note{right:8%;bottom:11%}
  .story-section{grid-template-columns:1fr;padding:80px 22px}
  .story-art{min-height:auto}
  .occasion-section{padding:76px 22px}
  .price-band{margin:0 22px 70px;padding:31px;align-items:flex-start;flex-direction:column}
  footer{grid-template-columns:1fr}
  .account-main{padding:40px 18px 70px}
  .account-hero{align-items:flex-start;flex-direction:column}
  .verification-notice{align-items:flex-start;flex-direction:column}
  .public-list-main{padding:18px 14px 60px}
  .public-cover{min-height:410px;border-radius:25px}
  .public-cover-copy{padding:27px}
  .public-intro{grid-template-columns:1fr;padding:31px 4px}
  .share-panel{justify-items:start}
  .pix-section{margin:0 4px 40px;align-items:flex-start;flex-direction:column}
  .public-item{grid-template-columns:54px 1fr}
  .item-action{grid-column:1/-1;width:100%}
  .listbell-signature{align-items:flex-start;flex-wrap:wrap}
  .listbell-signature .primary{margin-left:0;width:100%}
  .consent{align-items:stretch;flex-direction:column}
}
@media(max-width:560px){
  .occasion-grid{grid-template-columns:1fr}
  .hero-copy h1{font-size:64px}
  .hero-art{min-height:330px}
  .hero-note{font-size:16px}
  .nav{padding-inline:15px}
  .account-actions .muted{display:none}
  .two-col{grid-template-columns:1fr}
  .editor-card{padding:21px}
  .public-cover-copy h1{font-size:49px}
  body[data-theme="wedding"] .public-cover-copy h1{font-size:67px}
}
