:root{--cream:#fbf5ec;--cream-2:#f4eadb;--paper:#fffdf8;--ink:#2b2420;--ink-soft:#5a4f47;--ink-muted:#8b7f74;--line:#e8dcc8;--peach:#f6b89a;--peach-deep:#e89671;--blush:#f2c2c9;--blush-deep:#e89aa5;--butter:#f6e2a8;--butter-deep:#e9c969;--sage:#bed6b0;--sage-deep:#96bb82;--lilac:#d4c5e8;--sky:#b8d4e3;--primary:var(--peach);--primary-deep:var(--peach-deep);--accent:var(--blush);--tertiary:var(--butter);--radius-sm:10px;--radius:18px;--radius-lg:28px;--radius-xl:36px;--shadow-sm:0 2px 8px #4b321e0f;--shadow:0 8px 24px #4b321e14;--shadow-lg:0 20px 40px #4b321e1f;--font-display:"DM Serif Display", Georgia, serif;--font-ui:"Nunito", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-ui);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.5}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}a{color:inherit;text-decoration:none}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}.app{grid-template-columns:260px 1fr;min-height:100vh;display:grid}@media (width<=900px){.app{grid-template-columns:1fr}}.sidebar{background:var(--cream-2);border-right:1px dashed var(--line);flex-direction:column;gap:24px;height:100vh;padding:28px 20px;display:flex;position:sticky;top:0}.sidebar .logo{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:10px;font-size:26px;display:flex}.logo-mark{background:var(--primary);width:34px;height:34px;color:var(--ink);font-family:var(--font-display);box-shadow:2px 2px 0 var(--ink);border-radius:12px;place-items:center;font-size:20px;display:grid;transform:rotate(-6deg)}.nav{flex-direction:column;flex:1;gap:4px;display:flex}.nav-item{color:var(--ink-soft);text-align:left;white-space:nowrap;border-radius:14px;align-items:center;gap:12px;padding:11px 14px;font-size:15px;font-weight:600;transition:background .15s,color .15s;display:flex;overflow:hidden}.nav-item:hover{color:var(--ink);background:#fff9}.nav-item.active{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-sm)}.nav-item.nav-cta{color:var(--ink-soft);border:1.5px dashed var(--line)}.nav-item.nav-cta:hover{background:var(--paper);color:var(--ink);border-style:solid}.nav-item .icon{flex-shrink:0;width:20px;height:20px}.nav-section{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-muted);padding:16px 14px 6px;font-size:11px;font-weight:700}.profile-card{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow-sm);align-items:center;gap:12px;padding:14px;display:flex}.avatar{background:var(--blush);width:40px;height:40px;font-family:var(--font-display);color:var(--ink);border-radius:50%;flex-shrink:0;place-items:center;font-size:18px;display:grid}.avatar.lg{width:56px;height:56px;font-size:24px}.avatar.sm{width:28px;height:28px;font-size:13px}.profile-card .name{font-size:14px;font-weight:700}.profile-card .sub{color:var(--ink-muted);font-size:12px}.main{width:100%;max-width:1200px;padding:32px 44px 80px}@media (width<=700px){.main{padding:20px}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px;display:flex}.page-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:clamp(32px,4.5vw,52px);line-height:1.05}.page-title .accent{color:var(--primary-deep);font-style:italic}.page-sub{color:var(--ink-muted);margin-top:6px;font-size:15px}.btn{border-radius:999px;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--primary);color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.btn-primary:hover{box-shadow:3px 3px 0 var(--ink)}.btn-ghost{color:var(--ink);border:1.5px solid var(--line);background:0 0}.btn-ghost:hover{background:var(--paper)}.btn-dark{background:var(--ink);color:var(--cream)}.btn-sm{padding:8px 14px;font-size:13px}.btn-lg{padding:14px 24px;font-size:15px}.card{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px;transition:transform .2s,box-shadow .2s}.pill{background:var(--cream-2);color:var(--ink-soft);border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.pill.must{color:#8b2c2c;background:#f5c9c9}.pill.love{background:var(--butter);color:#8b6b1c}.pill.nice{background:var(--sage);color:#3a5f2e}.pill.reserved{background:var(--ink);color:var(--cream)}.pill.sale{background:var(--blush-deep);color:#fff}.pill.occasion{background:var(--lilac);color:#4a3a6b}.wish-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px;display:grid}.wish-card{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;flex-direction:column;padding:14px;transition:transform .2s,box-shadow .2s;display:flex;position:relative}.wish-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)rotate(-.5deg)}.wish-card.reserved-by-me{outline:2px dashed var(--sage-deep);outline-offset:-2px}.wish-image{aspect-ratio:4/3;border-radius:var(--radius);background:var(--cream-2);margin-bottom:12px;position:relative;overflow:hidden}.wish-title{font-family:var(--font-display);color:var(--ink);margin-bottom:4px;font-size:18px;line-height:1.2}.wish-meta{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.wish-price{color:var(--ink);font-size:15px;font-weight:800}.wish-price .original{color:var(--ink-muted);margin-right:6px;font-size:13px;font-weight:600;text-decoration:line-through}.wish-store{color:var(--ink-muted);font-size:12px}.wish-tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ribbon{background:var(--ink);color:var(--cream);letter-spacing:.08em;text-transform:uppercase;z-index:2;box-shadow:var(--shadow-sm);border-radius:4px 0 0 4px;padding:5px 12px;font-size:11px;font-weight:800;position:absolute;top:14px;right:-6px}.ribbon:after{content:"";opacity:.5;border-top:6px solid #000;border-right:6px solid #0000;width:0;height:0;position:absolute;bottom:-6px;right:0}.ph{place-items:center;width:100%;height:100%;display:grid;position:relative;overflow:hidden}.ph:before{content:"";background-image:repeating-linear-gradient(45deg,#0000000a 0 1px,#0000 1px 10px);position:absolute;inset:0}.ph-label{font-family:var(--font-mono);color:#0000008c;letter-spacing:.05em;text-transform:uppercase;z-index:1;background:#ffffffb3;border-radius:4px;padding:3px 8px;font-size:10px;position:relative}.wish-card{animation:.38s both fadeInUp}.wish-card:first-child{animation-delay:0s}.wish-card:nth-child(2){animation-delay:45ms}.wish-card:nth-child(3){animation-delay:90ms}.wish-card:nth-child(4){animation-delay:.135s}.wish-card:nth-child(5){animation-delay:.175s}.wish-card:nth-child(6){animation-delay:.21s}.wish-card:nth-child(n+7){animation-delay:.24s}.dash-tile{transition:transform .2s,box-shadow .2s;animation:.4s cubic-bezier(.34,1.56,.64,1) both scaleIn}.dash-tile:first-child{animation-delay:0s}.dash-tile:nth-child(2){animation-delay:65ms}.dash-tile:nth-child(3){animation-delay:.13s}.dash-tile:nth-child(4){animation-delay:.195s}.dash-tile:hover{box-shadow:var(--shadow);transform:translateY(-4px)scale(1.015)}.timeline-item{animation:.35s both fadeInUp}.timeline-item:first-child{animation-delay:0s}.timeline-item:nth-child(2){animation-delay:70ms}.timeline-item:nth-child(3){animation-delay:.14s}.card{animation:.38s both fadeInUp}.chip{transition:all .22s cubic-bezier(.34,1.56,.64,1)}.chip.active{transform:scale(1.04)}.reaction{transition:all .22s cubic-bezier(.34,1.56,.64,1)}.reaction.active,.reaction:hover{transform:scale(1.08)}.secret-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background:#2b24208c;place-items:center;animation:.3s fadeIn;display:grid;position:fixed;inset:0}.secret-modal{background:var(--paper);border-radius:var(--radius-xl);text-align:center;width:90%;max-width:440px;box-shadow:var(--shadow-lg);padding:40px;animation:.4s cubic-bezier(.34,1.56,.64,1) popIn;position:relative}.secret-ribbon{background:linear-gradient(135deg, var(--blush-deep) 0%, var(--peach-deep) 100%);color:#fff;font-family:var(--font-display);letter-spacing:.04em;box-shadow:var(--shadow);clip-path:polygon(8% 0,92% 0,100% 50%,92% 100%,8% 100%,0 50%);padding:10px 32px;font-size:22px;font-style:italic;position:absolute;top:-18px;left:50%;transform:translate(-50%)rotate(-3deg)}.secret-eye{margin:20px 0 12px;font-size:56px}.secret-title{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:12px;font-size:34px;line-height:1.1}.secret-text{color:var(--ink-soft);margin-bottom:24px;font-size:15px;line-height:1.5}.secret-actions{justify-content:center;gap:10px;display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.88)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.82)}65%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(0)rotate(-10deg)}60%{opacity:1;transform:scale(1.25)rotate(4deg)}80%{transform:scale(.92)rotate(-2deg)}to{transform:scale(1)rotate(0)}}.field{flex-direction:column;gap:6px;display:flex}.label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-muted);font-size:12px;font-weight:700}.input,.textarea,.select{background:var(--paper);border:1.5px solid var(--line);border-radius:14px;outline:none;width:100%;padding:12px 14px;font-size:15px;transition:border-color .15s}.input:focus,.textarea:focus,.select:focus{border-color:var(--primary-deep)}.textarea{resize:vertical;min-height:80px;font-family:inherit}.filter-panel{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:14px;margin-bottom:28px;padding:18px 20px;display:flex}.filter-search-row{gap:10px;display:flex}.filter-search-wrap{flex:1;align-items:center;min-width:0;display:flex;position:relative}.filter-search-icon{opacity:.4;pointer-events:none;display:flex;position:absolute;left:12px}.filter-search-wrap .input{width:100%;height:40px;padding-left:34px;font-size:14px}.filter-sort{appearance:auto;flex-shrink:0;width:auto;min-width:168px;height:40px;padding:0 14px;font-size:13px}.show-more-chip{border-style:dashed!important;border-color:var(--line)!important;color:var(--ink-muted)!important;background:0 0!important;transform:none!important}.show-more-chip:hover{background:var(--cream-2)!important;color:var(--ink)!important;transform:none!important}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--cream-2);color:var(--ink-soft);border:1.5px solid #0000;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .15s}.chip:hover{background:var(--paper)}.chip.active{background:var(--ink);color:var(--cream)}.chip.peach.active{background:var(--peach-deep);color:#fff}.chip.blush.active{background:var(--blush-deep);color:#fff}.chip.butter.active{background:var(--butter-deep);color:var(--ink)}.chip.sage.active{background:var(--sage-deep);color:#fff}.tabs{background:var(--cream-2);border-radius:999px;gap:4px;width:fit-content;padding:4px;display:flex}.tab{color:var(--ink-soft);border-radius:999px;padding:8px 18px;font-size:13px;font-weight:700;transition:all .15s}.tab.active{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-sm)}.section{margin-top:36px}.section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-title{font-family:var(--font-display);letter-spacing:-.01em;font-size:26px}.dash-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.dash-tile{border-radius:var(--radius-lg);padding:22px;position:relative;overflow:hidden}.dash-tile.peach{background:var(--peach)}.dash-tile.blush{background:var(--blush)}.dash-tile.butter{background:var(--butter)}.dash-tile.sage{background:var(--sage)}.dash-tile.ink{background:var(--ink);color:var(--cream)}.dash-label{opacity:.8;font-size:13px;font-weight:700}.dash-value{font-family:var(--font-display);margin:8px 0;font-size:48px;line-height:1}.dash-sub{opacity:.75;font-size:13px}.dash-deco{opacity:.25;font-size:64px;position:absolute;bottom:-10px;right:-10px;transform:rotate(-12deg)}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:90;background:#2b242066;place-items:center;padding:20px;animation:.2s fadeIn;display:grid;position:fixed;inset:0}.modal{background:var(--paper);border-radius:var(--radius-xl);scrollbar-width:none;width:100%;max-width:560px;max-height:90vh;box-shadow:var(--shadow-lg);padding:32px;animation:.3s popIn;overflow-y:auto}.modal::-webkit-scrollbar{display:none}.img-hover-overlay{pointer-events:none}div:hover>.img-hover-overlay{opacity:1!important}.modal-title{font-family:var(--font-display);letter-spacing:-.01em;margin-bottom:4px;font-size:28px}.modal-sub{color:var(--ink-muted);margin-bottom:20px;font-size:14px}.reaction-bar{gap:6px;margin-top:8px;display:flex}.reaction{background:var(--cream-2);color:var(--ink-soft);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.reaction:hover{background:var(--paper);transform:scale(1.05)}.reaction.active{background:var(--blush);color:var(--ink)}.theme-swatch{width:28px;height:28px;box-shadow:0 0 0 1.5px var(--line);cursor:pointer;border:2.5px solid #fff;border-radius:50%;transition:transform .15s}.theme-swatch:hover{transform:scale(1.1)}.theme-swatch.active{box-shadow:0 0 0 2.5px var(--ink)}.tweaks-panel{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:80;min-width:240px;padding:18px;animation:.3s popIn;position:fixed;bottom:20px;right:20px}.tweaks-title{font-family:var(--font-display);margin-bottom:12px;font-size:18px}.dots{border:none;border-top:2px dotted var(--line);margin:24px 0}.toast{background:var(--ink);color:var(--cream);box-shadow:var(--shadow-lg);z-index:200;border-radius:999px;padding:14px 24px;font-size:14px;font-weight:700;animation:.3s both toastIn;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}@keyframes slideUpFromBottom{0%{opacity:0;transform:translateY(110%)}to{opacity:1;transform:translateY(0)}}.timeline{flex-direction:column;gap:14px;display:flex}.timeline-item{background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow-sm);gap:14px;padding:14px 18px;display:flex}.timeline-date{text-align:center;background:var(--cream-2);border-radius:12px;min-width:60px;padding:6px 10px}.timeline-date .day{font-family:var(--font-display);font-size:22px;line-height:1}.timeline-date .month{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);margin-top:2px;font-size:10px}.detail-grid{grid-template-columns:1.2fr 1fr;gap:40px;display:grid}@media (width<=800px){.detail-grid{grid-template-columns:1fr}}.detail-image{aspect-ratio:1;border-radius:var(--radius-xl);background:var(--cream-2);overflow:hidden}.detail-title{font-family:var(--font-display);letter-spacing:-.02em;margin:8px 0;font-size:clamp(32px,4vw,46px);line-height:1.05}.detail-price{font-family:var(--font-display);margin:12px 0;font-size:36px}.detail-price .original{color:var(--ink-muted);font-size:22px;font-family:var(--font-ui);margin-right:10px;font-weight:600;text-decoration:line-through}.detail-row{align-items:center;gap:10px;margin:10px 0;display:flex}.detail-row .label{min-width:90px}.detail-row .value{color:var(--ink);font-weight:600}.note-card{background:var(--butter);border-radius:var(--radius);font-family:var(--font-display);box-shadow:var(--shadow-sm);padding:18px;font-size:17px;line-height:1.4;position:relative;transform:rotate(-1deg)}.note-card:before{content:"";background:#0000001a;border-radius:2px;width:60px;height:14px;position:absolute;top:-6px;left:50%;transform:translate(-50%)rotate(2deg)}.skeleton{background:linear-gradient(90deg, var(--cream-2) 0%, var(--line) 50%, var(--cream-2) 100%);background-size:200% 100%;border-radius:8px;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.icon-sq{background:var(--cream-2);border-radius:12px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.members{display:flex}.members .avatar{border:2.5px solid var(--paper);margin-left:-8px}.members .avatar:first-child{margin-left:0}.pdot{border-radius:50%;width:8px;height:8px;display:inline-block}.pdot.must{background:#c94545}.pdot.love{background:var(--butter-deep)}.pdot.nice{background:var(--sage-deep)}.icon-btn{background:var(--paper);width:36px;height:36px;box-shadow:var(--shadow-sm);border-radius:50%;place-items:center;transition:transform .15s;display:grid}.icon-btn:hover{transform:scale(1.08)}.auth-screen{background:var(--cream);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--paper);border-radius:var(--radius-xl,24px);width:100%;max-width:440px;padding:48px 40px;box-shadow:0 8px 40px #00000014}.auth-logo{align-items:center;gap:10px;margin-bottom:32px;display:flex}.auth-brand{font-family:var(--font-display);color:var(--ink);font-size:24px}.auth-title{font-family:var(--font-display);color:var(--ink);margin:0 0 6px;font-size:32px}.auth-sub{color:var(--ink-muted);margin:0 0 28px;font-size:15px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-error{color:#991b1b;background:#fee2e2;border-radius:10px;padding:10px 14px;font-size:14px}.auth-submit{justify-content:center;width:100%;margin-top:4px}.auth-switch{text-align:center;color:var(--ink-muted);margin-top:24px;font-size:14px}.auth-link{color:var(--ink);cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font-ui);background:0 0;border:none;text-decoration:underline}.friends-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;display:grid}.friend-card{cursor:pointer;text-align:center;border:none;flex-direction:column;align-items:center;gap:10px;width:100%;padding:24px;transition:transform .15s,box-shadow .15s;display:flex}.friend-card-name{text-align:center}.friend-card-cta{color:var(--primary-deep);font-size:12px;font-weight:700}@media (width<=900px){.friends-grid{flex-direction:column;gap:10px;display:flex}.friend-card{text-align:left;flex-direction:row;align-items:center;gap:14px;padding:14px 18px}.friend-card-name{text-align:left;flex:1;min-width:0}.friend-card-pill{display:none}.friend-card-cta{flex-shrink:0}}.mobile-nav{background:var(--paper);border-top:1px solid var(--line);z-index:50;padding:0 4px env(safe-area-inset-bottom,0);justify-content:space-around;display:none;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #4b321e14}.mobile-nav-item{color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;border-radius:0;flex-direction:column;flex:1;align-items:center;gap:2px;max-width:64px;padding:8px 4px;font-size:9px;font-weight:700;transition:color .15s;display:flex;overflow:hidden}.mobile-nav-item.active{color:var(--ink)}.mobile-nav-item.active svg{opacity:1}.mobile-nav-item svg{opacity:.6}@media (width<=900px){.sidebar{display:none}.mobile-nav{display:flex}.main{padding:0 16px 88px}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.page-header>div:last-child{width:100%}.page-header>div:last-child .btn{flex:1;justify-content:center}.wish-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}.dash-grid{grid-template-columns:1fr 1fr;gap:12px}.dash-tile{padding:16px}.dash-value{font-size:36px}.detail-grid{grid-template-columns:1fr;gap:20px}.detail-image{max-height:280px}.modal{border-radius:var(--radius-lg);max-height:85vh;padding:24px 20px}.modal-backdrop{align-items:flex-end;padding:0}.modal{scrollbar-width:none;border-bottom-right-radius:0;border-bottom-left-radius:0;max-height:92vh;animation:.38s cubic-bezier(.32,.72,0,1) both slideUpFromBottom;overflow-y:auto}.modal::-webkit-scrollbar{display:none}.secret-modal{padding:32px 24px}.chip-row{gap:6px}.chip{padding:6px 12px;font-size:12px}.tabs{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.timeline-item{flex-wrap:wrap;gap:10px}.section{margin-top:24px}}.install-banner{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--line);z-index:200;align-items:center;gap:12px;padding:14px 14px 14px 16px;animation:.3s slide-up;display:flex;position:fixed;bottom:80px;left:12px;right:12px}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.install-banner-icon{flex-shrink:0}.install-banner-text{flex:1;min-width:0}.install-banner-title{font-size:14px;font-weight:700}.install-banner-sub{color:var(--ink-muted);margin-top:2px;font-size:12px}.install-banner-close{cursor:pointer;color:var(--ink-muted);background:0 0;border:none;flex-shrink:0;padding:4px 6px;font-size:16px;line-height:1}.profile-mobile-hero{display:none}.profile-desktop-card{display:flex!important}.mobile-hide-profile-header{display:block}@media (width<=900px){.profile-mobile-hero{text-align:center;flex-direction:column;align-items:center;padding:12px 0 20px;display:flex}.profile-desktop-card{display:none!important}.mobile-hide-profile-header{display:none}}.mobile-topbar-bar{display:none}@media (width<=900px){.mobile-topbar-bar{background:var(--cream);z-index:40;justify-content:space-between;align-items:center;margin-bottom:4px;padding:8px 0;display:flex;position:sticky;top:0}.mobile-topbar-logo{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);align-items:center;gap:8px;font-size:22px;display:flex}.mobile-topbar-logo-mark{background:var(--primary);width:28px;height:28px;box-shadow:2px 2px 0 var(--ink);border-radius:9px;flex-shrink:0;place-items:center;font-size:16px;display:grid;transform:rotate(-6deg)}}.occasion-card-list{flex-direction:column;gap:10px;display:flex}.occasion-card{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:14px;padding:14px 16px;display:flex}.occasion-icon-circle{border-radius:50%;flex-shrink:0;place-items:center;width:44px;height:44px;font-size:22px;display:grid}.occasion-card-name{font-size:15px;font-weight:700}.occasion-card-sub{color:var(--ink-muted);margin-top:2px;font-size:12px}.occasion-days-badge{border-radius:999px;flex-shrink:0;margin-left:auto;padding:4px 12px;font-size:12px;font-weight:700}.occasion-days-badge.soon{background:var(--blush);color:#7a2030}.occasion-days-badge.upcoming{background:var(--butter);color:#6b4e00}.occasion-card-actions{gap:8px;margin-top:12px;display:flex}.profile-stat-row{gap:12px;margin-bottom:16px;display:flex}.profile-stat-box{background:var(--paper);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow-sm);flex:1;padding:14px}.profile-stat-num{font-family:var(--font-display);font-size:28px;line-height:1}.profile-stat-lab{color:var(--ink-muted);margin-top:4px;font-size:12px;font-weight:600}.profile-detail-card{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:14px;padding:18px}.profile-detail-card-title{font-family:var(--font-display);margin-bottom:12px;font-size:18px}.profile-detail-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.profile-detail-row:last-child{border-bottom:none;padding-bottom:0}.profile-detail-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.profile-detail-value{font-size:15px;font-weight:600}@media (width<=480px){.wish-grid{grid-template-columns:1fr 1fr;gap:10px}.dash-grid{grid-template-columns:1fr 1fr}.wish-title{font-size:15px}.wish-card{padding:10px}.wish-image{margin-bottom:8px}.detail-title{font-size:28px}}.lp-nav{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px dashed var(--line);background:#fbf5ecd9;position:sticky;top:0}.lp-nav-inner{align-items:center;gap:32px;max-width:1200px;margin:0 auto;padding:18px 32px;display:flex}.lp-nav-logo{font-family:var(--font-display);align-items:center;gap:10px;font-size:22px;display:flex}.lp-nav-links{flex:1;gap:28px;margin-left:12px;display:flex}.lp-nav-links a{color:var(--ink-soft);font-size:14px;font-weight:700}.lp-nav-links a:hover{color:var(--ink)}.lp-nav-cta{gap:8px;display:flex}.lp-hero{grid-template-columns:1.05fr 1fr;align-items:center;gap:60px;max-width:1200px;margin:0 auto;padding:80px 32px 40px;display:grid}@media (width<=900px){.lp-hero{grid-template-columns:1fr;padding-top:48px}}.hero-eyebrow{background:var(--paper);box-shadow:var(--shadow-sm);color:var(--ink-soft);border-radius:999px;align-items:center;gap:8px;margin-bottom:22px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.hero-eyebrow .dot{background:var(--peach-deep);border-radius:50%;width:8px;height:8px}.lp-hero h1{font-family:var(--font-display);letter-spacing:-.03em;margin-bottom:24px;font-size:clamp(48px,6.5vw,92px);line-height:.95}.lp-hero h1 em{color:var(--peach-deep);font-style:italic;position:relative}.lp-hero h1 em:after{content:"";background:var(--butter);z-index:-1;border-radius:8px;height:8px;position:absolute;bottom:4px;left:0;right:0}.lp-hero p.lead{color:var(--ink-soft);max-width:480px;margin-bottom:32px;font-size:19px;line-height:1.5}.hero-ctas{flex-wrap:wrap;gap:12px;margin-bottom:28px;display:flex}.hero-meta{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:18px;font-size:13px;display:flex}.hero-meta .members .avatar{border-color:var(--cream)}.collage{align-self:start;width:100%;max-width:540px;margin:0 auto;position:relative}.collage:before{content:"";padding-top:105%;display:block}.col-card{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:14px;transition:transform .3s;position:absolute}.col-card:hover{transform:translateY(-4px)rotate(0)!important}.col-1{width:56%;top:0;left:0;transform:rotate(-5deg)}.col-2{width:52%;top:18%;right:0;transform:rotate(4deg)}.col-3{width:60%;bottom:0;left:8%;transform:rotate(2deg)}.col-card .ph-img{aspect-ratio:4/3;border-radius:var(--radius);margin-bottom:10px;overflow:hidden}.col-card h4{font-family:var(--font-display);font-size:17px;line-height:1.2}.col-card .col-meta{justify-content:space-between;align-items:center;margin-top:6px;font-size:12px;display:flex}.col-card .col-price{font-weight:800}.col-pill{text-transform:uppercase;letter-spacing:.06em;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:800;display:inline-flex}.ribbon-deco{background:var(--ink);color:var(--cream);letter-spacing:.08em;text-transform:uppercase;z-index:1;border-radius:4px 0 0 4px;padding:4px 10px;font-size:10px;font-weight:800;position:absolute;top:12px;right:-6px}.sparkle-deco{font-size:26px;position:absolute}.sp-1{animation:4s ease-in-out infinite float1;top:8%;right:12%}.sp-2{animation:5s ease-in-out infinite float2;bottom:22%;right:-2%}.sp-3{animation:6s ease-in-out infinite float1;bottom:8%;right:30%}@keyframes float1{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-12px)rotate(15deg)}}@keyframes float2{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-8px)rotate(-10deg)}}.logo-strip{text-align:center;max-width:1200px;margin:0 auto;padding:24px 32px 60px}.logo-strip .ls-label{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-muted);margin-bottom:18px;font-size:12px;font-weight:700}.logo-strip .ls-row{font-family:var(--font-display);color:var(--ink-muted);opacity:.7;flex-wrap:wrap;justify-content:center;align-items:center;gap:48px;font-size:22px;display:flex}.logo-strip .ls-row span{font-style:italic}section.lp{max-width:1200px;margin:0 auto;padding:80px 32px}.sec-header{text-align:center;margin-bottom:56px}.sec-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--peach-deep);margin-bottom:12px;font-size:12px;font-weight:800}.sec-title{font-family:var(--font-display);letter-spacing:-.02em;max-width:720px;margin:0 auto;font-size:clamp(36px,4.5vw,56px);line-height:1.05}.sec-title em{color:var(--peach-deep);font-style:italic}.sec-sub{color:var(--ink-soft);max-width:560px;margin:14px auto 0;font-size:17px}.features{grid-template-columns:repeat(12,1fr);gap:22px;display:grid}.feat{background:var(--paper);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-direction:column;min-height:280px;padding:28px;transition:transform .2s;display:flex;position:relative;overflow:hidden}.feat:hover{transform:translateY(-4px)}.feat.peach{background:var(--peach)}.feat.blush{background:var(--blush)}.feat.butter{background:var(--butter)}.feat.sage{background:var(--sage)}.feat.lilac{background:#d4c5e8}.feat.ink{background:var(--ink);color:var(--cream)}.feat-icon{background:#ffffff80;border-radius:14px;place-items:center;width:48px;height:48px;margin-bottom:18px;font-size:22px;display:grid}.feat.ink .feat-icon{background:#ffffff1a}.feat h3{font-family:var(--font-display);letter-spacing:-.01em;margin-bottom:10px;font-size:26px;line-height:1.1}.feat p{opacity:.85;font-size:15px;line-height:1.5}.feat.span-6{grid-column:span 6}.feat.span-4{grid-column:span 4}.feat.span-8{grid-column:span 8}.feat.span-12{grid-column:span 12}@media (width<=800px){.feat.span-6,.feat.span-4,.feat.span-8,.feat.span-12{grid-column:span 12}}.mini-wish{background:var(--paper);color:var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-sm);width:220px;padding:12px;position:relative;overflow:visible}.feat.ink .mini-wish .ribbon-deco{border-radius:0 var(--radius) 0 4px;z-index:1;right:0}.mini-wish .ph-img{aspect-ratio:5/4;border-radius:12px;margin-bottom:10px;overflow:hidden}.mini-wish h5{font-family:var(--font-display);font-size:15px;line-height:1.2}.mini-wish .mini-meta{justify-content:space-between;align-items:center;margin-top:4px;font-size:12px;display:flex}.steps{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}@media (width<=800px){.steps{grid-template-columns:1fr}}.step{background:var(--paper);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:32px 28px;position:relative}.step-num{font-family:var(--font-display);color:var(--peach-deep);margin-bottom:16px;font-size:56px;line-height:1}.step h3{font-family:var(--font-display);letter-spacing:-.01em;margin-bottom:8px;font-size:24px}.step p{color:var(--ink-soft);font-size:15px;line-height:1.5}.testimonial-row{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}@media (width<=800px){.testimonial-row{grid-template-columns:1fr}}.quote{background:var(--paper);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:28px;position:relative}.quote:before{content:"“";font-family:var(--font-display);color:var(--peach);font-size:80px;line-height:1;position:absolute;top:4px;left:18px}.quote p{font-family:var(--font-display);letter-spacing:-.01em;margin:28px 0 18px;font-size:19px;line-height:1.4}.quote .who{align-items:center;gap:12px;font-size:14px;display:flex}.who-name{font-weight:800}.who-sub{color:var(--ink-muted);font-size:12px}.pricing{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}@media (width<=800px){.pricing{grid-template-columns:1fr}}.price-card{background:var(--paper);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-direction:column;padding:32px;display:flex;position:relative}.price-card.featured{background:var(--ink);color:var(--cream);transform:scale(1.03)}.price-card.featured:before{content:"most loved";background:var(--peach);color:var(--ink);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:6px 16px;font-size:11px;font-weight:800;position:absolute;top:-14px;left:50%;transform:translate(-50%)}.price-name{font-family:var(--font-display);margin-bottom:8px;font-size:26px}.price-amount{font-family:var(--font-display);letter-spacing:-.02em;margin:12px 0 4px;font-size:56px;line-height:1}.price-amount small{color:var(--ink-muted);font-size:16px;font-family:var(--font-ui);font-weight:700}.price-card.featured .price-amount small{color:#fff9}.price-desc{color:var(--ink-soft);margin-bottom:18px;font-size:14px}.price-card.featured .price-desc{color:#ffffffb3}.price-list{flex:1;margin:0 0 24px;padding:0;list-style:none}.price-list li{border-bottom:1px dotted var(--line);align-items:center;gap:10px;padding:8px 0;font-size:14px;display:flex}.price-card.featured .price-list li{border-color:#ffffff1a}.price-list .check{background:var(--sage);width:18px;height:18px;color:var(--ink);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:900;display:grid}.final-cta{background:var(--peach);border-radius:var(--radius-xl);text-align:center;max-width:1136px;margin:40px auto 80px;padding:72px 48px;position:relative;overflow:hidden}.final-cta h2{font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:20px;font-size:clamp(38px,5vw,64px);line-height:1;position:relative}.final-cta h2 em{font-style:italic}.final-cta p{color:var(--ink-soft);max-width:500px;margin:0 auto 28px;font-size:17px}.final-deco{opacity:.18;font-size:64px;position:absolute}.final-deco.tl{top:24px;left:32px;transform:rotate(-15deg)}.final-deco.br{bottom:24px;right:32px;transform:rotate(20deg)}footer.lp-footer{border-top:1px dashed var(--line);max-width:1200px;margin:0 auto;padding:48px 32px 32px}.foot-grid{grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:32px;display:grid}@media (width<=700px){.foot-grid{grid-template-columns:1fr 1fr}}.foot-col h5{text-transform:uppercase;letter-spacing:.1em;color:var(--ink-muted);margin-bottom:14px;font-size:12px;font-weight:800}.foot-col a{color:var(--ink-soft);padding:4px 0;font-size:14px;font-weight:600;display:block}.foot-col a:hover{color:var(--ink)}.foot-brand .foot-logo{font-family:var(--font-display);align-items:center;gap:10px;margin-bottom:12px;font-size:26px;display:flex}.foot-brand p{color:var(--ink-muted);max-width:320px;font-size:14px}.foot-link-btn{color:var(--ink-soft);text-align:left;cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:14px;font-weight:600;display:block}.foot-link-btn:hover{color:var(--ink)}.foot-bottom{border-top:1px dotted var(--line);color:var(--ink-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:24px;font-size:12px;display:flex}.feat-demo-row{flex-wrap:wrap;align-items:flex-end;gap:20px;margin-top:auto;display:flex}.feat-dash-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:auto;display:grid}.feat-inner-grid{grid-template-columns:1fr 1.4fr;align-items:center;gap:32px;display:grid}@media (width<=900px){.lp-hero{gap:40px;padding:56px 24px 32px}.collage{max-width:440px}}@media (width<=700px){.lp-nav-links{display:none}.lp-nav-inner{padding:14px 20px}section.lp{padding:60px 20px}.logo-strip{padding:12px 20px 44px}.logo-strip .ls-row{gap:24px;font-size:18px}.final-cta{margin:24px 16px 64px;padding:48px 24px}footer.lp-footer{padding:40px 20px 28px}.foot-grid{grid-template-columns:1fr 1fr;gap:28px}}@media (width<=480px){.lp-nav-cta .btn-ghost{display:none}.lp-nav-inner{gap:16px;padding:12px 16px}.lp-hero{gap:28px;padding:36px 16px 24px}.lp-hero h1{font-size:clamp(36px,10vw,56px)}.lp-hero p.lead{font-size:16px}.hero-ctas{gap:10px}.hero-ctas .btn-lg{padding:12px 18px;font-size:14px}.collage{max-width:300px}section.lp{padding:48px 16px}.sec-title{font-size:clamp(26px,7vw,44px)}.feat{min-height:180px;padding:20px}.feat h3{font-size:22px}.feat-demo-row{flex-direction:column;align-items:flex-start}.mini-wish{width:100%;max-width:200px}.feat-inner-grid{grid-template-columns:1fr}.step{padding:24px 20px}.step-num{font-size:44px}.quote{padding:20px}.quote:before{font-size:60px}.quote p{font-size:17px}.price-card{padding:24px}.price-card.featured{margin-top:14px;transform:none}.price-amount{font-size:44px}.final-cta{border-radius:var(--radius-lg);margin:16px 12px 48px;padding:40px 16px}.final-cta h2{font-size:clamp(28px,8vw,48px)}.foot-grid{grid-template-columns:1fr;gap:24px}footer.lp-footer{padding:32px 16px 24px}}
