/* Generated by tools/build-ui.php. Do not edit directly. */

/* ===== resources/ui/legacy/tokens.css ===== */
:root{
  --color-bg:#fffaf6;
  --color-bg-soft:#f8f2ee;
  --color-surface:#fffdfa;
  --color-surface-soft:#f5ebe7;
  --color-surface-strong:#ead9d4;
  --color-text:#33242a;
  --color-text-soft:#66545b;
  --color-muted:#715f66;
  --color-border:#dfd0ca;
  --color-border-strong:#cdb7b1;
  --color-primary:#884157;
  --color-primary-hover:#6f3145;
  --color-primary-soft:#f2e0e4;
  --color-success:#4d6a45;
  --color-success-soft:#e8f1e5;
  --color-warning:#86621e;
  --color-warning-soft:#fff3d8;
  --color-danger:#a3384b;
  --color-danger-soft:#fbe8eb;
  --shadow-card:0 14px 36px rgba(64,39,47,.07);
  --shadow-float:0 24px 64px rgba(64,39,47,.13);
  --radius-sm:12px;
  --radius-md:16px;
  --radius-lg:22px;
  --font-serif:"Cormorant Garamond",serif;
  --font-sans:"DM Sans",sans-serif;
  --font-script:"Allura",cursive;
  --text-xs:12px;
  --text-sm:13px;
  --text-base:15px;
  --text-lg:18px;
}

/* ===== resources/ui/legacy/app.css ===== */
:root{--navy:#071a3d;--navy-2:#0b2455;--blue:#2f6cf4;--blue-2:#4c8dff;--cyan:#8edcff;--ice:#eef7ff;--ice-2:#f7fbff;--white:#fff;--ink:#0d1b34;--muted:#6d7890;--line:#dce8f4;--lav:#8b7cf6;--peach:#ffbd9c;--green:#2abf8a;--danger:#d8485b;--shadow:0 24px 80px rgba(12,48,101,.12);--shadow-sm:0 14px 34px rgba(10,42,92,.09);--radius:26px;--container:1200px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:"DM Sans",system-ui,sans-serif;-webkit-font-smoothing:antialiased}body.no-scroll{overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{width:min(var(--container),calc(100% - 48px));margin:auto}.marketing-page{overflow-x:hidden}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;padding:18px 0;transition:.3s ease}.site-header.scrolled{padding:10px 0;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(205,221,238,.7)}.nav-shell{height:58px;display:flex;align-items:center;gap:36px;padding:0 8px}.brand{display:inline-flex;align-items:center;gap:10px;font:800 21px "DM Sans";letter-spacing:-.6px;color:var(--navy)}.brand-mark{position:relative;width:32px;height:32px;display:inline-block;transform:rotate(-8deg)}.brand-mark i{position:absolute;border:3px solid var(--blue);border-radius:50% 60% 45% 65%}.brand-mark i:first-child{inset:2px 8px 8px 2px}.brand-mark i:last-child{inset:8px 2px 2px 8px;border-color:var(--cyan)}.brand-light{color:#fff}.main-nav{display:flex;gap:28px;margin-left:auto}.main-nav a{font-size:14px;font-weight:600;color:#41516d;position:relative}.main-nav a:after{content:"";position:absolute;height:2px;left:0;right:100%;bottom:-9px;background:var(--blue);transition:.25s}.main-nav a:hover:after,.main-nav a.active:after{right:0}.nav-actions{display:flex;gap:10px;margin-left:20px}.btn{border:0;border-radius:999px;padding:12px 20px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:.25s ease;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,var(--blue),#2257d9);color:#fff;box-shadow:0 12px 28px rgba(47,108,244,.24)}.btn-primary:hover{box-shadow:0 16px 34px rgba(47,108,244,.34)}.btn-ghost{background:transparent;color:var(--navy)}.btn-outline{border:1px solid var(--line);background:#fff;color:var(--navy)}.btn-light{background:#fff;color:var(--navy);box-shadow:0 14px 36px rgba(0,0,0,.14)}.btn-lg{padding:15px 25px}.btn-sm{padding:9px 14px;font-size:13px}.btn-block{width:100%;border-radius:14px}.btn-danger{background:#fff0f2;color:var(--danger);border:1px solid #ffd3d9}.nav-toggle{display:none;border:0;background:none;width:42px;height:42px}.nav-toggle span{display:block;height:2px;background:var(--navy);margin:7px 0}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:1.7px;text-transform:uppercase;color:#50688b}.eyebrow i{width:20px;height:1px;background:var(--blue)}.eyebrow.light{color:#b9d4ff}.eyebrow.light i{background:#8edcff}.hero-section{position:relative;min-height:820px;padding:145px 0 42px;background:linear-gradient(180deg,#fbfdff 0%,#f3f9ff 72%,#fff 100%);overflow:hidden}.hero-ambient{position:absolute;border-radius:50%;filter:blur(4px)}.ambient-one{width:620px;height:620px;right:-180px;top:-160px;background:radial-gradient(circle at 40% 50%,rgba(117,193,255,.35),rgba(233,246,255,.08) 65%)}.ambient-two{width:390px;height:390px;left:-210px;bottom:-120px;background:radial-gradient(circle,rgba(138,124,246,.15),transparent 67%)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:70px;position:relative}.hero-copy h1{font:800 clamp(52px,5vw,76px)/1.04 "DM Sans";letter-spacing:-4px;margin:20px 0 24px;color:var(--navy)}.hero-copy h1 span{color:var(--blue)}.hero-copy>p{font-size:18px;line-height:1.75;color:#5b6b85;max-width:600px}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:34px}.text-link{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--navy)}.play-dot{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fff;border:1px solid var(--line);font-size:10px}.hero-trust{display:flex;align-items:center;gap:14px;margin-top:38px}.avatar-stack{display:flex}.avatar-stack span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;font-size:11px;border:3px solid #f7fbff;margin-left:-8px;background:var(--navy)}.avatar-stack span:first-child{margin-left:0;background:var(--blue)}.avatar-stack span:nth-child(2){background:var(--lav)}.avatar-stack span:nth-child(3){background:#43acd9}.avatar-stack span:nth-child(4){background:#ef9b72}.hero-trust p{margin:0;font-size:13px;color:#6e7b91;line-height:1.35}.hero-trust strong{color:var(--navy)}.hero-stage{position:relative;height:590px}.stage-ring{position:absolute;border:1px solid rgba(79,143,255,.18);border-radius:50%}.ring-a{width:500px;height:500px;inset:40px 0 0 30px}.ring-b{width:380px;height:380px;inset:105px 0 0 90px;border-style:dashed;animation:spin 28s linear infinite}.phone{position:absolute;width:235px;height:480px;border-radius:39px;background:#fefefe;padding:9px;box-shadow:0 38px 95px rgba(7,31,77,.2),inset 0 0 0 1px rgba(7,31,77,.08)}.phone:before{content:"";position:absolute;width:72px;height:21px;border-radius:0 0 15px 15px;top:8px;left:50%;transform:translateX(-50%);background:#101b31;z-index:2}.phone-front{left:150px;top:30px;z-index:3;transform:rotate(4deg);animation:phoneFloat 6s ease-in-out infinite}.phone-back{left:42px;top:95px;transform:rotate(-10deg) scale(.93);opacity:.9}.phone-screen{height:100%;border-radius:31px;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative}.screen-wedding{background:radial-gradient(circle at 50% 25%,#fff 0,#eef7ff 42%,#d9ebff 100%);color:var(--navy)}.screen-wedding:before,.screen-wedding:after{content:"";position:absolute;width:180px;height:160px;border:18px solid rgba(47,108,244,.12);border-radius:60% 40% 60% 45%}.screen-wedding:before{left:-88px;top:-25px;transform:rotate(30deg)}.screen-wedding:after{right:-92px;bottom:-30px;transform:rotate(-20deg)}.screen-wedding .tiny-script{font:italic 14px "Cormorant Garamond";margin-bottom:10px}.screen-wedding strong{font:600 39px/1.04 "Cormorant Garamond";position:relative}.screen-wedding strong i{color:var(--blue)}.screen-wedding small{font-size:10px;letter-spacing:2px;margin-top:18px}.screen-wedding b{font-size:9px;text-transform:uppercase;letter-spacing:1.4px;margin-top:34px;padding:9px 13px;border-radius:20px;background:var(--navy);color:#fff}.screen-dark{background:linear-gradient(160deg,#081a3c,#123d88);color:#fff}.screen-dark:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(120,188,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(120,188,255,.07) 1px,transparent 1px);background-size:28px 28px}.screen-dark span,.screen-dark strong,.screen-dark small{z-index:1}.screen-dark span{font-size:8px;letter-spacing:2px;color:#9bdcff}.screen-dark strong{font:800 37px/1 "DM Sans";margin:14px 0}.screen-dark small{font-size:10px}.float-card{position:absolute;z-index:5;border:1px solid rgba(204,222,242,.8);background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-radius:17px;padding:13px 16px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-sm);animation:floatCard 5s ease-in-out infinite}.card-rsvp{left:0;bottom:70px}.card-custom{right:-20px;top:110px;animation-delay:1s}.float-icon{width:31px;height:31px;border-radius:10px;background:#e9fff7;color:var(--green);display:grid;place-items:center;font-weight:900}.float-icon.sparkle{background:#eef4ff;color:var(--blue)}.float-card strong{display:block;font-size:12px}.float-card small{font-size:10px;color:var(--muted)}.float-chip{position:absolute;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:11px;font-weight:700;box-shadow:var(--shadow-sm);z-index:4}.chip-one{right:5px;bottom:145px}.chip-two{left:30px;top:60px}.hero-marquee{display:flex;justify-content:space-between;align-items:center;margin-top:38px;padding-top:27px;border-top:1px solid rgba(199,218,238,.8);font:700 12px "DM Sans";text-transform:uppercase;letter-spacing:1.8px;color:#7a8ca8}.hero-marquee i{font-style:normal;color:var(--blue)}
.section{padding:110px 0}.section-soft{background:var(--ice-2)}.section-heading.centered{text-align:center;max-width:760px;margin:0 auto 58px}.section-heading h2,.section-heading.split h2{font:800 clamp(38px,4vw,58px)/1.08 "DM Sans";letter-spacing:-2.7px;margin:17px 0;color:var(--navy)}.section-heading h2 span,.section-heading.split h2 span{color:var(--blue)}.section-heading>p,.section-heading.split p{font-size:17px;color:var(--muted);line-height:1.7}.section-heading.split{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:end;margin-bottom:52px}.section-heading.split>div:last-child{padding-bottom:9px}.section-heading.split .btn{margin-top:15px}.feature-bento{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.bento-card{background:#fff;border:1px solid #e4edf6;border-radius:var(--radius);padding:31px;min-height:330px;position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(11,55,110,.04)}.bento-wide{grid-column:span 2;display:flex;align-items:center;gap:20px}.bento-card h3{font:700 24px/1.2 "DM Sans";margin:18px 0 10px;color:var(--navy)}.bento-card p{color:var(--muted);line-height:1.65;margin:0}.bento-card a{display:inline-block;color:var(--blue);font-weight:700;font-size:14px;margin-top:22px}.bento-icon{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:var(--ice);color:var(--blue);font-size:18px}.bento-copy{flex:1}.theme-stack{width:46%;height:255px;position:relative}.mini-theme{position:absolute;width:145px;height:210px;border-radius:20px;border:5px solid #fff;box-shadow:0 18px 40px rgba(15,54,102,.14);display:grid;place-items:center;font:700 35px "Cormorant Garamond"}.mt-one{left:5px;top:32px;background:linear-gradient(160deg,#f8fcff,#dceeff);color:var(--blue);transform:rotate(-10deg)}.mt-two{left:85px;top:5px;background:linear-gradient(160deg,#e7f6ff,#fff0e7);color:#ff9471;transform:rotate(2deg)}.mt-three{right:-5px;top:40px;background:linear-gradient(150deg,#0a1d45,#114397);color:#8edcff;transform:rotate(11deg)}.name-demo{margin-top:35px;border-radius:18px;background:linear-gradient(145deg,#f1f8ff,#fff);padding:22px;border:1px solid var(--line)}.name-demo small{color:var(--muted)}.name-demo strong{display:block;font:600 22px "Cormorant Garamond";margin-top:5px;color:var(--navy)}.rsvp-bars{display:grid;gap:13px;margin-top:45px}.rsvp-bars i{height:12px;border-radius:99px;width:var(--w);background:linear-gradient(90deg,var(--blue),var(--cyan));position:relative}.rsvp-bars i:after{content:"";width:14px;height:14px;border:3px solid #fff;background:var(--blue);border-radius:50%;position:absolute;right:-4px;top:-4px;box-shadow:0 4px 12px rgba(47,108,244,.3)}.bento-dark{background:linear-gradient(145deg,#081b40,#103777);color:#fff}.bento-dark h3,.bento-dark p{color:#fff}.bento-dark p{opacity:.7}.bento-dark .bento-icon{background:rgba(255,255,255,.1);color:#8edcff}.map-art{height:130px;margin-top:25px;border-radius:18px;background:rgba(255,255,255,.06);position:relative;overflow:hidden}.map-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:25px 25px}.map-art i{position:absolute;width:110px;height:1px;background:#4e86da;transform-origin:left}.map-art i:nth-child(1){left:10px;top:80px;transform:rotate(-25deg)}.map-art i:nth-child(2){left:88px;top:34px;transform:rotate(38deg)}.map-art i:nth-child(3){left:155px;top:76px;transform:rotate(-15deg)}.map-art b{position:absolute;right:22px;top:42px;background:#fff;color:var(--navy);font-size:10px;padding:8px 12px;border-radius:20px}.bento-dashboard{min-height:350px}.studio-mock{width:58%;height:250px;background:#f8fbfe;border:1px solid var(--line);border-radius:18px;display:grid;grid-template-columns:38px 1fr 88px;gap:10px;padding:10px}.mock-sidebar{background:var(--navy);border-radius:10px}.mock-fields{display:grid;align-content:center;gap:12px}.mock-fields i{display:block;height:27px;border:1px solid #dce7f2;background:#fff;border-radius:7px}.mock-fields button{border:0;border-radius:7px;background:var(--blue);color:#fff;font-size:8px;padding:9px}.mock-preview{border-radius:12px;background:linear-gradient(160deg,#eaf5ff,#d9eaff);display:grid;place-items:center;font:700 26px "Cormorant Garamond";color:var(--blue)}
.template-showcase{overflow:hidden}.template-rail{display:flex;gap:22px;overflow:auto;padding:10px max(24px,calc((100vw - var(--container))/2)) 35px;scrollbar-width:none}.template-rail::-webkit-scrollbar{display:none}.theme-card{width:320px;min-width:320px}.theme-card-visual{height:410px;border-radius:28px;position:relative;overflow:hidden;display:grid;place-items:center;border:1px solid rgba(195,215,235,.7);transition:.35s}.theme-card:hover .theme-card-visual{transform:translateY(-7px);box-shadow:var(--shadow)}.theme-badge{position:absolute;left:18px;top:18px;background:rgba(255,255,255,.85);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(10px);padding:8px 11px;border-radius:99px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--navy);z-index:2}.theme-phone{width:174px;height:322px;border-radius:29px;background:#fff;border:7px solid rgba(255,255,255,.9);box-shadow:0 24px 55px rgba(10,42,92,.18);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:.35s}.theme-card:hover .theme-phone{transform:scale(1.03) rotate(1deg)}.theme-symbol{font:700 54px "Cormorant Garamond";margin-bottom:25px}.theme-phone strong{font:700 18px "DM Sans"}.theme-phone small{margin-top:7px;color:var(--muted)}.theme-card-meta{display:flex;align-items:center;justify-content:space-between;padding:18px 5px}.theme-card-meta span,.library-meta span{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:var(--blue);font-weight:800}.theme-card-meta h3{margin:5px 0 0;font:700 20px "DM Sans"}.theme-card-meta b{width:39px;height:39px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line)}.theme-minang .theme-card-visual,.theme-minang .library-visual,.theme-minang .builder-theme-visual{background:radial-gradient(circle at 50% 25%,#fff,#e6f4ff 55%,#d4eaff)}.theme-minang .theme-symbol{color:var(--blue)}.theme-garden .theme-card-visual,.theme-garden .library-visual,.theme-garden .builder-theme-visual{background:radial-gradient(circle at 20% 20%,#fff 0,#eff4ff 45%,#e5e9ff)}.theme-garden .theme-symbol{color:#3859a9}.theme-moon .theme-card-visual,.theme-moon .library-visual,.theme-moon .builder-theme-visual{background:radial-gradient(circle at 70% 20%,#315291,#091b42 70%)}.theme-moon .theme-phone{background:#0b2455;color:#fff}.theme-moon .theme-phone small{color:#aacaff}.theme-confetti .theme-card-visual,.theme-confetti .library-visual,.theme-confetti .builder-theme-visual{background:radial-gradient(circle at 20% 20%,#fff3dc,#e8f8ff 55%,#d9efff)}.theme-confetti .theme-symbol{color:#ff8b6f}.theme-orbit .theme-card-visual,.theme-orbit .library-visual,.theme-orbit .builder-theme-visual{background:radial-gradient(circle,#f7f2ff,#e4ddff)}.theme-orbit .theme-symbol{color:#735cf7}.theme-formal .theme-card-visual,.theme-formal .library-visual,.theme-formal .builder-theme-visual{background:linear-gradient(145deg,#fdfdfb,#edf2f8)}.theme-formal .theme-symbol{color:#284b7e}.theme-corporate .theme-card-visual,.theme-corporate .library-visual,.theme-corporate .builder-theme-visual{background:linear-gradient(145deg,#071a3d,#0e4188)}.theme-corporate .theme-phone{background:#0c2859;color:#fff}.theme-corporate .theme-phone small{color:#9bdcff}.theme-serene .theme-card-visual,.theme-serene .library-visual,.theme-serene .builder-theme-visual{background:radial-gradient(circle,#fff,#e9f5f6)}.theme-serene .theme-symbol{color:#367c96}
.section-deep{position:relative;background:linear-gradient(145deg,#071a3d,#0b2b65);color:#fff;overflow:hidden}.deep-glow{position:absolute;width:680px;height:680px;border-radius:50%;right:-250px;top:-300px;background:radial-gradient(circle,rgba(56,147,255,.25),transparent 70%)}.process-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;position:relative}.process-intro h2{font:800 56px/1.08 "DM Sans";letter-spacing:-2.8px;margin:20px 0}.process-intro h2 span{color:#83ccff}.process-intro p{max-width:420px;color:#a9c0df;font-size:17px;line-height:1.7}.process-intro .btn{margin-top:22px}.process-list{border-top:1px solid rgba(255,255,255,.14)}.process-list article{display:grid;grid-template-columns:54px 1fr 42px;gap:20px;align-items:center;padding:31px 0;border-bottom:1px solid rgba(255,255,255,.14)}.process-list>article>span{font:700 13px "DM Sans";color:#75c7ff}.process-list h3{margin:0 0 7px;font:700 23px "DM Sans"}.process-list p{margin:0;color:#9fb5d2;line-height:1.6}.process-list i{width:39px;height:39px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center;font-style:normal;color:#8edcff}.testimonial-section{background:#fff}.testimonial-wrap{position:relative;max-width:920px;text-align:center}.quote-mark{font:500 110px/1 "Cormorant Garamond";color:#dcecff}.testimonial-wrap blockquote{margin:-30px auto 35px;font:500 33px/1.5 "Cormorant Garamond";color:var(--navy);max-width:850px}.quote-person{display:flex;align-items:center;justify-content:center;gap:12px}.quote-person>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;font-size:11px;font-weight:800}.quote-person strong,.quote-person small{display:block;text-align:left}.quote-person small{margin-top:3px;color:var(--muted)}.quote-nav{display:flex;justify-content:center;gap:8px;margin-top:35px}.quote-nav button{width:40px;height:40px;border:1px solid var(--line);background:#fff;border-radius:50%}.pricing-section{background:var(--ice-2)}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}.price-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:34px;position:relative}.price-card.featured{border:2px solid var(--blue);box-shadow:0 24px 60px rgba(47,108,244,.14);transform:translateY(-12px)}.popular{position:absolute;right:18px;top:18px;padding:7px 10px;border-radius:99px;background:var(--blue);color:#fff;font-size:9px;text-transform:uppercase;font-weight:800;letter-spacing:1px}.plan-name{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:var(--blue);font-weight:800}.price-card h3{font:800 32px "DM Sans";margin:16px 0 9px;color:var(--navy)}.price-card h3 small{font-size:12px;color:var(--muted)}.price-card>p{color:var(--muted);line-height:1.6;min-height:76px}.price-card .btn{width:100%;margin:10px 0 22px}.price-card ul{list-style:none;padding:0;margin:0;display:grid;gap:13px}.price-card li{font-size:14px;color:#43516b}.price-card li:before{content:"✓";color:var(--green);font-weight:800;margin-right:10px}.faq-grid{display:grid;grid-template-columns:.7fr 1.1fr;gap:100px}.faq-grid h2{font:800 48px/1.1 "DM Sans";letter-spacing:-2px;margin:18px 0}.faq-grid h2 span{color:var(--blue)}.faq-grid>div:first-child>p{color:var(--muted);line-height:1.7}.faq-list{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item button{width:100%;border:0;background:none;display:flex;justify-content:space-between;align-items:center;padding:23px 0;text-align:left;font-weight:700;color:var(--navy)}.faq-item button i{font-style:normal;font-size:18px;transition:.25s}.faq-item>div{display:grid;grid-template-rows:0fr;transition:.3s}.faq-item>div p{overflow:hidden;margin:0;color:var(--muted);line-height:1.7;padding-right:50px}.faq-item.open>div{grid-template-rows:1fr}.faq-item.open>div p{padding-bottom:23px}.faq-item.open button i{transform:rotate(45deg)}.final-cta{position:relative;background:linear-gradient(135deg,#143d85,#286af0);color:#fff;text-align:center;padding:100px 0;overflow:hidden}.final-cta .container{position:relative}.final-cta h2{font:800 55px/1.08 "DM Sans";letter-spacing:-2.5px;margin:20px 0}.final-cta p{color:#c7ddff;font-size:17px}.final-cta .btn{margin-top:20px}.cta-orb{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.15)}.cta-a{width:490px;height:490px;left:-230px;top:-230px}.cta-b{width:620px;height:620px;right:-310px;bottom:-420px}.site-footer{background:#061630;color:#fff;padding:78px 0 24px}.footer-grid{display:grid;grid-template-columns:1.8fr repeat(3,1fr);gap:70px}.footer-grid>div:first-child p{max-width:320px;color:#93abc9;line-height:1.7}.made-by{font-size:11px;color:#6f89aa}.footer-grid h4{font:700 14px "DM Sans";margin:0 0 20px}.footer-grid>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-grid a:not(.brand){font-size:13px;color:#8fa6c3}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:55px;padding-top:23px;display:flex;justify-content:space-between;color:#6f89aa;font-size:11px}
.templates-page{padding-top:90px}.templates-hero{position:relative;padding:100px 0 70px;background:linear-gradient(180deg,#f7fbff,#eef7ff);overflow:hidden}.template-hero-orb{position:absolute;width:550px;height:550px;right:-120px;top:-270px;border-radius:50%;background:radial-gradient(circle,rgba(99,170,255,.28),transparent 68%)}.templates-hero h1{font:800 clamp(48px,5.2vw,72px)/1.04 "DM Sans";letter-spacing:-3.5px;margin:20px 0;color:var(--navy)}.templates-hero h1 span{color:var(--blue)}.templates-hero p{max-width:680px;color:var(--muted);font-size:17px;line-height:1.75}.template-library{padding:55px 0 110px}.filter-row{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:38px}.filter-chip{border:1px solid var(--line);padding:10px 15px;border-radius:99px;font-size:13px;font-weight:700}.filter-chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}.template-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.library-card{border:1px solid var(--line);border-radius:30px;overflow:hidden;background:#fff}.library-visual{height:540px;display:grid;place-items:center;position:relative}.library-device{width:230px;height:430px;border-radius:36px;background:#fff;border:8px solid rgba(255,255,255,.9);box-shadow:0 28px 65px rgba(10,42,92,.18);display:flex;flex-direction:column;justify-content:center;align-items:center}.library-device strong{font:700 23px "DM Sans"}.library-device small{margin-top:7px;color:var(--muted)}.preview-circle{position:absolute;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:var(--shadow-sm)}.library-meta{padding:25px 27px 28px;display:flex;justify-content:space-between;gap:30px}.library-meta h2{margin:6px 0 9px;font:700 25px "DM Sans"}.library-meta p{margin:0;color:var(--muted);line-height:1.6}.library-meta>a{align-self:end;color:var(--blue);font-size:13px;font-weight:700;white-space:nowrap}
.auth-page{background:#f3f8fd}.auth-shell{min-height:100vh;display:grid;grid-template-columns:.92fr 1.08fr}.auth-visual{position:relative;overflow:hidden;background:linear-gradient(145deg,#071a3d,#0c3779);padding:40px 55px;display:flex;flex-direction:column;color:#fff}.auth-visual:after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(72,163,255,.25),transparent 70%);right:-200px;bottom:-180px}.auth-art{position:relative;height:470px;flex:1;min-height:370px}.auth-orbit{position:absolute;border:1px solid rgba(255,255,255,.12);border-radius:50%}.orbit-one{width:420px;height:420px;left:50%;top:48%;transform:translate(-50%,-50%)}.orbit-two{width:300px;height:300px;left:50%;top:48%;transform:translate(-50%,-50%);border-style:dashed;animation:spinCenter 24s linear infinite}.floating-invite{position:absolute;width:210px;height:355px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(4deg);border-radius:30px;background:linear-gradient(160deg,#f7fcff,#cfe8ff);color:var(--navy);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 35px 80px rgba(0,0,0,.25);border:7px solid #fff}.floating-invite:before{content:"";position:absolute;inset:18px;border:1px solid rgba(47,108,244,.23);border-radius:20px}.floating-invite .mini-label{font-size:8px;letter-spacing:2px;z-index:1}.floating-invite strong{font:600 38px/1.05 "Cormorant Garamond";margin:18px 0;z-index:1}.floating-invite small{z-index:1;letter-spacing:1px}.floating-pill{position:absolute;background:rgba(255,255,255,.94);color:var(--navy);border-radius:14px;padding:11px 15px;font-size:11px;font-weight:700;box-shadow:0 18px 40px rgba(0,0,0,.18);animation:floatCard 5s ease-in-out infinite}.pill-rsvp{left:4%;top:58%}.pill-theme{right:2%;top:27%;animation-delay:1s}.auth-copy{position:relative;z-index:1;max-width:530px;padding-bottom:20px}.auth-copy h1{font:800 42px/1.08 "DM Sans";letter-spacing:-2px;margin:17px 0}.auth-copy p{color:#a9c2e1;line-height:1.7;max-width:470px}.auth-panel{display:grid;place-items:center;padding:55px 70px}.auth-card{width:min(100%,680px)}.auth-heading>span{font-size:12px;text-transform:uppercase;letter-spacing:1.4px;font-weight:800;color:var(--blue)}.auth-heading h2{font:800 36px "DM Sans";letter-spacing:-1.6px;margin:10px 0}.auth-heading p{color:var(--muted)}.auth-heading a,.auth-form a{color:var(--blue);font-weight:700}.auth-form{margin-top:32px;display:grid;gap:18px}.auth-form label,.editor-form label,.new-event-form label{display:grid;gap:8px;font-size:13px;font-weight:700;color:#293854}.auth-form input,.auth-form textarea,.auth-form select,.editor-form input,.editor-form textarea,.editor-form select,.new-event-form input{width:100%;border:1px solid #d7e3ef;background:#fff;border-radius:13px;padding:13px 14px;outline:none;color:var(--ink);transition:.2s}.auth-form input:focus,.editor-form input:focus,.editor-form textarea:focus,.editor-form select:focus,.new-event-form input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,108,244,.09)}.form-row,.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.password-field{position:relative}.password-field button{position:absolute;right:8px;top:8px;width:34px;height:34px;border:0;background:#f1f6fb;border-radius:9px;color:#8290a6}.check-label{display:flex;grid-template-columns:auto 1fr;align-items:flex-start;gap:10px;font-weight:500;color:var(--muted);line-height:1.5}.check-label input{width:17px;margin-top:2px}.check-label.compact{align-items:center}.auth-form-meta{display:flex;justify-content:space-between;font-size:13px}.auth-note{margin-top:18px;text-align:center;font-size:12px;color:var(--muted)}.auth-note span{color:var(--green);margin-right:6px}.demo-login{margin-top:22px;padding:14px;border-radius:14px;background:#edf6ff;display:grid;grid-template-columns:1fr auto;gap:4px 10px;font-size:12px}.demo-login strong{grid-row:span 2}.alert{padding:13px 15px;border-radius:13px;font-size:13px;margin:15px 0}.alert.success{background:#eafff6;color:#137855;border:1px solid #bcecd9}.alert.error{background:#fff0f2;color:#a93649;border:1px solid #ffd1d8}
.studio-page{background:#f4f7fb;overflow-x:hidden}.studio-shell{min-height:100vh;display:grid;grid-template-columns:244px 1fr}.studio-sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:#fff;border-right:1px solid #e3eaf2;padding:25px 19px;display:flex;flex-direction:column;z-index:40}.studio-sidebar>.brand{padding:0 10px;margin-bottom:28px}.studio-sidebar nav{display:grid;gap:4px}.sidebar-label{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:#9aa7ba;font-weight:800;padding:18px 12px 8px}.studio-sidebar nav a{display:flex;align-items:center;gap:12px;padding:11px 13px;border-radius:11px;font-size:13px;font-weight:600;color:#647187}.studio-sidebar nav a span{width:21px;text-align:center;color:#7d8da5}.studio-sidebar nav a:hover,.studio-sidebar nav a.active{background:#edf5ff;color:var(--navy)}.studio-sidebar nav a.active span{color:var(--blue)}.sidebar-upgrade{margin-top:auto;padding:17px;border-radius:16px;background:linear-gradient(145deg,#09214c,#12428d);color:#fff}.sidebar-upgrade>span{font-size:8px;background:#74caff;color:#08214b;border-radius:20px;padding:4px 7px;font-weight:900}.sidebar-upgrade strong{display:block;font-size:13px;margin:12px 0 5px}.sidebar-upgrade p{font-size:10px;line-height:1.5;color:#abc6e7}.sidebar-upgrade a{font-size:10px;color:#8edcff;font-weight:700}.studio-main{grid-column:2}.studio-topbar{height:76px;background:rgba(255,255,255,.92);border-bottom:1px solid #e3eaf2;padding:0 34px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:30;backdrop-filter:blur(14px)}.topbar-kicker{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:#98a5b7}.studio-topbar>div:nth-child(2)>strong{font-size:15px}.user-menu{display:flex;align-items:center;gap:10px}.user-avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(145deg,var(--blue),#5aa8ff);color:#fff;font-weight:800}.user-menu strong,.user-menu small{display:block}.user-menu strong{font-size:12px}.user-menu small{font-size:10px;color:var(--muted);margin-top:2px}.studio-menu{display:none}.studio-content{padding:30px 34px 55px;max-width:1600px;margin:auto}.dashboard-welcome{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.dashboard-welcome>div>span{font-size:12px;color:var(--blue);font-weight:700}.dashboard-welcome h1{font:800 30px "DM Sans";letter-spacing:-1.2px;margin:7px 0}.dashboard-welcome p{margin:0;color:var(--muted);font-size:14px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:19px}.stat-grid article{background:#fff;border:1px solid #e3eaf2;border-radius:17px;padding:19px;display:flex;gap:14px;align-items:center}.stat-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#edf5ff;color:var(--blue);font-size:18px}.stat-grid small,.stat-grid strong,.stat-grid em{display:block}.stat-grid small{color:var(--muted);font-size:10px}.stat-grid strong{font:800 25px "DM Sans";margin:3px 0;color:var(--navy)}.stat-grid em{font-style:normal;font-size:9px;color:#91a0b4}.dashboard-grid{display:grid;grid-template-columns:1.7fr .7fr;gap:18px}.panel{background:#fff;border:1px solid #e3eaf2;border-radius:20px;padding:22px}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.panel-kicker{font-size:9px;text-transform:uppercase;letter-spacing:1.2px;color:#94a2b6;font-weight:800}.panel-head h2{font:700 19px "DM Sans";margin:4px 0}.panel-head>a{font-size:11px;color:var(--blue);font-weight:700}.event-list{display:grid}.event-row{display:grid;grid-template-columns:76px 1fr auto;gap:16px;align-items:center;padding:15px 0;border-top:1px solid #edf1f5}.event-thumb{width:76px;height:95px;border-radius:14px;display:grid;place-items:center}.event-thumb span{width:48px;height:70px;border-radius:10px;background:rgba(255,255,255,.85);display:grid;place-items:center;font:700 22px "Cormorant Garamond";box-shadow:0 10px 22px rgba(18,56,108,.12)}.event-title-line{display:flex;gap:9px;align-items:center}.event-info h3{font:700 14px "DM Sans";margin:0}.status{padding:4px 7px;border-radius:99px;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.5px}.status.live{background:#e9fff6;color:#16845f}.status.draft{background:#f1f4f8;color:#738096}.event-info>p{font-size:10px;color:var(--muted);margin:6px 0}.event-metrics{display:flex;gap:14px;font-size:9px;color:#7c899c}.event-actions{display:flex;align-items:center;gap:9px}.event-actions>a:first-child{font-size:10px;color:var(--muted)}.activity-list{display:grid}.activity-list article{display:grid;grid-template-columns:33px 1fr;gap:11px;padding:13px 0;border-top:1px solid #edf1f5}.activity-list article>span{width:33px;height:33px;border-radius:10px;background:#edf5ff;color:var(--blue);display:grid;place-items:center}.activity-list strong,.activity-list p,.activity-list small{display:block}.activity-list strong{font-size:11px}.activity-list p{font-size:10px;color:var(--muted);margin:3px 0}.activity-list small{font-size:8px;color:#a3adbc}.empty-state{text-align:center;padding:60px 20px}.empty-art{width:75px;height:75px;border-radius:25px;background:#edf5ff;color:var(--blue);display:grid;place-items:center;margin:auto;font-size:25px}.empty-state h3{font:700 20px "DM Sans"}.empty-state p{color:var(--muted);font-size:13px}.empty-state .btn{margin-top:10px}
.builder-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px}.builder-header h1{font:800 31px "DM Sans";letter-spacing:-1.3px;margin:6px 0}.builder-header p{color:var(--muted);font-size:13px}.builder-steps{display:flex;align-items:center;margin-top:15px}.builder-steps span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#e7edf4;color:#8995a7;font-size:11px;font-weight:800}.builder-steps span.active{background:var(--blue);color:#fff}.builder-steps i{width:34px;height:1px;background:#dce4ed}.new-event-form{display:grid;gap:18px}.builder-section{background:#fff;border:1px solid #e3eaf2;border-radius:20px;padding:23px}.builder-section h2{font:700 17px "DM Sans";margin:0 0 18px}.event-type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.event-type-card{border:1px solid #dce5ef;border-radius:15px;padding:17px 11px;display:grid;justify-items:center;gap:8px;cursor:pointer}.event-type-card input,.builder-theme-card input,.editor-theme-option input{display:none}.event-type-card>span{width:35px;height:35px;border-radius:11px;background:#f0f5fa;display:grid;place-items:center;color:var(--blue);font-size:17px}.event-type-card strong{font-size:11px}.event-type-card.selected{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,108,244,.08);background:#f8fbff}.builder-title-row{display:flex;justify-content:space-between;align-items:center}.builder-title-row a{font-size:11px;color:var(--blue);font-weight:700}.builder-theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.builder-theme-card{border:1px solid #dce5ef;border-radius:16px;padding:10px;display:block;cursor:pointer}.builder-theme-card.hidden{display:none}.builder-theme-visual{height:150px;border-radius:12px;display:grid;place-items:center;position:relative}.builder-theme-visual>div{width:72px;height:115px;border-radius:13px;background:#fff;display:grid;place-items:center;font:700 30px "Cormorant Garamond";box-shadow:0 14px 30px rgba(12,47,95,.13)}.builder-theme-card>strong{font-size:12px;display:block;margin:10px 3px 3px}.builder-theme-card>span{font-size:9px;color:var(--muted);margin-left:3px}.builder-theme-card.selected{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,108,244,.08)}.compact-section small{font-weight:400;color:var(--muted)}.builder-submit{display:flex;justify-content:flex-end;align-items:center;gap:20px}.builder-submit>span{font-size:11px;color:var(--muted)}
.editor-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.editor-head>div:first-child>a{font-size:10px;color:var(--muted)}.editor-title{display:flex;align-items:center;gap:10px}.editor-title h1{font:800 27px "DM Sans";letter-spacing:-1px;margin:7px 0}.editor-head>div:first-child>p{font-size:9px;color:#9aa6b6;margin:0}.editor-head-actions{display:flex;align-items:center;gap:9px}.save-state{font-size:9px;color:#8290a3;margin-right:6px}.save-state.saving{color:#d39b29}.save-state.saved{color:var(--green)}.editor-layout{display:grid;grid-template-columns:minmax(460px,.92fr) minmax(420px,1.08fr);gap:18px;align-items:start}.editor-panel,.editor-preview{background:#fff;border:1px solid #e3eaf2;border-radius:20px;overflow:hidden}.editor-tabs{display:flex;border-bottom:1px solid #e8edf3;padding:0 18px}.editor-tabs button{border:0;background:none;padding:16px 14px;font-size:11px;font-weight:700;color:#7b889b;position:relative}.editor-tabs button.active{color:var(--blue)}.editor-tabs button.active:after{content:"";position:absolute;height:2px;left:12px;right:12px;bottom:-1px;background:var(--blue)}.editor-tabs button span{font-size:8px;background:#edf3f9;border-radius:99px;padding:3px 6px}.editor-form{padding:21px}.editor-tab{display:none}.editor-tab.active{display:grid;gap:18px}.field-group{border:1px solid #e6ebf1;border-radius:16px;padding:18px;display:grid;gap:15px}.field-group-head{display:flex;gap:11px;align-items:flex-start}.field-group-head>span{width:30px;height:30px;border-radius:9px;background:#edf5ff;color:var(--blue);display:grid;place-items:center;font-size:10px;font-weight:800}.field-group-head h3{font:700 14px "DM Sans";margin:0}.field-group-head p{font-size:9px;color:var(--muted);margin:3px 0 0}.editor-form label{font-size:10px}.editor-form input,.editor-form textarea,.editor-form select{font-size:12px;border-radius:10px;padding:11px 12px}.slug-field{display:flex;align-items:center;border:1px solid #d7e3ef;border-radius:10px;overflow:hidden;background:#f6f8fb}.slug-field span{font-size:9px;padding-left:10px;color:#7c899b}.slug-field input{border:0;background:#fff;border-radius:0}.switch-label{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center}.switch-label>input{display:none}.switch-label>span{width:38px;height:22px;border-radius:99px;background:#ccd5e1;position:relative;transition:.2s}.switch-label>span:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.2s;box-shadow:0 2px 5px rgba(0,0,0,.15)}.switch-label>input:checked+span{background:var(--blue)}.switch-label>input:checked+span:after{left:19px}.switch-label strong,.switch-label small{display:block}.switch-label small{font-weight:400;color:var(--muted);margin-top:2px}.editor-theme-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}.editor-theme-option{border:1px solid #e0e7ef;border-radius:12px;padding:10px;display:flex;align-items:center;gap:10px}.editor-theme-option.selected{border-color:var(--blue);background:#f8fbff}.theme-dot{width:38px;height:48px;border-radius:8px;background:var(--surface,#eef7ff)}.editor-theme-option strong,.editor-theme-option small{display:block}.editor-theme-option strong{font-size:10px}.editor-theme-option small{font-size:8px;color:var(--muted);font-weight:400;margin-top:3px}.rsvp-table{display:grid}.rsvp-row{display:grid;grid-template-columns:1fr 90px 45px;gap:10px;align-items:center;padding:11px 0;border-top:1px solid #edf1f5;font-size:10px}.rsvp-row.head{font-size:8px;color:#97a4b5;text-transform:uppercase}.rsvp-row strong,.rsvp-row small{display:block}.rsvp-row small{color:var(--muted);font-size:8px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.attendance{font-size:8px;padding:5px 7px;border-radius:99px;text-align:center}.attendance.hadir{background:#e8fff5;color:#17835f}.attendance.tidak_hadir{background:#fff1f3;color:#ad3f52}.empty-mini{padding:25px;text-align:center;color:var(--muted);font-size:11px}.danger-zone{border:1px solid #ffd4da;background:#fff8f9;border-radius:16px;padding:18px;display:flex;align-items:center;justify-content:space-between}.danger-zone h3{margin:0 0 4px;font-size:12px}.danger-zone p{margin:0;font-size:9px;color:var(--muted)}.editor-preview{position:sticky;top:96px}.preview-toolbar{height:54px;border-bottom:1px solid #e8edf3;display:flex;justify-content:space-between;align-items:center;padding:0 17px}.preview-toolbar>span{font-size:10px;font-weight:700}.preview-toolbar>div{display:flex;background:#eef3f8;border-radius:9px;padding:3px}.preview-toolbar button{border:0;background:none;border-radius:7px;padding:6px 10px;color:#8b98aa}.preview-toolbar button.active{background:#fff;color:var(--blue);box-shadow:0 2px 7px rgba(20,50,90,.1)}.preview-canvas{height:680px;background:linear-gradient(145deg,#eef3f8,#f8fafc);display:grid;place-items:center;padding:18px;overflow:hidden}.preview-canvas iframe{width:360px;height:640px;border:0;border-radius:22px;background:#fff;box-shadow:0 24px 55px rgba(13,48,95,.19);transition:.3s}.preview-canvas.desktop iframe{width:100%;height:620px;border-radius:14px}.preview-link{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-top:1px solid #e8edf3;font-size:8px;color:#8e9bad}.preview-link code{font-size:8px;background:#f2f5f8;padding:5px 7px;border-radius:6px;color:#526076}
.error-page{min-height:100vh;display:grid;place-items:center;background:#f5f9fe}.error-state{text-align:center;padding:60px 20px;position:relative}.error-state>span{font:800 80px "DM Sans";color:var(--blue)}.error-state h1{font:800 38px "DM Sans";letter-spacing:-1.6px;margin:0}.error-state p{color:var(--muted);max-width:480px;line-height:1.6;margin:15px auto 25px}.error-orb{position:absolute;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(62,139,255,.18),transparent 70%);left:50%;top:10px;transform:translateX(-50%)}
[data-reveal],[data-invite-reveal]{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}[data-reveal].revealed,[data-invite-reveal].revealed{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes spinCenter{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes phoneFloat{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(3deg) translateY(-13px)}}@keyframes floatCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(max-width:1100px){.hero-grid{gap:20px}.hero-copy h1{font-size:57px}.hero-stage{transform:scale(.9);transform-origin:center}.feature-bento{grid-template-columns:1fr 1fr}.bento-wide{grid-column:span 2}.pricing-grid{gap:14px}.process-grid{gap:60px}.footer-grid{gap:40px}.stat-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.editor-layout{grid-template-columns:1fr}.editor-preview{position:relative;top:auto}.event-type-grid{grid-template-columns:repeat(3,1fr)}.builder-theme-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:850px){.container{width:min(100% - 32px,var(--container))}.site-header{padding:10px 0}.nav-shell{height:52px}.nav-toggle{display:block;margin-left:auto}.main-nav{display:none;position:absolute;top:70px;left:16px;right:16px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow);flex-direction:column}.main-nav.open{display:flex}.nav-actions{display:none}.hero-section{padding-top:115px;min-height:auto}.hero-grid{grid-template-columns:1fr}.hero-copy{text-align:center}.hero-copy>p{margin-left:auto;margin-right:auto}.hero-actions,.hero-trust{justify-content:center}.hero-stage{height:530px;transform:scale(.85);margin-top:-10px}.hero-marquee{overflow:hidden;gap:30px;justify-content:flex-start;white-space:nowrap}.section{padding:80px 0}.section-heading.split{grid-template-columns:1fr;gap:10px}.feature-bento{grid-template-columns:1fr}.bento-wide{grid-column:auto;display:block}.theme-stack,.studio-mock{width:100%;margin-top:25px}.process-grid{grid-template-columns:1fr}.pricing-grid{grid-template-columns:1fr}.price-card.featured{transform:none}.faq-grid{grid-template-columns:1fr;gap:35px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}.template-grid{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{padding:45px 24px}.studio-shell{grid-template-columns:1fr}.studio-sidebar{transform:translateX(-105%);transition:.3s}.studio-sidebar.open{transform:none}.studio-main{grid-column:1}.studio-menu{display:block;border:0;background:#eef3f8;border-radius:9px;width:38px;height:38px}.studio-topbar{padding:0 18px}.studio-content{padding:23px 18px 45px}.dashboard-welcome{align-items:flex-start;gap:20px}.event-type-grid{grid-template-columns:repeat(2,1fr)}.builder-theme-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.hero-copy h1{font-size:43px;letter-spacing:-2.4px}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column;gap:16px}.hero-stage{height:455px;transform:scale(.72);margin:-30px -80px 0}.section-heading h2,.section-heading.split h2{font-size:37px}.feature-bento .bento-card{padding:24px}.bento-dashboard{display:block}.testimonial-wrap blockquote{font-size:25px}.final-cta h2{font-size:40px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:8px}.templates-hero h1{font-size:42px}.library-visual{height:420px}.library-device{width:180px;height:340px}.library-meta{display:block}.library-meta>a{display:inline-block;margin-top:15px}.form-row,.form-grid{grid-template-columns:1fr}.auth-heading h2{font-size:30px}.user-menu div{display:none}.dashboard-welcome{display:block}.dashboard-welcome .btn{margin-top:18px}.stat-grid{grid-template-columns:1fr}.event-row{grid-template-columns:62px 1fr}.event-thumb{width:62px;height:82px}.event-actions{grid-column:2}.builder-header{display:block}.builder-steps{margin-top:20px}.builder-theme-grid{grid-template-columns:1fr 1fr}.builder-theme-visual{height:130px}.builder-submit{display:block;text-align:right}.builder-submit>span{display:block;margin-bottom:10px}.editor-head{display:block}.editor-head-actions{margin-top:15px;flex-wrap:wrap}.editor-tabs{overflow:auto}.editor-tabs button{white-space:nowrap}.editor-panel{border-radius:14px}.editor-form{padding:14px}.field-group{padding:14px}.editor-theme-list{grid-template-columns:1fr}.preview-canvas{height:600px;padding:12px}.preview-canvas iframe{width:320px;height:570px}.preview-link{display:none}.rsvp-row{grid-template-columns:1fr 72px 32px}.process-intro h2,.faq-grid h2{font-size:39px}.theme-card{width:280px;min-width:280px}.theme-card-visual{height:370px}}

/* =========================================================
   MOMENIVA ROMANTIC REDESIGN — marketing, auth, template cards
   ========================================================= */
.romantic-marketing{--navy:#49323a;--navy-2:#6d3f4e;--blue:#b45d72;--blue-2:#d78691;--cyan:#e8b9ad;--ice:#fff4ee;--ice-2:#fffaf5;--ink:#392b30;--muted:#806d72;--line:#ead9d5;--lav:#b6a0c9;--peach:#efb5a7;--green:#7f9472;--shadow:0 28px 85px rgba(79,45,56,.12);--shadow-sm:0 14px 38px rgba(79,45,56,.09);background:#fffaf5;color:var(--ink)}
.romantic-marketing .container{width:min(1220px,calc(100% - 48px))}.romantic-header{padding:14px 0}.romantic-header.scrolled{background:rgba(255,250,245,.9);border-color:rgba(221,195,190,.65);box-shadow:0 8px 35px rgba(76,45,54,.05)}.romantic-brand{font:600 25px "Cormorant Garamond",serif;letter-spacing:.02em;color:#4f303b}.romantic-brand .brand-mark{width:36px;height:36px;transform:none;border-radius:50%;display:grid;place-items:center;background:#8a4055;box-shadow:0 10px 25px rgba(109,53,70,.17)}.romantic-brand .brand-mark i{position:static;border:0;color:#fff;font:31px/1 "Allura",cursive}.romantic-header .main-nav a{color:#705c62;font-size:13px}.romantic-header .main-nav a:after{background:#ac5a6e}.romantic-header .btn-primary,.romantic-marketing .btn-primary{background:#7b3d50;box-shadow:0 13px 30px rgba(123,61,80,.22)}.romantic-header .btn-primary:hover,.romantic-marketing .btn-primary:hover{box-shadow:0 17px 36px rgba(123,61,80,.29)}.romantic-marketing .btn-outline{border-color:#ddc8c3;background:rgba(255,255,255,.62);color:#5a3943}.romantic-marketing .btn-cream{background:#fff8f0;color:#603a46;box-shadow:0 15px 35px rgba(58,33,41,.14)}.romance-script{font:48px/1 "Allura",cursive;color:#ba6676}.soft-link{display:flex;align-items:center;gap:11px;color:#5b3b45;font-size:13px;font-weight:700}.soft-link i{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.75);border:1px solid rgba(144,82,96,.16);font-size:9px;font-style:normal}
.romance-hero{min-height:860px;padding:142px 0 30px;position:relative;overflow:hidden;background:radial-gradient(circle at 12% 8%,rgba(241,184,171,.4),transparent 32%),radial-gradient(circle at 88% 18%,rgba(187,166,201,.28),transparent 31%),linear-gradient(145deg,#fffaf4,#fbe9e5 52%,#f8eee5)}.romance-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:130px;background:linear-gradient(to bottom,transparent,#fffaf5)}.romance-hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:80px;align-items:center;position:relative;z-index:3}.romance-kicker{display:inline-flex;align-items:center;gap:9px;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:#8c5261}.romance-kicker i{font-style:normal;font-size:15px}.romance-copy h1{font:500 clamp(62px,6.3vw,92px)/.91 "Cormorant Garamond",serif;letter-spacing:-2px;margin:24px 0 27px;color:#432e35}.romance-copy h1 em{font:italic 500 .9em "Cormorant Garamond",serif;color:#a35165}.romance-copy>p{font-size:17px;line-height:1.8;color:#756168;max-width:610px}.romance-copy .hero-actions{margin-top:35px}.romance-trust{display:flex;align-items:center;gap:15px;margin-top:38px}.mini-portraits{display:flex}.mini-portraits span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:3px solid #faece8;margin-left:-9px;color:#fff;font:600 13px "Cormorant Garamond";background:#8b4b5d}.mini-portraits span:first-child{margin-left:0;background:#d17c82}.mini-portraits span:nth-child(2){background:#899678}.mini-portraits span:nth-child(3){background:#9a84ad}.romance-trust p{margin:0;color:#705d63;line-height:1.35}.romance-trust strong{font-size:12px}.romance-trust small{font-size:10px}.romance-stage{height:625px;position:relative;perspective:1100px}.stage-halo{position:absolute;width:530px;height:530px;border-radius:50%;left:52%;top:50%;transform:translate(-50%,-50%);background:rgba(255,247,237,.75);box-shadow:0 0 0 1px rgba(167,102,113,.08),0 0 100px rgba(255,247,234,.8)}.paper-invite{position:absolute;background:rgba(255,253,249,.95);border:1px solid rgba(126,70,83,.13);box-shadow:0 35px 95px rgba(80,42,53,.17);overflow:hidden}.paper-main{width:330px;height:520px;left:180px;top:22px;z-index:3;border-radius:170px 170px 24px 24px;padding:70px 28px 35px;text-align:center;transform:rotate(4deg);animation:romanceFloat 7s ease-in-out infinite}.paper-main:before{content:"";position:absolute;inset:13px;border:1px dashed rgba(149,88,99,.18);border-radius:155px 155px 15px 15px}.paper-main>*{position:relative}.paper-script{font:34px/1 "Allura";color:#bd6977}.paper-main small{display:block;font-size:8px;letter-spacing:.28em;margin:17px 0;color:#785361}.paper-main strong{display:block;font:500 57px/.86 "Cormorant Garamond";color:#473038}.paper-main strong i{font:italic 28px "Cormorant Garamond";color:#bb6474}.paper-main b{display:block;font:600 12px "Cormorant Garamond";letter-spacing:.15em;margin-top:25px}.paper-main button{border:0;border-radius:999px;background:#793e51;color:#fff;padding:10px 16px;font-size:8px;font-weight:800;margin-top:28px}.paper-side{width:230px;height:385px;right:20px;bottom:30px;z-index:1;transform:rotate(10deg);background:#8b4b61;color:#fff;padding:45px 25px}.paper-side:before{content:"";position:absolute;inset:13px;border:1px solid rgba(255,255,255,.25)}.paper-side span{font:italic 42px/.9 "Cormorant Garamond";display:block}.paper-side b{position:absolute;bottom:35px;right:28px;font:500 31px "Cormorant Garamond"}.photo-note{position:absolute;width:230px;height:300px;left:13px;bottom:37px;background:#fffaf3;padding:11px;transform:rotate(-8deg);z-index:2;box-shadow:0 22px 60px rgba(71,42,49,.16)}.photo-note .photo-art{height:235px;background:linear-gradient(155deg,#d19c90,#76515b);position:relative;overflow:hidden}.photo-note .photo-art:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 52% 27%,#ead0c5 0 12%,transparent 13%),linear-gradient(165deg,transparent 0 37%,rgba(57,39,43,.72) 38%)}.photo-note>span{display:block;text-align:center;font:24px/1.1 "Allura";color:#8d5260;margin-top:10px}.stage-flower{position:absolute;width:175px;height:175px;z-index:4;background:radial-gradient(circle at 50% 16%,#d27e89 0 15%,transparent 16%),radial-gradient(circle at 19% 50%,#d27e89 0 16%,transparent 17%),radial-gradient(circle at 81% 50%,#eaa89d 0 18%,transparent 19%),radial-gradient(circle at 50% 83%,#c76e7f 0 16%,transparent 17%),radial-gradient(circle,#c7a46b 0 12%,transparent 13%)}.sf-a{right:5px;top:0;transform:scale(.9);animation:romanceFloat 8s ease-in-out infinite reverse}.sf-b{left:95px;bottom:-6px;transform:scale(.65) rotate(20deg)}.stage-message{position:absolute;right:-4px;top:205px;z-index:5;padding:13px 16px;border-radius:18px;background:rgba(255,252,247,.92);backdrop-filter:blur(15px);box-shadow:0 18px 45px rgba(83,46,55,.13);display:flex;align-items:center;gap:11px}.stage-message>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#edf2e8;color:#78896d}.stage-message strong,.stage-message small{display:block}.stage-message strong{font-size:11px}.stage-message small{font-size:9px;color:#8c777c}.hero-petal{position:absolute;border-radius:100% 0 100% 0;background:#d48a93;opacity:.25;animation:petalDrift 8s ease-in-out infinite}.petal-one{width:35px;height:22px;left:8%;top:23%}.petal-two{width:24px;height:15px;left:45%;top:15%;animation-delay:-3s}.petal-three{width:42px;height:25px;right:6%;bottom:25%;animation-delay:-5s}.hero-flower-cluster{position:absolute;width:270px;height:270px;opacity:.28}.cluster-left{left:-110px;bottom:-35px;background:radial-gradient(circle at 50% 20%,#d98895 0 15%,transparent 16%),radial-gradient(circle at 20% 55%,#a4af90 0 25%,transparent 26%),radial-gradient(circle at 75% 60%,#efb4aa 0 20%,transparent 21%)}.cluster-right{right:-100px;top:-50px;background:radial-gradient(circle at 30% 30%,#b5a2c6 0 20%,transparent 21%),radial-gradient(circle at 75% 35%,#db9298 0 16%,transparent 17%),radial-gradient(circle at 60% 75%,#9daa8b 0 24%,transparent 25%)}.feeling-marquee{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;margin-top:45px;padding:28px 0;border-top:1px solid rgba(141,83,96,.14);font:600 12px "Cormorant Garamond";letter-spacing:.19em;text-transform:uppercase;color:#81676e}.feeling-marquee i{font-style:normal;color:#b96a7a}
.emotion-section{padding:125px 0;background:#fffaf5}.emotion-heading{text-align:center;max-width:860px}.emotion-heading h2,.romantic-section-head h2,.moments-copy h2,.process-heading h2,.romantic-faq h2{font:500 clamp(49px,5.5vw,74px)/.98 "Cormorant Garamond";letter-spacing:-1px;color:#452f36;margin:12px 0 24px}.emotion-heading>p{max-width:650px;margin:auto;font-size:16px;line-height:1.8;color:#7e6a70}.emotion-features{display:grid;grid-template-columns:1.12fr .88fr;gap:20px;margin-top:65px}.emotion-card{min-height:360px;border-radius:32px;padding:38px;background:#fff;border:1px solid rgba(150,95,104,.11);box-shadow:0 20px 60px rgba(83,49,57,.07);position:relative;overflow:hidden}.emotion-card small{font-size:8px;letter-spacing:.26em;font-weight:900;color:#a45467}.emotion-card h3{font:600 35px/1.05 "Cormorant Garamond";margin:14px 0 13px;color:#493139}.emotion-card p{font-size:13px;line-height:1.75;color:#7f6d72;max-width:500px}.feature-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:35px;align-items:center;background:linear-gradient(145deg,#f7dfd8,#fff8f2)}.feature-art{height:280px;position:relative}.story-paper{position:absolute;width:190px;height:250px;background:#fffaf2;border-radius:100px 100px 16px 16px;left:35px;top:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 18px 40px rgba(80,45,54,.14);transform:rotate(-5deg)}.story-paper i{font:28px "Allura";color:#bb6475}.story-paper b{font:500 45px "Cormorant Garamond"}.story-art-new>span{position:absolute;right:10px;top:45px;width:90px;height:90px;border-radius:50%;background:#8d4c5e;color:#fff;display:grid;place-items:center;font:600 30px "Cormorant Garamond"}.feature-guest{background:#eef1e8;display:flex;align-items:flex-end}.guest-name-loop{margin-top:32px;padding:18px;border-radius:20px;background:rgba(255,255,255,.68);border:1px solid rgba(115,135,101,.15)}.guest-name-loop span,.guest-name-loop strong{display:block}.guest-name-loop span{font:28px "Allura";color:#839278}.guest-name-loop strong{font:600 22px "Cormorant Garamond"}.feature-rsvp{background:#f0e9f3;display:flex;align-items:flex-end}.rsvp-bubbles{display:flex;gap:8px;align-items:center;margin-top:28px;flex-wrap:wrap}.rsvp-bubbles i,.rsvp-bubbles span{padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.74);font-size:10px;font-style:normal;font-weight:800}.rsvp-bubbles i{background:#8d789e;color:#fff}.feature-motion{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;background:#fff2ea}.motion-flower{height:250px;position:relative;display:grid;place-items:center}.motion-flower i{position:absolute;width:95px;height:140px;border-radius:100% 10% 100% 10%;background:#d67f8c;transform-origin:bottom center;animation:bloomPulse 5s ease-in-out infinite}.motion-flower i:nth-child(1){transform:rotate(0deg) translateY(-15px)}.motion-flower i:nth-child(2){transform:rotate(90deg) translateY(-15px);background:#e7a093}.motion-flower i:nth-child(3){transform:rotate(180deg) translateY(-15px);background:#b98dac}.motion-flower i:nth-child(4){transform:rotate(270deg) translateY(-15px);background:#9aa889}
.romantic-template-section{padding:125px 0;background:#f3e8e5;overflow:hidden}.romantic-section-head{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:end}.romantic-section-head>div:last-child p{color:#795f67;line-height:1.75}.romantic-section-head>div:last-child>a{display:inline-flex;gap:14px;margin-top:15px;color:#6b3d4b;font-size:12px;font-weight:900;border-bottom:1px solid rgba(102,58,71,.3);padding-bottom:7px}.template-garden{display:flex;gap:22px;overflow:auto;padding:65px max(24px,calc((100vw - 1220px)/2)) 20px;scrollbar-width:none}.template-garden::-webkit-scrollbar{display:none}.romantic-theme-card{min-width:365px;width:365px}.theme-artwork{height:500px;border-radius:190px 190px 28px 28px;position:relative;overflow:hidden;background:var(--theme-bg,#fff6f0);box-shadow:0 25px 70px rgba(75,43,52,.12);transition:.45s cubic-bezier(.2,.75,.25,1)}.romantic-theme-card:hover .theme-artwork{transform:translateY(-9px)}.theme-tier{position:absolute;top:20px;left:20px;z-index:4;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.78);backdrop-filter:blur(12px);font-size:8px;font-weight:900;letter-spacing:.12em}.theme-sheet{position:absolute;width:225px;height:365px;left:50%;top:58%;transform:translate(-50%,-50%) rotate(-3deg);z-index:2;border-radius:115px 115px 18px 18px;background:rgba(255,253,248,.94);box-shadow:0 22px 52px rgba(63,39,45,.17);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;transition:.45s}.romantic-theme-card:hover .theme-sheet{transform:translate(-50%,-52%) rotate(0deg)}.theme-sheet small{font-size:7px;letter-spacing:.2em;text-transform:uppercase}.theme-sheet strong{font:500 57px/.9 "Cormorant Garamond";margin:20px 0 12px}.theme-sheet p{font:25px/1 "Allura";margin:0}.theme-botanical{position:absolute;width:260px;height:260px;right:-65px;bottom:-40px;z-index:1;background:radial-gradient(circle at 50% 16%,var(--theme-accent,#d27f8d) 0 16%,transparent 17%),radial-gradient(circle at 19% 50%,var(--theme-accent,#d27f8d) 0 17%,transparent 18%),radial-gradient(circle at 82% 50%,var(--theme-accent2,#a2ad8e) 0 19%,transparent 20%),radial-gradient(circle at 50% 82%,var(--theme-accent2,#a2ad8e) 0 17%,transparent 18%);opacity:.72}.theme-open{position:absolute;right:18px;bottom:18px;z-index:5;width:45px;height:45px;border-radius:50%;background:rgba(255,255,255,.84);display:grid;place-items:center;font-weight:900}.theme-info{padding:20px 7px 0}.theme-info>div{display:flex;justify-content:space-between;align-items:baseline}.theme-info span{font-size:8px;letter-spacing:.22em;text-transform:uppercase;color:#8d7178}.theme-info h3{font:600 28px "Cormorant Garamond";margin:0}.theme-info>p{font-size:11px;line-height:1.6;color:#806b70}.theme-amora{--theme-bg:linear-gradient(145deg,#f8deda,#f5c4b9);--theme-accent:#c9657a;--theme-accent2:#91a17f}.theme-elysian{--theme-bg:linear-gradient(145deg,#e4e7dc,#cfd2c5);--theme-accent:#88957d;--theme-accent2:#b7a6bd}.theme-moonlit{--theme-bg:linear-gradient(145deg,#24223c,#151523);--theme-accent:#c4b0dd;--theme-accent2:#d2b574}.theme-moonlit .theme-sheet{background:#242238;color:#f7f0ea}.theme-joyful{--theme-bg:linear-gradient(145deg,#fff0be,#f8c6c2);--theme-accent:#ee7d76;--theme-accent2:#80bad6}.theme-reverie{--theme-bg:linear-gradient(145deg,#eee3f8,#dcefe9);--theme-accent:#a187c5;--theme-accent2:#f0aa98}.theme-soiree{--theme-bg:linear-gradient(145deg,#f5ead4,#e9d1bd);--theme-accent:#7d3248;--theme-accent2:#bf9a5d}.theme-maison{--theme-bg:linear-gradient(145deg,#e8c4c4,#c89083);--theme-accent:#74465f;--theme-accent2:#d7a77f}.theme-sage{--theme-bg:linear-gradient(145deg,#e7eadf,#f1d9c7);--theme-accent:#7e8e71;--theme-accent2:#d3a275}
.moments-section{padding:130px 0;background:#573443;color:#f9eee9}.moments-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.moments-copy .romance-script{color:#e7abaf}.moments-copy h2{color:#fff}.moments-copy p{color:#d8c2c7;line-height:1.8}.moments-copy .btn{margin-top:20px}.moment-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.moment-cards article{min-height:230px;border-radius:26px;padding:28px;display:flex;justify-content:space-between;align-items:flex-end;background:#7b4c5d;position:relative;overflow:hidden;transition:.35s}.moment-cards article:nth-child(2){background:#d18481}.moment-cards article:nth-child(3){background:#7d8c72}.moment-cards article:nth-child(4){background:#9e82a1}.moment-cards article:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-50px;top:-50px;border:1px solid rgba(255,255,255,.2)}.moment-cards article:hover{transform:translateY(-6px) rotate(-1deg)}.moment-cards article>span{font:500 38px "Cormorant Garamond";color:rgba(255,255,255,.55)}.moment-cards small{font-size:8px;letter-spacing:.22em}.moment-cards h3{font:600 29px "Cormorant Garamond";margin:7px 0 0}
.gentle-process{padding:125px 0;background:#fffaf5}.process-heading{text-align:center;max-width:850px;margin:auto}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:65px}.process-steps article{text-align:center;padding:40px 30px;border-top:1px solid #e3cec9;position:relative}.process-steps article>span{position:absolute;top:-11px;left:50%;transform:translateX(-50%);background:#fffaf5;padding:0 13px;font:600 16px "Cormorant Garamond";color:#a25a6b}.step-icon{width:90px;height:90px;border-radius:50%;display:grid;place-items:center;background:#f3ded8;margin:8px auto 25px;color:#985065;font-size:27px}.process-steps article:nth-child(2) .step-icon{background:#e7ebdf;color:#708066}.process-steps article:nth-child(3) .step-icon{background:#eee5f1;color:#836c93}.process-steps h3{font:600 31px "Cormorant Garamond";margin:0 0 10px}.process-steps p{font-size:13px;line-height:1.75;color:#806d72}
.love-note-section{padding:120px 0;background:#ecddd9}.love-note{text-align:center;max-width:930px}.quote-flower{display:inline-grid;width:55px;height:55px;border-radius:50%;place-items:center;background:#fff7f1;color:#a95c6e;font-size:23px}.love-note>p{font:italic 500 clamp(31px,4vw,48px)/1.38 "Cormorant Garamond";color:#50343d;margin:30px 0}.love-person{display:flex;justify-content:center;align-items:center;gap:13px}.love-person>span{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:#754052;color:#fff;font:600 15px "Cormorant Garamond"}.love-person strong,.love-person small{display:block;text-align:left}.love-person strong{font-size:12px}.love-person small{font-size:9px;color:#80676e;margin-top:3px}
.romantic-pricing{padding:125px 0;background:#fffaf5}.romantic-section-head.centered{display:block;text-align:center;max-width:850px}.romantic-section-head.centered>p{max-width:570px;margin:auto;color:#7d686e}.romantic-price-grid{margin-top:60px}.romantic-price-grid .price-card{border-color:#ead8d3;border-radius:28px;background:#fffdfa}.romantic-price-grid .price-card h3{font-family:"Cormorant Garamond";font-weight:600;color:#4b3139}.romantic-featured{background:#754052;color:#fff;border-color:#754052}.romantic-featured h3,.romantic-featured .plan-name{color:#fff}.romantic-featured p,.romantic-featured li{color:#e9d8dc}.romantic-featured .btn-primary{background:#fff7ef;color:#693b49;box-shadow:none}.romantic-featured .popular{background:#d7a273;color:#4c2f36}
.romantic-faq{padding:125px 0;background:#f2e8e5}.romantic-faq .faq-grid{align-items:start}.romantic-faq .faq-grid>div:first-child>p{color:#7c686e;line-height:1.8}.romantic-faq .faq-item{border-color:#dbc5c1}.romantic-faq .faq-item button{color:#4f353d}.romantic-faq .faq-item.open{background:rgba(255,250,245,.66);border-radius:18px;padding:0 18px;border:1px solid rgba(141,81,95,.12)}
.romantic-final{min-height:650px;padding:120px 0;display:grid;place-items:center;text-align:center;position:relative;overflow:hidden;background:linear-gradient(145deg,#713e50,#4e303d);color:#fff}.romantic-final .romance-script{color:#e9adb2}.romantic-final h2{font:500 clamp(51px,6vw,82px)/.97 "Cormorant Garamond";margin:15px auto 22px;max-width:1050px}.romantic-final p{color:#dfcdd1;margin-bottom:32px}.final-flower{position:absolute;width:380px;height:380px;opacity:.18;background:radial-gradient(circle at 50% 16%,#fff 0 17%,transparent 18%),radial-gradient(circle at 18% 50%,#fff 0 17%,transparent 18%),radial-gradient(circle at 82% 50%,#fff 0 17%,transparent 18%),radial-gradient(circle at 50% 82%,#fff 0 17%,transparent 18%)}.ff-left{left:-160px;bottom:-130px}.ff-right{right:-160px;top:-130px;transform:rotate(40deg)}
.romantic-footer{background:#38272e;color:#f6e9e3;position:relative;overflow:hidden}.romantic-footer .romantic-brand{color:#fff}.romantic-footer .romantic-brand .brand-mark{background:#f1ddd6}.romantic-footer .romantic-brand .brand-mark i{color:#7a4052}.romantic-footer p{color:#cbb8bc}.romantic-footer h4{color:#fff}.romantic-footer a{color:#cdbbc0}.romantic-footer .made-by{color:#9f898e;font:italic 13px "Cormorant Garamond"}.footer-flower{position:absolute;width:360px;height:360px;border-radius:50%;right:-150px;top:-170px;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 35px rgba(255,255,255,.025),0 0 0 70px rgba(255,255,255,.018)}
/* Template library */
.romantic-library-page{background:#fffaf5}.romantic-library-hero{min-height:620px;padding:165px 0 100px;text-align:center;position:relative;overflow:hidden;background:linear-gradient(145deg,#fff8f1,#f3e1de)}.romantic-library-hero .container{max-width:930px;position:relative;z-index:2}.romantic-library-hero h1{font:500 clamp(58px,7vw,94px)/.9 "Cormorant Garamond";letter-spacing:-1.5px;color:#493139;margin:18px 0 28px}.romantic-library-hero h1 em{font:italic 500 .83em "Cormorant Garamond";color:#a55467}.romantic-library-hero p{max-width:700px;margin:auto;color:#79656b;line-height:1.8}.library-flower{position:absolute;width:330px;height:330px;opacity:.28;background:radial-gradient(circle at 50% 17%,#ce7482 0 16%,transparent 17%),radial-gradient(circle at 18% 50%,#ce7482 0 17%,transparent 18%),radial-gradient(circle at 82% 50%,#e4a095 0 19%,transparent 20%),radial-gradient(circle at 50% 83%,#9aa78a 0 18%,transparent 19%)}.lf-one{left:-100px;bottom:-90px}.lf-two{right:-95px;top:-90px;transform:rotate(35deg)}.romantic-library{padding:80px 0 130px}.romantic-filter{justify-content:center;margin-bottom:60px}.romantic-filter .filter-chip{border-radius:999px;border-color:#e1cdc8;background:#fff9f4;color:#745d63}.romantic-filter .filter-chip.active{background:#754052;color:#fff;border-color:#754052}.romantic-library-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px 32px}.library-art{height:620px;border-radius:310px 310px 30px 30px;display:block;position:relative;overflow:hidden;background:var(--theme-bg,#f4e0dc);box-shadow:0 30px 80px rgba(76,44,53,.12)}.library-botanical{position:absolute;width:360px;height:360px;right:-80px;bottom:-60px;background:radial-gradient(circle at 50% 16%,var(--theme-accent,#cb7180) 0 16%,transparent 17%),radial-gradient(circle at 18% 50%,var(--theme-accent,#cb7180) 0 17%,transparent 18%),radial-gradient(circle at 82% 50%,var(--theme-accent2,#93a083) 0 19%,transparent 20%),radial-gradient(circle at 50% 82%,var(--theme-accent2,#93a083) 0 17%,transparent 18%);opacity:.75}.library-invite-sheet{position:absolute;width:285px;height:460px;left:50%;top:52%;transform:translate(-50%,-50%) rotate(-3deg);border-radius:145px 145px 20px 20px;background:rgba(255,253,248,.95);box-shadow:0 28px 70px rgba(70,38,47,.17);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;transition:.45s}.romantic-library-card:hover .library-invite-sheet{transform:translate(-50%,-53%) rotate(0)}.library-invite-sheet small{font-size:8px;letter-spacing:.22em;text-transform:uppercase}.library-invite-sheet strong{font:500 75px/.85 "Cormorant Garamond";margin:25px 0 16px}.library-invite-sheet p{font:31px/1 "Allura";margin:0}.library-invite-sheet i{font-size:8px;font-style:normal;letter-spacing:.18em;margin-top:20px}.theme-moonlit .library-invite-sheet{background:#25243a;color:#f8f0e8}.library-preview{position:absolute;right:22px;bottom:22px;padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.82);backdrop-filter:blur(12px);font-size:9px;font-weight:900;display:flex;gap:12px;align-items:center}.library-copy{display:flex;justify-content:space-between;gap:25px;padding:24px 8px 0}.library-copy>div{max-width:68%}.library-copy>div>span{font-size:8px;letter-spacing:.22em;color:#95747c;text-transform:uppercase}.library-copy h2{font:600 34px "Cormorant Garamond";margin:7px 0}.library-copy p{font-size:11px;line-height:1.65;color:#7d696f}.library-copy>a{align-self:flex-start;display:flex;gap:12px;font-size:10px;font-weight:900;color:#754052;padding-bottom:6px;border-bottom:1px solid rgba(117,64,82,.25);white-space:nowrap}
/* Romantic auth */
.romantic-auth{--navy:#49323a;--blue:#a95669;--line:#ead8d3;--ink:#3e2d33;--muted:#7f6b71;background:#fffaf5}.romantic-auth .auth-shell{grid-template-columns:1.08fr .92fr}.romantic-auth .auth-visual{background:linear-gradient(145deg,#6f3e50,#4b303c);overflow:hidden}.romantic-auth .auth-copy .romance-script{color:#edb5ba}.romantic-auth .auth-copy h1{font:500 58px/.98 "Cormorant Garamond";letter-spacing:-1px}.romantic-auth .auth-copy p{color:#d9c4c8}.auth-romance-art{height:470px;position:relative;margin:10px 0 25px}.auth-invite-card{position:absolute;width:245px;height:390px;left:50%;top:47%;transform:translate(-50%,-50%) rotate(3deg);border-radius:125px 125px 18px 18px;background:#fff8ef;box-shadow:0 30px 70px rgba(24,15,19,.24);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#4e303a;z-index:3}.auth-invite-card>span{font:29px "Allura";color:#b45d70}.auth-invite-card small{font-size:7px;letter-spacing:.23em;margin:12px}.auth-invite-card strong{font:500 48px/.86 "Cormorant Garamond"}.auth-invite-card strong i{font:italic 22px "Cormorant Garamond";color:#ab5267}.auth-invite-card b{font:600 10px "Cormorant Garamond";letter-spacing:.14em;margin-top:25px}.auth-photo-card{position:absolute;width:175px;height:235px;left:9%;bottom:20px;background:#fff5eb;padding:9px;transform:rotate(-9deg);z-index:2;box-shadow:0 20px 50px rgba(20,12,15,.2)}.auth-photo-card>div{height:180px;background:linear-gradient(145deg,#d59b8f,#76515b);position:relative}.auth-photo-card>div:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 52% 27%,#ead1c7 0 12%,transparent 13%),linear-gradient(165deg,transparent 0 37%,rgba(57,39,43,.72) 38%)}.auth-photo-card>span{font:20px "Allura";color:#905164;display:block;text-align:center;margin-top:8px}.auth-rsvp-pill{position:absolute;right:4%;top:25%;z-index:4;padding:11px 14px;border-radius:999px;background:rgba(255,247,240,.94);color:#6f3c4c;font-size:9px;font-weight:900;box-shadow:0 12px 30px rgba(25,13,18,.16)}.auth-flower{position:absolute;width:180px;height:180px;opacity:.4;background:radial-gradient(circle at 50% 16%,#dc8f98 0 17%,transparent 18%),radial-gradient(circle at 18% 50%,#dc8f98 0 17%,transparent 18%),radial-gradient(circle at 82% 50%,#9aaa87 0 19%,transparent 20%),radial-gradient(circle at 50% 82%,#e5a89d 0 17%,transparent 18%)}.af-one{left:-30px;top:0}.af-two{right:-50px;bottom:0;transform:rotate(30deg)}.romantic-auth .auth-panel{background:#fffaf5}.romantic-auth .auth-card{max-width:590px}.romantic-auth .auth-heading>span{color:#a24e64}.romantic-auth .auth-heading h2{font:600 43px "Cormorant Garamond";letter-spacing:-.5px}.romantic-auth .auth-form input,.romantic-auth .auth-form textarea,.romantic-auth .auth-form select{border-color:#e4d3cf;background:#fffdfa}.romantic-auth .btn-primary{background:#793e51;box-shadow:0 14px 30px rgba(121,62,81,.2)}.romantic-auth .auth-note{color:#718568}.romantic-auth .demo-login{background:#f3e7e3;border-color:#e3cec9}
@keyframes romanceFloat{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(2deg) translateY(-13px)}}@keyframes petalDrift{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(18px,-22px) rotate(90deg)}}@keyframes bloomPulse{0%,100%{filter:saturate(.95);opacity:.9}50%{filter:saturate(1.15);opacity:1}}
@media(max-width:1050px){.romance-hero-grid{grid-template-columns:1fr;gap:35px}.romance-copy{text-align:center}.romance-copy>p{margin-left:auto;margin-right:auto}.romance-copy .hero-actions,.romance-trust{justify-content:center}.romance-stage{width:min(700px,100%);margin:auto}.emotion-features{grid-template-columns:1fr}.romantic-section-head{grid-template-columns:1fr;gap:15px}.moments-grid{grid-template-columns:1fr}.moments-copy{text-align:center}.moments-copy p{max-width:650px;margin-left:auto;margin-right:auto}.romantic-library-grid{gap:50px 24px}.library-art{height:540px}.library-invite-sheet{width:245px;height:400px}.romantic-auth .auth-shell{grid-template-columns:1fr}.romantic-auth .auth-visual{display:none}}
@media(max-width:850px){.romantic-header .main-nav{background:#fffaf5;border-color:#e3d0cc}.romance-hero{padding-top:120px}.romance-stage{height:565px;transform:scale(.88);transform-origin:top center;margin-bottom:-60px}.feeling-marquee{overflow:hidden;justify-content:flex-start;gap:28px;white-space:nowrap}.feature-story,.feature-motion{grid-template-columns:1fr}.feature-art,.motion-flower{height:210px}.template-garden{padding-top:45px}.moments-section,.emotion-section,.romantic-template-section,.gentle-process,.love-note-section,.romantic-pricing,.romantic-faq{padding-top:90px;padding-bottom:90px}.process-steps{grid-template-columns:1fr}.process-steps article{max-width:620px;margin:auto}.romantic-library-grid{grid-template-columns:1fr}.library-art{height:620px}.romantic-library-card{max-width:620px;margin:auto;width:100%}}
@media(max-width:600px){.romantic-marketing .container{width:min(100% - 30px,1220px)}.romance-script{font-size:38px}.romance-hero{min-height:auto}.romance-copy h1{font-size:53px;letter-spacing:-1px}.romance-copy>p{font-size:15px}.romance-copy .hero-actions{flex-direction:column}.romance-trust{align-items:flex-start;text-align:left}.romance-stage{height:465px;transform:scale(.68);width:650px;left:50%;margin-left:-325px;margin-bottom:-130px}.feeling-marquee{margin-top:10px}.emotion-heading h2,.romantic-section-head h2,.moments-copy h2,.process-heading h2,.romantic-faq h2{font-size:44px}.emotion-card{padding:27px;min-height:330px}.emotion-card h3{font-size:30px}.story-paper{left:50%;transform:translateX(-50%) rotate(-5deg)}.story-art-new>span{right:5%}.romantic-theme-card{min-width:290px;width:290px}.theme-artwork{height:410px}.theme-sheet{width:185px;height:300px}.theme-sheet strong{font-size:47px}.moment-cards{grid-template-columns:1fr}.moment-cards article{min-height:190px}.love-note>p{font-size:28px}.romantic-final{min-height:560px}.romantic-final h2{font-size:46px}.romantic-library-hero{min-height:540px;padding:130px 0 80px}.romantic-library-hero h1{font-size:52px}.romantic-library{padding-top:55px}.romantic-filter{justify-content:flex-start;overflow:auto;padding-bottom:8px}.romantic-filter .filter-chip{white-space:nowrap}.library-art{height:470px}.library-invite-sheet{width:210px;height:345px}.library-invite-sheet strong{font-size:58px}.library-copy{display:block}.library-copy>div{max-width:100%}.library-copy>a{display:inline-flex;margin-top:10px}.romantic-footer .footer-grid{grid-template-columns:1fr}.romantic-footer .footer-grid>div:first-child{grid-column:auto}}
/* Theme colors inside Studio / builder */
.theme-amora{--surface:#f4d6d1}.theme-elysian{--surface:#dde2d6}.theme-moonlit{--surface:#28263d}.theme-joyful{--surface:#ffe8ba}.theme-reverie{--surface:#e8def3}.theme-soiree{--surface:#efe1c9}.theme-maison{--surface:#ddb7b2}.theme-sage{--surface:#e1e6d9}
.theme-amora .builder-theme-visual{background:linear-gradient(145deg,#f8deda,#f1bcb3)}.theme-elysian .builder-theme-visual{background:linear-gradient(145deg,#e9ebe3,#cbd3c5)}.theme-moonlit .builder-theme-visual{background:linear-gradient(145deg,#302d4a,#151523);color:#fff}.theme-joyful .builder-theme-visual{background:linear-gradient(145deg,#fff0bd,#fac2bc)}.theme-reverie .builder-theme-visual{background:linear-gradient(145deg,#eee3f8,#dcefe9)}.theme-soiree .builder-theme-visual{background:linear-gradient(145deg,#f5ead5,#e8d0bb)}.theme-maison .builder-theme-visual{background:linear-gradient(145deg,#e4c0c1,#c58c80)}.theme-sage .builder-theme-visual{background:linear-gradient(145deg,#e8ebe1,#eed7c5)}
.theme-amora .builder-theme-visual>div,.theme-elysian .builder-theme-visual>div,.theme-joyful .builder-theme-visual>div,.theme-reverie .builder-theme-visual>div,.theme-soiree .builder-theme-visual>div,.theme-maison .builder-theme-visual>div,.theme-sage .builder-theme-visual>div{font-family:"Cormorant Garamond";font-weight:600;color:#65424d}.theme-moonlit .builder-theme-visual>div{font-family:"Cormorant Garamond";color:#e6d7ef}

/* ======================================================================
   MOMENIVA P0–P2 DESIGN SYSTEM — wedding editorial, accessible, cohesive
   ====================================================================== */
:root{
  --navy:#472d36;--navy-2:#5c3844;--blue:#9d5062;--blue-2:#b86b7d;--cyan:#ead0c8;
  --ice:#fff7f2;--ice-2:#fcfaf6;--white:#fff;--ink:#392a2f;--muted:#74636a;
  --line:#eaded8;--lav:#9b83b3;--peach:#efb79b;--green:#708063;--danger:#a94151;
  --rose:#9d5062;--rose-dark:#713848;--blush:#f4ddd7;--ivory:#fffaf5;--sage:#dce4d4;--champagne:#d9bd8f;
  --shadow:0 28px 80px rgba(72,43,52,.12);--shadow-sm:0 14px 34px rgba(72,43,52,.08);--radius:26px;--container:1200px;
  --serif:"Cormorant Garamond",Georgia,serif;--sans:"DM Sans",system-ui,sans-serif;--script:"Allura",cursive;
}
html{scroll-padding-top:92px}body{font-family:var(--sans);background:var(--ivory);color:var(--ink)}body.nav-open,body.studio-nav-open{overflow:hidden}
::selection{background:#e8c5ca;color:#442b34}
.skip-link{position:fixed;left:16px;top:10px;z-index:9999;transform:translateY(-150%);background:#fff;color:var(--rose-dark);border:1px solid var(--line);padding:11px 16px;border-radius:12px;font-weight:700;box-shadow:var(--shadow-sm)}.skip-link:focus{transform:none}
:where(a,button,input,select,textarea):focus-visible{outline:3px solid rgba(157,80,98,.3);outline-offset:3px}
.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.75,.25,1)}.js [data-reveal].revealed{opacity:1;transform:none}.no-js [data-reveal]{opacity:1;transform:none}
h1,h2,h3,.section-heading h2,.section-heading.split h2,.hero-copy h1,.bento-card h3{font-family:var(--serif);letter-spacing:-.035em}.romance-script,.section-script{font-family:var(--script)}

.brand{font:600 24px/1 var(--serif);letter-spacing:-.02em;color:var(--ink);gap:11px}.brand-mark{width:38px;height:38px;transform:none;border-radius:50%;display:grid;place-items:center;background:var(--rose-dark);box-shadow:0 8px 20px rgba(113,56,72,.2)}.brand-mark:before{content:"";position:absolute;inset:4px;border:1px solid rgba(255,255,255,.45);border-radius:50%}.brand-mark span{font:500 25px var(--serif);font-style:italic;color:#fff;transform:translateY(-1px)}.brand-word{transform:translateY(-1px)}.brand-light .brand-word{color:#fff}.brand-light .brand-mark{background:#f7e8df}.brand-light .brand-mark span{color:var(--rose-dark)}

.site-header{padding:16px 0}.site-header.scrolled{padding:9px 0;background:rgba(255,250,245,.9);border-bottom:1px solid rgba(226,210,203,.72)}.nav-shell{height:60px;gap:24px}.nav-drawer{display:flex;align-items:center;flex:1}.main-nav{gap:28px}.main-nav a{font-size:14px;color:#654f57}.main-nav a:after{background:var(--rose)}.nav-actions{margin-left:auto}.nav-toggle{color:var(--ink);border-radius:50%;background:#fff;border:1px solid var(--line);padding:9px}.nav-toggle svg,.studio-menu svg,.sidebar-icon svg,.password-field button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-icon-close{display:none}.nav-toggle[aria-expanded="true"] .nav-icon-open{display:none}.nav-toggle[aria-expanded="true"] .nav-icon-close{display:inline-flex}
.btn{min-height:44px;font-size:14px}.btn-primary{background:linear-gradient(135deg,var(--rose-dark),var(--rose));box-shadow:0 12px 28px rgba(113,56,72,.22)}.btn-primary:hover{box-shadow:0 18px 38px rgba(113,56,72,.27)}.btn-outline{border-color:var(--line);color:var(--rose-dark);background:#fffaf7}.btn-ghost{color:var(--rose-dark)}.btn-cream{background:#fff4ea;color:var(--rose-dark)}

/* Hero interaction and editorial type */
.romance-copy h1{font-family:var(--serif);font-weight:600;letter-spacing:-.045em}.romance-copy h1 em{font-weight:500}.romance-copy>p{font-size:17px}.paper-main a{display:inline-flex;align-items:center;justify-content:center;margin-top:20px;border-radius:999px;padding:10px 15px;background:var(--rose-dark);color:#fff;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.paper-main a:hover{transform:translateY(-2px)}

/* Real template screenshots */
.theme-screenshot,.library-art,.builder-theme-visual{position:relative;overflow:hidden;background:#eadfd8}.theme-screenshot>img,.library-art>img,.builder-theme-visual>img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 18%;transition:transform .7s cubic-bezier(.2,.75,.25,1),filter .45s ease}.romantic-theme-card:hover .theme-screenshot>img,.romantic-library-card:hover .library-art>img,.builder-theme-card:hover .builder-theme-visual>img{transform:scale(1.035)}.theme-screenshot:after,.library-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,12,15,.02),rgba(20,12,15,.33));pointer-events:none}.theme-screenshot .theme-tier,.library-art .theme-tier{z-index:2}.theme-screenshot .theme-open,.library-art .library-preview{z-index:2;background:rgba(255,250,245,.92);color:var(--rose-dark);backdrop-filter:blur(8px)}.romantic-theme-card{display:flex;flex-direction:column;border-radius:30px;background:#fff;border:1px solid var(--line);box-shadow:0 16px 42px rgba(72,43,52,.06);overflow:hidden}.romantic-theme-card .theme-artwork{border-radius:0;aspect-ratio:4/5}.romantic-theme-card .theme-info{padding:20px 20px 22px;display:block}.theme-card-actions{display:flex;gap:10px;margin-top:18px}.theme-card-actions a{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:10px 13px;border-radius:999px;border:1px solid var(--line);font-size:12px;font-weight:700}.theme-card-actions a:last-child{background:var(--rose-dark);color:#fff;border-color:var(--rose-dark)}
.romantic-library-card{overflow:hidden}.library-art{min-height:640px}.library-art img{position:absolute;inset:0}.library-copy{align-items:flex-end}.theme-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.theme-meta span{font-size:10px;background:#f7efeb;color:#76545e;padding:7px 10px;border-radius:999px}.library-actions{display:flex;gap:10px;flex-wrap:wrap}.library-actions .btn{font-size:12px;padding:10px 15px}.filter-chip{min-height:44px;display:inline-flex;align-items:center}.filter-chip.active{background:var(--rose-dark);color:#fff;border-color:var(--rose-dark)}

/* Auth */
.auth-page{background:#fffaf5}.auth-visual{background:linear-gradient(145deg,#6e3447,#9f5968 58%,#c48b82)}.auth-card{border-color:var(--line);box-shadow:var(--shadow)}.auth-heading h2{font-family:var(--serif);font-size:42px}.auth-form label{color:#5f4850}.auth-form input,.auth-form select,.auth-form textarea{border-color:#e4d8d2;background:#fffdfb;min-height:48px}.password-field button{width:44px;height:44px;display:grid;place-items:center;color:#80616b;background:transparent;border:0}.check-label a,.auth-form-meta a,.auth-heading a{color:var(--rose-dark)}

/* Studio cohesion */
.studio-page{background:#f8f4ef}.studio-sidebar{background:#fffaf6;border-right:1px solid var(--line);box-shadow:none}.studio-brand{padding:22px 22px 12px}.studio-sidebar nav a{color:#67535a;border-radius:14px;min-height:46px}.studio-sidebar nav a:hover{background:#f4e9e5;color:var(--rose-dark)}.studio-sidebar nav a.active{background:#efe0dc;color:var(--rose-dark);box-shadow:inset 0 0 0 1px #e3cec8}.sidebar-icon{width:21px;height:21px;background:transparent;color:currentColor}.sidebar-icon svg{width:19px;height:19px}.sidebar-label{color:#a38d94}.sidebar-upgrade{background:linear-gradient(150deg,#6b3446,#9e596a);color:#fff}.sidebar-upgrade a{color:#fff}.studio-main{background:#f8f4ef}.studio-topbar{background:rgba(255,250,246,.9);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.topbar-kicker{color:var(--rose)}.user-avatar{background:#ead6d2;color:var(--rose-dark)}.studio-menu{border:1px solid var(--line);background:#fff;border-radius:12px;color:var(--rose-dark);width:44px;height:44px;display:none;place-items:center}.studio-overlay{display:none}.dashboard-welcome h1,.builder-header h1,.editor-title h1,.panel-head h2,.field-group h3{font-family:var(--serif)}.dashboard-welcome h1{font-size:44px}.stat-grid article,.panel,.builder-section,.editor-panel,.editor-preview{border-color:var(--line);box-shadow:0 12px 34px rgba(72,43,52,.055)}.stat-icon{background:#f1e3df;color:var(--rose-dark)}.panel-kicker{color:var(--rose)}.event-card-preview{background:#f0e0dc}.event-card a,.panel-head a{color:var(--rose-dark)}.builder-theme-card,.event-type-card{border-color:var(--line)}.builder-theme-card.selected,.event-type-card.selected{border-color:var(--rose);box-shadow:0 0 0 3px rgba(157,80,98,.12)}.builder-theme-visual{height:220px}.builder-theme-visual img{object-position:50% 15%}.theme-badge{z-index:2}.builder-submit{background:#fffaf6;border-top-color:var(--line)}
.editor-tabs{border-bottom-color:var(--line)}.editor-tabs button{min-height:46px}.editor-tabs button.active{color:var(--rose-dark);border-bottom-color:var(--rose)}.field-group{border-bottom-color:var(--line)}.field-group input,.field-group textarea,.field-group select{border-color:#e1d5d0;background:#fffdfb}.field-group-head>span{background:#f1e3df;color:var(--rose-dark)}.editor-theme-option{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:14px;overflow:hidden}.editor-theme-option>img{width:72px;height:82px;object-fit:cover;border-radius:12px}.editor-theme-option .theme-dot{display:none}.editor-theme-option.selected{border-color:var(--rose);background:#fff7f4}.preview-canvas{background:#eadfda}.preview-toolbar button{min-width:42px;min-height:38px}.preview-toolbar button.active{background:var(--rose-dark);color:#fff}.status.live{background:#e6eee0;color:#4d6846}.save-state.saved{color:#5b7652}

/* Uploads */
.media-field-group{gap:18px}.media-uploader{position:relative;border:1px dashed #d9c8c2;background:#fffaf7;border-radius:20px;overflow:hidden}.cover-uploader{display:grid;grid-template-columns:180px 1fr;gap:22px;padding:14px;align-items:center}.cover-uploader img{width:180px;height:210px;object-fit:cover;border-radius:14px}.cover-uploader>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.cover-uploader strong{font-family:var(--serif);font-size:25px}.cover-uploader span{font-size:12px;color:var(--muted)}.gallery-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-uploader{height:220px}.gallery-uploader img{width:100%;height:100%;object-fit:cover}.gallery-uploader label{position:absolute;inset:auto 10px 10px;min-height:40px;background:rgba(255,250,245,.93);border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--rose-dark);cursor:pointer;backdrop-filter:blur(8px)}.media-status{position:absolute;top:10px;right:10px;max-width:calc(100% - 20px);padding:6px 9px;border-radius:999px;font-size:10px;background:#fff}.media-status:empty{display:none}.media-status.success{color:#4c6d49}.media-status.error{color:#9f3548}.media-status.uploading{color:#76555f}.studio-page .alert.success{background:#edf3e9;color:#4a6844}.studio-page .alert.error{background:#fff0f1;color:#9b3749}

@media(max-width:1000px){
  .nav-shell{gap:14px}.nav-toggle{display:grid;place-items:center;margin-left:auto}.nav-drawer{position:fixed;inset:0 0 auto 0;top:0;min-height:100dvh;background:rgba(255,250,245,.98);display:flex;flex-direction:column;align-items:stretch;padding:110px 24px 30px;opacity:0;visibility:hidden;transform:translateY(-16px);transition:.3s ease;z-index:-1}.nav-drawer.open{opacity:1;visibility:visible;transform:none}.main-nav{margin:0;display:flex;flex-direction:column;gap:0}.main-nav a{font:600 34px var(--serif);padding:16px 2px;border-bottom:1px solid var(--line)}.main-nav a:after{display:none}.nav-actions{margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr}.nav-actions .btn{width:100%}
  .romantic-library-card{grid-template-columns:1fr}.library-art{min-height:560px}.library-copy{padding:28px}.library-actions{margin-top:20px}
  .studio-menu{display:grid}.studio-sidebar{position:fixed;z-index:120;left:0;top:0;bottom:0;transform:translateX(-105%);transition:.3s ease}.studio-sidebar.open{transform:none}.studio-overlay{display:block;position:fixed;inset:0;z-index:110;background:rgba(40,24,30,.38);opacity:0;visibility:hidden;transition:.25s}.studio-overlay.open{opacity:1;visibility:visible}.studio-main{margin-left:0}
}
@media(max-width:700px){
  .container{width:min(100% - 28px,var(--container))}.site-header{padding:10px 0}.nav-shell{height:54px;padding:0}.brand{font-size:22px}.brand-mark{width:34px;height:34px}.nav-actions{grid-template-columns:1fr}.nav-actions .btn{min-height:50px}.romance-copy h1{font-size:clamp(49px,14vw,68px);line-height:.94}.hero-actions{align-items:stretch;flex-direction:column;gap:12px}.hero-actions .btn,.hero-actions .soft-link{width:100%;justify-content:center;min-height:50px}.feeling-marquee{overflow:hidden;gap:20px;justify-content:flex-start;white-space:nowrap}.template-garden{padding-left:14px}.romantic-theme-card{min-width:min(84vw,340px)}
  .romantic-library-hero{padding-top:120px}.romantic-library-hero h1{font-size:clamp(48px,13vw,67px)}.romantic-filter{overflow-x:auto;justify-content:flex-start;flex-wrap:nowrap;padding-bottom:8px}.filter-chip{flex:0 0 auto}.library-art{min-height:520px}.library-copy{padding:22px}.library-copy h2{font-size:38px}.library-actions{display:grid;grid-template-columns:1fr}.library-actions .btn{width:100%}
  .auth-shell{display:block}.auth-visual{min-height:390px;padding:24px}.auth-romance-art{transform:scale(.72);transform-origin:center top}.auth-copy{display:none}.auth-panel{padding:20px 14px}.auth-card{padding:26px 20px}.form-row{grid-template-columns:1fr}.auth-heading h2{font-size:36px}
  .studio-content{padding:22px 14px}.studio-topbar{padding:10px 14px}.user-menu>div{display:none}.dashboard-welcome{align-items:stretch;flex-direction:column}.dashboard-welcome .btn{width:100%}.dashboard-welcome h1{font-size:38px}.stat-grid{grid-template-columns:1fr 1fr}.editor-head{align-items:stretch;flex-direction:column}.editor-head-actions{align-items:stretch;display:grid;grid-template-columns:1fr 1fr}.editor-head-actions .save-state{grid-column:1/-1}.editor-layout{display:block}.editor-preview{position:relative;top:auto;margin-top:20px}.editor-tabs{overflow-x:auto}.editor-tabs button{flex:0 0 auto}.form-grid{grid-template-columns:1fr}.cover-uploader{grid-template-columns:1fr}.cover-uploader img{width:100%;height:280px}.gallery-upload-grid{grid-template-columns:1fr}.gallery-uploader{height:280px}.editor-theme-list{grid-template-columns:1fr 1fr}.editor-theme-option{grid-template-columns:58px 1fr;padding:8px}.editor-theme-option>img{width:58px;height:72px}.builder-theme-grid{grid-template-columns:1fr 1fr}.builder-theme-visual{height:190px}
}
@media(max-width:390px){
  .brand-word{font-size:21px}.nav-toggle{width:42px;height:42px}.stat-grid{grid-template-columns:1fr}.editor-head-actions{grid-template-columns:1fr}.editor-theme-list,.builder-theme-grid{grid-template-columns:1fr}.romantic-theme-card{min-width:88vw}.library-art{min-height:470px}.auth-card{padding:24px 16px}.studio-content{padding-left:10px;padding-right:10px}
}
@media(prefers-reduced-motion:reduce){.js [data-reveal]{opacity:1;transform:none;transition:none}.theme-screenshot>img,.library-art>img,.builder-theme-visual>img{transition:none}}

/* Mobile navigation icon normalization */
.nav-toggle .nav-icon-open,
.nav-toggle .nav-icon-close{
  width:22px;
  height:22px;
  margin:0;
  background:transparent;
  align-items:center;
  justify-content:center;
}
.nav-toggle .nav-icon-open{display:inline-flex}
.nav-toggle .nav-icon-close{display:none}
.nav-toggle[aria-expanded="true"] .nav-icon-open{display:none}
.nav-toggle[aria-expanded="true"] .nav-icon-close{display:inline-flex}

/* UI refinements 11 */
.dashboard-grid-v3{grid-template-columns:1fr}
.theme-open{right:16px;bottom:16px;width:auto;min-width:0;height:auto;min-height:38px;padding:10px 14px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:11px;line-height:1;white-space:nowrap;box-shadow:0 10px 28px rgba(70,39,49,.12)}
.theme-open,.library-preview{max-width:calc(100% - 32px)}
.theme-info>p,.library-copy p,.dashboard-welcome-v3 p,.event-info>p,.field-group-head p,.panel p,.empty-state p,.empty-mini,.notice-banner p{font-size:14px;line-height:1.72}
.theme-card-actions a,.library-actions .btn,.preview-link span{font-size:13px}
.panel-kicker,.theme-info span,.library-copy>div>span,.plan-option span{font-size:11px}
.event-metrics span,.stat-grid-v3 small{font-size:12px}
.save-state{gap:9px;line-height:1.1}
.save-state>span{display:inline-flex;align-items:center;line-height:1.2}
.save-state svg{flex:0 0 auto}
.preview-link{align-items:center;flex-wrap:wrap}
.cover-uploader{align-items:flex-start}
.cover-copy{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0}
.cover-copy .media-helper{margin:0;font-size:13px;line-height:1.7;color:var(--muted)}
.cover-select-field{display:flex;flex-direction:column;gap:8px;width:100%}
.media-action-row,.audio-upload-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.media-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;white-space:nowrap}
.media-action-btn svg{width:16px;height:16px;flex:0 0 auto}
.media-action-row small,.audio-upload-row small{font-size:13px;line-height:1.5;color:var(--muted);margin:0}
.audio-uploader{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.gallery-item-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.gallery-item-actions .icon-button,.gallery-item-actions label{display:inline-flex;align-items:center;justify-content:center}
.video-uploader .media-copy{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.video-uploader .media-copy p{margin:0;font-size:14px;line-height:1.7;color:var(--muted)}
.video-uploader .media-status,.cover-uploader .media-status,.audio-uploader .media-status{position:static;display:inline-flex;align-items:center;margin-top:4px}
.video-gallery-item .media-status,.gallery-uploader .media-status{position:static;display:block;margin-top:8px;padding-left:2px}
.video-gallery-item{padding:12px}
.video-gallery-item .gallery-item-actions{position:absolute;right:14px;top:14px}
@media(max-width:760px){
  .theme-open{right:12px;bottom:12px;padding:9px 12px;font-size:10px}
  .theme-info>p,.library-copy p,.dashboard-welcome-v3 p,.event-info>p,.field-group-head p,.panel p,.empty-state p,.empty-mini,.notice-banner p{font-size:13px}
  .media-action-row,.audio-upload-row{align-items:stretch;flex-direction:column}
  .media-action-row .media-action-btn,.audio-upload-row .media-action-btn{width:100%}
}

/* ===== resources/ui/legacy/app-v3.css ===== */
:root{
  --v3-bg:#f8f4ef;--v3-surface:#fffdfa;--v3-surface-2:#f3e9e4;--v3-text:#33242a;--v3-muted:#78676d;--v3-line:#e5d9d3;
  --v3-rose:#9d5062;--v3-rose-dark:#713244;--v3-rose-soft:#f3e2e4;--v3-sage:#64745f;--v3-gold:#b68a4b;
  --v3-shadow:0 22px 60px rgba(64,39,47,.09);--v3-shadow-sm:0 10px 28px rgba(64,39,47,.07);--v3-radius:22px;
  --serif:"Cormorant Garamond",serif;--sans:"DM Sans",sans-serif;
}
svg{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;display:block}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.skip-link:focus{z-index:9999}
.btn svg{width:18px;height:18px}.btn:focus-visible,.icon-button:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(157,80,98,.28);outline-offset:2px}
.icon-button,.icon-link{width:42px;height:42px;display:inline-grid;place-items:center;border:1px solid var(--v3-line);border-radius:13px;background:var(--v3-surface);color:var(--v3-rose-dark);transition:.2s ease;position:relative;padding:0}.icon-button:hover,.icon-link:hover{background:var(--v3-rose-soft);border-color:#dcbfc6;transform:translateY(-1px)}.icon-button svg,.icon-link svg{width:19px;height:19px}.icon-button.danger{color:#a33c4d}.icon-button[data-tooltip]:after,.icon-link[data-tooltip]:after,[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%,4px);white-space:nowrap;background:#38272e;color:#fff;font:600 11px var(--sans);padding:7px 9px;border-radius:8px;opacity:0;visibility:hidden;pointer-events:none;transition:.16s;z-index:90}.icon-button[data-tooltip]:hover:after,.icon-link[data-tooltip]:hover:after,[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%,0)}
.alert{display:flex;align-items:center;gap:12px;border-radius:16px;padding:14px 16px;margin-bottom:18px}.alert svg{flex:0 0 auto}.notice-banner{display:flex;align-items:center;gap:14px;padding:15px 18px;background:#fff9e7;border:1px solid #ead9a6;border-radius:18px;margin-bottom:22px;color:#6f582a}.notice-banner>svg{width:24px;height:24px}.notice-banner>div{flex:1}.notice-banner strong{display:block}.notice-banner p{margin:3px 0 0;font-size:13px}.notice-banner.warning{background:#fff1f2;border-color:#efc8ce;color:#7b3342}

/* Authentication */
.auth-shell-v3{min-height:100dvh;display:grid;grid-template-columns:minmax(440px,42%) 1fr;background:#fffaf6}.auth-shell-v3 .auth-visual{min-height:100dvh;position:relative;overflow:hidden;padding:34px 42px;display:flex;flex-direction:column;background:linear-gradient(150deg,#5e293a 0%,#914d60 54%,#c38b82 100%)}.auth-shell-v3 .auth-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.16),transparent 28%),linear-gradient(120deg,transparent 55%,rgba(255,255,255,.08));pointer-events:none}.auth-shell-v3 .auth-visual>.brand{position:relative;z-index:3}.auth-shell-v3 .auth-copy{position:relative;z-index:3;margin-top:auto;max-width:470px;padding-bottom:28px;color:#fff}.auth-shell-v3 .auth-copy .romance-script{font:400 40px Allura;color:#f8d9d5}.auth-shell-v3 .auth-copy h1{font:600 clamp(42px,4.2vw,62px)/.98 var(--serif);letter-spacing:-1.8px;margin:8px 0 18px}.auth-shell-v3 .auth-copy p{font:400 15px/1.75 var(--sans);color:rgba(255,255,255,.78);max-width:410px}.auth-shell-v3 .auth-romance-art{position:absolute;inset:90px 0 auto;height:430px;transform:scale(.82);transform-origin:50% 20%}.auth-shell-v3 .auth-panel{min-height:100dvh;display:grid;place-items:center;padding:54px 5vw}.auth-shell-v3 .auth-card{width:min(100%,560px);border:0;background:transparent;box-shadow:none;padding:0}.auth-back{font-size:13px;font-weight:700;color:var(--v3-muted);display:inline-flex;margin-bottom:35px}.auth-back:hover{color:var(--v3-rose-dark)}.auth-mobile-header{display:none}.auth-heading-v3{margin-bottom:28px}.auth-heading-v3>span{font:700 11px var(--sans);text-transform:uppercase;letter-spacing:1.7px;color:var(--v3-rose)}.auth-heading-v3 h2{font:600 clamp(38px,4vw,50px)/1 var(--serif);letter-spacing:-1.2px;margin:9px 0 10px;color:var(--v3-text)}.auth-heading-v3 p{margin:0;color:var(--v3-muted);font-size:14px}.auth-heading-v3 a,.label-row a{color:var(--v3-rose-dark);font-weight:700}.auth-form-v3{display:grid;gap:17px}.auth-form-v3 .field{display:grid;gap:8px;color:var(--v3-text);font-size:13px;font-weight:700}.label-row{display:flex;align-items:center;justify-content:space-between}.label-row a{font-size:12px}.input-with-icon{position:relative}.input-with-icon>svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:19px;height:19px;color:#a3868f;pointer-events:none}.auth-form-v3 input,.auth-form-v3 select,.settings-form input,.settings-form select,.settings-form textarea,.guest-form-drawer input,.guest-form-drawer select,.guest-form-drawer textarea{width:100%;height:55px;border:1px solid var(--v3-line);border-radius:15px;background:#fff;padding:0 16px;color:var(--v3-text);transition:.2s}.input-with-icon input{padding-left:49px}.auth-form-v3 input:hover,.auth-form-v3 input:focus,.settings-form input:focus,.guest-form-drawer input:focus,.guest-form-drawer textarea:focus,.guest-form-drawer select:focus{border-color:#c896a2;box-shadow:0 0 0 4px rgba(157,80,98,.08)}.password-field input{padding-right:52px}.password-field button{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:12px}.password-field button:hover{background:var(--v3-rose-soft)}.password-field button svg{position:static;transform:none}.field-help{font-weight:400;color:var(--v3-muted)}.field-error{font-weight:600;color:#ad374c;font-size:12px}.field.has-error input{border-color:#cf6878;background:#fff8f8}.block-error{margin-top:-10px}.custom-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:13px;font-weight:500;color:var(--v3-muted)}.custom-check input{position:absolute;opacity:0;width:1px;height:1px}.check-box{flex:0 0 20px;width:20px;height:20px;border:1px solid #cebcc0;border-radius:6px;background:#fff;display:grid;place-items:center;margin-top:1px}.check-box svg{width:13px;height:13px;opacity:0;color:#fff}.custom-check input:checked+.check-box{background:var(--v3-rose-dark);border-color:var(--v3-rose-dark)}.custom-check input:checked+.check-box svg{opacity:1}.btn-auth{height:55px;border-radius:15px;margin-top:3px}.auth-note-v3{display:flex;align-items:center;gap:8px;justify-content:center;margin-top:20px;color:var(--v3-muted);font-size:12px}.auth-note-v3 svg{color:var(--v3-sage)}.demo-login-v3{margin-top:24px;border:1px dashed #d9c6c2;background:#fff8f4;border-radius:16px;padding:14px 15px;display:flex;align-items:center;justify-content:space-between;gap:15px}.demo-login-v3 div{display:grid;gap:3px}.demo-login-v3 strong{font-size:12px}.demo-login-v3 span{font-size:11px;color:var(--v3-muted)}.demo-login-v3 button{border:0;background:transparent;color:var(--v3-rose-dark);font-weight:700;font-size:12px;display:flex;align-items:center;gap:7px}.local-reset-link,.local-otp{margin-top:20px;padding:16px;border-radius:16px;background:#f4ece8;border:1px solid var(--v3-line);display:grid;gap:7px}.local-reset-link a{word-break:break-all;color:var(--v3-rose-dark);font-size:12px}.local-otp{text-align:center}.local-otp strong{font:700 34px var(--sans);letter-spacing:8px;color:var(--v3-rose-dark)}.local-otp small{color:var(--v3-muted)}.otp-input{text-align:center;font-size:28px;letter-spacing:10px}.auth-secondary-link{text-align:center;font-size:13px}

/* Studio shell */
.studio-v3{color:var(--v3-text)}.studio-v3 .studio-shell{display:block;min-height:100vh}.studio-v3 .studio-sidebar{width:272px;padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px}.studio-v3 .studio-main{margin-left:272px;min-width:0}.studio-v3 .studio-brand{padding:10px 12px 14px;margin-bottom:4px}.studio-v3 .studio-sidebar nav{display:flex;flex-direction:column;gap:4px}.studio-v3 .studio-sidebar nav a{display:flex;align-items:center;gap:12px;padding:11px 14px;min-height:48px}.studio-v3 .sidebar-icon{display:grid;place-items:center;flex:0 0 20px;width:20px;height:20px}.studio-v3 .sidebar-icon svg{width:20px;height:20px}.studio-v3 .sidebar-text{width:auto;min-width:0;flex:1;white-space:nowrap;text-align:left;color:inherit;font-size:14px;line-height:1.2}.studio-v3 .sidebar-label{padding:18px 14px 8px;font-size:10px}.studio-v3 .studio-topbar{min-height:76px;padding:12px 28px;display:flex;align-items:center}.topbar-title{display:grid;gap:2px}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:11px}.topbar-notification{position:relative}.topbar-notification>span{position:absolute;right:-3px;top:-5px;min-width:18px;height:18px;border-radius:99px;background:var(--v3-rose-dark);color:#fff;font-size:10px;display:grid;place-items:center}.user-dropdown{position:relative}.user-menu{border:0;background:transparent;display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:14px;color:var(--v3-text);max-width:280px}.user-menu:hover{background:#f2e9e5}.user-menu>svg{width:15px;height:15px;color:var(--v3-muted)}.user-meta{min-width:0}.user-meta strong,.user-meta small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dropdown-menu{position:absolute;right:0;top:calc(100% + 10px);width:220px;background:#fff;border:1px solid var(--v3-line);border-radius:16px;padding:8px;box-shadow:var(--v3-shadow);opacity:0;visibility:hidden;transform:translateY(-5px);transition:.18s;z-index:100}.user-dropdown.open .user-dropdown-menu{opacity:1;visibility:visible;transform:none}.user-dropdown-menu a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:10px;font-size:13px;font-weight:600;color:var(--v3-text)}.user-dropdown-menu a:hover{background:var(--v3-rose-soft)}.user-dropdown-menu svg{width:18px;height:18px}.studio-v3 .studio-content{padding:28px 32px 42px;max-width:none;margin:0}.sidebar-upgrade{border-radius:18px;padding:17px;margin-top:auto}.sidebar-upgrade span{font-size:9px;letter-spacing:1.4px}.sidebar-upgrade strong{display:block;margin-top:8px}.sidebar-upgrade p{font-size:11px;line-height:1.5}.sidebar-upgrade a{display:inline-block;margin-top:5px;font-size:12px;font-weight:700}
.page-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.page-heading-row h1,.checkin-header h1{font:600 46px/1 var(--serif);margin:7px 0;color:var(--v3-text)}.page-heading-row p,.checkin-header p{margin:0;color:var(--v3-muted)}.page-heading-actions{display:flex;gap:10px;flex-wrap:wrap}.panel-kicker{text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:700}.dashboard-welcome-v3{padding:8px 0 25px}.dashboard-welcome-v3 span{font-size:13px;color:var(--v3-rose)}.dashboard-welcome-v3 h1{font:600 clamp(38px,4vw,54px)/1 var(--serif);margin:8px 0 12px;letter-spacing:-1.5px}.dashboard-welcome-v3 p{color:var(--v3-muted);margin:0}.dashboard-welcome-v3 .btn svg{width:19px}.stat-grid-v3{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat-grid-v3 article{padding:20px;border-radius:18px;background:var(--v3-surface);display:flex;gap:14px;align-items:center}.stat-grid-v3 .stat-icon{width:45px;height:45px;display:grid;place-items:center;border-radius:14px;flex:0 0 auto}.stat-grid-v3 .stat-icon svg{width:21px;height:21px}.stat-grid-v3 small{font-size:11px}.stat-grid-v3 strong{font-size:26px}.stat-grid-v3 em{font-size:10px}.dashboard-grid-v3{grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);gap:20px;margin-top:18px;align-items:start}.event-row-v3{display:grid;grid-template-columns:100px minmax(0,1fr) auto;align-items:center;gap:18px;padding:15px 0}.event-row-v3+.event-row-v3{border-top:1px solid var(--v3-line)}.event-thumb-photo{height:116px;border-radius:16px;overflow:hidden;position:relative;display:block}.event-thumb-photo img{width:100%;height:100%;object-fit:cover}.event-thumb-overlay{position:absolute;inset:0;background:rgba(54,30,39,.35);display:grid;place-items:center;color:#fff;opacity:0;transition:.2s}.event-thumb-photo:hover .event-thumb-overlay{opacity:1}.event-title-line h3{font:600 21px var(--serif);margin:0}.event-info>p{font-size:12px;color:var(--v3-muted);margin:6px 0}.event-badges{display:flex;gap:6px;margin-bottom:7px}.plan-pill{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;background:#eee2dd;color:#6f3d4a;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.8px}.plan-pill.plan-signature{background:#efe1c9;color:#765c2d}.plan-pill.plan-bespoke{background:#2f2730;color:#fff}.plan-pill.expired{background:#fee4e7;color:#9d3347}.event-metrics{display:flex;flex-wrap:wrap;gap:12px}.event-metrics span{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--v3-muted)}.event-metrics svg{width:14px;height:14px}.event-actions-v3{display:flex;align-items:center;gap:7px;position:relative;flex-wrap:wrap;justify-content:flex-end}.row-action-menu{position:absolute;right:0;top:48px;width:200px;background:#fff;border:1px solid var(--v3-line);box-shadow:var(--v3-shadow);border-radius:14px;padding:7px;opacity:0;visibility:hidden;z-index:30}.event-actions-v3.menu-open .row-action-menu{opacity:1;visibility:visible}.row-action-menu a,.row-action-menu button{width:100%;border:0;background:transparent;padding:10px;border-radius:9px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--v3-text)}.row-action-menu a:hover,.row-action-menu button:hover{background:var(--v3-rose-soft)}.row-action-menu svg{width:16px}.activity-list-v3 article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--v3-rose-soft);color:var(--v3-rose-dark)}.activity-list-v3 article>span svg{width:18px}.empty-art svg{width:35px;height:35px}

/* Builder */
.builder-header-v3{display:flex;justify-content:space-between;gap:20px}.builder-header-v3 h1{font:600 48px var(--serif);margin:6px 0}.plan-selector{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.plan-option{border:1px solid var(--v3-line);border-radius:18px;padding:18px;background:#fff;display:grid;gap:7px;cursor:pointer;position:relative;transition:.2s}.plan-option input{position:absolute;opacity:0}.plan-option span{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--v3-rose)}.plan-option strong{font:600 28px var(--serif)}.plan-option small{color:var(--v3-muted);line-height:1.5}.plan-option em{font-style:normal;font-size:10px;font-weight:700}.plan-option.selected,.plan-option:has(input:checked){border-color:var(--v3-rose);box-shadow:0 0 0 3px rgba(157,80,98,.1);background:#fff9f7}.event-type-card span{display:grid;place-items:center}.event-type-card svg{width:25px;height:25px}.builder-title-row a{display:flex;align-items:center;gap:5px}.builder-title-row svg{width:15px}.builder-theme-card.plan-locked{opacity:.62}.lock-overlay{position:absolute;inset:0;background:rgba(45,29,35,.55);color:#fff;display:grid;place-items:center;align-content:center;gap:7px;font-size:11px;font-weight:700}.lock-overlay svg{width:22px}.builder-theme-visual{position:relative}.builder-submit{border-radius:18px;margin-top:15px}

/* Editor */
.editor-head-v3{margin-bottom:18px}.editor-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.editor-title h1{flex-basis:100%}.editor-head-actions .btn svg{width:17px}.editor-layout-v3{grid-template-columns:minmax(0,1fr) minmax(360px,44%);gap:18px}.editor-tabs button{display:flex;align-items:center;gap:7px}.editor-tabs button svg{width:17px}.field-group-head>span{display:grid;place-items:center}.field-group-head>span svg{width:20px}.section-sort{display:grid;gap:8px}.section-sort-item{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--v3-line);border-radius:13px;background:#fff;cursor:grab}.section-sort-item.dragging{opacity:.45}.drag-handle{color:#a58991;font-weight:700}.compact-switch{margin:0}.gallery-manager{display:grid;gap:12px}.gallery-upload-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-uploader{min-height:245px;height:auto;padding-bottom:75px;background:#eee}.gallery-uploader img{height:180px}.gallery-item-actions{position:absolute;top:9px;right:9px;display:flex;gap:5px}.gallery-item-actions .icon-button,.gallery-item-actions label{background:rgba(255,255,255,.9);width:36px;height:36px}.gallery-alt,.gallery-focal{position:absolute;left:8px;right:8px;width:calc(100% - 16px);height:30px;font-size:10px;border-radius:8px}.gallery-alt{bottom:39px}.gallery-focal{bottom:6px}.audio-uploader{display:flex;align-items:center;gap:10px}.feature-lock-inline{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:12px;background:#f5eee9;color:var(--v3-muted);font-size:12px}.feature-lock-inline svg{width:16px}.guest-editor-actions{display:flex;gap:10px;margin-bottom:16px}.editor-theme-option>span{display:grid}.editor-theme-option>span small{color:var(--v3-muted)}.editor-theme-option>svg{margin-left:auto}.gift-account-editor{display:grid;gap:9px}.gift-account-editor>div{display:grid;grid-template-columns:.8fr 1fr 1fr;gap:8px}.revision-list{display:grid;gap:8px}.revision-row{display:flex;align-items:center;justify-content:space-between;padding:10px;border:1px solid var(--v3-line);border-radius:12px}.preview-link{display:flex;align-items:center;gap:8px}.preview-link code{flex:1;overflow:hidden;text-overflow:ellipsis}.modal{position:fixed;inset:0;z-index:300;display:grid;place-items:center;opacity:0;visibility:hidden;transition:.2s}.modal.open{opacity:1;visibility:visible}.modal-backdrop{position:absolute;inset:0;background:rgba(45,28,35,.55);backdrop-filter:blur(4px)}.modal-card{position:relative;width:min(440px,calc(100% - 28px));background:#fff;border-radius:22px;padding:28px;text-align:center;box-shadow:var(--v3-shadow)}.modal-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;margin:0 auto 14px;background:#fee9ec;color:#a5384c}.modal-icon svg{width:24px}.modal-card h2{font:600 34px var(--serif);margin:0 0 8px}.modal-card p{color:var(--v3-muted);line-height:1.6}.modal-card>div:last-child{display:flex;justify-content:center;gap:10px;margin-top:20px}

/* Guest management */
.event-context-bar{display:flex;align-items:center;gap:13px;background:#fff;border:1px solid var(--v3-line);border-radius:16px;padding:12px 14px;margin-bottom:16px}.event-context-bar label{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--v3-muted)}.event-context-bar select{border:0;background:#f4ece8;border-radius:10px;padding:8px 10px;font-weight:700}.event-context-bar>a{margin-left:auto;color:var(--v3-rose-dark);font-weight:700;font-size:12px}.guest-stat-grid{margin-bottom:17px}.guest-panel{padding:0;overflow:hidden}.guest-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border-bottom:1px solid var(--v3-line)}.guest-filter-form{display:flex;align-items:center;gap:8px;flex:1}.search-input{position:relative;min-width:260px;flex:1}.search-input svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:17px;color:#9b858d}.search-input input,.guest-filter-form select{height:42px;border:1px solid var(--v3-line);border-radius:12px;background:#fff}.search-input input{width:100%;padding:0 12px 0 39px}.guest-filter-form select{padding:0 10px}.guest-import-actions{display:flex;align-items:center;gap:8px}.inline-upload{margin:0}.feature-lock-button{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--v3-muted);padding:9px 11px;border-radius:11px;background:#f4ece8}.feature-lock-button svg{width:15px}.guest-table-wrap{overflow:auto}.guest-table{width:100%;border-collapse:collapse;min-width:1000px}.guest-table th{font-size:10px;text-transform:uppercase;letter-spacing:1px;text-align:left;color:#9a858c;background:#fbf7f4;padding:12px 15px}.guest-table td{padding:14px 15px;border-top:1px solid var(--v3-line);vertical-align:middle;font-size:12px}.guest-table td:first-child{display:grid;gap:3px}.guest-table td:first-child strong{font-size:13px}.guest-table td:first-child small{color:var(--v3-muted)}.guest-table td:first-child em{font-style:normal;color:var(--v3-rose);font-size:10px}.category-chip,.guest-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#f1e8e4;font-size:9px;font-weight:700}.guest-status.status-dibuka{background:#e9edf5;color:#4d5e79}.guest-status.status-rsvp{background:#e5efe0;color:#4b6743}.guest-status.status-checked_in{background:#dfeee9;color:#35695a}.guest-table code{font-size:10px;color:var(--v3-muted)}.inline-actions,.table-actions{display:flex;align-items:center;gap:5px}.table-actions form{margin:0}.table-actions .icon-button,.inline-actions .icon-button{width:34px;height:34px;border-radius:10px}.drawer{position:fixed;inset:0;z-index:250;opacity:0;visibility:hidden;transition:.2s}.drawer.open{opacity:1;visibility:visible}.drawer-backdrop{position:absolute;inset:0;background:rgba(42,26,32,.45)}.drawer aside{position:absolute;right:0;top:0;bottom:0;width:min(520px,100%);background:#fffaf7;padding:24px;overflow:auto;transform:translateX(100%);transition:.28s}.drawer.open aside{transform:none}.drawer header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.drawer header h2{font:600 36px var(--serif);margin:4px 0}.guest-form-drawer form{display:grid;gap:15px}.guest-form-drawer label{display:grid;gap:7px;font-size:12px;font-weight:700}.guest-form-drawer textarea{height:auto;padding:12px}.compact-empty{padding:60px 20px}
.checkin-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:20px}.checkin-search{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--v3-line);padding:8px;border-radius:16px;margin-bottom:18px}.checkin-search>svg{margin-left:8px}.checkin-search input{flex:1;height:44px;border:0;outline:0}.checkin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.checkin-card{background:#fff;border:1px solid var(--v3-line);border-radius:18px;padding:16px;display:flex;align-items:center;justify-content:space-between}.checkin-card.checked{background:#edf5e9;border-color:#c9ddbf}.checkin-card>div{display:flex;gap:12px;align-items:center}.guest-avatar{width:44px;height:44px;border-radius:14px;background:var(--v3-rose-soft);color:var(--v3-rose-dark);display:grid;place-items:center;font-weight:800}.checkin-card h3{margin:0;font:600 20px var(--serif)}.checkin-card p{margin:3px 0;color:var(--v3-muted);font-size:11px}.checkin-card code{font-size:9px}

/* Billing / checkout */
.billing-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}.billing-event-card{background:#fff;border:1px solid var(--v3-line);border-radius:20px;padding:20px;box-shadow:var(--v3-shadow-sm)}.billing-event-card h2{font:600 28px var(--serif);margin:10px 0 4px}.billing-event-card>div>p{color:var(--v3-muted);margin:0}.billing-event-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.billing-event-card dl div{background:#faf5f2;padding:11px;border-radius:12px}.billing-event-card dt{font-size:9px;text-transform:uppercase;color:#9b858c}.billing-event-card dd{margin:5px 0 0;font-size:11px;font-weight:700}.billing-actions{display:flex;gap:8px}.order-panel{overflow:hidden}.order-table{min-width:780px}.order-row{display:grid;grid-template-columns:1.3fr .7fr .8fr .6fr .7fr .5fr;align-items:center;gap:10px;padding:13px 15px;border-top:1px solid var(--v3-line);font-size:11px}.order-row.head{border-top:0;background:#fbf7f4;text-transform:uppercase;letter-spacing:1px;color:#9a858c;font-size:9px}.payment-status{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#fff0d9;color:#876223;font-size:9px;font-weight:800}.payment-status.paid{background:#e4efe0;color:#45643e}.checkout-shell{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;max-width:1050px;margin:auto}.checkout-main,.checkout-summary,.invoice-card{background:#fff;border:1px solid var(--v3-line);border-radius:24px;padding:28px;box-shadow:var(--v3-shadow)}.checkout-main h1{font:600 48px var(--serif);margin:8px 0}.checkout-main>p{color:var(--v3-muted);line-height:1.65}.checkout-event{display:flex;align-items:center;gap:13px;padding:12px;border:1px solid var(--v3-line);border-radius:15px;margin:20px 0}.checkout-event img{width:62px;height:70px;border-radius:10px;object-fit:cover}.checkout-event div{display:grid}.checkout-event span{font-size:11px;color:var(--v3-muted)}.mock-payment-form{display:grid;gap:10px}.mock-payment-form h2{font:600 27px var(--serif);margin-bottom:4px}.payment-option{display:flex;align-items:center;gap:12px;border:1px solid var(--v3-line);border-radius:14px;padding:13px;cursor:pointer}.payment-option:has(input:checked){border-color:var(--v3-rose);background:#fff8f6;box-shadow:0 0 0 3px rgba(157,80,98,.08)}.payment-option input{accent-color:var(--v3-rose-dark)}.payment-option>span{width:38px;height:38px;border-radius:11px;background:var(--v3-rose-soft);display:grid;place-items:center;color:var(--v3-rose-dark)}.payment-option div{display:grid}.payment-option small{color:var(--v3-muted)}.checkout-summary{height:max-content;position:sticky;top:100px}.checkout-summary h2{font:600 30px var(--serif)}.checkout-summary>strong{display:block;font:600 38px var(--serif);color:var(--v3-rose-dark)}.checkout-summary>small{color:var(--v3-muted)}.checkout-summary ul{list-style:none;padding:0;margin:22px 0;display:grid;gap:10px}.checkout-summary li:before{content:"✓";color:var(--v3-sage);margin-right:8px}.checkout-summary>a{font-size:12px;color:var(--v3-muted)}.invoice-card{max-width:850px;margin:auto}.invoice-card header>div{display:flex;align-items:center;justify-content:space-between}.invoice-card h1{font:600 46px var(--serif);margin:30px 0 5px}.invoice-card header p{color:var(--v3-muted)}.invoice-meta{display:grid;grid-template-columns:1fr 1fr;gap:15px;background:#faf5f2;border-radius:16px;padding:17px;margin:24px 0}.invoice-meta div{display:grid;gap:4px}.invoice-meta span{font-size:9px;text-transform:uppercase;color:#9a858c}.invoice-meta p{margin:0;color:var(--v3-muted);font-size:11px}.invoice-card table{width:100%;border-collapse:collapse}.invoice-card th,.invoice-card td{text-align:left;padding:15px;border-bottom:1px solid var(--v3-line)}.invoice-card th:last-child,.invoice-card td:last-child{text-align:right}.invoice-card td small{display:block;color:var(--v3-muted);margin-top:4px}.invoice-card tr.total td{font-weight:800;font-size:16px}.invoice-card footer{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}

/* Settings */
.settings-layout{display:grid;grid-template-columns:190px minmax(0,850px);gap:22px}.settings-nav{position:sticky;top:100px;height:max-content;display:grid;gap:5px}.settings-nav a{padding:10px 12px;border-radius:10px;color:var(--v3-muted);font-size:12px;font-weight:700}.settings-nav a:hover{background:#efe5e0;color:var(--v3-rose-dark)}.settings-content{display:grid;gap:16px}.settings-card{background:#fff;border:1px solid var(--v3-line);border-radius:22px;padding:24px;box-shadow:var(--v3-shadow-sm);scroll-margin-top:100px}.settings-card-head{display:flex;gap:13px;margin-bottom:20px}.settings-icon{width:43px;height:43px;border-radius:14px;background:var(--v3-rose-soft);color:var(--v3-rose-dark);display:grid;place-items:center;flex:0 0 auto}.settings-icon.danger{background:#fee8eb;color:#a3384b}.settings-card h2{font:600 29px var(--serif);margin:0}.settings-card-head p{margin:3px 0 0;color:var(--v3-muted);font-size:12px}.settings-form{display:grid;gap:14px}.settings-form label{display:grid;gap:7px;font-size:12px;font-weight:700}.settings-form textarea{height:auto;padding:12px}.settings-card hr{border:0;border-top:1px solid var(--v3-line);margin:24px 0}.settings-card h3{font:600 22px var(--serif);margin:10px 0 0}.verification-status{height:55px;border-radius:14px;background:#f6ece8;display:flex;align-items:center;gap:8px;padding:0 14px;color:#8d4959}.verification-status.verified{background:#e8f1e4;color:#4d6a45}.device-card{display:flex;gap:12px;border:1px solid var(--v3-line);border-radius:15px;padding:14px;margin-top:18px}.device-card>span{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#f2e8e4}.device-card p{margin:3px 0;font-size:11px;color:var(--v3-muted)}.device-card small{font-size:10px}.danger-settings{border-color:#efcbd1}.verification-card{max-width:650px;margin:40px auto;text-align:center}.verification-card .settings-icon{margin:auto}.verification-card h1{font:600 46px var(--serif)}.verification-card p{color:var(--v3-muted);line-height:1.7}

/* Legal */
.legal-main{padding:150px 0 100px;background:#fffaf6}.legal-shell{max-width:820px}.legal-shell>.romance-script{font-size:38px;color:var(--v3-rose)}.legal-shell h1{font:600 clamp(50px,7vw,74px)/1 var(--serif);margin:5px 0 20px}.legal-intro{font-size:18px;line-height:1.7;color:var(--v3-muted)}.legal-updated{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#9b858c;padding-bottom:25px;border-bottom:1px solid var(--v3-line)}.legal-shell section{padding:22px 0;border-bottom:1px solid var(--v3-line)}.legal-shell section h2{font:600 30px var(--serif);margin:0 0 9px}.legal-shell section p{color:var(--v3-muted);line-height:1.75;margin:0}
.toast-region{position:fixed;right:20px;bottom:20px;z-index:400;display:grid;gap:8px}.app-toast{background:#38272e;color:#fff;border-radius:13px;padding:12px 15px;box-shadow:var(--v3-shadow);font-size:12px;animation:toastIn .2s ease}.app-toast.success{background:#40583d}.app-toast.error{background:#8f3044}@keyframes toastIn{from{opacity:0;transform:translateY(8px)}}

@media(max-width:1180px){.stat-grid-v3{grid-template-columns:repeat(2,1fr)}.dashboard-grid-v3{grid-template-columns:1fr}.editor-layout-v3{grid-template-columns:1fr}.editor-preview{position:relative;top:auto}.billing-event-grid{grid-template-columns:1fr}.guest-toolbar{align-items:stretch;flex-direction:column}.guest-import-actions{flex-wrap:wrap}.checkout-shell{grid-template-columns:1fr}.checkout-summary{position:static}.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;display:flex;overflow:auto}}
@media(max-width:1000px){.studio-v3 .studio-main{margin-left:0}.studio-v3 .studio-sidebar{width:280px;padding-top:18px}.auth-shell-v3{grid-template-columns:38% 1fr}.auth-shell-v3 .auth-panel{padding:40px 4vw}.auth-shell-v3 .auth-romance-art{transform:scale(.65);transform-origin:center top}.auth-shell-v3 .auth-copy h1{font-size:44px}.event-row-v3{grid-template-columns:88px minmax(0,1fr)}.event-row-v3 .event-actions-v3{grid-column:2}.gallery-upload-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.studio-v3 .studio-shell{display:block}.auth-shell-v3{display:block}.auth-shell-v3 .auth-visual{display:none}.auth-shell-v3 .auth-panel{min-height:100dvh;padding:18px 18px 40px;display:block}.auth-mobile-header{display:flex;align-items:center;justify-content:space-between;padding:2px 0 38px}.auth-mobile-header .auth-back{margin:0;font-size:11px}.auth-back.desktop{display:none}.auth-shell-v3 .auth-card{max-width:none}.auth-heading-v3 h2{font-size:40px}.auth-form-v3 .form-row{grid-template-columns:1fr}.demo-login-v3{align-items:flex-start;flex-direction:column}.demo-login-v3 button{padding:0}.studio-v3 .studio-content{padding:20px 14px}.studio-v3 .studio-topbar{padding:9px 14px}.topbar-title strong{font-size:12px}.topbar-actions{gap:6px}.topbar-notification{width:39px;height:39px}.user-menu{padding:4px}.user-menu>div,.user-menu>svg{display:none}.page-heading-row,.checkin-header{align-items:stretch;flex-direction:column}.page-heading-row h1,.checkin-header h1{font-size:40px}.page-heading-actions{display:grid;grid-template-columns:1fr 1fr}.page-heading-actions .btn{width:100%}.dashboard-welcome-v3{align-items:stretch}.stat-grid-v3{grid-template-columns:1fr 1fr}.event-row-v3{grid-template-columns:78px minmax(0,1fr);gap:12px}.event-thumb-photo{height:96px}.event-actions-v3{overflow:auto;padding-bottom:3px}.builder-header-v3{display:block}.builder-header-v3 h1{font-size:40px}.plan-selector{grid-template-columns:1fr}.editor-head-actions{grid-template-columns:1fr 1fr}.editor-head-actions .btn{width:100%}.gallery-upload-grid{grid-template-columns:1fr 1fr}.gift-account-editor>div{grid-template-columns:1fr}.guest-toolbar{padding:12px}.guest-filter-form{display:grid;grid-template-columns:1fr 1fr}.search-input{grid-column:1/-1;min-width:0}.guest-filter-form .btn{width:100%}.event-context-bar{align-items:flex-start;flex-wrap:wrap}.event-context-bar>a{margin-left:0;width:100%}.checkin-grid{grid-template-columns:1fr}.checkin-card{align-items:stretch;flex-direction:column;gap:14px}.checkin-card form .btn{width:100%}.billing-event-card dl{grid-template-columns:1fr 1fr}.checkout-main,.checkout-summary,.invoice-card{padding:20px}.checkout-main h1{font-size:40px}.invoice-card h1{font-size:38px}.invoice-meta{grid-template-columns:1fr}.invoice-card footer{display:grid;grid-template-columns:1fr}.settings-card{padding:19px}.settings-form .form-grid{grid-template-columns:1fr}.settings-nav{gap:2px}.settings-nav a{flex:0 0 auto}.legal-main{padding-top:120px}}
@media(max-width:430px){.stat-grid-v3{grid-template-columns:1fr 1fr}.stat-grid-v3 article{padding:14px;gap:9px}.stat-grid-v3 .stat-icon{width:38px;height:38px}.stat-grid-v3 strong{font-size:22px}.stat-grid-v3 em{display:none}.event-row-v3{grid-template-columns:68px minmax(0,1fr)}.event-thumb-photo{height:86px}.event-info h3{font-size:18px}.event-metrics span:nth-child(3){display:none}.page-heading-actions{grid-template-columns:1fr}.gallery-upload-grid{grid-template-columns:1fr}.gallery-uploader img{height:230px}.guest-filter-form{grid-template-columns:1fr}.search-input{grid-column:auto}.guest-import-actions{display:grid;grid-template-columns:1fr 1fr}.guest-import-actions .btn,.guest-import-actions label{width:100%}.billing-event-card dl{grid-template-columns:1fr}.billing-actions{display:grid;grid-template-columns:1fr}.checkout-main h1{font-size:35px}.order-panel{overflow:auto}.auth-heading-v3 h2{font-size:36px}}

/* Interaction completion */
body.modal-open,body.drawer-open{overflow:hidden}.row-action-menu.open{opacity:1;visibility:visible}.gallery-uploader-new{display:block}.gallery-empty-preview{height:180px;display:grid;place-items:center;background:linear-gradient(145deg,#f7efeb,#eadbd5);color:#8e737c;font-size:12px;font-weight:700}.gallery-uploader-new img[hidden]{display:none}.gallery-uploader.dragging,.section-sort-item.dragging{opacity:.42;transform:scale(.985)}.media-status.success{color:#4d6a45}.media-status.error{color:#a3384b}.media-status.uploading{color:#8c6b32}.modal-icon:not(:has(svg)){font-weight:800;font-size:22px}.user-dropdown-menu[aria-hidden="true"]{pointer-events:none}.icon-button:focus-visible,.icon-link:focus-visible,.user-menu:focus-visible{outline:3px solid rgba(157,80,98,.22);outline-offset:2px}
.verification-status span{flex:1}.verification-status a{font-size:11px;font-weight:800;text-decoration:underline}.verification-card code{font-size:11px}
.auth-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:#a18c93;font-size:11px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--v3-line);flex:1}.btn-google{border:1px solid var(--v3-line);background:#fff;color:var(--v3-text);min-height:52px}.btn-google:hover{border-color:#b9909a;background:#fffaf8}

/* Analytics and QR operations */
.analytics-stat-grid{margin-bottom:22px}.analytics-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.85fr);gap:20px;margin-bottom:20px}.analytics-chart-panel,.funnel-panel,.analytics-insight,.qr-grid-panel{padding:24px}.analytics-chart-panel>header,.funnel-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.analytics-chart-panel h2,.funnel-panel h2{margin:4px 0 0}.metric-caption{font-size:12px;color:var(--muted)}.bar-chart{height:245px;display:grid;grid-template-columns:repeat(14,minmax(14px,1fr));align-items:end;gap:10px;padding:22px 8px 0;border-bottom:1px solid var(--line);background:linear-gradient(to top,rgba(112,72,88,.045) 1px,transparent 1px);background-size:100% 25%}.bar-column{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px;position:relative}.bar-column span{display:block;width:min(28px,78%);min-height:4px;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,#a45f76,#623145);box-shadow:0 7px 18px rgba(98,49,69,.16);transition:transform .2s ease,filter .2s ease}.bar-column:hover span{transform:translateY(-3px);filter:saturate(1.2)}.bar-column small{font-size:10px;color:var(--muted)}.funnel-row{display:grid;grid-template-columns:1fr 52px;gap:8px 12px;margin:18px 0}.funnel-row>div:first-child{grid-column:1/3;display:flex;justify-content:space-between;align-items:center}.funnel-row>div span{font-size:13px;color:var(--muted)}.funnel-row>div strong{font-size:15px}.funnel-track{height:9px;border-radius:99px;background:#f0e6e2;overflow:hidden}.funnel-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#9c5b72,#c98da2)}.funnel-row small{text-align:right;color:var(--muted);font-size:11px}.analytics-insight{display:flex;align-items:flex-start;gap:16px}.analytics-insight h3{margin:0 0 4px}.analytics-insight p{margin:0;color:var(--muted);line-height:1.7}.qr-guest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.qr-guest-grid article{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:16px;border:1px solid var(--line);border-radius:18px;background:#fffdfa}.qr-guest-grid article strong,.qr-guest-grid article small{display:block}.qr-guest-grid article small{margin-top:3px;color:var(--muted);font-size:12px}.qr-modal>section{max-width:470px;text-align:center}.qr-modal header{text-align:left}.qr-output{display:grid;place-items:center;padding:18px}.qr-output svg{width:min(310px,100%);height:auto;filter:drop-shadow(0 16px 28px rgba(83,41,59,.12))}.qr-link-input{width:100%;font-size:12px;background:#f8f1ed}.qr-modal footer{display:flex;justify-content:center;gap:10px;margin-top:16px}.modal-open{overflow:hidden}
@media(max-width:980px){.analytics-grid{grid-template-columns:1fr}.qr-guest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.analytics-chart-panel,.funnel-panel,.analytics-insight,.qr-grid-panel{padding:18px}.bar-chart{gap:5px;height:210px}.bar-column span{width:72%}.bar-column small:nth-child(even){display:none}.qr-guest-grid{grid-template-columns:1fr}.qr-guest-grid article{grid-template-columns:42px 1fr}.qr-guest-grid article .btn{grid-column:1/3;width:100%}.qr-modal footer{flex-direction:column}.qr-modal footer .btn{width:100%}}

/* Editor video media */
.video-uploader{display:grid;grid-template-columns:minmax(180px,280px) 1fr;gap:18px;align-items:center;margin-bottom:18px}.video-uploader video,.video-gallery-item video{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:16px;background:#251a1f}.video-empty-preview{display:grid;place-items:center;gap:8px;min-height:160px;border:1px dashed #d9c4cb;border-radius:16px;background:linear-gradient(145deg,#f9f2ef,#f0e3e5);color:#8b6675;text-align:center}.video-empty-preview svg{width:30px;height:30px}.video-gallery-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.video-gallery-item{position:relative;display:block;padding:10px}.video-gallery-item .gallery-item-actions{position:absolute;right:18px;top:18px}.video-gallery-item .media-status{display:block;padding:6px 2px 0}.video-gallery-item.dragging{opacity:.55;transform:scale(.98)}
@media(max-width:720px){.video-uploader{grid-template-columns:1fr}.video-gallery-list{grid-template-columns:1fr}}
@media(max-width:760px){.auth-mobile-header{gap:18px}.auth-mobile-header .brand{flex:0 0 auto;font-size:20px;gap:8px}.auth-mobile-header .brand-mark{width:34px;height:34px}.auth-mobile-header .auth-back{margin-left:auto;white-space:nowrap;text-align:right;line-height:1.25}}
@media(max-width:370px){.auth-mobile-header .brand-word{font-size:19px}.auth-mobile-header .auth-back{font-size:10px}}
[hidden]{display:none}


/* Refinement pack: register, builder, editor, tooltip, tables, help */
.password-confirm-row{align-items:start}.password-confirm-row .field{grid-template-rows:auto 55px minmax(19px,auto)}.field-feedback{display:block;min-height:19px}.field-feedback small{display:block;line-height:1.45}.oauth-unconfigured{opacity:.72}.oauth-unconfigured:hover{transform:none}
.floating-tooltip{position:fixed;z-index:10000;max-width:260px;padding:8px 10px;border-radius:9px;background:#38272e;color:#fff;box-shadow:0 10px 30px rgba(37,22,28,.22);font:600 11px/1.4 var(--sans);pointer-events:none}.floating-tooltip[hidden]{display:none}body[data-tooltip-ready="1"] [data-tooltip]::after{display:none}
.builder-identity-grid{align-items:start}.builder-identity-grid label{display:grid;grid-template-rows:auto 50px minmax(20px,auto);gap:8px}.builder-identity-grid label>span{font-size:12px;font-weight:700;color:var(--v3-text)}.builder-identity-grid input{height:50px}.builder-identity-grid small{display:block;line-height:1.45;overflow-wrap:anywhere}.builder-identity-section{overflow:hidden}
.editor-tabs{padding:6px 8px;gap:3px;overflow-x:auto;scrollbar-width:thin}.editor-tabs button{flex:1 1 0;min-width:74px;min-height:56px;padding:10px 9px;border-radius:11px;justify-content:center;white-space:nowrap}.editor-tabs button svg{width:20px;height:20px;flex:0 0 20px}.editor-tabs button>span{font-size:12px;line-height:1;background:transparent;padding:0;border-radius:0}.editor-tabs button:hover{background:#f7efeb;color:var(--v3-rose-dark)}.editor-tabs button.active{background:#f1e3df}.editor-tabs button.active:after{left:12px;right:12px;bottom:1px;background:var(--v3-rose-dark)}
.preview-canvas{position:relative}.preview-canvas iframe{position:relative;z-index:2;pointer-events:auto;touch-action:auto}.editor-preview{isolation:isolate}.opening-card:before,.opening-card:after{pointer-events:none}.opening-card button{position:relative;z-index:20;pointer-events:auto}
.guest-panel,.guest-toolbar,.guest-table-wrap{min-width:0;max-width:100%}.guest-toolbar{flex-wrap:wrap}.guest-filter-form{min-width:min(100%,520px)}.guest-import-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;max-width:100%}.guest-import-actions .btn,.guest-import-actions label,.guest-import-actions a{max-width:100%;white-space:nowrap}.guest-table-wrap{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}.guest-table{min-width:880px}.guest-table td,.guest-table th{white-space:normal}.guest-table td:nth-child(5){min-width:230px}.guest-table code{overflow-wrap:anywhere}
.help-heading{align-items:center}.help-quick-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.help-quick-nav a{display:flex;align-items:center;gap:12px;min-width:0;padding:15px;border:1px solid var(--v3-line);border-radius:17px;background:#fffdfa;box-shadow:var(--v3-shadow-sm);transition:.2s}.help-quick-nav a:hover{transform:translateY(-2px);border-color:#d3afb8}.help-quick-nav svg{width:22px;height:22px;color:var(--v3-rose-dark);flex:0 0 auto}.help-quick-nav span,.help-quick-nav strong,.help-quick-nav small{display:block;min-width:0}.help-quick-nav strong{font-size:13px}.help-quick-nav small{margin-top:2px;color:var(--v3-muted);font-size:10px}.help-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.help-steps{display:grid;gap:18px}.help-section{scroll-margin-top:100px;padding:25px;border:1px solid var(--v3-line);border-radius:22px;background:var(--v3-surface);box-shadow:var(--v3-shadow-sm)}.help-section>header{display:flex;align-items:flex-start;gap:15px;margin-bottom:18px}.help-section>header>span{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;flex:0 0 auto;background:var(--v3-rose-soft);color:var(--v3-rose-dark);font-size:11px;font-weight:800}.help-section h2{font:600 31px/1 var(--serif);margin:0 0 5px}.help-section header p,.help-section>p{margin:0;color:var(--v3-muted);line-height:1.65}.help-section ol{padding-left:22px;margin:0;display:grid;gap:10px;color:var(--v3-muted);line-height:1.65}.help-section li strong{color:var(--v3-text)}.help-tip{display:flex;align-items:flex-start;gap:11px;margin-top:18px;padding:14px;border-radius:15px;background:#f6ece8;color:var(--v3-muted)}.help-tip svg{width:19px;height:19px;flex:0 0 auto;color:var(--v3-rose-dark)}.help-tip p{margin:0;font-size:12px;line-height:1.65}.help-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.help-feature-grid article{padding:15px;border:1px solid var(--v3-line);border-radius:15px;background:#fff}.help-feature-grid svg{width:21px;height:21px;color:var(--v3-rose-dark)}.help-feature-grid h3{margin:10px 0 4px;font-size:13px}.help-feature-grid p{margin:0;color:var(--v3-muted);font-size:11px;line-height:1.55}.help-check-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.help-check-list li{display:flex;gap:12px;padding:13px;border:1px solid var(--v3-line);border-radius:14px;color:var(--v3-muted);line-height:1.6}.help-check-list svg{width:20px;height:20px;flex:0 0 auto;color:var(--v3-rose-dark)}.help-side{position:sticky;top:98px;display:grid;gap:15px}.help-side-card{padding:20px}.help-side-card h3{font:600 24px var(--serif);margin:13px 0 8px}.help-side-card p{color:var(--v3-muted);font-size:12px;line-height:1.65}.help-side-card ol{padding-left:20px;color:var(--v3-muted);display:grid;gap:7px;font-size:12px}
@media(max-width:1180px){.help-layout{grid-template-columns:1fr}.help-side{position:static;grid-template-columns:1fr 1fr}.help-quick-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.password-confirm-row{grid-template-columns:1fr}.editor-tabs button{flex:0 0 auto;min-width:96px}.guest-import-actions{justify-content:flex-start}.help-quick-nav{grid-template-columns:1fr 1fr}.help-feature-grid{grid-template-columns:1fr 1fr}.help-side{grid-template-columns:1fr}.help-section{padding:19px}.help-section h2{font-size:27px}}
@media(max-width:430px){.help-quick-nav,.help-feature-grid{grid-template-columns:1fr}.builder-identity-grid{grid-template-columns:1fr}.guest-import-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.guest-import-actions>*{width:100%}.guest-import-actions .btn,.guest-import-actions label,.guest-import-actions a{justify-content:center}.editor-tabs button{min-width:88px}.editor-tabs button>span{font-size:11px}}

/* Premium invitation editor fields */
.premium-editor-card{display:grid;gap:14px;padding:17px;margin-top:13px;border:1px solid var(--v3-line);border-radius:17px;background:linear-gradient(145deg,#fffdfa,#f8f1ed)}
.premium-editor-card>strong{font:700 13px/1.2 var(--sans);color:var(--v3-text)}
.premium-editor-card .form-grid{margin:0}
.premium-editor-card label{min-width:0}
.premium-editor-card textarea{resize:vertical}
@media(max-width:680px){.premium-editor-card{padding:14px}.premium-editor-card .form-grid{grid-template-columns:1fr}}

/* Wishes moderation and gift confirmations */
.moderation-list,.gift-confirmation-list{display:grid;gap:11px}.moderation-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:15px;border:1px solid var(--v3-line);border-radius:16px;background:#fffdfa}.moderation-copy>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.moderation-copy p{margin:7px 0 4px;color:var(--v3-muted);line-height:1.55}.moderation-copy small{color:var(--v3-muted);font-size:10px}.moderation-status{padding:4px 8px;border-radius:999px;background:#eee6e2;color:var(--v3-muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.moderation-status.status-approved{background:#e3f2e8;color:#2c7046}.moderation-status.status-rejected,.moderation-status.status-spam{background:#f8e5e5;color:#9b4141}.moderation-status.status-pending{background:#f7eed4;color:#866d24}.moderation-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.gift-confirmation-list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--v3-line);border-radius:15px;background:#fff}.gift-confirmation-list article>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:var(--v3-rose-soft);color:var(--v3-rose-dark)}.gift-confirmation-list svg{width:18px;height:18px}.gift-confirmation-list p,.gift-confirmation-list small{margin:3px 0 0;color:var(--v3-muted);font-size:11px;line-height:1.5}.gift-confirmation-list time{color:var(--v3-muted);font-size:10px;white-space:nowrap}
@media(max-width:700px){.moderation-item{grid-template-columns:1fr}.moderation-actions{justify-content:flex-start}.gift-confirmation-list article{grid-template-columns:38px minmax(0,1fr)}.gift-confirmation-list time{grid-column:2}}

/* ===== resources/ui/legacy/production.css ===== */
/* Consolidated Studio production layer: P0 + P1 */
/* Momeniva P0/P1 design-system consolidation */
:root{
  --v3-bg:var(--color-bg-soft);
  --v3-surface:var(--color-surface);
  --v3-surface-2:var(--color-surface-soft);
  --v3-text:var(--color-text);
  --v3-muted:var(--color-muted);
  --v3-line:var(--color-border);
  --v3-rose:var(--color-primary);
  --v3-rose-dark:var(--color-primary-hover);
  --v3-rose-soft:var(--color-primary-soft);
  --v3-sage:var(--color-success);
  --v3-shadow:var(--shadow-float);
  --v3-shadow-sm:var(--shadow-card);
  --serif:var(--font-serif);
  --sans:var(--font-sans);
}
body{color:var(--color-text)}
.studio-v3{background:var(--color-bg-soft)}
.studio-v3 .studio-main{background:var(--color-bg-soft)}
.studio-v3 p,.studio-v3 small,.studio-v3 em,.studio-v3 .metric-caption,.studio-v3 .field-help{color:var(--color-muted)}
.studio-v3 small{font-size:var(--text-xs)}
.studio-v3 .panel-kicker,.studio-v3 .sidebar-label,.studio-v3 .topbar-kicker{font-size:11px;line-height:1.3}
.studio-v3 .event-info>p,.studio-v3 .event-metrics span,.studio-v3 .activity-list strong,.studio-v3 .activity-list p,.studio-v3 .activity-list small{font-size:12px}
.studio-v3 .activity-list strong{font-size:13px}
.studio-v3 .activity-list p{line-height:1.5}
.studio-v3 .btn{font-size:14px}
.studio-v3 label{font-size:13px}
.studio-v3 input,.studio-v3 select,.studio-v3 textarea{font-size:14px}
.studio-v3 .panel,.studio-v3 .builder-section,.studio-v3 .editor-panel,.studio-v3 .editor-preview{border-color:var(--color-border)}

/* Hero product video */
.hero-video-stage{height:auto;min-height:590px;display:flex;align-items:center;justify-content:center;position:relative}
.hero-video-shell{position:relative;width:min(760px,100%);border:1px solid rgba(120,75,88,.16);border-radius:30px;background:rgba(255,250,247,.92);padding:14px;box-shadow:0 36px 90px rgba(87,49,61,.16);overflow:hidden;backdrop-filter:blur(12px)}
.hero-video-meta{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 6px 12px;color:var(--color-text)}
.hero-video-meta>div{display:flex;align-items:center;gap:9px;min-width:0}.hero-video-meta strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-video-meta small{font-size:11px;color:var(--color-muted);white-space:nowrap}.hero-video-dot{width:9px;height:9px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 5px rgba(138,64,85,.1)}
.hero-video-frame{position:relative;border-radius:22px;overflow:hidden;background:#f4e6e1;box-shadow:inset 0 0 0 1px rgba(120,75,88,.08)}
.hero-product-video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;background:#f4e6e1}
.hero-video-control{position:absolute;right:16px;bottom:16px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.72);background:rgba(54,34,42,.74);color:#fff;display:grid;place-items:center;backdrop-filter:blur(10px);font-weight:800;cursor:pointer;box-shadow:0 10px 24px rgba(33,18,24,.2);transition:transform .2s ease,background .2s ease}
.hero-video-control:hover,.hero-video-control:focus-visible{transform:scale(1.05);background:rgba(54,34,42,.9)}.hero-video-control span{display:block;line-height:1}
.hero-video-footer{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:14px 6px 2px}.hero-video-footer strong{font:600 16px var(--font-serif);white-space:nowrap}.hero-video-footer span{font-size:12px;line-height:1.6;color:var(--color-muted)}
.hero-video-stage .stage-halo{opacity:.64;transform:scale(.9)}
@media(prefers-reduced-motion:reduce){.hero-product-video{display:none}.hero-video-frame{min-height:405px;background:url('/assets/video/momeniva-demo-poster.webp') center/cover no-repeat}.hero-video-control{display:none}}
@media(max-width:760px){.hero-video-stage{min-height:420px;margin-bottom:0;transform:none;width:100%;left:auto}.hero-video-shell{padding:10px;border-radius:24px}.hero-video-meta{min-height:40px;padding:0 4px 10px}.hero-video-meta small{display:none}.hero-video-footer{grid-template-columns:1fr;gap:2px;padding:12px 4px 2px}.hero-video-footer strong{font-size:15px}.hero-video-footer span{font-size:11px}.hero-video-control{right:12px;bottom:12px;width:40px;height:40px}}

/* Template library viewport */
.romantic-library-hero{min-height:440px;padding:125px 0 62px}
.romantic-library-hero h1{margin-bottom:18px}
.romantic-library{padding-top:48px}
.romantic-filter{margin-bottom:38px}

/* Builder wizard */
.builder-wizard{display:grid;gap:18px;scroll-margin-top:100px}
.builder-stepper{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:12px;padding:16px 18px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:20px;box-shadow:var(--shadow-card)}
.builder-stepper>i{height:1px;background:var(--color-border)}
.builder-stepper button{border:0;background:transparent;display:flex;align-items:center;gap:10px;text-align:left;color:var(--color-muted);padding:4px;cursor:pointer}
.builder-stepper button>span{width:34px;height:34px;border:1px solid var(--color-border-strong);border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:12px;background:#fff}
.builder-stepper button div{display:grid;gap:1px}.builder-stepper button strong{font-size:13px;color:var(--color-text)}.builder-stepper button small{font-size:11px}
.builder-stepper button.active>span,.builder-stepper button.done>span{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.builder-stepper button.done>span{background:var(--color-success)}
.builder-wizard-panel{display:grid;gap:18px}.builder-wizard-panel[hidden]{display:none}
.builder-section-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px}.builder-section-heading>span{width:34px;height:34px;border-radius:11px;background:var(--color-primary-soft);color:var(--color-primary-hover);display:grid;place-items:center;font-size:11px;font-weight:800;flex:0 0 auto}.builder-section-heading h2{margin:0;font:600 26px var(--font-serif)}.builder-section-heading p{margin:3px 0 0;font-size:13px}
.builder-wizard-actions{display:flex;justify-content:space-between;align-items:center;gap:10px}.builder-wizard-actions.end{justify-content:flex-end}.builder-wizard-actions .btn{min-width:190px}
.builder-review{display:flex;align-items:flex-start;gap:12px;background:var(--color-warning-soft);border:1px solid #e9d5a2;border-radius:16px;padding:15px;color:#6c5425}.builder-review>svg{width:21px;height:21px;flex:0 0 auto}.builder-review strong{display:block}.builder-review p{margin:3px 0 0;font-size:13px;color:#6c5425}
.builder-identity-grid>label{display:grid;grid-template-rows:auto 54px minmax(34px,auto);align-content:start}

/* Editor density and explicit publishing */
.editor-head-actions{align-items:center}.save-state{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:8px 11px;border-radius:999px;background:#f5ece8;color:var(--color-muted);font-size:12px;font-weight:700}.save-state svg{width:15px;height:15px}.save-state.saved{background:var(--color-success-soft);color:var(--color-success)}.save-state.saving{background:var(--color-warning-soft);color:var(--color-warning)}.save-state.error{background:var(--color-danger-soft);color:var(--color-danger)}
.editor-panel{background:var(--color-surface);overflow:hidden}.editor-form{padding:0 22px 24px}.editor-tab{gap:0}.field-group{background:transparent;border:0;border-radius:0;box-shadow:none;padding:24px 2px;margin:0}.field-group+.field-group{border-top:1px solid var(--color-border)}.field-group-head{margin-bottom:18px}.field-group-head>span{width:38px;height:38px;border-radius:12px;background:var(--color-primary-soft);color:var(--color-primary-hover)}
.publish-status-card{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--color-border);border-radius:15px;background:var(--color-surface-soft)}.publish-status-card>span{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:#fff;color:var(--color-primary)}.publish-status-card strong,.publish-status-card small{display:block}.publish-status-card small{margin-top:3px}.publish-status-card.is-live{background:var(--color-success-soft);border-color:#c8dbc3}.publish-status-card.is-live>span{color:var(--color-success)}

/* Dashboard onboarding */
.onboarding-card{margin-bottom:18px;background:linear-gradient(135deg,#fffdfa,#f7ebe7);border:1px solid var(--color-border);border-radius:22px;padding:18px 20px;box-shadow:var(--shadow-card)}
.onboarding-summary{display:flex;align-items:center;gap:13px}.onboarding-icon{width:44px;height:44px;border-radius:14px;background:var(--color-primary-soft);color:var(--color-primary-hover);display:grid;place-items:center;flex:0 0 auto}.onboarding-icon svg{width:21px;height:21px}.onboarding-summary>div{flex:1}.onboarding-summary h2{font:600 25px var(--font-serif);margin:2px 0}.onboarding-summary p{margin:0;font-size:12px}.onboarding-summary>strong{font-size:18px;color:var(--color-primary-hover)}
.onboarding-progress{height:7px;background:#eadbd5;border-radius:99px;overflow:hidden;margin:14px 0}.onboarding-progress span{display:block;height:100%;background:linear-gradient(90deg,var(--color-primary),#c98fa0);border-radius:inherit}
.onboarding-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.onboarding-steps a{display:flex;align-items:center;gap:7px;min-width:0;padding:9px;border-radius:11px;color:var(--color-text-soft);font-size:11px}.onboarding-steps a:hover{background:#fff}.onboarding-steps a span{width:23px;height:23px;border:1px solid var(--color-border);border-radius:8px;display:grid;place-items:center;flex:0 0 auto}.onboarding-steps a svg{width:13px;height:13px}.onboarding-steps a strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onboarding-steps a.done{color:var(--color-success)}.onboarding-steps a.done span{background:var(--color-success-soft);border-color:#c8dbc3}

/* Real notifications */
.notification-center{padding:8px 22px}.notification-list{display:grid}.notification-item{display:grid;grid-template-columns:44px 1fr;gap:13px;padding:18px 4px;border-bottom:1px solid var(--color-border);position:relative}.notification-item:last-child{border-bottom:0}.notification-item.unread:before{content:"";position:absolute;left:-12px;top:27px;width:7px;height:7px;border-radius:50%;background:var(--color-primary)}.notification-icon{width:42px;height:42px;border-radius:13px;background:var(--color-primary-soft);color:var(--color-primary-hover);display:grid;place-items:center}.notification-icon svg{width:19px;height:19px}.notification-title{display:flex;align-items:center;gap:8px}.notification-title strong{font-size:14px}.notification-title i{font-style:normal;font-size:9px;text-transform:uppercase;letter-spacing:.8px;background:var(--color-primary);color:#fff;border-radius:99px;padding:4px 7px}.notification-item p{margin:4px 0;font-size:13px}.notification-item small{font-size:11px}.activity-list-v3 article.unread{position:relative}.activity-list-v3 article.unread:after{content:"";position:absolute;right:2px;top:19px;width:7px;height:7px;border-radius:50%;background:var(--color-primary)}

/* Analytics zero state */
.analytics-period{display:flex;gap:5px;flex-wrap:wrap}.analytics-period a{font-size:11px;padding:7px 9px;border-radius:9px;color:var(--color-muted);background:var(--color-surface-soft)}.analytics-period a.active{background:var(--color-primary);color:#fff}.chart-empty-state{min-height:245px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px}.chart-empty-state>svg{width:38px;height:38px;color:var(--color-primary);margin-bottom:10px}.chart-empty-state h3{font:600 25px var(--font-serif);margin:0}.chart-empty-state p{max-width:420px;margin:7px auto 15px;font-size:13px}.bar-column span{min-height:0}

/* Help product tutorial */
.help-video-card{display:grid;grid-template-columns:minmax(0,.8fr) minmax(380px,1.2fr);gap:28px;align-items:center;background:linear-gradient(135deg,#fffdfa,#f4e5e2);border:1px solid var(--color-border);border-radius:24px;padding:26px;margin-bottom:22px;box-shadow:var(--shadow-card)}.help-video-card h2{font:600 36px/1 var(--font-serif);margin:7px 0 12px}.help-video-card p{line-height:1.7}.help-video-card video{width:100%;border-radius:18px;box-shadow:var(--shadow-card);background:#eadbd5}

/* Mobile guest cards */
.guest-mobile-list{display:none}.guest-mobile-card{border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface);padding:15px;box-shadow:var(--shadow-card)}.guest-mobile-card header{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px}.guest-mobile-card header strong,.guest-mobile-card header small{display:block}.guest-mobile-card header small{margin-top:2px}.guest-mobile-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0}.guest-mobile-card dl div{background:var(--color-surface-soft);border-radius:10px;padding:9px}.guest-mobile-card dt{font-size:10px;text-transform:uppercase;color:var(--color-muted)}.guest-mobile-card dd{margin:3px 0 0;font-size:12px;font-weight:700}.guest-mobile-link{display:flex;align-items:center;gap:7px}.guest-mobile-link code{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#f6efeb;padding:10px;border-radius:10px;font-size:10px}.guest-mobile-card footer{display:flex;align-items:center;gap:7px;margin-top:12px}.guest-mobile-card footer form{margin:0}.guest-mobile-card footer .btn{min-height:40px;padding:8px 10px;font-size:12px}

.checkout-demo-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:13px;background:var(--color-warning-soft);color:#6c5425;margin:15px 0}.checkout-demo-note svg{width:19px;height:19px;flex:0 0 auto}

@media(max-width:1100px){.onboarding-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.help-video-card{grid-template-columns:1fr}}
@media(max-width:760px){
  .hero-video-stage{min-height:440px;margin-bottom:0;transform:none;width:100%;left:auto}.hero-video-shell{padding-top:38px;border-radius:22px}.hero-video-caption{display:none}.hero-video-stage .stage-message{right:4px;top:58px;transform:scale(.82)}
  .romantic-library-hero{min-height:390px;padding:115px 0 45px}.romantic-library{padding-top:32px}
  .builder-stepper{grid-template-columns:1fr;gap:6px}.builder-stepper>i{display:none}.builder-stepper button{width:100%;padding:7px}.builder-stepper button small{display:none}.builder-wizard-actions{display:grid;grid-template-columns:1fr}.builder-wizard-actions .btn{width:100%;min-width:0}.builder-wizard-actions.end{display:block}
  .editor-head-actions{grid-template-columns:1fr 1fr}.editor-head-actions .save-state{grid-column:1/-1}.editor-head-actions .btn{width:100%}.editor-form{padding:0 15px 20px}.field-group{padding:20px 0}
  .onboarding-steps{grid-template-columns:1fr}.onboarding-steps a strong{white-space:normal}.onboarding-summary h2{font-size:22px}
  .guest-table-wrap{display:none}.guest-mobile-list{display:grid;gap:12px;padding:12px}.guest-mobile-card header{grid-template-columns:42px minmax(0,1fr)}.guest-mobile-card header .guest-status{grid-column:2;width:max-content}.guest-mobile-card dl{grid-template-columns:repeat(2,1fr)}.guest-mobile-card footer{flex-wrap:wrap}.guest-mobile-card footer .btn{flex:1}
  .help-video-card{padding:18px}.help-video-card h2{font-size:31px}
}
@media(max-width:430px){.onboarding-summary{align-items:flex-start}.onboarding-summary>strong{font-size:15px}.guest-mobile-link{align-items:stretch}.guest-mobile-link .icon-button{flex:0 0 42px}.analytics-period{width:100%}.analytics-period a{flex:1;text-align:center}}

/* Gallery uploader cleanup */
.gallery-upload-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.gallery-uploader{
  position:relative;
  display:flex ;
  flex-direction:column;
  align-items:stretch;
  min-height:unset ;
  height:auto ;
  padding:12px ;
  padding-bottom:12px ;
  background:#fffaf7;
  border:1px dashed #d9c8c2;
  border-radius:22px;
  overflow:hidden;
  gap:10px;
}
.gallery-uploader img{
  width:100%;
  height:180px ;
  object-fit:cover;
  border-radius:16px;
  display:block;
}
.gallery-item-actions{
  position:absolute;
  top:16px ;
  right:16px ;
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px;
  border-radius:999px;
  background:rgba(255,250,245,.92);
  backdrop-filter:blur(8px);
  box-shadow:0 8px 24px rgba(61,37,45,.12);
  z-index:2;
  flex-wrap:nowrap ;
}
.gallery-item-actions .icon-button,
.gallery-item-actions label.icon-button,
.gallery-item-actions label{
  width:38px ;
  height:38px ;
  min-width:38px ;
  min-height:38px ;
  border-radius:12px ;
  background:#fff ;
  border:1px solid rgba(128,89,102,.14);
  color:var(--rose-dark);
  box-shadow:none;
}
.gallery-item-actions .icon-button:hover,
.gallery-item-actions label:hover{
  background:#f8efeb ;
}
.gallery-item-actions svg{
  width:16px;
  height:16px;
}
.gallery-alt,
.gallery-focal{
  position:static ;
  left:auto ;
  right:auto ;
  bottom:auto ;
  width:100% ;
  height:40px ;
  margin:0 ;
  border-radius:12px ;
  font-size:13px ;
  background:#fff;
  border:1px solid #ded1ca;
}
.gallery-alt{
  padding:0 14px;
}
.gallery-focal{
  padding:0 38px 0 14px;
}
.gallery-uploader .media-status{
  position:static ;
  display:block;
  margin-top:2px;
  padding:0 2px;
  background:transparent;
  font-size:12px;
  line-height:1.5;
  max-width:100%;
}
.gallery-uploader-new .gallery-empty-preview{
  height:180px;
  border-radius:16px;
}
@media (max-width: 980px){
  .gallery-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 640px){
  .gallery-upload-grid{grid-template-columns:1fr;}
  .gallery-uploader img,
  .gallery-uploader-new .gallery-empty-preview{height:220px ;}
  .gallery-item-actions{top:14px ;right:14px ;}
}

/* Align upload/change photo buttons */
.media-action-btn,
.btn.media-action-btn,
label.media-action-btn{
  display:inline-flex ;
  align-items:center ;
  justify-content:center ;
  gap:8px ;
  white-space:nowrap;
  line-height:1 ;
  text-align:center;
}
.media-action-btn svg,
.media-action-btn .sidebar-icon,
.media-action-btn .btn-icon{
  width:16px ;
  height:16px ;
  flex:0 0 16px ;
  display:block;
}
.media-action-btn span{
  display:inline-flex;
  align-items:center;
  line-height:1.1;
}
.gallery-item-actions .icon-button,
.gallery-item-actions label.icon-button,
.gallery-item-actions label{
  display:inline-flex ;
  align-items:center ;
  justify-content:center ;
}

/* Fix overlapping gallery action buttons */
.gallery-uploader .gallery-item-actions label,
.gallery-uploader .gallery-item-actions label.icon-button,
.gallery-uploader .gallery-item-actions .icon-button {
  position: static ;
  inset: auto ;
}
.gallery-uploader .gallery-item-actions {
  position: absolute ;
  top: 14px ;
  right: 14px ;
  display: flex ;
  flex-direction: row ;
  flex-wrap: nowrap ;
  align-items: center ;
  gap: 8px ;
  width: auto ;
  max-width: calc(100% - 28px);
}
.gallery-uploader .gallery-item-actions > * {
  flex: 0 0 auto ;
}


/* Gallery cards use one replace-photo action only */
.gallery-uploader .gallery-item-actions{
  padding:5px;
}
.gallery-uploader .gallery-item-actions > label.icon-button{
  margin:0;
}

/* Move gallery replace-photo button below image to avoid overflow */
.gallery-uploader {
  gap: 12px ;
}
.gallery-uploader .gallery-item-actions {
  position: static ;
  align-self: flex-end ;
  width: auto ;
  max-width: 100% ;
  padding: 0 ;
  background: transparent ;
  box-shadow: none ;
  backdrop-filter: none ;
  margin-top: -2px;
}
.gallery-uploader .gallery-item-actions > label.icon-button,
.gallery-uploader .gallery-item-actions > label,
.gallery-uploader .gallery-item-actions > .icon-button {
  width: 42px ;
  height: 42px ;
  min-width: 42px ;
  min-height: 42px ;
  border-radius: 14px ;
}
.gallery-uploader img {
  margin-bottom: 0 ;
}

/* Momeniva 1.1.1 — navigation, guests, media, and package-limit refinements */

/* Tooltip portal: always stay inside the viewport and above sticky UI. */
.floating-tooltip{
  z-index:2147483000;
  width:max-content;
  max-width:min(300px,calc(100vw - 24px));
  white-space:normal;
  overflow-wrap:anywhere;
  text-align:center;
  line-height:1.45;
  padding:9px 11px;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 14px 34px rgba(37,22,28,.3);
}

/* Studio sidebar: keep every account item reachable on shorter screens. */
.studio-v3 .studio-sidebar{overflow:hidden;min-height:0}
.studio-v3 .studio-sidebar>.studio-brand{flex:0 0 auto}
.studio-v3 .studio-sidebar>nav{
  flex:1 1 auto;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:6px;
  margin-right:-6px;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#c9a7af transparent;
}
.studio-v3 .studio-sidebar>nav::-webkit-scrollbar{width:7px}
.studio-v3 .studio-sidebar>nav::-webkit-scrollbar-track{background:transparent;border-radius:999px}
.studio-v3 .studio-sidebar>nav::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#d8bdc3,#b98291);
  border:2px solid #fffaf6;
  border-radius:999px;
}
.studio-v3 .studio-sidebar>nav::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#c99daa,#9d5062)}
.studio-v3 .sidebar-upgrade{flex:0 0 auto;margin-top:10px}

/* Align all “Lihat undangan” actions. */
.event-view-link,.event-view-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  white-space:nowrap;
}
.event-view-link svg,.event-view-button svg{width:17px;height:17px;flex:0 0 auto}

/* Guest toolbar and right-side filter drawer. */
.guest-toolbar-clean{display:flex;align-items:center;gap:12px;padding:14px 16px}
.guest-quick-search{display:flex;align-items:center;gap:8px;min-width:0;flex:1}
.guest-quick-search .search-input{min-width:0;flex:1}
.guest-quick-search>.icon-button{flex:0 0 42px}
.guest-filter-trigger{flex:0 0 auto;display:inline-flex;align-items:center;gap:8px;min-height:42px}
.guest-filter-trigger b{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:var(--color-primary,#8a4055);color:#fff;font-size:10px}
.guest-tools-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  padding:12px 16px;
  border-top:1px solid var(--v3-line);
  border-bottom:1px solid var(--v3-line);
  background:#fffaf7;
}
.guest-tools-row form{margin:0}
.guest-tools-row .btn,.guest-tools-row .feature-lock-button{min-height:40px}
.guest-filter-drawer aside{width:min(430px,100%)}
.guest-filter-drawer header{align-items:flex-start}
.guest-filter-drawer header>div{min-width:0}
.guest-filter-drawer header p{margin:5px 0 0;color:var(--v3-muted);font-size:13px;line-height:1.55}
.guest-filter-drawer-form{display:grid;gap:17px}
.guest-filter-drawer-form>label{display:grid;gap:8px;font-size:13px;font-weight:700;color:var(--v3-text)}
.guest-filter-drawer-form select,.guest-filter-drawer-form input{
  width:100%;height:50px;border:1px solid var(--v3-line);border-radius:14px;background:#fff;padding:0 14px;color:var(--v3-text)
}
.guest-filter-drawer-form .search-input input{padding-left:40px}
.filter-drawer-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}
.filter-drawer-actions .btn{width:100%}

/* Personal-link controls match the dimensions and baseline of the action column. */
.personal-link-cell{display:flex;align-items:center;gap:8px;min-width:0}
.personal-link-cell code{display:block;min-width:0;max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.personal-link-actions{display:flex;align-items:center;gap:5px;flex:0 0 auto}
.icon-button.compact,.personal-link-actions .icon-button,.table-actions .icon-button{
  width:36px;height:36px;min-width:36px;border-radius:10px;display:inline-grid;place-items:center;padding:0
}
.icon-button.compact svg,.personal-link-actions .icon-button svg,.table-actions .icon-button svg{width:17px;height:17px}
.guest-mobile-link.personal-link-cell{display:grid;grid-template-columns:minmax(0,1fr) 42px 42px;gap:7px}
.guest-mobile-link.personal-link-cell code{max-width:none}

/* Media control hierarchy and alignment. */
.video-uploader>.media-copy{display:grid;align-content:center;gap:5px;min-width:0}
.media-copy>strong{display:block;font:600 22px/1.15 var(--serif);color:var(--v3-text)}
.media-copy>p{margin:0;color:var(--v3-muted);font-size:12px;line-height:1.55}
.media-action-row,.audio-upload-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:7px}
.media-action-row small,.audio-upload-row small{color:var(--v3-muted);font-size:11px;line-height:1.4}
.media-action-btn{min-height:38px;padding:7px 11px;gap:7px;font-size:12px;white-space:nowrap}
.media-action-btn svg{width:16px;height:16px;flex:0 0 auto}
.audio-uploader{display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 12px;overflow:visible}
.audio-upload-row{margin:0;min-width:0}
.audio-uploader>.media-status{position:static;margin-left:auto;flex:0 0 auto}
.video-uploader>.media-status{z-index:2}

/* Package invitation limit copy must fit cleanly in cards. */
.plan-option em{line-height:1.45;white-space:normal}

@media(max-width:1000px){
  .studio-v3 .studio-sidebar>nav{padding-bottom:10px}
}
@media(max-width:760px){
  .guest-toolbar-clean{align-items:stretch;display:grid;grid-template-columns:minmax(0,1fr) auto}
  .guest-tools-row{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#c9a7af transparent}
  .guest-tools-row>*{flex:0 0 auto}
  .video-uploader>.media-copy{padding:0 4px 6px}
  .media-action-row,.audio-upload-row{align-items:flex-start;flex-direction:column}
  .media-action-row small,.audio-upload-row small{padding-left:2px}
  .audio-uploader{align-items:flex-start;flex-direction:column}
  .audio-uploader>.media-status{margin-left:0}
}
@media(max-width:430px){
  .guest-toolbar-clean{grid-template-columns:1fr}
  .guest-filter-trigger{width:100%;justify-content:center}
  .guest-quick-search>.icon-button{display:none}
  .filter-drawer-actions{grid-template-columns:1fr}
  .guest-mobile-link.personal-link-cell{grid-template-columns:minmax(0,1fr) 40px 40px}
}

.billing-event-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}


/* ===== Production refinements ===== */
:root{
  --studio-bg:#f8f4ef;--studio-surface:#fffdfa;--studio-surface-soft:#f5ece8;
  --studio-text:#34252b;--studio-muted:#74636a;--studio-line:#e2d5cf;
  --studio-primary:#844156;--studio-primary-hover:#6c3345;--studio-success:#4c6b49;
  --studio-warning:#8a641d;--studio-danger:#a3384b;
  --studio-radius-sm:12px;--studio-radius-md:16px;--studio-radius-lg:22px;
}
html{font-size:16px}
body{color:var(--studio-text)}
.studio-page{background:var(--studio-bg)}
.studio-page p,.studio-page li,.studio-page dd,.studio-page td{font-size:14px;line-height:1.65}
.studio-page small,.studio-page .field-help,.studio-page .media-helper{font-size:12px;line-height:1.55;color:var(--studio-muted)}
.studio-page label{font-size:13px;line-height:1.35}
.studio-page input:not([type=checkbox]):not([type=radio]):not([type=file]),
.studio-page select,.studio-page textarea{border-color:var(--studio-line);border-radius:13px;font-size:14px;color:var(--studio-text)}
.studio-page input:not([type=checkbox]):not([type=radio]):not([type=file]),.studio-page select{min-height:50px}
.studio-page textarea{padding:14px 15px}
.studio-page input:focus,.studio-page select:focus,.studio-page textarea:focus{border-color:#ba8493;box-shadow:0 0 0 4px rgba(132,65,86,.09);outline:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;line-height:1.15;white-space:nowrap}
.btn svg{flex:0 0 auto}
.icon-button,.icon-link{flex:0 0 auto}
.panel-kicker{font-size:11px;line-height:1.2;letter-spacing:1.25px}
.plan-pill{font-size:10px}

/* Template style and minimum package are separate concepts. */
.theme-plan-badge{position:absolute;top:20px;right:20px;z-index:4;padding:8px 11px;border-radius:999px;background:rgba(53,35,42,.78);color:#fff;font-size:10px;font-weight:700;letter-spacing:.03em;backdrop-filter:blur(10px)}
.library-art .theme-plan-badge{top:22px;right:22px}
.pricing-service-note{width:min(100% - 30px,1220px);margin:28px auto 0;text-align:center;color:#765f66;font-size:14px}

/* User menu POST logout is visually identical to other menu actions. */
.dropdown-logout{margin:0;padding:0;display:flex;align-items:center;gap:10px;width:100%;border-radius:10px;color:var(--studio-text)}
.dropdown-logout>svg{width:18px;height:18px;margin-left:12px}
.dropdown-logout button{flex:1;border:0;background:transparent;text-align:left;padding:11px 12px 11px 0;font:600 13px var(--sans);color:inherit;cursor:pointer}
.dropdown-logout:hover{background:var(--v3-rose-soft)}

/* Publish readiness */
.publish-readiness{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 18px;margin-bottom:18px;border:1px solid #e6caa1;border-radius:16px;background:#fff8e8;color:#6d4f1b}
.publish-readiness>div{display:flex;gap:12px;align-items:flex-start}.publish-readiness>div>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#f7e7bf}.publish-readiness svg{width:19px}.publish-readiness strong{display:block}.publish-readiness p{margin:3px 0 0;color:#82672f}.publish-readiness ul{margin:0;padding-left:20px;max-width:52%}.publish-readiness.ready{border-color:#c8dac4;background:#eef6eb;color:#3f633c}.publish-readiness.ready>div>span{background:#dbead7}.publish-readiness.ready p{color:#587755}

/* Open Graph and custom-domain controls */
.og-preview-editor,.domain-settings-card{display:grid;gap:14px;padding:17px;border:1px solid var(--studio-line);border-radius:16px;background:#fffaf7;margin:14px 0}
.field-group-head.compact{margin-bottom:0}.field-group-head.compact h3{font-size:20px}
.domain-verification-status{display:flex;gap:12px;padding:14px;border-radius:14px;background:#fff5db;color:#715217}.domain-verification-status>span{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;background:#f6e3a9;flex:0 0 auto}.domain-verification-status p{margin:4px 0 10px}.domain-verification-status code{word-break:break-all;background:rgba(255,255,255,.65);padding:2px 5px;border-radius:5px}.domain-verification-status.status-verified{background:#eaf4e7;color:#42613e}.domain-verification-status.status-verified>span{background:#d3e6cf}

/* Guest list pagination and CSV preview */
.guest-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 4px 2px;border-top:1px solid var(--studio-line);margin-top:16px}
.guest-pagination>div{color:var(--studio-muted);font-size:13px}.guest-pagination nav{display:flex;align-items:center;gap:10px}.guest-pagination nav span{font-size:13px;color:var(--studio-muted)}
.per-page-form label{display:flex;align-items:center;gap:8px}.per-page-form select{min-height:40px;height:40px;padding:0 34px 0 11px}
.import-preview-panel{padding:22px}.import-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.import-summary>span{display:grid;grid-template-columns:38px 1fr;align-items:center;padding:14px;border:1px solid var(--studio-line);border-radius:14px;background:#fff}.import-summary svg{grid-row:1/3;width:20px}.import-summary strong{font-size:24px}.import-summary small{font-size:12px}.import-summary .success{color:var(--studio-success)}.import-summary .warning{color:var(--studio-warning)}.row-warning{background:#fff9ea}.table-note{color:var(--studio-muted)}.import-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}

/* Analytics definitions */
.analytics-breakdown{margin-top:20px;padding:22px}.analytics-breakdown>div:first-child h2{margin:6px 0 18px}.analytics-breakdown-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.analytics-breakdown-grid article{padding:16px;border:1px solid var(--studio-line);border-radius:15px;background:#fff}.analytics-breakdown-grid h3{margin:0 0 10px;font:600 22px var(--serif)}.breakdown-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid #eee3de}.breakdown-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--studio-muted)}

/* Expiry/grace state */
.expiry-state{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700}.state-active{background:#e7f3e4;color:#466942}.state-grace{background:#fff0c9;color:#78591b}.state-expired,.state-archived,.state-cancelled{background:#fbe3e7;color:#96384a}.state-pending{background:#ece7f5;color:#67547c}.billing-event-card dd small{display:block;margin-top:4px}
.checkout-secure-note{display:flex;align-items:center;gap:9px;padding:13px 14px;border-radius:13px;background:#edf5eb;color:#456541;margin:15px 0}.checkout-secure-note svg{width:18px}

/* Check-in is a confirmation POST, never a state-changing GET. */
.checkin-confirm-card{width:min(100%,520px);margin:24px auto;text-align:center;padding:34px}.checkin-confirm-card .settings-icon{margin:0 auto 15px}.checkin-confirm-card h1{font:600 44px/1 var(--serif);margin:10px 0}.checkin-confirm-card form{margin-top:20px}

/* Clean gallery controls: actions live below images and never overflow. */
.gallery-uploader{display:flex;flex-direction:column;gap:10px;height:auto;min-height:0;padding:12px;overflow:hidden}
.gallery-uploader img,.gallery-uploader .gallery-empty-preview{width:100%;height:180px;border-radius:16px;object-fit:cover}
.gallery-uploader .gallery-item-actions{position:static;inset:auto;display:flex;align-items:center;gap:8px;width:100%;max-width:none;padding:0;margin:0;background:transparent;box-shadow:none;backdrop-filter:none}
.gallery-uploader .gallery-card-actions .btn{flex:1;min-width:0;min-height:40px;font-size:12px;padding-inline:10px}
.gallery-uploader .gallery-alt,.gallery-uploader .gallery-focal{position:static;inset:auto;width:100%;height:42px;margin:0;font-size:13px;border-radius:12px}
.gallery-uploader .media-status{position:static;margin:0;padding:0;background:transparent}

@media(max-width:760px){
 .publish-readiness{display:block}.publish-readiness ul{max-width:none;margin-top:12px}
 .guest-pagination{align-items:stretch;flex-direction:column}.guest-pagination nav{justify-content:space-between}.per-page-form label{justify-content:space-between}
 .import-summary,.analytics-breakdown-grid{grid-template-columns:1fr}.import-confirm-actions{display:grid;grid-template-columns:1fr}.import-confirm-actions .btn{width:100%}
 .theme-plan-badge{top:14px;right:14px;font-size:9px}.pricing-service-note{padding-inline:16px}
}
.gallery-card-actions{display:flex;align-items:center;gap:8px;width:100%}

/* ===== resources/ui/design-system.css ===== */
/* Momeniva UI Design System — P0/P1/P2
   Canonical component and layout layer. Loaded last in the compiled UI bundle. */
:root {
  --ui-bg: #f8f3ef;
  --ui-bg-soft: #fcf8f5;
  --ui-surface: #ffffff;
  --ui-surface-muted: #f4ece8;
  --ui-surface-rose: #fbf2f3;
  --ui-text: #34262c;
  --ui-text-soft: #5f5056;
  --ui-muted: #75666c;
  --ui-border: #e6d9d4;
  --ui-border-strong: #d6c3bd;
  --ui-primary: #884157;
  --ui-primary-hover: #713247;
  --ui-primary-soft: #f5e8ec;
  --ui-success: #36715a;
  --ui-success-soft: #eaf5ef;
  --ui-warning: #94611f;
  --ui-warning-soft: #fff5df;
  --ui-danger: #ad3e4b;
  --ui-danger-hover: #922f3c;
  --ui-danger-soft: #fff0f1;
  --ui-info: #456b80;
  --ui-info-soft: #eef6f9;
  --ui-focus: rgba(136, 65, 87, .18);
  --ui-radius-sm: 8px;
  --ui-radius-control: 12px;
  --ui-radius-card: 16px;
  --ui-radius-lg: 24px;
  --ui-shadow-sm: 0 4px 14px rgba(52, 38, 44, .06);
  --ui-shadow-md: 0 12px 30px rgba(52, 38, 44, .09);
  --ui-shadow-lg: 0 24px 60px rgba(52, 38, 44, .13);
  --ui-control-sm: 36px;
  --ui-control: 44px;
  --ui-control-lg: 52px;
  --ui-content-max: 1440px;
  --ui-settings-max: 960px;
  --ui-transition: 160ms ease;

  /* Backward-compatible mapping for the existing templates. */
  --v3-bg: var(--ui-bg);
  --v3-card: var(--ui-surface);
  --v3-text: var(--ui-text);
  --v3-muted: var(--ui-muted);
  --v3-line: var(--ui-border);
  --v3-rose: var(--ui-primary);
  --v3-rose-dark: var(--ui-primary-hover);
  --v3-rose-soft: var(--ui-primary-soft);
  --v3-shadow: var(--ui-shadow-md);
  --color-bg: var(--ui-bg);
  --color-surface: var(--ui-surface);
  --color-surface-subtle: var(--ui-surface-muted);
  --color-text: var(--ui-text);
  --color-text-muted: var(--ui-muted);
  --color-border: var(--ui-border);
  --color-primary: var(--ui-primary);
  --color-primary-hover: var(--ui-primary-hover);
}

html { color-scheme: light; scroll-behavior: smooth; }
body { background: var(--ui-bg); color: var(--ui-text); font-family: "DM Sans", system-ui, sans-serif; font-size: 15px; line-height: 1.55; }
body, button, input, select, textarea { font-family: "DM Sans", system-ui, sans-serif; }
button, input, select, textarea { font-size: 15px; }
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible {
  outline: 3px solid var(--ui-focus);
  outline-offset: 2px;
}
::selection { background: var(--ui-primary-soft); color: var(--ui-text); }

/* Progressive enhancement: content remains visible without JavaScript. */
.no-js [data-motion], .no-js [data-invite-reveal] { opacity: 1; transform: none; clip-path: none; }
.js [data-motion] { will-change: opacity, transform; }

/* Type system */
.studio-v3 h1, .studio-v3 h2, .studio-v3 h3, .studio-v3 h4,
.auth-page h1, .auth-page h2, .auth-page h3 { color: var(--ui-text); }
.studio-v3 h1 { font: 600 clamp(30px, 3vw, 42px)/1.08 "Cormorant Garamond", serif; letter-spacing: -.02em; }
.studio-v3 h2 { font-size: clamp(20px, 2vw, 26px); line-height: 1.2; }
.studio-v3 h3 { font-size: 17px; line-height: 1.3; }
.studio-v3 p { color: var(--ui-muted); font-size: 14px; line-height: 1.65; }
.studio-v3 small, .studio-v3 em { font-size: 12px; line-height: 1.45; }
.panel-kicker, .topbar-kicker, .sidebar-label {
  color: var(--ui-primary);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}

/* Buttons */
.btn, button.btn, a.btn {
  min-height: var(--ui-control);
  border-radius: var(--ui-radius-control);
  padding: 0 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid transparent;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
  transition: background-color var(--ui-transition), border-color var(--ui-transition), color var(--ui-transition), box-shadow var(--ui-transition), opacity var(--ui-transition);
  transform: none;
  white-space: nowrap;
}
.btn:hover, button.btn:hover, a.btn:hover { transform: none; }
.btn svg { width: 18px; height: 18px; flex: 0 0 18px; }
.btn-primary { background: var(--ui-primary); border-color: var(--ui-primary); color: #fff; box-shadow: 0 6px 16px rgba(136, 65, 87, .16); }
.btn-primary:hover { background: var(--ui-primary-hover); border-color: var(--ui-primary-hover); color: #fff; box-shadow: var(--ui-shadow-sm); }
.btn-outline, .btn-ghost { background: var(--ui-surface); border-color: var(--ui-border); color: var(--ui-text); box-shadow: none; }
.btn-outline:hover, .btn-ghost:hover { background: var(--ui-surface-muted); border-color: var(--ui-border-strong); color: var(--ui-text); }
.btn-danger { background: var(--ui-danger); border-color: var(--ui-danger); color: #fff; }
.btn-danger:hover { background: var(--ui-danger-hover); border-color: var(--ui-danger-hover); }
.btn-sm { min-height: var(--ui-control-sm); padding-inline: 12px; border-radius: 10px; font-size: 13px; }
.btn-lg { min-height: var(--ui-control-lg); padding-inline: 20px; border-radius: 14px; font-size: 15px; }
.btn-block { width: 100%; }
.btn[disabled], .btn:disabled, button[disabled] { opacity: .52; cursor: not-allowed; box-shadow: none; }

.icon-button, .icon-link, button.icon-button, a.icon-button {
  width: 40px;
  height: 40px;
  min-width: 40px;
  min-height: 40px;
  padding: 0;
  border: 1px solid var(--ui-border);
  border-radius: 11px;
  background: var(--ui-surface);
  color: var(--ui-text-soft);
  display: inline-grid;
  place-items: center;
  transition: background-color var(--ui-transition), border-color var(--ui-transition), color var(--ui-transition), box-shadow var(--ui-transition);
}
.icon-button:hover, .icon-link:hover { background: var(--ui-surface-muted); border-color: var(--ui-border-strong); color: var(--ui-primary); transform: none; }
.icon-button svg, .icon-link svg { width: 18px; height: 18px; }
.icon-button.compact { width: 36px; height: 36px; min-width: 36px; min-height: 36px; border-radius: 10px; }
.icon-button.danger { color: var(--ui-danger); }
.icon-button.danger:hover { background: var(--ui-danger-soft); border-color: #e5b4ba; }

/* Forms */
.studio-v3 label, .auth-page label { color: var(--ui-text); font-size: 14px; font-weight: 600; line-height: 1.4; }
.studio-v3 label > input, .studio-v3 label > select, .studio-v3 label > textarea,
.studio-v3 input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
.studio-v3 select, .studio-v3 textarea,
.auth-page input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]), .auth-page select, .auth-page textarea {
  width: 100%;
  min-height: 48px;
  height: auto;
  padding: 11px 14px;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius-control);
  background: var(--ui-surface);
  color: var(--ui-text);
  font-size: 15px;
  line-height: 1.35;
  box-shadow: none;
  transition: border-color var(--ui-transition), box-shadow var(--ui-transition), background-color var(--ui-transition);
}
.studio-v3 textarea, .auth-page textarea { min-height: 112px; resize: vertical; }
.studio-v3 input:hover, .studio-v3 select:hover, .studio-v3 textarea:hover,
.auth-page input:hover, .auth-page select:hover, .auth-page textarea:hover { border-color: var(--ui-border-strong); }
.studio-v3 input:focus, .studio-v3 select:focus, .studio-v3 textarea:focus,
.auth-page input:focus, .auth-page select:focus, .auth-page textarea:focus {
  outline: none;
  border-color: var(--ui-primary);
  box-shadow: 0 0 0 3px var(--ui-focus);
}
.studio-v3 input:disabled, .studio-v3 select:disabled, .studio-v3 textarea:disabled { background: #f1ece9; color: #8b7e83; cursor: not-allowed; }
.studio-v3 input[readonly], .studio-v3 textarea[readonly] { background: var(--ui-bg-soft); }
.studio-v3 label > small, .field-help { display: block; margin-top: 6px; color: var(--ui-muted); font-size: 12px; font-weight: 400; line-height: 1.5; }
.field-error { color: var(--ui-danger); font-size: 13px; font-weight: 600; }
.field.has-error input, .field.has-error select, .field.has-error textarea, [aria-invalid="true"] { border-color: var(--ui-danger); background: var(--ui-danger-soft); }
.form-grid { gap: 18px; }
.custom-check { color: var(--ui-text-soft); font-size: 14px; line-height: 1.5; }
.check-box { width: 22px; height: 22px; flex-basis: 22px; border-radius: 7px; }
.switch-label { min-height: 52px; align-items: center; }

/* Shared surfaces */
.panel, .settings-card, .field-group, .guest-panel, .analytics-chart-panel, .funnel-panel,
.checkout-main, .checkout-summary, .billing-card, .notification-center {
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius-card);
  background: var(--ui-surface);
  box-shadow: var(--ui-shadow-sm);
}
.panel:hover, .settings-card:hover, .field-group:hover { transform: none; }
.alert, .notice-banner, .checkout-demo-note, .checkout-secure-note { border-radius: var(--ui-radius-control); }
.alert.success { background: var(--ui-success-soft); color: var(--ui-success); border-color: #bbddcc; }
.alert.error { background: var(--ui-danger-soft); color: var(--ui-danger); border-color: #e9bdc2; }
.notice-banner.warning { background: var(--ui-warning-soft); border-color: #edd49c; color: var(--ui-warning); }
.status, .plan-pill, .category-chip, .guest-status { min-height: 26px; display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 9px; font-size: 11px; font-weight: 700; }
.status.live, .status.tayang { background: var(--ui-success-soft); color: var(--ui-success); }
.status.draft, .status.draf { background: #f1ece9; color: var(--ui-muted); }

/* Studio shell */
.studio-v3 .studio-sidebar { width: 264px; padding: 18px 16px; border-right: 1px solid var(--ui-border); background: #fffdfa; }
.studio-v3 .studio-main { margin-left: 264px; background: var(--ui-bg); }
.studio-v3 .studio-sidebar nav a { min-height: 44px; border-radius: var(--ui-radius-control); padding: 10px 12px; }
.studio-v3 .studio-sidebar nav a:hover { background: var(--ui-surface-muted); }
.studio-v3 .studio-sidebar nav a.active { background: var(--ui-primary-soft); color: var(--ui-primary-hover); box-shadow: inset 0 0 0 1px rgba(136,65,87,.08); }
.studio-v3 .sidebar-label { padding: 17px 12px 7px; }
.studio-v3 .sidebar-upgrade { padding: 15px; border-radius: var(--ui-radius-card); background: linear-gradient(145deg, #7d3b51, #a45d6d); color: #fff; box-shadow: var(--ui-shadow-sm); }
.studio-v3 .sidebar-upgrade span, .studio-v3 .sidebar-upgrade strong, .studio-v3 .sidebar-upgrade p, .studio-v3 .sidebar-upgrade a { color: #fff; }
.studio-v3 .sidebar-upgrade p { color: rgba(255,255,255,.82); font-size: 12px; }
.studio-v3 .sidebar-upgrade a { min-height: 34px; display: inline-flex; align-items: center; padding: 0 11px; border-radius: 9px; background: rgba(255,255,255,.16); }
.studio-v3 .studio-topbar { min-height: 72px; padding: 10px 28px; border-bottom: 1px solid var(--ui-border); background: rgba(255,253,250,.94); backdrop-filter: blur(14px); }
.studio-v3 .studio-content { width: 100%; max-width: var(--ui-content-max); margin: 0 auto; padding: 28px 32px 48px; }
.user-menu { min-height: 44px; }
.user-dropdown-menu { border-radius: var(--ui-radius-card); box-shadow: var(--ui-shadow-md); }

/* Page headings and toolbars */
.page-heading-row { align-items: flex-end; gap: 24px; margin-bottom: 22px; }
.page-heading-row > div:first-child { max-width: 760px; }
.page-heading-row h1 { margin: 4px 0 8px; }
.page-heading-row p { margin: 0; font-size: 15px; }
.page-heading-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.event-context-bar { min-height: 58px; padding: 10px 14px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: var(--ui-surface); box-shadow: none; }
.event-context-bar label { display: flex; align-items: center; gap: 10px; }
.event-context-bar select { min-height: 38px; padding: 7px 34px 7px 11px; font-size: 13px; }

/* Dashboard */
.stat-grid { gap: 14px; }
.stat-grid article { min-height: 124px; padding: 20px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: var(--ui-surface); box-shadow: var(--ui-shadow-sm); }
.stat-grid article strong { color: var(--ui-text); font-size: 30px; line-height: 1; }
.stat-grid article small { color: var(--ui-text-soft); font-size: 13px; }
.stat-grid article em { color: var(--ui-muted); font-size: 12px; font-style: normal; }
.event-row-v3 { border-radius: var(--ui-radius-card); border-color: var(--ui-border); box-shadow: none; }
.event-row-v3:hover { box-shadow: var(--ui-shadow-sm); transform: none; }
.event-actions-v3 .btn { min-height: 40px; }

/* Editor */
.publish-readiness { border-radius: var(--ui-radius-card); }
.editor-head-v3 {
  position: sticky;
  top: 0;
  z-index: 30;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: -10px -8px 18px;
  padding: 14px 16px;
  border: 1px solid var(--ui-border);
  border-radius: var(--ui-radius-card);
  background: rgba(255,253,250,.95);
  box-shadow: var(--ui-shadow-sm);
  backdrop-filter: blur(16px);
}
.editor-head-v3 > div:first-child > a { color: var(--ui-muted); font-size: 13px; font-weight: 600; }
.editor-title h1 { margin: 3px 0 0; font-size: clamp(25px, 2.7vw, 34px); }
.editor-head-v3 > div:first-child > p { margin: 5px 0 0; font-size: 12px; }
.editor-head-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
.editor-head-actions .save-state { flex-basis: 100%; justify-content: flex-end; font-size: 12px; }
.editor-layout-v3 { grid-template-columns: minmax(0, 1fr) minmax(360px, 42%); gap: 20px; }
.editor-panel { min-width: 0; }
.editor-tabs { position: sticky; top: 110px; z-index: 20; padding: 6px; gap: 4px; border: 1px solid var(--ui-border); border-radius: 14px; background: rgba(255,255,255,.95); box-shadow: var(--ui-shadow-sm); backdrop-filter: blur(12px); }
.editor-tabs button { min-height: 42px; border-radius: 10px; padding: 8px 11px; color: var(--ui-muted); }
.editor-tabs button.active { background: var(--ui-primary-soft); color: var(--ui-primary-hover); }
.editor-tabs button .editor-tab-progress { margin-left: auto; font-size: 10px; color: var(--ui-muted); }
.editor-mobile-nav { display: none; }
.editor-form { padding-top: 14px; }
.field-group { padding: 24px; margin-bottom: 16px; box-shadow: none; }
.field-group-head { gap: 12px; margin-bottom: 20px; }
.field-group-head > span, .settings-icon { width: 40px; height: 40px; border-radius: 11px; background: var(--ui-primary-soft); color: var(--ui-primary); }
.field-group-head h3 { margin: 0 0 3px; }
.field-group-head p { margin: 0; }
.premium-editor-card { border-radius: var(--ui-radius-control); }
.editor-preview { position: sticky; top: 96px; align-self: start; max-height: calc(100vh - 118px); border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: var(--ui-surface); box-shadow: var(--ui-shadow-md); overflow: hidden; }
.preview-toolbar { min-height: 48px; padding: 7px 10px 7px 14px; border-bottom: 1px solid var(--ui-border); }
.preview-toolbar button { width: 36px; height: 34px; border-radius: 9px; }
.preview-toolbar button.active { background: var(--ui-primary-soft); color: var(--ui-primary); }
.preview-canvas { background: #ede7e3; }
.preview-link { min-height: 48px; padding: 8px 10px; border-top: 1px solid var(--ui-border); }
.preview-link code { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.media-uploader, .gallery-uploader { border-radius: var(--ui-radius-card); }
.media-status { min-height: 20px; font-size: 12px; }
.danger-zone { border-radius: var(--ui-radius-card); background: var(--ui-danger-soft); border-color: #eac2c6; }

/* Guests */
.guest-toolbar-clean { display: grid; grid-template-columns: minmax(260px, 1fr) auto; gap: 10px; padding: 16px; }
.guest-quick-search { display: grid; grid-template-columns: 1fr 40px; gap: 8px; }
.search-input { min-height: 44px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-control); background: var(--ui-surface); }
.search-input input { border: 0; box-shadow: none; background: transparent; min-height: 42px; }
.guest-tools-row { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 16px 16px; }
.guest-tools-menu { position: relative; }
.guest-tools-menu > summary { list-style: none; cursor: pointer; }
.guest-tools-menu > summary::-webkit-details-marker { display: none; }
.guest-tools-popover { position: absolute; right: 0; top: calc(100% + 8px); z-index: 30; min-width: 230px; padding: 8px; display: grid; gap: 4px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: var(--ui-surface); box-shadow: var(--ui-shadow-md); }
.guest-tools-popover .btn { width: 100%; justify-content: flex-start; border-color: transparent; background: transparent; }
.guest-tools-popover .btn:hover { background: var(--ui-surface-muted); }
.guest-table-wrap { border-top: 1px solid var(--ui-border); }
.guest-table th { color: var(--ui-text-soft); font-size: 11px; letter-spacing: .07em; text-transform: uppercase; }
.guest-table td { font-size: 13px; }
.guest-table tr:hover td { background: var(--ui-bg-soft); }
.personal-link-cell code { max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.table-actions { gap: 6px; }
.guest-mobile-card { border-radius: var(--ui-radius-card); border-color: var(--ui-border); box-shadow: var(--ui-shadow-sm); }

/* Analytics */
.analytics-stat-grid article strong { font-size: 32px; }
.analytics-grid { gap: 16px; }
.analytics-chart-panel, .funnel-panel, .analytics-breakdown { padding: 22px; }
.analytics-period { padding: 4px; border: 1px solid var(--ui-border); border-radius: 10px; background: var(--ui-bg-soft); }
.analytics-period a { min-width: 54px; min-height: 34px; border-radius: 8px; }
.analytics-period a.active { background: var(--ui-surface); color: var(--ui-primary); box-shadow: var(--ui-shadow-sm); }
.bar-column span { border-radius: 7px 7px 3px 3px; background: linear-gradient(180deg, #a65e70, var(--ui-primary)); }
.funnel-track { height: 9px; border-radius: 999px; background: var(--ui-surface-muted); }
.funnel-track span { background: var(--ui-primary); }
.chart-data-table { width: 100%; margin-top: 18px; border-collapse: collapse; font-size: 12px; }
.chart-data-table caption { text-align: left; color: var(--ui-muted); margin-bottom: 8px; }
.chart-data-table th, .chart-data-table td { padding: 8px; border-top: 1px solid var(--ui-border); text-align: left; }
.chart-data-table.compact-visual { display: none; }

/* Billing and checkout */
.billing-layout, .checkout-shell { max-width: 1120px; margin-inline: auto; }
.billing-card { padding: 24px; }
.checkout-shell { grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr); gap: 20px; align-items: start; }
.checkout-main, .checkout-summary { padding: 28px; }
.checkout-summary { position: sticky; top: 94px; }
.payment-form { gap: 12px; }
.payment-option { min-height: 72px; padding: 14px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-control); background: var(--ui-surface); }
.payment-option:has(input:checked) { border-color: var(--ui-primary); background: var(--ui-primary-soft); box-shadow: 0 0 0 3px var(--ui-focus); }
.payment-option small { color: var(--ui-muted); font-weight: 400; }
.checkout-summary > strong { font-size: 34px; color: var(--ui-text); }
.checkout-summary li { min-height: 30px; color: var(--ui-text-soft); }

/* Settings */
.settings-layout { max-width: var(--ui-settings-max); margin: 0 auto; grid-template-columns: 190px minmax(0, 1fr); gap: 22px; align-items: start; }
.settings-nav { position: sticky; top: 94px; padding: 8px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: var(--ui-surface); box-shadow: var(--ui-shadow-sm); }
.settings-nav a { min-height: 42px; padding: 10px 12px; border-radius: 10px; color: var(--ui-text-soft); font-size: 13px; font-weight: 600; }
.settings-nav a:hover, .settings-nav a:focus { background: var(--ui-surface-muted); color: var(--ui-primary); }
.settings-content { display: grid; gap: 16px; }
.settings-card { padding: 24px; box-shadow: none; scroll-margin-top: 96px; }
.settings-card-head { margin-bottom: 20px; }
.settings-form { gap: 18px; }
.settings-card hr { border: 0; border-top: 1px solid var(--ui-border); margin: 24px 0; }
.device-card { border-radius: var(--ui-radius-control); background: var(--ui-bg-soft); }
.danger-settings { border-color: #e6b9be; background: #fffafa; }
.danger-settings .settings-icon { background: var(--ui-danger-soft); color: var(--ui-danger); }

/* Notifications */
.notification-center { overflow: hidden; }
.notification-group + .notification-group { border-top: 1px solid var(--ui-border); }
.notification-group-title { margin: 0; padding: 12px 18px; background: var(--ui-bg-soft); color: var(--ui-muted); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.notification-item { min-height: 86px; padding: 16px 18px; gap: 14px; border-top: 1px solid var(--ui-border); }
.notification-group .notification-item:first-of-type { border-top: 0; }
.notification-item.unread { background: var(--ui-surface-rose); }
.notification-item.read { background: var(--ui-surface); }
.notification-icon { width: 42px; height: 42px; border-radius: 12px; background: var(--ui-primary-soft); color: var(--ui-primary); }
.notification-title i { background: var(--ui-primary); color: #fff; border-radius: 999px; padding: 3px 7px; font-size: 10px; font-style: normal; }

/* Empty states */
.empty-state { max-width: 620px; margin: 30px auto; padding: 42px 28px; border: 1px dashed var(--ui-border-strong); border-radius: var(--ui-radius-lg); background: var(--ui-bg-soft); text-align: center; }
.empty-state .empty-art { width: 58px; height: 58px; margin: 0 auto 16px; border-radius: 18px; background: var(--ui-primary-soft); color: var(--ui-primary); display: grid; place-items: center; }
.empty-state h3 { margin: 0 0 7px; font-size: 20px; }
.empty-state p { max-width: 460px; margin: 0 auto 18px; }
.empty-state-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; }

/* Authentication */
.auth-shell-v3 .auth-panel { padding: 42px 5vw; }
.auth-shell-v3 .auth-card { max-width: 520px; }
.auth-heading-v3 h2 { font-size: clamp(34px, 4vw, 46px); }
.auth-form-v3 { gap: 15px; }
.auth-form-v3 input, .auth-form-v3 select { min-height: 50px; border-radius: var(--ui-radius-control); }
.btn-auth { min-height: 50px; border-radius: var(--ui-radius-control); }
.demo-login-v3 { border-radius: var(--ui-radius-card); }

/* Marketing: preserve concept, normalize controls and remove legacy blue accents. */
.romantic-header .btn, .romantic-footer .btn, .marketing-page .btn { border-radius: var(--ui-radius-control); }
.romantic-header a:focus-visible, .romantic-footer a:focus-visible { outline-color: rgba(255,255,255,.38); }
.template-empty-state { max-width: 680px; margin: 40px auto 80px; }

/* Modal and drawer */
.modal-card, .dialog-card, .guest-form-drawer aside, .guest-filter-drawer aside { border-radius: var(--ui-radius-lg); box-shadow: var(--ui-shadow-lg); }
.modal-card .btn, .dialog-card .btn { min-width: 112px; }
.toast { border-radius: var(--ui-radius-control); box-shadow: var(--ui-shadow-md); }

/* Accessibility utilities */
.sr-only, .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.skip-link { left: 12px; top: 12px; padding: 10px 14px; border-radius: 10px; background: var(--ui-text); color: #fff; }

@media (max-width: 1180px) {
  .editor-layout-v3 { grid-template-columns: minmax(0, 1fr) 390px; }
  .editor-head-v3 { align-items: flex-start; }
  .editor-head-actions { max-width: 560px; }
}

@media (max-width: 980px) {
  .studio-v3 .studio-main { margin-left: 0; }
  .studio-v3 .studio-sidebar { width: min(300px, 86vw); }
  .studio-v3 .studio-content { padding: 24px 20px 42px; }
  .editor-layout-v3 { grid-template-columns: 1fr; }
  .editor-preview { position: relative; top: auto; max-height: none; order: -1; }
  .preview-canvas { max-height: 660px; }
  .settings-layout { grid-template-columns: 1fr; }
  .settings-nav { position: static; display: flex; overflow-x: auto; gap: 4px; }
  .settings-nav a { white-space: nowrap; }
  .checkout-shell { grid-template-columns: 1fr; }
  .checkout-summary { position: static; }
}

@media (max-width: 760px) {
  body { font-size: 15px; }
  .studio-v3 .studio-topbar { min-height: 64px; padding: 8px 14px; }
  .studio-v3 .studio-content { padding: 18px 14px 104px; }
  .user-meta { display: none; }
  .page-heading-row { align-items: stretch; display: grid; gap: 14px; }
  .page-heading-actions { justify-content: stretch; }
  .page-heading-actions .btn { flex: 1 1 auto; }
  .event-context-bar { align-items: stretch; display: grid; grid-template-columns: 1fr auto; gap: 8px; }
  .event-context-bar label { grid-column: 1 / -1; display: grid; gap: 6px; }
  .event-context-bar select { width: 100%; min-height: 44px; }
  .stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat-grid article { min-height: 112px; padding: 16px; }
  .stat-grid article strong { font-size: 27px; }

  .editor-head-v3 { position: relative; top: auto; display: grid; margin: 0 0 14px; padding: 15px; }
  .editor-head-actions { position: fixed; left: 0; right: 0; bottom: 0; z-index: 100; max-width: none; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); display: grid; grid-template-columns: 1fr 1fr; gap: 8px; border-top: 1px solid var(--ui-border); background: rgba(255,253,250,.97); box-shadow: 0 -10px 30px rgba(52,38,44,.12); backdrop-filter: blur(16px); }
  .editor-head-actions .save-state { grid-column: 1 / -1; justify-content: center; min-height: 20px; }
  .editor-head-actions > a.btn { display: none; }
  .editor-head-actions .btn { min-height: 44px; padding-inline: 10px; }
  .editor-tabs { display: none; }
  .editor-mobile-nav { display: grid; position: sticky; top: 70px; z-index: 25; margin-bottom: 12px; padding: 10px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: rgba(255,255,255,.96); box-shadow: var(--ui-shadow-sm); }
  .editor-mobile-nav label { display: grid; gap: 6px; }
  .editor-mobile-nav select { min-height: 44px; }
  .field-group { padding: 18px 15px; }
  .form-grid { grid-template-columns: 1fr; gap: 15px; }
  .editor-preview { border-radius: var(--ui-radius-card); }
  .preview-canvas { height: min(68vh, 620px); }

  .guest-toolbar-clean { grid-template-columns: 1fr auto; padding: 12px; }
  .guest-tools-row { padding: 0 12px 12px; }
  .guest-tools-row > .btn, .guest-tools-row > form, .guest-tools-row > .feature-lock-button { flex: 1 1 auto; }
  .guest-tools-menu { margin-left: auto; }
  .guest-tools-popover { right: 0; left: auto; max-width: calc(100vw - 28px); }
  .guest-table-wrap { display: none; }
  .guest-mobile-list { display: grid; }

  .settings-card { padding: 18px 15px; }
  .settings-nav { margin: 0 -2px; }
  .checkout-main, .checkout-summary { padding: 20px 16px; }
  .payment-option { min-height: 76px; }
  .notification-item { padding: 14px; }

  .auth-shell-v3 .auth-panel { padding: 28px 20px; }
  .auth-heading-v3 h2 { font-size: 34px; }

  .btn, button.btn, a.btn { min-height: 44px; }
  .icon-button, .icon-link, button.icon-button, a.icon-button { width: 44px; height: 44px; min-width: 44px; min-height: 44px; }
  .icon-button.compact { width: 40px; height: 40px; min-width: 40px; min-height: 40px; }
}

@media (max-width: 480px) {
  .stat-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .stat-grid article { min-height: 106px; padding: 14px; }
  .stat-icon { width: 34px; height: 34px; }
  .page-heading-row h1 { font-size: 32px; }
  .event-context-bar { grid-template-columns: 1fr; }
  .event-context-bar > * { grid-column: 1; }
  .guest-toolbar-clean { grid-template-columns: 1fr; }
  .guest-quick-search { grid-template-columns: 1fr 44px; }
  .guest-filter-trigger { width: 100%; }
  .checkout-summary > strong { font-size: 30px; }
  .empty-state { padding: 32px 18px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
  [data-motion], [data-motion-loop] { opacity: 1 !important; transform: none !important; clip-path: none !important; }
}

@media (forced-colors: active) {
  .btn, .icon-button, .panel, .settings-card, .field-group, input, select, textarea { border: 1px solid CanvasText; }
  .btn-primary, .btn-danger { forced-color-adjust: none; }
}

/* Compatibility aliases for the compact guest actions menu. */
.guest-actions-menu { position: relative; margin-left: auto; }
.guest-actions-menu > summary { list-style: none; cursor: pointer; }
.guest-actions-menu > summary::-webkit-details-marker { display: none; }
.guest-actions-popover { position: absolute; right: 0; top: calc(100% + 8px); z-index: 40; min-width: 240px; padding: 8px; display: grid; gap: 4px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: var(--ui-surface); box-shadow: var(--ui-shadow-md); }
.guest-actions-popover form, .guest-actions-popover label { width: 100%; }
.guest-actions-popover .btn, .guest-actions-popover .feature-lock-button { width: 100%; justify-content: flex-start; border-color: transparent; background: transparent; white-space: normal; text-align: left; }
.guest-actions-popover .btn:hover, .guest-actions-popover .feature-lock-button:hover { background: var(--ui-surface-muted); }
.empty-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin-top: 18px; }
.settings-subsection { scroll-margin-top: 96px; padding-top: 4px; }
.settings-subsection > h3 { margin: 0 0 8px; }
@media (max-width: 760px) {
  .guest-actions-menu { margin-left: 0; }
  .guest-actions-menu > summary { width: 100%; }
  .guest-actions-popover { left: 0; right: auto; width: min(280px, calc(100vw - 28px)); }
}

/* Refined billing implementation */
.billing-event-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-bottom: 20px; }
.billing-event-card { padding: 22px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: var(--ui-surface); box-shadow: var(--ui-shadow-sm); }
.billing-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.billing-card-head h2 { margin: 8px 0 2px; font-size: 25px; }
.billing-card-head p { margin: 0; }
.billing-summary-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 18px 0; }
.billing-summary-list > div { padding: 12px; border-radius: var(--ui-radius-control); background: var(--ui-bg-soft); }
.billing-summary-list dt { color: var(--ui-muted); font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.billing-summary-list dd { margin: 5px 0 0; color: var(--ui-text); font-size: 13px; font-weight: 700; }
.usage-grid { display: grid; gap: 12px; margin: 18px 0; }
.usage-grid > div { display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; }
.usage-grid span { color: var(--ui-text); font-size: 13px; }
.usage-grid small { color: var(--ui-muted); font-size: 12px; }
.usage-track { grid-column: 1 / -1; height: 7px; overflow: hidden; border-radius: 999px; background: var(--ui-surface-muted); }
.usage-track i { display: block; height: 100%; border-radius: inherit; background: var(--ui-primary); }
.billing-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.order-panel { overflow: hidden; }
.order-panel .panel-head { padding: 22px 22px 14px; }
.order-table { min-width: 760px; }
.order-row { min-height: 54px; padding: 12px 18px; font-size: 13px; }
.order-row.head { color: var(--ui-muted); font-size: 11px; }
.payment-status { min-height: 26px; display: inline-flex; align-items: center; width: max-content; padding: 4px 9px; border-radius: 999px; font-size: 11px; font-weight: 700; }

/* Refined checkout implementation */
.checkout-layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr); gap: 20px; max-width: 1120px; margin: 0 auto; align-items: start; }
.checkout-form, .checkout-summary { padding: 26px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-card); background: var(--ui-surface); box-shadow: var(--ui-shadow-sm); }
.checkout-form .checkout-demo-note, .checkout-form .checkout-secure-note { margin-bottom: 18px; }
.checkout-event { margin: 0 0 22px; border-radius: var(--ui-radius-control); }
.checkout-event img { width: 68px; height: 76px; }
.checkout-event small, .checkout-event span { font-size: 12px; color: var(--ui-muted); }
.payment-form { display: grid; gap: 16px; }
.payment-methods { display: grid; gap: 10px; min-width: 0; padding: 0; border: 0; }
.payment-methods legend { margin-bottom: 10px; color: var(--ui-text); font-size: 18px; font-weight: 700; }
.checkout-consent { margin-top: 4px; }
.checkout-submit-copy { display: block; text-align: center; color: var(--ui-muted); font-size: 12px; }
.checkout-total { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding-top: 16px; border-top: 1px solid var(--ui-border); }
.checkout-total span { color: var(--ui-muted); font-size: 13px; }
.checkout-total strong { color: var(--ui-text); font-size: 22px; }

/* Settings support */
.settings-heading { max-width: var(--ui-settings-max); margin-inline: auto; }
.settings-field-static { display: grid; gap: 8px; }
.settings-field-label { color: var(--ui-text); font-size: 14px; font-weight: 600; }
.verification-status { min-height: 48px; display: flex; align-items: center; gap: 9px; padding: 10px 12px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-control); background: var(--ui-bg-soft); }
.verification-status.verified { color: var(--ui-success); background: var(--ui-success-soft); border-color: #b9dbc9; }
.verification-status.unverified { color: var(--ui-warning); background: var(--ui-warning-soft); border-color: #ead29b; }
.verification-status a { margin-left: auto; color: currentColor; font-size: 12px; font-weight: 700; }
.settings-choice-group { display: grid; gap: 11px; padding: 16px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-control); background: var(--ui-bg-soft); }
.settings-choice-group h3, .settings-choice-group p { margin: 0; }

/* Accessible chart table */
.chart-data-table { margin-top: 16px; border-top: 1px solid var(--ui-border); }
.chart-data-table summary { min-height: 42px; display: flex; align-items: center; cursor: pointer; color: var(--ui-primary); font-size: 13px; font-weight: 700; }
.chart-data-table table { width: 100%; border-collapse: collapse; }
.chart-data-table th, .chart-data-table td { padding: 9px 8px; border-top: 1px solid var(--ui-border); text-align: left; font-size: 12px; }

@media (max-width: 980px) {
  .billing-event-grid { grid-template-columns: 1fr; }
  .checkout-layout { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
  .billing-event-card { padding: 18px 15px; }
  .billing-card-head { display: grid; }
  .billing-summary-list { grid-template-columns: 1fr; }
  .billing-actions { display: grid; grid-template-columns: 1fr; }
  .billing-actions .btn { width: 100%; }
  .order-panel { overflow-x: auto; }
  .checkout-form, .checkout-summary { padding: 20px 16px; }
}

/* P0-P2 completion: page-level composition */
.dashboard-welcome-actions,
.settings-actions,
.data-export-row,
.empty-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.dashboard-welcome-actions { justify-content: flex-end; }
.settings-actions { justify-content: flex-start; margin-top: 4px; }
.data-export-row { justify-content: space-between; padding: 14px 16px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-control); background: var(--ui-bg-soft); }
.data-export-row > div { min-width: 0; }
.data-export-row strong { display: block; margin-bottom: 3px; color: var(--ui-text); font-size: 14px; }
.data-export-row small { display: block; color: var(--ui-muted); font-size: 12px; line-height: 1.5; }
.settings-preference-list { display: grid; gap: 10px; }
.settings-preference-list .check-label { align-items: flex-start; padding: 14px; border: 1px solid var(--ui-border); border-radius: var(--ui-radius-control); background: var(--ui-bg-soft); }
.settings-preference-list .check-label > span:last-child { display: grid; gap: 3px; }
.settings-preference-list .check-label strong { color: var(--ui-text); font-size: 14px; }
.settings-preference-list .check-label small { color: var(--ui-muted); font-size: 12px; line-height: 1.45; }
.settings-nav a.active { color: var(--ui-primary); background: var(--ui-primary-soft); }
.settings-nav a.active svg { color: var(--ui-primary); }
.billing-empty { max-width: none; margin: 0 0 20px; }
.checkout-heading { max-width: 1120px; margin-inline: auto; }
.notification-copy { min-width: 0; flex: 1; }
.notification-copy p { margin: 3px 0 5px; color: var(--ui-muted); font-size: 13px; line-height: 1.5; }
.notification-copy time { color: var(--ui-muted); font-size: 12px; }
.notification-action { min-height: 36px; display: inline-flex; align-items: center; padding: 0 11px; border-radius: 10px; color: var(--ui-primary); font-size: 12px; font-weight: 700; }
.notification-action:hover { background: var(--ui-primary-soft); }
.catalogue-empty .romantic-library-hero { min-height: 340px; padding-block: 64px 42px; }
.catalogue-empty .template-empty-state { margin-top: 20px; }

/* Password guidance created by ui-system.js. */
.password-strength { display: grid; gap: 7px; margin-top: 8px; }
.password-strength-track { height: 6px; overflow: hidden; border-radius: 999px; background: var(--ui-surface-muted); }
.password-strength-track > span { display: block; width: 0; height: 100%; border-radius: inherit; background: var(--ui-danger); transition: width .18s ease, background-color .18s ease; }
.password-strength[data-level="2"] .password-strength-track > span { background: var(--ui-warning); }
.password-strength[data-level="3"] .password-strength-track > span,
.password-strength[data-level="4"] .password-strength-track > span { background: var(--ui-success); }
.password-strength small { color: var(--ui-muted); font-size: 12px; }

@media (max-width: 760px) {
  .dashboard-welcome-actions,
  .settings-actions,
  .data-export-row { display: grid; grid-template-columns: 1fr; width: 100%; }
  .dashboard-welcome-actions .btn,
  .settings-actions .btn,
  .data-export-row .btn { width: 100%; }
  .notification-action { min-width: 44px; min-height: 44px; justify-content: center; }
  .catalogue-empty .romantic-library-hero { min-height: 280px; padding-block: 48px 30px; }
}

/* ========================================================================== */
/* Authentication + Dashboard refinement v2                                  */
/* ========================================================================== */

/* Defensive reset: security and metadata fields must never become visual. */
input[type="hidden"],
.auth-page input[type="hidden"],
.studio-v3 input[type="hidden"] {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

.skip-link {
  position: fixed;
  z-index: 10000;
  top: 10px;
  left: 12px;
  transform: translateY(-160%);
  opacity: 0;
  pointer-events: none;
}
.skip-link:focus {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}

/* Authentication shell */
.auth-page-refined {
  min-width: 320px;
  overflow-x: hidden;
  background: #fbf7f3;
}
.auth-shell-v4 {
  min-height: 100svh;
  display: grid;
  grid-template-columns: minmax(430px, 42%) minmax(0, 1fr);
  background: #fbf7f3;
}
.auth-shell-v4 .auth-visual {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  padding: 32px clamp(34px, 4vw, 66px) 36px;
  display: flex;
  color: #fff;
  background:
    radial-gradient(circle at 22% 18%, rgba(255,255,255,.12), transparent 29%),
    radial-gradient(circle at 78% 72%, rgba(246,212,219,.18), transparent 31%),
    linear-gradient(150deg, #4d2635 0%, #7f4056 54%, #a96778 100%);
}
.auth-shell-v4 .auth-visual::before,
.auth-shell-v4 .auth-visual::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  pointer-events: none;
}
.auth-shell-v4 .auth-visual::before {
  width: 430px;
  height: 430px;
  right: -250px;
  top: -220px;
}
.auth-shell-v4 .auth-visual::after {
  width: 520px;
  height: 520px;
  left: -350px;
  bottom: -320px;
}
.auth-visual-inner {
  position: relative;
  z-index: 1;
  width: min(100%, 610px);
  min-height: calc(100svh - 68px);
  margin: 0 auto;
  display: grid;
  grid-template-rows: auto minmax(280px, 1fr) auto auto;
  gap: 18px;
}
.auth-shell-v4 .auth-brand {
  width: fit-content;
  color: #fff;
}
.auth-shell-v4 .auth-brand .brand-mark {
  background: rgba(255,255,255,.94);
  color: #7b3e53;
}
.auth-showcase {
  position: relative;
  min-height: 330px;
  display: grid;
  place-items: center;
  isolation: isolate;
}
.auth-showcase-orbit {
  position: absolute;
  left: 50%;
  top: 50%;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.auth-showcase-orbit.orbit-a { width: 320px; height: 320px; }
.auth-showcase-orbit.orbit-b { width: 240px; height: 240px; border-style: dashed; opacity: .72; }
.auth-preview-card {
  position: relative;
  z-index: 2;
  width: 218px;
  min-height: 292px;
  padding: 42px 26px 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 28px;
  background: linear-gradient(165deg, rgba(255,253,250,.98), rgba(248,232,228,.96));
  color: #4e2b37;
  text-align: center;
  box-shadow: 0 32px 70px rgba(45,20,29,.30);
  transform: rotate(-2deg);
}
.auth-preview-card::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(126,65,84,.18);
  border-radius: 20px;
  pointer-events: none;
}
.auth-preview-eyebrow {
  position: relative;
  z-index: 1;
  color: #84606b;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.auth-preview-card strong {
  position: relative;
  z-index: 1;
  margin: 18px 0 12px;
  font: 600 37px/.92 "Cormorant Garamond", serif;
  letter-spacing: -.03em;
}
.auth-preview-card strong i {
  display: block;
  margin: 3px 0;
  color: #a45f72;
  font: 400 24px/1 "Allura", cursive;
}
.auth-preview-date,
.auth-preview-card small {
  position: relative;
  z-index: 1;
  color: #755761;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.auth-preview-line {
  position: relative;
  z-index: 1;
  width: 42px;
  height: 1px;
  margin: 18px 0 12px;
  background: #cbaeb5;
}
.auth-floating-note {
  position: absolute;
  z-index: 3;
  min-width: 205px;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 15px;
  background: rgba(255,255,255,.94);
  color: #493039;
  box-shadow: 0 18px 45px rgba(48,21,31,.20);
}
.auth-floating-note > svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: #884157;
}
.auth-floating-note span,
.auth-floating-note strong,
.auth-floating-note small { display: block; }
.auth-floating-note strong { font-size: 12px; line-height: 1.3; }
.auth-floating-note small { margin-top: 2px; color: #806d74; font-size: 10px; line-height: 1.35; }
.auth-note-rsvp { left: 2%; top: 27%; }
.auth-note-preview { right: 0; bottom: 21%; }
.auth-shell-v4 .auth-copy {
  max-width: 540px;
  padding: 0;
}
.auth-shell-v4 .auth-copy .romance-script {
  color: #f3c9d2;
  font-size: 26px;
}
.auth-shell-v4 .auth-copy h1 {
  max-width: 520px;
  margin: 8px 0 10px;
  color: #fff;
  font: 600 clamp(36px, 4vw, 50px)/1.04 "Cormorant Garamond", serif;
  letter-spacing: -.025em;
}
.auth-shell-v4 .auth-copy p {
  max-width: 500px;
  margin: 0;
  color: rgba(255,255,255,.76);
  font-size: 14px;
  line-height: 1.7;
}
.auth-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  color: rgba(255,255,255,.82);
  font-size: 11px;
}
.auth-benefits span { display: inline-flex; align-items: center; gap: 6px; }
.auth-benefits svg { width: 14px; height: 14px; color: #f4c8d2; }

.auth-shell-v4 .auth-panel {
  min-width: 0;
  min-height: 100svh;
  padding: 34px clamp(34px, 6vw, 92px);
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fbf7f3;
}
.auth-panel-inner {
  width: min(100%, 550px);
  margin: auto;
}
.auth-shell-v4 .auth-card {
  width: 100%;
  max-width: none;
}
.auth-shell-v4 .auth-back.desktop {
  width: fit-content;
  margin: 0 0 36px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #76646b;
  font-size: 13px;
  font-weight: 600;
}
.auth-shell-v4 .auth-back.desktop svg { width: 16px; height: 16px; }
.auth-mobile-header { display: none; }
.auth-heading-v3 { margin-bottom: 0; }
.auth-heading-v3 > span {
  display: block;
  margin-bottom: 10px;
  color: var(--ui-primary);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.auth-heading-v3 h2 {
  max-width: 520px;
  margin: 0;
  color: var(--ui-text);
  font: 600 clamp(36px, 4vw, 46px)/1.04 "Cormorant Garamond", serif;
  letter-spacing: -.025em;
}
.auth-heading-v3 p {
  margin: 12px 0 0;
  color: var(--ui-muted);
  font-size: 14px;
  line-height: 1.55;
}
.auth-heading-v3 a,
.auth-form-v3 a {
  color: var(--ui-primary);
  font-weight: 700;
}
.auth-form-v3 {
  margin-top: 28px;
  display: grid;
  gap: 19px;
}
.auth-form-v3 .field {
  min-width: 0;
  display: grid;
  gap: 8px;
  color: var(--ui-text);
  font-size: 14px;
  font-weight: 650;
}
.auth-form-v3 .label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.auth-form-v3 .label-row > a {
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.auth-form-v3 .input-with-icon,
.auth-form-v3 .password-field {
  position: relative;
  display: block;
  min-width: 0;
}
.auth-form-v3 .input-with-icon > svg {
  position: absolute;
  z-index: 2;
  left: 16px;
  top: 50%;
  width: 18px;
  height: 18px;
  color: #8b757d;
  transform: translateY(-50%);
  pointer-events: none;
}
.auth-form-v3 .input-with-icon > input {
  min-height: 52px;
  padding: 12px 48px 12px 52px;
  border: 1px solid #dccdc8;
  border-radius: 13px;
  background: #fff;
  color: var(--ui-text);
  font-size: 15px;
}
.auth-form-v3 .input-with-icon > input::placeholder { color: #a29398; }
.auth-form-v3 .input-with-icon > input:focus {
  border-color: var(--ui-primary);
  box-shadow: 0 0 0 4px rgba(136,65,87,.12);
}
.auth-form-v3 .password-field > button {
  position: absolute;
  z-index: 3;
  top: 50%;
  right: 8px;
  width: 38px;
  height: 38px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #806d74;
  transform: translateY(-50%);
}
.auth-form-v3 .password-field > button:hover { background: var(--ui-primary-soft); color: var(--ui-primary); }
.auth-form-v3 .password-field > button svg { width: 18px; height: 18px; }
.auth-form-v3 .field-help,
.auth-form-v3 .field-error { margin: 0; font-size: 12px; }
.auth-form-v3 .custom-check {
  position: relative;
  min-height: 24px;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: var(--ui-text-soft);
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  cursor: pointer;
}
.auth-form-v3 .custom-check input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.auth-form-v3 .custom-check .check-box {
  width: 21px;
  height: 21px;
  flex: 0 0 21px;
  display: grid;
  place-items: center;
  border: 1px solid #cdbab5;
  border-radius: 7px;
  background: #fff;
  color: transparent;
}
.auth-form-v3 .custom-check input:checked + .check-box {
  border-color: var(--ui-primary);
  background: var(--ui-primary);
  color: #fff;
}
.auth-form-v3 .custom-check input:focus-visible + .check-box { box-shadow: 0 0 0 3px var(--ui-focus); }
.auth-form-v3 .custom-check .check-box svg { width: 14px; height: 14px; }
.auth-form-v3 .form-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}
.auth-form-v3 .btn-auth {
  min-height: 52px;
  border-radius: 13px;
  font-size: 14px;
}
.auth-divider {
  margin: 22px 0;
  display: flex;
  align-items: center;
  gap: 14px;
  color: #94838a;
  font-size: 12px;
}
.auth-divider::before,
.auth-divider::after { content: ""; flex: 1; height: 1px; background: var(--ui-border); }
.auth-divider span { flex: 0 0 auto; }
.btn-google {
  min-height: 50px;
  border: 1px solid var(--ui-border);
  border-radius: 13px;
  background: #fff;
  color: var(--ui-text);
  box-shadow: none;
}
.btn-google:hover { border-color: var(--ui-border-strong); background: #fffaf8; }
.demo-login-v3 {
  margin-top: 20px;
  padding: 14px 15px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px dashed #d8c4be;
  border-radius: 14px;
  background: #f8efeb;
  color: var(--ui-text-soft);
}
.demo-login-v3 > div { display: grid; gap: 2px; }
.demo-login-v3 strong { color: var(--ui-text); font-size: 12px; }
.demo-login-v3 span { font-size: 11px; }
.demo-login-v3 button {
  min-height: 38px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--ui-primary);
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.demo-login-v3 button:hover { background: rgba(136,65,87,.08); }
.demo-login-v3 button svg { width: 16px; height: 16px; }
.auth-note-v3,
.auth-secondary-link { color: var(--ui-muted); font-size: 12px; }

/* Studio shell */
.studio-v3 {
  --studio-sidebar-width: 264px;
  background: #f8f5f2;
}
.studio-v3 .studio-shell {
  min-height: 100svh;
  display: block;
  background: #f8f5f2;
}
.studio-v3 .studio-sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 60;
  width: var(--studio-sidebar-width);
  padding: 24px 18px 18px;
  display: flex;
  flex-direction: column;
  border-right: 1px solid #eadeda;
  background: #fffdfa;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.studio-v3 .studio-sidebar > .brand {
  min-height: 48px;
  margin: 0 7px 18px;
  padding: 0;
  display: inline-flex;
  align-items: center;
}
.studio-v3 .studio-sidebar nav { display: grid; gap: 3px; }
.studio-v3 .sidebar-label {
  margin: 16px 10px 7px;
  padding: 0;
  color: #9c737f;
  font-size: 10px;
  letter-spacing: .13em;
}
.studio-v3 .sidebar-link {
  min-height: 44px;
  padding: 9px 11px;
  display: flex;
  align-items: center;
  gap: 11px;
  border-radius: 11px;
  color: #65575c;
  font-size: 13px;
  font-weight: 600;
}
.studio-v3 .sidebar-link:hover { background: #faf1ee; color: var(--ui-text); }
.studio-v3 .sidebar-link.active {
  background: #f4e5e9;
  color: var(--ui-primary-hover);
  box-shadow: inset 3px 0 0 var(--ui-primary);
}
.studio-v3 .sidebar-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: grid;
  place-items: center;
  color: #866e76;
}
.studio-v3 .sidebar-icon svg { width: 18px; height: 18px; }
.studio-v3 .sidebar-link.active .sidebar-icon { color: var(--ui-primary); }
.studio-v3 .sidebar-text { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.studio-v3 .sidebar-upgrade {
  margin-top: auto;
  padding: 16px;
  border: 1px solid #e1c8cf;
  border-radius: 16px;
  background: linear-gradient(145deg, #8b465b, #6f3449);
  color: #fff;
  box-shadow: 0 12px 28px rgba(83,41,55,.16);
}
.studio-v3 .sidebar-upgrade > span {
  display: inline-flex;
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(255,255,255,.16);
  color: rgba(255,255,255,.92);
  font-size: 9px;
  letter-spacing: .08em;
}
.studio-v3 .sidebar-upgrade strong { margin: 10px 0 5px; color: #fff; font-size: 14px; line-height: 1.35; }
.studio-v3 .sidebar-upgrade p { margin: 0 0 11px; color: rgba(255,255,255,.75); font-size: 11px; line-height: 1.55; }
.studio-v3 .sidebar-upgrade a {
  min-height: 36px;
  padding: 0 11px;
  display: inline-flex;
  align-items: center;
  border-radius: 10px;
  background: rgba(255,255,255,.14);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
}
.studio-v3 .sidebar-upgrade a:hover { background: rgba(255,255,255,.22); }

.studio-v3 .studio-main {
  min-width: 0;
  margin-left: var(--studio-sidebar-width);
}
.studio-v3 .studio-topbar {
  position: sticky;
  top: 0;
  z-index: 50;
  min-height: 72px;
  padding: 10px 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid rgba(230,217,212,.88);
  background: rgba(255,253,250,.93);
  backdrop-filter: blur(16px);
}
.studio-v3 .topbar-title { min-width: 0; display: grid; gap: 2px; }
.studio-v3 .topbar-title .topbar-kicker { margin: 0; color: #9a6677; font-size: 9px; }
.studio-v3 .topbar-title > strong { color: var(--ui-text); font-size: 15px; font-weight: 700; }
.studio-v3 .topbar-actions { display: flex; align-items: center; gap: 10px; }
.studio-v3 .topbar-notification { position: relative; }
.studio-v3 .topbar-notification > span {
  position: absolute;
  right: -4px;
  top: -5px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  display: grid;
  place-items: center;
  border: 2px solid #fffdfa;
  border-radius: 999px;
  background: var(--ui-danger);
  color: #fff;
  font-size: 9px;
  font-weight: 800;
}
.studio-v3 .user-menu {
  min-height: 48px;
  padding: 5px 8px 5px 5px;
  display: flex;
  align-items: center;
  gap: 9px;
  border: 1px solid transparent;
  border-radius: 13px;
  background: transparent;
  color: var(--ui-text);
}
.studio-v3 .user-menu:hover { border-color: var(--ui-border); background: #fff; }
.studio-v3 .user-avatar {
  width: 38px;
  height: 38px;
  border-radius: 11px;
  background: #f0dfe4;
  color: var(--ui-primary-hover);
  font-size: 14px;
}
.studio-v3 .user-meta { min-width: 0; text-align: left; }
.studio-v3 .user-meta strong { max-width: 180px; color: var(--ui-text); font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.studio-v3 .user-meta small { max-width: 190px; color: var(--ui-muted); font-size: 10px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.studio-v3 .studio-content {
  width: 100%;
  max-width: 1360px;
  margin: 0 auto;
  padding: 30px 32px 52px;
}
.dashboard-page { display: grid; gap: 18px; }

/* Dashboard hierarchy */
.dashboard-hero {
  margin: 0;
  padding: 26px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  border: 1px solid #eadbd6;
  border-radius: 22px;
  background:
    radial-gradient(circle at 90% 10%, rgba(217,167,180,.23), transparent 31%),
    linear-gradient(135deg, #fffdfa, #fbf1ed);
  box-shadow: 0 10px 30px rgba(69,42,51,.05);
}
.dashboard-hero > div:first-child { min-width: 0; max-width: 760px; }
.dashboard-hero > div:first-child > span {
  display: block;
  color: var(--ui-primary);
  font-size: 12px;
  font-weight: 700;
}
.dashboard-hero h1 {
  margin: 5px 0 8px;
  max-width: 720px;
  color: var(--ui-text);
  font: 600 clamp(32px, 3vw, 43px)/1.05 "Cormorant Garamond", serif;
  letter-spacing: -.025em;
}
.dashboard-hero p { max-width: 640px; margin: 0; color: var(--ui-muted); font-size: 14px; }
.dashboard-welcome-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
}
.dashboard-welcome-actions .btn { min-height: 44px; }

.onboarding-card-v2 {
  margin: 0;
  padding: 22px 24px;
  border: 1px solid var(--ui-border);
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}
.onboarding-card-v2 .onboarding-summary {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  align-items: center;
  gap: 13px;
}
.onboarding-card-v2 .onboarding-icon {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: var(--ui-primary-soft);
  color: var(--ui-primary);
}
.onboarding-card-v2 .onboarding-icon svg { width: 20px; height: 20px; }
.onboarding-card-v2 .onboarding-summary h2 {
  margin: 2px 0 1px;
  color: var(--ui-text);
  font: 600 23px/1.15 "Cormorant Garamond", serif;
}
.onboarding-card-v2 .onboarding-summary p { margin: 0; color: var(--ui-muted); font-size: 12px; }
.onboarding-card-v2 .onboarding-summary > strong { color: var(--ui-primary-hover); font-size: 20px; }
.onboarding-card-v2 .onboarding-progress {
  height: 8px;
  margin: 17px 0 15px;
  border-radius: 999px;
  background: #eee3de;
  overflow: hidden;
}
.onboarding-card-v2 .onboarding-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ui-primary), #c47c90);
}
.onboarding-card-v2 .onboarding-steps {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
}
.onboarding-card-v2 .onboarding-steps a {
  min-width: 0;
  min-height: 44px;
  padding: 8px 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid transparent;
  border-radius: 11px;
  color: var(--ui-text-soft);
  font-size: 12px;
}
.onboarding-card-v2 .onboarding-steps a:hover { border-color: var(--ui-border); background: #fdf9f7; }
.onboarding-card-v2 .onboarding-steps a > span {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  display: grid;
  place-items: center;
  border: 1px solid var(--ui-border);
  border-radius: 8px;
  background: #fff;
}
.onboarding-card-v2 .onboarding-steps a > span svg { width: 13px; height: 13px; }
.onboarding-card-v2 .onboarding-steps a > strong {
  min-width: 0;
  overflow: visible;
  color: inherit;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.3;
  text-overflow: clip;
  white-space: normal;
}
.onboarding-card-v2 .onboarding-steps a.done { color: var(--ui-success); }
.onboarding-card-v2 .onboarding-steps a.done > span { border-color: #bdd7c8; background: var(--ui-success-soft); }

.studio-v3 .stat-grid-v3 {
  margin: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.studio-v3 .stat-grid-v3 article {
  min-width: 0;
  min-height: 112px;
  padding: 17px;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border: 1px solid var(--ui-border);
  border-radius: 16px;
  background: #fff;
  box-shadow: none;
}
.studio-v3 .stat-grid-v3 .stat-icon {
  width: 42px;
  height: 42px;
  border-radius: 13px;
  background: var(--ui-primary-soft);
  color: var(--ui-primary);
}
.studio-v3 .stat-grid-v3 .stat-icon svg { width: 19px; height: 19px; }
.studio-v3 .stat-grid-v3 small {
  display: block;
  color: var(--ui-muted);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.3;
}
.studio-v3 .stat-grid-v3 strong {
  display: block;
  margin: 2px 0 1px;
  color: var(--ui-text);
  font-size: 27px;
  line-height: 1.1;
}
.studio-v3 .stat-grid-v3 em {
  display: block;
  color: #8a7a80;
  font-size: 10px;
  font-style: normal;
  line-height: 1.35;
}
.dashboard-grid-single {
  margin: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 0;
}
.dashboard-event-panel {
  min-width: 0;
  padding: 22px 24px;
  border: 1px solid var(--ui-border);
  border-radius: 18px;
  background: #fff;
  box-shadow: none;
}
.dashboard-event-panel .panel-head {
  margin-bottom: 8px;
  padding-bottom: 15px;
  border-bottom: 1px solid #eee4e0;
}
.dashboard-event-panel .panel-head h2 {
  margin: 3px 0 0;
  color: var(--ui-text);
  font-size: 20px;
}
.dashboard-event-panel .panel-head > a { color: var(--ui-primary); font-size: 12px; font-weight: 700; }
.dashboard-event-panel .event-list { min-width: 0; }
.dashboard-event-panel .event-row-v3 {
  min-width: 0;
  padding: 17px 0;
  display: grid;
  grid-template-columns: 88px minmax(260px, 1fr) minmax(250px, auto);
  align-items: center;
  gap: 18px;
  border-top: 0;
}
.dashboard-event-panel .event-row-v3 + .event-row-v3 { border-top: 1px solid #eee4e0; }
.dashboard-event-panel .event-thumb-photo {
  width: 88px;
  height: 104px;
  border-radius: 14px;
  background: #f4ece8;
}
.dashboard-event-panel .event-info { min-width: 0; }
.dashboard-event-panel .event-title-line {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.dashboard-event-panel .event-title-line h3 {
  min-width: 0;
  margin: 0;
  color: var(--ui-text);
  font: 600 20px/1.2 "Cormorant Garamond", serif;
}
.dashboard-event-panel .event-info > p { margin: 5px 0 7px; color: var(--ui-muted); font-size: 12px; }
.dashboard-event-panel .event-badges { margin-bottom: 8px; }
.dashboard-event-panel .event-metrics { gap: 12px; }
.dashboard-event-panel .event-metrics span { color: #7d6d73; font-size: 11px; white-space: nowrap; }
.dashboard-event-panel .event-actions-v3 {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 7px;
}
.dashboard-event-panel .event-actions-v3 .icon-link {
  width: 38px;
  height: 38px;
  min-width: 38px;
  min-height: 38px;
}
.dashboard-event-panel .event-actions-v3 .btn { min-height: 38px; }

.notice-banner,
.studio-v3 .alert {
  margin: 0 0 18px;
  border-radius: 14px;
}

@media (max-width: 1180px) {
  .auth-shell-v4 { grid-template-columns: minmax(380px, 38%) minmax(0, 1fr); }
  .auth-shell-v4 .auth-visual { padding-inline: 34px; }
  .auth-note-rsvp { left: -2%; }
  .auth-note-preview { right: -2%; }
  .studio-v3 .stat-grid-v3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-event-panel .event-row-v3 { grid-template-columns: 82px minmax(0, 1fr); }
  .dashboard-event-panel .event-actions-v3 { grid-column: 2; justify-content: flex-start; }
}

@media (max-width: 940px) {
  .auth-shell-v4 { display: block; }
  .auth-shell-v4 .auth-visual { display: none; }
  .auth-shell-v4 .auth-panel {
    min-height: 100svh;
    padding: 20px clamp(18px, 5vw, 40px) 44px;
    align-items: flex-start;
  }
  .auth-mobile-header {
    width: 100%;
    margin-bottom: 44px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }
  .auth-mobile-header .auth-back { color: var(--ui-primary); font-size: 12px; font-weight: 700; }
  .auth-shell-v4 .auth-back.desktop { display: none; }
  .auth-panel-inner { width: min(100%, 560px); }
  .studio-v3 .studio-main { margin-left: 0; }
}

@media (max-width: 760px) {
  .auth-shell-v4 .auth-panel { display: block; padding: 18px 18px 38px; }
  .auth-mobile-header { margin-bottom: 34px; }
  .auth-mobile-header .brand-word { font-size: 20px; }
  .auth-heading-v3 h2 { font-size: 36px; }
  .auth-heading-v3 p { font-size: 13px; }
  .auth-form-v3 { margin-top: 25px; gap: 17px; }
  .auth-form-v3 .form-row { grid-template-columns: 1fr; gap: 17px; }
  .demo-login-v3 { align-items: flex-start; flex-direction: column; }
  .demo-login-v3 button { width: 100%; justify-content: center; background: rgba(136,65,87,.06); }

  .studio-v3 .studio-topbar { min-height: 64px; padding: 8px 14px; }
  .studio-v3 .studio-content { padding: 18px 14px 96px; }
  .studio-v3 .topbar-title .topbar-kicker { display: none; }
  .studio-v3 .topbar-title > strong { font-size: 14px; }
  .studio-v3 .user-menu { min-height: 42px; padding: 3px; }
  .studio-v3 .user-avatar { width: 36px; height: 36px; }
  .studio-v3 .user-menu > svg { display: none; }
  .studio-v3 .user-meta { display: none; }
  .dashboard-page { gap: 13px; }
  .dashboard-hero {
    padding: 20px 18px;
    display: grid;
    align-items: start;
    gap: 18px;
    border-radius: 18px;
  }
  .dashboard-hero h1 { font-size: 34px; }
  .dashboard-hero p { font-size: 13px; }
  .dashboard-welcome-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
  .dashboard-welcome-actions .btn { width: 100%; padding-inline: 11px; }
  .onboarding-card-v2 { padding: 18px 16px; }
  .onboarding-card-v2 .onboarding-summary { grid-template-columns: 42px minmax(0, 1fr) auto; gap: 10px; }
  .onboarding-card-v2 .onboarding-icon { width: 42px; height: 42px; }
  .onboarding-card-v2 .onboarding-summary h2 { font-size: 21px; }
  .onboarding-card-v2 .onboarding-steps { grid-template-columns: 1fr; }
  .studio-v3 .stat-grid-v3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .studio-v3 .stat-grid-v3 article {
    min-height: 118px;
    padding: 14px;
    grid-template-columns: 36px minmax(0, 1fr);
    align-items: start;
    gap: 9px;
  }
  .studio-v3 .stat-grid-v3 .stat-icon { width: 36px; height: 36px; border-radius: 11px; }
  .studio-v3 .stat-grid-v3 strong { font-size: 24px; }
  .studio-v3 .stat-grid-v3 em { font-size: 9px; }
  .dashboard-event-panel { padding: 18px 15px; }
  .dashboard-event-panel .event-row-v3 {
    padding: 15px 0;
    grid-template-columns: 72px minmax(0, 1fr);
    gap: 12px;
  }
  .dashboard-event-panel .event-thumb-photo { width: 72px; height: 90px; }
  .dashboard-event-panel .event-title-line h3 { font-size: 18px; }
  .dashboard-event-panel .event-metrics { gap: 7px 10px; }
  .dashboard-event-panel .event-actions-v3 {
    grid-column: 1 / -1;
    justify-content: flex-start;
    padding-top: 4px;
  }
  .dashboard-event-panel .event-actions-v3 .btn { flex: 1 1 auto; }
}

@media (max-width: 430px) {
  .auth-heading-v3 h2 { font-size: 34px; }
  .auth-form-v3 .input-with-icon > input { min-height: 50px; }
  .dashboard-welcome-actions { grid-template-columns: 1fr; }
  .studio-v3 .stat-grid-v3 article { grid-template-columns: 1fr; min-height: 128px; }
  .studio-v3 .stat-grid-v3 .stat-icon { margin-bottom: 1px; }
  .dashboard-event-panel .event-metrics span:nth-child(3) { display: inline-flex; }
}

/* ========================================================================== 
   Momeniva UI refinement v2.2 — auth, editor, media, preview, guests, pricing
   ========================================================================== */

/* Marketing: featured plan must feel clearly premium, not like another white card. */
.romantic-price-grid .price-card.romantic-featured {
  position: relative;
  border-color: #6f3449;
  background:
    radial-gradient(circle at 88% 8%, rgba(255,255,255,.14), transparent 30%),
    linear-gradient(150deg, #81465a 0%, #673044 100%);
  color: #fff;
  box-shadow: 0 24px 56px rgba(73,31,45,.22);
}
.romantic-price-grid .romantic-featured::after {
  content: "";
  position: absolute;
  inset: 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 20px;
  pointer-events: none;
}
.romantic-price-grid .romantic-featured .plan-name,
.romantic-price-grid .romantic-featured h3,
.romantic-price-grid .romantic-featured h3 small { color: #fff; }
.romantic-price-grid .romantic-featured > p,
.romantic-price-grid .romantic-featured li { color: rgba(255,255,255,.78); }
.romantic-price-grid .romantic-featured li::before { color: #f0c8d2; }
.romantic-price-grid .romantic-featured .btn-primary {
  border-color: #fff8f3;
  background: #fff8f3;
  color: #6e3548;
  box-shadow: 0 10px 24px rgba(47,20,30,.16);
}
.romantic-price-grid .romantic-featured .popular {
  background: #e8b77f;
  color: #4e2b36;
  box-shadow: 0 8px 18px rgba(42,18,26,.15);
}

/* Analytics: keep distribution and interpretation as distinct information blocks. */
.studio-v3 .analytics-breakdown { margin-bottom: 28px; }
.studio-v3 .analytics-insight {
  margin-top: 0;
  padding: 22px 24px;
  border: 1px solid #e4d5d0;
  background: linear-gradient(135deg, #fffdfa, #faf1ed);
}

/* Authentication: warmer, more fluid, and visually grouped. */
.auth-shell-v4 .auth-panel {
  align-items: flex-start;
  overflow-y: auto;
  background:
    radial-gradient(circle at 92% 8%, rgba(194,133,151,.10), transparent 30%),
    linear-gradient(180deg, #fcf8f5, #f8f2ee);
}
.auth-panel-inner { width: min(100%, 620px); padding-block: 20px; }
.auth-shell-v4 .auth-back.desktop { margin-bottom: 18px; }
.auth-shell-v4 .auth-card {
  position: relative;
  padding: 30px 32px 28px;
  border: 1px solid rgba(221,204,199,.9);
  border-radius: 24px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 22px 54px rgba(67,38,48,.09);
  backdrop-filter: blur(14px);
}
.auth-shell-v4 .auth-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 32px;
  right: 32px;
  height: 3px;
  border-radius: 0 0 999px 999px;
  background: linear-gradient(90deg, transparent, #b86f84, transparent);
  opacity: .72;
}
.auth-heading-v3 > span { margin-bottom: 8px; }
.auth-heading-v3 h2 { font-size: clamp(34px, 3.3vw, 42px); line-height: 1.06; }
.auth-heading-v3 p { margin-top: 10px; }
.auth-form-v3 { margin-top: 24px; gap: 16px; }
.auth-form-v3 .field { gap: 7px; font-size: 13.5px; }
.auth-form-v3 .input-with-icon > input {
  min-height: 50px;
  border-color: #dfd1cc;
  border-radius: 12px;
  background: #fffdfb;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.auth-form-v3 .input-with-icon > input:hover { border-color: #ccb8b2; background: #fff; }
.auth-form-v3 .input-with-icon > input:focus { background: #fff; box-shadow: 0 0 0 4px rgba(136,65,87,.11); }
.auth-form-v3 .field-help,
.auth-form-v3 .field-error { min-height: 18px; line-height: 1.45; }
.auth-form-v3 .btn-auth { min-height: 50px; }
.auth-form-register .password-confirm-row { grid-template-columns: 1fr; gap: 15px; }
.auth-form-register .field-feedback { min-height: 18px; }
.auth-form-login .custom-check { margin-top: -2px; }
.auth-divider { margin: 18px 0; }
.demo-login-v3 { margin-top: 16px; }

/* Editor command bar: replace the oversized status strip and scattered actions. */
.editor-command-bar {
  margin: 0 0 18px;
  padding: 20px 22px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 24px;
  border: 1px solid var(--ui-border);
  border-radius: 20px;
  background: rgba(255,253,250,.96);
  box-shadow: 0 10px 30px rgba(64,38,47,.055);
}
.editor-command-main { min-width: 0; }
.editor-back-link {
  width: fit-content;
  margin-bottom: 11px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--ui-muted);
  font-size: 12px;
  font-weight: 650;
}
.editor-back-link svg { width: 15px; height: 15px; }
.editor-command-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.editor-command-main h1 {
  margin: 9px 0 4px;
  color: var(--ui-text);
  font: 600 clamp(28px, 2.7vw, 38px)/1.05 "Cormorant Garamond", serif;
  letter-spacing: -.025em;
}
.editor-command-main > p { margin: 0; color: #8e7d83; font-size: 11.5px; }
.editor-command-actions {
  min-width: 0;
  display: grid;
  justify-items: end;
  gap: 10px;
}
.editor-command-actions .save-state {
  min-height: 30px;
  padding: 6px 10px;
  font-size: 11px;
  box-shadow: none;
}
.editor-action-buttons { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.editor-action-buttons .btn { min-height: 42px; padding-inline: 14px; white-space: nowrap; }

/* Editor navigation: compact icon rail with accessible tooltip captions. */
.editor-layout-v3 { grid-template-columns: minmax(0, 1fr) 430px; gap: 20px; align-items: start; }
.editor-panel {
  min-width: 0;
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  align-items: start;
  gap: 14px;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
.editor-icon-tabs {
  position: sticky;
  top: 92px;
  z-index: 24;
  width: 62px;
  padding: 7px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  border: 1px solid var(--ui-border);
  border-radius: 16px;
  background: rgba(255,253,250,.97);
  box-shadow: var(--ui-shadow-sm);
  backdrop-filter: blur(12px);
}
.editor-icon-tabs button {
  position: relative;
  width: 46px;
  height: 46px;
  min-width: 46px;
  min-height: 46px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #806e75;
}
.editor-icon-tabs button::after { display: none; }
.editor-icon-tabs button svg { width: 20px; height: 20px; }
.editor-icon-tabs button:hover { background: #faf0ed; color: var(--ui-primary); }
.editor-icon-tabs button.active {
  background: var(--ui-primary);
  color: #fff;
  box-shadow: 0 8px 18px rgba(112,50,70,.20);
}
.editor-icon-tabs .editor-tab-progress {
  position: absolute;
  top: -3px;
  right: -3px;
  width: 17px;
  height: 17px;
  margin: 0;
  display: grid;
  place-items: center;
  border: 2px solid #fffdfa;
  border-radius: 999px;
  background: var(--ui-success);
  color: #fff;
  font-size: 9px;
  line-height: 1;
}
.editor-icon-tabs .editor-tab-progress:empty { display: none; }
.editor-form {
  min-width: 0;
  padding: 0 24px 28px;
  border: 1px solid var(--ui-border);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(65,39,47,.045);
}
.editor-form .field-group { padding: 24px 0; }
.editor-form .field-group-head { margin-bottom: 17px; }
.editor-form .field-group-head h3 { font-size: 21px; }
.editor-form .field-group-head p { max-width: 680px; font-size: 12.5px; line-height: 1.55; }
.editor-form label { font-size: 13px; }
.editor-form input,
.editor-form select,
.editor-form textarea { font-size: 14px; }

/* Media editor: controls follow content flow instead of overlapping thumbnails. */
.cover-uploader {
  grid-template-columns: 180px minmax(0, 1fr);
  gap: 20px;
  padding: 15px;
  align-items: start;
  overflow: visible;
}
.cover-uploader > img { width: 180px; height: 220px; border-radius: 14px; object-fit: cover; }
.cover-uploader .cover-copy { min-width: 0; display: grid; align-content: start; gap: 9px; }
.cover-uploader .cover-copy > strong { font: 600 24px/1.1 "Cormorant Garamond", serif; }
.cover-uploader .media-action-row { margin: 2px 0 1px; display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.cover-select-field { width: 100%; margin-top: 4px; display: grid; gap: 7px; }
.cover-select-field select { width: 100%; }
.cover-uploader .media-status { grid-column: 2; position: static; margin: 0; }

.gallery-manager { display: grid; gap: 14px; }
.gallery-upload-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 14px; }
.gallery-uploader {
  min-width: 0;
  min-height: 0;
  height: auto;
  padding: 10px;
  display: grid;
  grid-template-rows: auto auto auto auto auto;
  gap: 9px;
  border: 1px solid var(--ui-border);
  border-radius: 16px;
  background: #fff;
  overflow: visible;
}
.gallery-uploader > img { width: 100%; height: 210px; border-radius: 12px; object-fit: cover; }
.gallery-card-actions { position: static; display: flex; align-items: center; gap: 8px; }
.gallery-uploader .gallery-card-actions label,
.gallery-uploader .gallery-card-actions button {
  position: static;
  inset: auto;
  width: auto;
  min-height: 38px;
  margin: 0;
  flex: 1 1 0;
  border-radius: 10px;
  backdrop-filter: none;
}
.gallery-uploader .gallery-alt,
.gallery-uploader .gallery-focal {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 9px 11px !important;
  border-radius: 10px !important;
  font-size: 12.5px !important;
}
.gallery-uploader .media-status { position: static; margin: 0; padding: 0; }

.video-uploader {
  margin-bottom: 18px;
  padding: 14px;
  grid-template-columns: minmax(190px, 240px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  border-style: solid;
  overflow: visible;
}
.video-uploader video,
.video-uploader .video-empty-preview { width: 100%; min-height: 158px; aspect-ratio: 16/10; }
.video-uploader > .media-copy { min-width: 0; display: grid; align-content: start; gap: 8px; padding: 3px 0; }
.video-uploader > .media-copy > strong { font: 600 24px/1.1 "Cormorant Garamond", serif; }
.video-uploader > .media-copy > p { margin: 0; font-size: 12.5px; line-height: 1.6; }
.video-uploader .media-action-row { margin-top: 3px; display: flex; align-items: center; justify-content: flex-start; flex-wrap: wrap; gap: 8px; }
.video-uploader .media-action-row small { flex-basis: 100%; padding: 0; }
.video-uploader > .media-status { position: static; grid-column: 2; margin: 0; }
.video-gallery-list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.video-gallery-item { padding: 10px; border: 1px solid var(--ui-border); background: #fff; }
.video-gallery-item .gallery-item-actions { right: 18px; top: 18px; }

.audio-uploader {
  min-height: 0;
  padding: 14px;
  display: grid;
  justify-items: start;
  align-items: start;
  gap: 8px;
  border: 1px solid var(--ui-border);
  border-radius: 14px;
  background: #fffaf7;
  overflow: visible;
}
.audio-uploader .audio-upload-row {
  width: 100%;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 9px;
}
.audio-uploader .media-status { position: static; margin: 0; justify-self: start; }

.editor-list-pagination {
  margin-top: 14px;
  padding-top: 13px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  border-top: 1px solid var(--ui-border);
}
.editor-list-pagination > span { color: var(--ui-muted); font-size: 12px; font-weight: 650; }
.editor-list-pagination .icon-button.disabled { opacity: .42; pointer-events: none; }
.rsvp-row { grid-template-columns: minmax(0,1fr) 100px 52px; min-height: 56px; font-size: 12px; }
.rsvp-row.head { font-size: 10px; }
.rsvp-row small { max-width: none; font-size: 11px; white-space: normal; line-height: 1.45; }

/* Preview panel: clear device framing, title hierarchy, and link footer. */
.editor-preview {
  top: 88px;
  max-height: none;
  border-radius: 20px;
  box-shadow: 0 14px 36px rgba(64,38,47,.08);
}
.preview-toolbar {
  min-height: 62px;
  padding: 10px 12px 10px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.preview-title { min-width: 0; display: grid; gap: 2px; }
.preview-title .panel-kicker { font-size: 8.5px; }
.preview-title strong { color: var(--ui-text); font-size: 13px; }
.preview-device-switch {
  padding: 4px;
  display: flex;
  gap: 3px;
  border: 1px solid var(--ui-border);
  border-radius: 11px;
  background: #f5eeea;
}
.preview-device-switch button { width: 36px; height: 34px; border: 0; border-radius: 8px; background: transparent; color: #7f6f75; }
.preview-device-switch button.active { background: #fff; color: var(--ui-primary); box-shadow: var(--ui-shadow-sm); }
.preview-canvas {
  height: 680px;
  padding: 18px;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 8%, rgba(255,255,255,.9), transparent 35%),
    linear-gradient(145deg, #e9dfdb, #f5efec);
  overflow: auto;
}
.preview-device-shell {
  width: 360px;
  height: 640px;
  padding: 7px;
  border-radius: 29px;
  background: #2d2428;
  box-shadow: 0 26px 60px rgba(44,27,33,.23);
  transition: width .25s ease, height .25s ease, padding .25s ease;
}
.preview-device-shell iframe { width: 100%; height: 100%; border: 0; border-radius: 23px; background: #fff; box-shadow: none; }
.preview-canvas.desktop { align-items: start; }
.preview-canvas.desktop .preview-device-shell { width: 100%; height: 620px; padding: 0; border-radius: 13px; background: #fff; }
.preview-canvas.desktop .preview-device-shell iframe { border-radius: 13px; }
.preview-link {
  min-height: 62px;
  padding: 10px 12px 10px 16px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
}
.preview-link > div { min-width: 0; display: grid; gap: 4px; }
.preview-link span { color: var(--ui-muted); font-size: 10px; font-weight: 650; }
.preview-link code { min-width: 0; padding: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; background: transparent; color: #67575d; font-size: 10px; }

/* Guest search toolbar: one compact row, no detached search button or second empty line. */
.guest-panel { overflow: visible; }
.guest-toolbar-clean {
  min-height: 76px;
  padding: 14px 16px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid var(--ui-border);
  background: #fffdfa;
}
.guest-quick-search { min-width: 0; width: 100%; }
.guest-search-control {
  position: relative;
  min-width: 0;
  width: 100%;
  height: 48px;
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) 44px;
  align-items: center;
  border: 1px solid #ddcec9;
  border-radius: 13px;
  background: #fff;
  overflow: hidden;
  transition: border-color .18s ease, box-shadow .18s ease;
}
.guest-search-control:focus-within { border-color: var(--ui-primary); box-shadow: 0 0 0 4px rgba(136,65,87,.10); }
.guest-search-control > svg { width: 18px; height: 18px; margin: auto; color: #8b777e; }
.guest-search-control input {
  width: 100%;
  height: 46px;
  min-width: 0;
  padding: 0 8px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  font-size: 14px;
}
.guest-search-control input:focus { box-shadow: none; }
.guest-search-control button {
  width: 44px;
  height: 46px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 0;
  border-left: 1px solid #eee3df;
  background: #faf4f1;
  color: var(--ui-primary);
}
.guest-search-control button:hover { background: var(--ui-primary-soft); }
.guest-search-control button svg { width: 18px; height: 18px; }
.guest-toolbar-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.guest-toolbar-actions .btn { min-height: 44px; white-space: nowrap; }
.guest-actions-menu { position: relative; }
.guest-actions-menu > summary { list-style: none; }
.guest-actions-menu > summary::-webkit-details-marker { display: none; }

@media (max-width: 1180px) {
  .editor-layout-v3 { grid-template-columns: minmax(0,1fr) 390px; }
  .editor-action-buttons .btn { padding-inline: 11px; }
}

@media (max-width: 980px) {
  .auth-shell-v4 .auth-card { padding: 28px; }
  .editor-command-bar { align-items: start; }
  .editor-layout-v3 { grid-template-columns: 1fr; }
  .editor-preview { position: relative; top: auto; order: 0; margin-top: 0; }
  .preview-canvas { max-height: none; }
}

@media (max-width: 760px) {
  .auth-panel-inner { padding-block: 0; }
  .auth-shell-v4 .auth-card { padding: 24px 20px; border-radius: 20px; }
  .auth-form-register .form-row { grid-template-columns: 1fr; }

  .editor-command-bar { padding: 16px; grid-template-columns: 1fr; gap: 14px; border-radius: 17px; }
  .editor-command-main h1 { font-size: 30px; }
  .editor-command-actions { justify-items: stretch; }
  .editor-command-actions .save-state { justify-self: start; }
  .editor-action-buttons {
    position: fixed;
    z-index: 110;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    border-top: 1px solid var(--ui-border);
    background: rgba(255,253,250,.97);
    box-shadow: 0 -10px 30px rgba(52,38,44,.12);
    backdrop-filter: blur(16px);
  }
  .editor-action-buttons > a { display: none; }
  .editor-action-buttons .btn { width: 100%; min-height: 44px; }
  .editor-panel { display: block; }
  .editor-icon-tabs { display: none; }
  .editor-form { padding: 0 16px 22px; border-radius: 17px; }
  .editor-form .field-group { padding: 21px 0; }
  .gallery-upload-grid { grid-template-columns: 1fr; }
  .gallery-uploader > img { height: 230px; }
  .cover-uploader { grid-template-columns: 1fr; }
  .cover-uploader > img { width: 100%; height: 280px; }
  .cover-uploader .media-status { grid-column: 1; }
  .video-uploader { grid-template-columns: 1fr; }
  .video-uploader > .media-status { grid-column: 1; }
  .video-gallery-list { grid-template-columns: 1fr; }
  .preview-canvas { height: min(68vh,620px); padding: 12px; }
  .preview-device-shell { width: min(340px,100%); height: min(590px,64vh); }
  .preview-canvas.desktop .preview-device-shell { height: min(560px,62vh); }

  .guest-toolbar-clean { grid-template-columns: 1fr; gap: 10px; padding: 12px; }
  .guest-toolbar-actions { justify-content: flex-start; }
  .guest-toolbar-actions > * { flex: 1 1 0; }
  .guest-toolbar-actions .btn { width: 100%; justify-content: center; }
}

@media (max-width: 430px) {
  .auth-shell-v4 .auth-card { padding: 22px 16px; }
  .auth-heading-v3 h2 { font-size: 32px; }
  .editor-command-main h1 { font-size: 28px; }
  .gallery-card-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .guest-toolbar-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; }
}

/* =========================================================
   Momeniva UI refinement v2.2 — auth, editor and guest tools
   ========================================================= */

/* Authentication: softer editorial hierarchy and one reliable field rhythm. */
.auth-shell-v4 .auth-card {
  overflow: hidden;
  border-color: rgba(225,208,202,.72);
  border-radius: 28px;
  background:
    radial-gradient(circle at 100% 0, rgba(190,116,138,.08), transparent 30%),
    rgba(255,255,255,.96);
  box-shadow: 0 28px 70px rgba(66,37,48,.10);
}
.auth-shell-v4 .auth-card > * { position: relative; z-index: 1; }
.auth-heading-v3 h2 {
  max-width: 520px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(42px, 4vw, 50px);
  font-weight: 600;
  line-height: .98;
  letter-spacing: -.025em;
}
.auth-heading-v3 p { max-width: 480px; font-size: 13.5px; line-height: 1.6; }
.auth-form-v3 { gap: 17px; }
.auth-form-v3 .field > span:not(.label-row),
.auth-form-v3 .label-row { color: #49373e; font-size: 13px; font-weight: 700; }
.auth-form-v3 .input-with-icon > input {
  min-height: 52px;
  padding-top: 0;
  padding-bottom: 0;
  border-radius: 14px;
}
.auth-form-v3 .input-with-icon:focus-within > svg { color: var(--ui-primary); }
.auth-form-register .form-row,
.auth-form-register .password-confirm-row { grid-template-columns: minmax(0,1fr); gap: 17px; }
.auth-form-register .form-row > .field { min-width: 0; }
.auth-form-login .btn-auth,
.auth-form-register .btn-auth { margin-top: 2px; }
.auth-form-login .custom-check { min-height: 28px; align-items: center; }

/* Editor command bar: two disciplined rows, no oversized empty status strip. */
.editor-command-bar {
  padding: 17px 20px 18px;
  display: block;
  border-radius: 18px;
}
.editor-command-topline,
.editor-command-bottomline {
  min-width: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}
.editor-command-topline { min-height: 31px; }
.editor-command-bottomline {
  margin-top: 13px;
  padding-top: 15px;
  align-items: flex-end;
  border-top: 1px solid #eee3df;
}
.editor-back-link { margin: 0; }
.editor-command-topmeta,
.editor-command-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.editor-command-topmeta { justify-content: flex-end; }
.editor-command-topmeta .save-state {
  width: auto;
  min-height: 29px;
  padding: 5px 10px;
  display: inline-flex;
  border-radius: 999px;
  box-shadow: none;
  font-size: 10.5px;
  white-space: nowrap;
}
.editor-command-title { min-width: 0; max-width: 650px; }
.editor-command-title .panel-kicker { margin-bottom: 5px; }
.editor-command-title h1 {
  margin: 0 0 5px;
  overflow-wrap: anywhere;
  color: var(--ui-text);
  font: 600 clamp(29px, 2.6vw, 38px)/1.02 "Cormorant Garamond", Georgia, serif;
  letter-spacing: -.025em;
}
.editor-command-title p { margin: 0; color: #8e7d83; font-size: 11.5px; }
.editor-command-bottomline .editor-action-buttons {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
}
.editor-command-bottomline .editor-action-buttons .btn {
  min-height: 42px;
  padding-inline: 14px;
  border-radius: 11px;
  white-space: nowrap;
}

/* Icon-only section rail: consistent placement and clearer micro captions. */
.editor-icon-tabs { top: 84px; }
.editor-icon-tabs button { isolation: isolate; }
.editor-icon-tabs button[data-tooltip] { overflow: visible; }
.editor-icon-tabs button:focus-visible { outline: 3px solid rgba(136,65,87,.20); outline-offset: 2px; }

/* Gallery: actions and crop controls are separate rows, never layered. */
.gallery-uploader { grid-template-rows: auto auto auto auto; }
.gallery-card-fields {
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(130px, 160px);
  gap: 9px;
}
.gallery-card-fields label { min-width: 0; display: grid; gap: 6px; color: #625159; font-size: 11px; font-weight: 700; }
.gallery-card-fields label > span { padding-left: 1px; }
.gallery-card-fields .gallery-alt,
.gallery-card-fields .gallery-focal {
  position: static;
  inset: auto;
  width: 100%;
  height: 42px;
  min-height: 42px;
  margin: 0;
  padding: 8px 10px;
  border-radius: 10px;
  font-size: 12.5px;
}
.gallery-card-actions { min-width: 0; }
.gallery-card-actions .btn { min-width: 0; }

/* Cinematic video: preview, explanation, specs and actions form one readable unit. */
.video-media-copy { gap: 13px; }
.video-media-copy > div:first-child { display: grid; gap: 5px; }
.video-media-copy .media-kicker {
  color: var(--ui-primary);
  font-size: 9.5px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.video-media-copy > div:first-child > strong { color: var(--ui-text); font: 600 25px/1.05 "Cormorant Garamond", Georgia, serif; }
.video-media-copy > div:first-child > p { max-width: 560px; margin: 0; color: var(--ui-muted); font-size: 12.5px; line-height: 1.6; }
.media-spec-list { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.media-spec-list span {
  padding: 5px 8px;
  border: 1px solid #e7d9d4;
  border-radius: 999px;
  background: #fffaf7;
  color: #725f67;
  font-size: 10px;
  font-weight: 700;
}
.video-uploader .media-action-row { margin: 0; }
.video-uploader > .media-status { padding-top: 2px; }

/* Audio upload is explicitly left-aligned in every state. */
.audio-uploader,
.audio-uploader .audio-upload-row { text-align: left; }
.audio-uploader .audio-upload-row > * { margin-left: 0; margin-right: 0; }

/* Guest toolbar: one aligned control row with equal-height actions. */
.guest-toolbar-clean { min-height: 74px; }
.guest-toolbar-actions { min-width: max-content; }
.guest-toolbar-actions .guest-filter-trigger,
.guest-toolbar-actions .guest-actions-menu > summary { min-width: 116px; }
.guest-actions-popover { top: calc(100% + 10px); }

@media (max-width: 1180px) {
  .editor-command-bottomline { align-items: flex-start; }
  .editor-command-bottomline .editor-action-buttons { flex-wrap: wrap; max-width: 450px; }
}

@media (max-width: 900px) {
  .editor-command-bottomline { display: grid; grid-template-columns: 1fr; gap: 14px; }
  .editor-command-bottomline .editor-action-buttons { max-width: none; justify-content: flex-start; }
}

@media (max-width: 760px) {
  .auth-shell-v4 .auth-card { padding: 24px 20px; border-radius: 22px; }
  .auth-heading-v3 h2 { font-size: 38px; line-height: 1; }
  .editor-command-bar { padding: 14px 15px 16px; }
  .editor-command-topline { align-items: flex-start; flex-direction: column; gap: 10px; }
  .editor-command-topmeta { width: 100%; justify-content: space-between; }
  .editor-command-bottomline { margin-top: 12px; padding-top: 13px; }
  .editor-command-title h1 { font-size: 30px; }
  .editor-command-bottomline .editor-action-buttons {
    position: fixed;
    z-index: 110;
    left: 0;
    right: 0;
    bottom: 0;
    max-width: none;
    padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    border-top: 1px solid var(--ui-border);
    background: rgba(255,253,250,.97);
    box-shadow: 0 -10px 30px rgba(52,38,44,.12);
    backdrop-filter: blur(16px);
  }
  .editor-command-bottomline .editor-action-buttons > a { display: none; }
  .editor-command-bottomline .editor-action-buttons .btn { width: 100%; min-height: 44px; }
  .gallery-card-fields { grid-template-columns: 1fr; }
  .guest-toolbar-actions { min-width: 0; width: 100%; }
}

@media (max-width: 430px) {
  .auth-heading-v3 h2 { font-size: 35px; }
  .editor-command-topmeta { align-items: flex-start; flex-direction: column; }
  .editor-command-title h1 { font-size: 28px; }
}

/* Compact command bar alignment correction. */
.editor-command-topline {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
}
.editor-command-topline .editor-back-link { white-space: nowrap; }
.editor-command-topline > .save-state {
  width: auto;
  min-width: 0;
  min-height: 29px;
  padding: 5px 10px;
  justify-self: end;
  border-radius: 999px;
  box-shadow: none;
  font-size: 10.5px;
  white-space: nowrap;
}
.editor-command-bottomline {
  display: grid;
  grid-template-columns: minmax(280px,1fr) auto;
  align-items: end;
}
.editor-command-title .editor-command-meta { margin-bottom: 8px; flex-wrap: nowrap; }
@media (max-width: 900px) {
  .editor-command-bottomline { grid-template-columns: 1fr; align-items: start; }
}
@media (max-width: 760px) {
  .editor-command-topline { grid-template-columns: 1fr; align-items: start; }
  .editor-command-topline > .save-state { justify-self: start; }
}
.editor-command-bottomline .editor-action-buttons { width: auto; }
.editor-command-bottomline .editor-action-buttons .btn { width: auto; flex: 0 0 auto; }
@media (max-width: 760px) {
  .editor-command-bottomline .editor-action-buttons { width: 100%; }
  .editor-command-bottomline .editor-action-buttons .btn { width: 100%; }
}

/* =========================================================
   Momeniva v2.2.1 — marketing mobile hardening + UX audit
   ========================================================= */

/* Decorative layers must never intercept links or form controls. */
.hero-petal,
.hero-flower-cluster,
.stage-halo,
.final-flower,
.library-flower,
.footer-flower,
.motion-flower {
  pointer-events: none;
  user-select: none;
}

.romantic-marketing {
  overflow-x: clip;
}

.romantic-marketing a,
.romantic-marketing button {
  -webkit-tap-highlight-color: transparent;
}

.romantic-marketing .btn {
  position: relative;
  z-index: 1;
  gap: 8px;
  cursor: pointer;
  touch-action: manipulation;
}

.romantic-marketing .btn:active {
  transform: translateY(1px);
}

/* Desktop and mobile authentication areas are intentionally separate. */
.nav-mobile-panel {
  display: none;
}

.romantic-header .nav-drawer,
.romantic-header .main-nav,
.romantic-header .nav-actions {
  min-width: 0;
}

.romantic-header .nav-actions-desktop {
  display: flex;
  align-items: center;
  gap: 9px;
}

/* Organic motion feature: isolate illustration from content at every width. */
.feature-motion {
  grid-template-columns: minmax(180px, .78fr) minmax(0, 1.22fr);
  gap: clamp(24px, 3vw, 42px);
  isolation: isolate;
}

.feature-motion .motion-flower {
  width: min(100%, 240px);
  margin-inline: auto;
  contain: layout paint;
}

.feature-motion .emotion-card-copy {
  position: relative;
  z-index: 2;
  min-width: 0;
  align-self: center;
}

.feature-motion .emotion-card-copy > * {
  position: relative;
  z-index: 2;
}

/* Final CTA must sit above all decorative layers and remain clickable. */
.romantic-final {
  isolation: isolate;
}

.romantic-final .final-flower {
  z-index: 0;
}

.romantic-final-content {
  position: relative;
  z-index: 2;
  width: 100%;
}

.romantic-final .final-cta {
  z-index: 3;
  pointer-events: auto;
  min-width: min(100%, 250px);
}

/* Marketing-wide layout cleanup found during desktop/mobile audit. */
.romantic-marketing .hero-actions .btn,
.romantic-marketing .price-card .btn,
.romantic-marketing .empty-actions .btn {
  justify-content: center;
}

.romantic-price-grid .price-card {
  min-width: 0;
}

.romantic-price-grid .price-card ul {
  padding-left: 0;
}

.romantic-price-grid .price-card li {
  overflow-wrap: anywhere;
}

.faq-item button {
  min-height: 58px;
  cursor: pointer;
}

.faq-item button:focus-visible,
.hero-video-control:focus-visible,
.nav-toggle:focus-visible,
.romantic-marketing a:focus-visible {
  outline: 3px solid rgba(136, 65, 87, .25);
  outline-offset: 3px;
}

@media (max-width: 1050px) {
  .feature-motion {
    grid-template-columns: minmax(170px, .55fr) minmax(0, 1fr);
  }
}

@media (max-width: 900px) {
  body.nav-open {
    overflow: hidden;
    overscroll-behavior: none;
  }

  .romantic-header {
    z-index: 250;
  }

  .romantic-header .nav-shell {
    position: relative;
    z-index: 252;
  }

  .romantic-header .nav-toggle {
    position: relative;
    z-index: 254;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
  }

  .romantic-header .nav-drawer {
    z-index: 251;
    height: 100dvh;
    min-height: 100dvh;
    padding: 96px max(22px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(22px, env(safe-area-inset-left));
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .romantic-header .main-nav a {
    min-height: 62px;
    display: flex;
    align-items: center;
    font-size: clamp(27px, 8vw, 34px);
    line-height: 1.05;
  }

  .romantic-header .nav-actions-desktop {
    display: none;
  }

  .romantic-header .nav-mobile-panel {
    width: 100%;
    margin-top: auto;
    padding-top: 24px;
    display: grid;
    gap: 10px;
    border-top: 1px solid var(--ui-border);
  }

  .romantic-header .nav-mobile-panel p {
    margin: 0 0 5px;
    color: var(--ui-muted);
    font-size: 13px;
    line-height: 1.55;
  }

  .romantic-header .nav-mobile-panel .btn {
    width: 100%;
    min-height: 50px;
    justify-content: center;
    border-radius: 13px;
  }

  .romantic-header .nav-mobile-login {
    background: #fff;
    color: var(--ui-primary);
    border-color: #dbc8c2;
  }

  .feature-motion {
    grid-template-columns: 1fr;
    grid-template-rows: 190px auto;
    gap: 18px;
    align-items: start;
  }

  .feature-motion .motion-flower {
    width: 210px;
    height: 180px;
    overflow: hidden;
  }

  .feature-motion .emotion-card-copy {
    width: 100%;
  }

  .romantic-price-grid {
    align-items: stretch;
  }
}

@media (max-width: 760px) {
  .romantic-marketing .romance-hero,
  .romantic-marketing .emotion-section,
  .romantic-marketing .romantic-template-section,
  .romantic-marketing .moments-section,
  .romantic-marketing .gentle-process,
  .romantic-marketing .love-note-section,
  .romantic-marketing .romantic-pricing,
  .romantic-marketing .romantic-faq {
    scroll-margin-top: 76px;
  }

  .romantic-marketing .romance-hero {
    padding-top: 105px;
  }

  .romantic-marketing .romance-copy h1 {
    max-width: 680px;
    margin-inline: auto;
  }

  .romantic-marketing .hero-video-stage {
    min-height: 0;
    height: auto;
    padding-block: 10px;
  }

  .romantic-marketing .hero-video-shell {
    width: 100%;
    min-width: 0;
  }

  .romantic-marketing .emotion-features {
    gap: 16px;
  }

  .romantic-marketing .emotion-card {
    border-radius: 24px;
  }

  .romantic-marketing .romantic-price-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .romantic-marketing .price-card {
    width: 100%;
    max-width: 560px;
    margin-inline: auto;
  }

  .romantic-final-content {
    width: min(100% - 28px, 760px);
  }

  .romantic-final .final-cta {
    width: min(100%, 330px);
    min-height: 52px;
  }
}

@media (max-width: 600px) {
  .romantic-header .nav-drawer {
    padding-top: 88px;
  }

  .romantic-header .main-nav a {
    min-height: 58px;
    padding-block: 13px;
    font-size: clamp(25px, 8vw, 31px);
  }

  .romantic-marketing .romance-kicker {
    line-height: 1.45;
  }

  .romantic-marketing .romance-copy h1 {
    font-size: clamp(46px, 13vw, 58px);
    line-height: .96;
  }

  .romantic-marketing .emotion-heading h2,
  .romantic-marketing .romantic-section-head h2,
  .romantic-marketing .moments-copy h2,
  .romantic-marketing .process-heading h2,
  .romantic-marketing .romantic-faq h2 {
    font-size: clamp(38px, 11.5vw, 46px);
  }

  .romantic-marketing .emotion-card {
    min-height: 0;
    padding: 24px 22px 26px;
  }

  .feature-motion {
    grid-template-rows: 160px auto;
    gap: 14px;
  }

  .feature-motion .motion-flower {
    width: 174px;
    height: 150px;
  }

  .feature-motion .motion-flower i {
    width: 64px;
    height: 94px;
  }

  .feature-motion .emotion-card-copy small {
    display: block;
    margin-bottom: 9px;
    font-size: 9px;
    line-height: 1.5;
  }

  .feature-motion .emotion-card-copy h3 {
    margin-top: 0;
  }

  .romantic-marketing .romantic-final {
    min-height: 540px;
    padding: 90px 0;
  }

  .romantic-marketing .romantic-final h2 {
    font-size: clamp(40px, 11.8vw, 50px);
    line-height: .98;
  }

  .romantic-marketing .romantic-final p {
    max-width: 330px;
    margin-inline: auto;
  }

  .romantic-marketing .romantic-final .final-cta {
    display: inline-flex;
    width: 100%;
    max-width: 330px;
  }

  .romantic-marketing .footer-bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
}

@media (max-width: 390px) {
  .romantic-header .nav-drawer {
    padding-inline: 18px;
  }

  .romantic-header .nav-mobile-panel .btn {
    min-height: 48px;
  }

  .feature-motion {
    grid-template-rows: 148px auto;
  }

  .feature-motion .motion-flower {
    width: 160px;
    height: 140px;
  }
}

/* Follow-up corrections from rendered desktop/mobile audit. */
@media (max-width: 900px) {
  .romantic-header .nav-drawer {
    background: #fffaf5;
  }

  body.nav-open .romantic-header .brand,
  body.nav-open .romantic-header .brand .brand-word,
  body.nav-open .romantic-header .brand strong {
    color: var(--ui-text);
    opacity: 1;
  }

  body.nav-open .romantic-header .brand-mark {
    opacity: 1;
  }
}

@media (max-width: 760px) {
  .romantic-marketing .hero-video-stage {
    left: auto !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
  }
}

/* The empty theme catalogue should read as a curated holding state, not a broken carousel. */
.template-garden-empty {
  width: min(100%, 1220px);
  margin-inline: auto;
  padding-inline: 0;
  overflow: visible;
}

.template-garden-empty .theme-engine-holding {
  width: 100%;
  min-width: 0;
  display: grid;
  grid-template-columns: minmax(310px, .82fr) minmax(0, 1.18fr);
  align-items: stretch;
}

.template-garden-empty .theme-engine-holding .theme-artwork {
  height: auto;
  min-height: 430px;
  aspect-ratio: auto;
}

.template-garden-empty .theme-engine-holding .theme-info {
  padding: clamp(34px, 5vw, 68px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.template-garden-empty .theme-engine-holding .theme-info h3 {
  max-width: 620px;
  font-size: clamp(31px, 3.2vw, 48px);
}

.template-garden-empty .theme-engine-holding .theme-info > p {
  max-width: 650px;
  font-size: 14px;
  line-height: 1.75;
}

@media (max-width: 760px) {
  .template-garden-empty {
    width: min(100% - 30px, 620px);
  }

  .template-garden-empty .theme-engine-holding {
    grid-template-columns: 1fr;
  }

  .template-garden-empty .theme-engine-holding .theme-artwork {
    min-height: 300px;
    height: 300px;
  }

  .template-garden-empty .theme-engine-holding .theme-info {
    padding: 25px 22px 28px;
  }

  .template-garden-empty .theme-engine-holding .theme-info h3 {
    font-size: 31px;
  }
}

@media (max-width: 900px) {
  .romantic-header .romantic-brand {
    position: relative;
    z-index: 253;
  }
}


/* v2.2.2 auth collision fix: lock the input geometry after all legacy layers. */
.auth-page .auth-form-v3 .field {
  grid-template-rows: auto auto auto;
  align-content: start;
}
.auth-page .auth-form-v3 .input-with-icon,
.auth-page .auth-form-v3 .password-field {
  position: relative;
  width: 100%;
  min-width: 0;
  height: 52px;
}
.auth-page .auth-form-v3 .input-with-icon > svg {
  position: absolute !important;
  z-index: 3 !important;
  left: 17px !important;
  top: 50% !important;
  width: 19px !important;
  height: 19px !important;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
}
.auth-page .auth-form-v3 .input-with-icon > input {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 0 52px 0 54px !important;
  line-height: 1.2 !important;
  text-indent: 0 !important;
}
.auth-page .auth-form-v3 .input-with-icon > input::placeholder {
  opacity: 1;
  color: #9a898f;
}
.auth-page .auth-form-v3 .password-field > button {
  position: absolute !important;
  z-index: 4 !important;
  top: 50% !important;
  right: 7px !important;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
}
.auth-page .auth-form-v3 .password-strength {
  position: static !important;
  width: 100%;
  min-width: 0;
  margin: 2px 0 0 !important;
  display: grid;
  gap: 6px;
}
.auth-page .auth-form-v3 .password-strength small {
  display: block;
  min-height: 0;
  margin: 0;
  color: var(--ui-muted);
  font-size: 11.5px;
  font-weight: 500;
  line-height: 1.45;
}
.auth-page .auth-form-v3 .field-feedback {
  position: static !important;
  display: block;
  min-height: 0;
  margin: 0;
  line-height: 1.45;
}
.auth-page .auth-form-v3 .field-feedback[hidden] { display: none !important; }
.auth-page .auth-form-register .password-confirm-row .field {
  grid-template-rows: auto 52px auto !important;
  row-gap: 8px;
}
.auth-page .auth-form-register .password-confirm-row {
  align-items: start;
}
@media (max-width: 760px) {
  .auth-page .auth-form-v3 .input-with-icon,
  .auth-page .auth-form-v3 .password-field,
  .auth-page .auth-form-v3 .input-with-icon > input {
    height: 50px !important;
    min-height: 50px !important;
  }
  .auth-page .auth-form-register .password-confirm-row .field {
    grid-template-rows: auto 50px auto !important;
  }
}


/* ===== Momeniva selected brand identity v3.3.2 ===== */
.brand,
.romantic-brand,
.studio-brand,
.auth-brand {
  gap: 10px;
}

.brand-mark,
.romantic-brand .brand-mark,
.brand-light .brand-mark,
.auth-shell-v4 .auth-brand .brand-mark {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
  overflow: visible;
}

.brand-mark::before,
.romantic-brand .brand-mark::before,
.brand-mark > i,
.brand-mark > span {
  display: none;
  content: none;
}

.brand-mark > img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: contain;
  object-position: center;
  filter: none;
}

.brand-word {
  color: #4f2034;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 1.08em;
  font-weight: 600;
  letter-spacing: -.025em;
  line-height: 1;
  transform: translateY(-1px);
}

.brand-light .brand-word {
  color: #fffaf6;
}

.romantic-header .romantic-brand .brand-mark {
  width: 42px;
  height: 42px;
}

.romantic-header .romantic-brand .brand-word {
  font-size: 27px;
}

.studio-brand .brand-mark {
  width: 38px;
  height: 38px;
}

.auth-brand .brand-mark {
  width: 48px;
  height: 48px;
}

.romantic-footer .romantic-brand .brand-mark {
  width: 44px;
  height: 44px;
}

@media (max-width: 760px) {
  .romantic-header .romantic-brand .brand-mark,
  .auth-mobile-header .brand-mark {
    width: 36px;
    height: 36px;
  }

  .romantic-header .romantic-brand .brand-word,
  .auth-mobile-header .brand-word {
    font-size: 22px;
  }
}

/* ===== resources/ui/production-hardening.css ===== */
/* Production hardening v3.0: operational typography, responsive workflows, and accessibility. */

/* Operational typography must remain readable. Decorative marketing typography is intentionally excluded. */
.studio-v3,
.auth-page .auth-panel {
  --ops-caption: 12px;
  --ops-label: 14px;
  --ops-body: 15px;
}
.studio-v3 :is(.topbar-kicker,.sidebar-label,.panel-kicker,.eyebrow,.meta-label,.field-help,.form-help,.media-status,.preview-label,.payment-status,.plan-pill,.badge,.stat-copy small,.event-meta small,.user-meta small,.settings-card small,.analytics-card small,.guest-card small),
.auth-page .auth-panel :is(small,.field-feedback,.password-strength small,.caps-lock-warning) {
  font-size: max(var(--ops-caption), 0.75rem);
  line-height: 1.45;
}
.studio-v3 :is(label > span, fieldset > legend, .form-label) { font-size: var(--ops-label); line-height: 1.45; }
.studio-v3 :is(p,li,input,select,textarea,button) { text-rendering: optimizeLegibility; }

/* Predictable card language. */
.studio-v3 :is(.panel,.settings-card,.billing-card,.analytics-card,.checkout-form,.checkout-summary,.notification-center,.editor-form-panel,.editor-preview) {
  border-radius: 16px;
  box-shadow: 0 8px 26px rgba(51,36,42,.06);
}
.studio-v3 :is(.btn,.icon-button,input,select,textarea) { border-radius: 12px; }

/* Accessible controls. */
.studio-v3 :is(.icon-button,.studio-menu,.topbar-notification,.guest-row-actions button,.guest-row-actions a,.analytics-range button,.preview-toolbar button),
.auth-page :is(.password-field > button,.icon-button) {
  min-width: 44px;
  min-height: 44px;
}
.caps-lock-warning { display:block; margin-top:6px; color:var(--ui-warning); font-weight:650; }
.caps-lock-warning[hidden] { display:none; }

/* Editor conflict recovery and mobile workflow. */
.editor-recovery-notice {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  margin:0 0 16px; padding:14px 16px; border:1px solid #e5c88d; border-radius:14px;
  background:#fff9e9; color:var(--ui-text);
}
.editor-recovery-notice > div:first-child { display:grid; gap:3px; }
.editor-recovery-notice > div:last-child { display:flex; gap:8px; flex-wrap:wrap; }
.editor-recovery-notice span { color:var(--ui-muted); font-size:13px; }
.editor-mobile-mode { display:none; }
.editor-layout-v3 > * { min-width:0; }

/* Settings: mobile selector replaces overflowing tabs. */
.settings-mobile-selector { display:none; }
.remember-device-list { display:grid; gap:10px; margin:18px 0; }
.remember-device-list h3 { margin:0 0 2px; font-size:15px; }
.remember-device-list article { display:flex; align-items:center; gap:12px; padding:12px; border:1px solid var(--ui-border); border-radius:12px; background:var(--ui-surface-muted); }
.remember-device-list article > span { display:grid; place-items:center; width:42px; height:42px; flex:0 0 42px; border-radius:11px; background:var(--ui-surface); color:var(--ui-primary); }
.remember-device-list article > span svg { width:20px; }
.remember-device-list article > div { min-width:0; flex:1; display:grid; gap:3px; }
.remember-device-list article strong,.remember-device-list article small { overflow-wrap:anywhere; }
.remember-device-list article form { margin-left:auto; }

/* Checkout is shrink-safe. */
.checkout-layout,.checkout-form,.checkout-summary,.payment-form,.payment-option,.checkout-event { min-width:0; }
.payment-option > div { min-width:0; }
.payment-option small { overflow-wrap:anywhere; }
.checkout-mobile-total { display:none; }

/* Action rows keep touch-safe geometry without visual bloat. */
.guest-actions-popover .btn,.guest-actions-popover .feature-lock-button { min-height:44px; }
.analytics-range button { min-height:44px; padding-inline:14px; }

@media (max-width: 1020px) {
  .editor-layout-v3 { grid-template-columns:1fr; }
  .editor-mobile-mode {
    display:grid; grid-template-columns:1fr 1fr; position:sticky; top:76px; z-index:25;
    margin:0 0 12px; padding:4px; border:1px solid var(--ui-border); border-radius:14px;
    background:rgba(255,250,247,.96); box-shadow:var(--ui-shadow-sm); backdrop-filter:blur(14px);
  }
  .editor-mobile-mode button { min-height:42px; border:0; border-radius:10px; background:transparent; color:var(--ui-muted); font-weight:700; }
  .editor-mobile-mode button.active { background:var(--ui-primary); color:#fff; }
  .editor-layout-v3[data-mobile-mode="edit"] .editor-preview { display:none; }
  .editor-layout-v3[data-mobile-mode="preview"] .editor-form-panel,
  .editor-layout-v3[data-mobile-mode="preview"] .editor-nav-rail,
  .editor-layout-v3[data-mobile-mode="preview"] .editor-mobile-nav { display:none; }
  .editor-layout-v3[data-mobile-mode="preview"] .editor-preview { display:block; }
  .editor-preview { position:static; max-height:none; }
}

@media (max-width: 760px) {
  .studio-content { min-width:0; padding-inline:14px; }
  .studio-v3 :is(.btn,.icon-button,.studio-menu,.topbar-notification) { min-height:44px; }
  .editor-recovery-notice { align-items:flex-start; flex-direction:column; }
  .editor-recovery-notice > div:last-child { width:100%; }
  .editor-recovery-notice .btn { flex:1; }

  .settings-layout { display:block; width:100%; max-width:100%; min-width:0; }
  .settings-nav { display:none; }
  .settings-mobile-selector { display:grid; gap:7px; margin:0 0 14px; position:sticky; top:76px; z-index:20; padding:12px; border:1px solid var(--ui-border); border-radius:14px; background:rgba(255,250,247,.96); backdrop-filter:blur(14px); }
  .settings-mobile-selector span { font-size:12px; color:var(--ui-muted); font-weight:700; }
  .settings-mobile-selector select { width:100%; min-width:0; min-height:48px; }
  .settings-content,.settings-card,.settings-form,.form-grid { width:100%; max-width:100%; min-width:0; }
  .settings-card { scroll-margin-top:150px; padding:20px 16px; }
  .remember-device-list article { align-items:flex-start; }
  .remember-device-list article form { margin-left:0; }

  .checkout-layout { display:flex; flex-direction:column; width:100%; max-width:100%; gap:14px; overflow:visible; }
  .checkout-summary { order:-1; position:static; width:100%; }
  .checkout-form { width:100%; }
  .payment-methods { min-width:0; }
  .payment-option { grid-template-columns:24px 40px minmax(0,1fr); width:100%; padding:13px 12px; }
  .payment-option > span { width:40px; height:40px; }
  .checkout-event { display:grid; grid-template-columns:58px minmax(0,1fr); }
  .checkout-event img { width:58px; height:68px; }
  .checkout-consent { align-items:flex-start; }
  .checkout-summary ul { columns:1; }

  .analytics-range { width:100%; overflow-x:auto; scrollbar-width:none; }
  .analytics-range::-webkit-scrollbar { display:none; }
  .analytics-range button { flex:0 0 auto; }
}

@media (max-width: 390px) {
  .studio-content { padding-inline:10px; }
  .checkout-form,.checkout-summary,.settings-card { padding-inline:14px; }
  .payment-option { grid-template-columns:22px 36px minmax(0,1fr); gap:9px; }
}

/* Legacy input width rules must never expand visually-hidden checkbox/radio controls. */
.studio-v3 .custom-check > input[type="checkbox"],
.studio-v3 .custom-check > input[type="radio"],
.studio-v3 .switch-label > input[type="checkbox"],
.studio-v3 .payment-option > input[type="radio"] {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  min-width:1px !important;
  min-height:1px !important;
  margin:-1px !important;
  padding:0 !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
}
.studio-v3 { overflow-x:clip; }
@supports not (overflow: clip) { .studio-v3 { overflow-x:hidden; } }
@media (max-width:1020px) {
  .editor-layout-v3[data-mobile-mode="preview"] .editor-panel { display:none; }
}
@media (max-width:760px) {
  .analytics-chart-panel,.analytics-grid,.bar-chart { min-width:0; max-width:100%; overflow:hidden; }
  .bar-chart [data-tooltip]::before,.bar-chart [data-tooltip]::after { display:none !important; }
}

/* Rendered production floor: override legacy selectors that still produce unreadable metadata. */
.studio-v3 :is(
  small,
  em,
  dt,
  code,
  .topbar-kicker,
  .sidebar-label,
  .panel-kicker,
  .editor-tab-progress,
  .sidebar-upgrade > span,
  .sidebar-upgrade p,
  .sidebar-upgrade a,
  .analytics-range a
) {
  font-size: 12px;
  line-height: 1.45;
}
.studio-v3 .topbar-title .topbar-kicker { font-size: 12px; }
.studio-v3 .sidebar-upgrade > span { font-size: 12px; letter-spacing: .09em; }
.studio-v3 .sidebar-upgrade p,
.studio-v3 .sidebar-upgrade a { font-size: 12px; }

/* Real rendered hit boxes, including higher-specificity page rules. */
.studio-v3 :is(
  .icon-button,
  .icon-link,
  .topbar-notification,
  .studio-menu,
  .analytics-range a,
  .analytics-range button,
  .settings-nav a,
  .editor-mobile-mode button,
  .guest-row-actions a,
  .guest-row-actions button,
  .guest-card-actions a,
  .guest-card-actions button
) {
  min-width: 44px;
  min-height: 44px;
}
.studio-v3 .dashboard-event-panel .event-actions-v3 .icon-link,
.studio-v3 .event-actions-v3 .icon-link {
  width: 44px;
  height: 44px;
}
.studio-v3 :is(.editor-actions .btn,.editor-command-actions .btn,.guest-card-actions .btn,.settings-nav a) {
  min-height: 44px;
}
.studio-v3 :is(.panel-head a,.event-view-link,.editor-back-link,.guest-context-bar > a) {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
.auth-page :is(.auth-demo-card button,.auth-back,.auth-switch a,.auth-options a) {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
.auth-page .auth-demo-card button { min-width: 44px; }

/* At short laptop heights, the form receives priority over decoration. */
@media (min-width: 901px) and (max-height: 760px) {
  .auth-page .auth-visual { padding-block: 24px; }
  .auth-page .auth-preview-card { transform: scale(.9); transform-origin: center; }
  .auth-page .auth-visual-copy { display: none; }
  .auth-page .auth-panel { padding-block: 28px; }
}

/* Final semantic typography and hit-area normalization after legacy bundle. */
.studio-v3 :is(
  .status,
  .plan-pill,
  .category-chip,
  .guest-status,
  .notification-group-title,
  .notification-title i,
  .guest-table th,
  .billing-summary-list dt,
  .order-row.head,
  .payment-status,
  .editor-command-main > p,
  .editor-command-title p,
  .editor-command-actions .save-state,
  .editor-command-topmeta .save-state,
  .gallery-card-fields label,
  .rsvp-row.head,
  .rsvp-row small,
  .preview-link span,
  .preview-link code,
  .dashboard-event-panel .event-metrics span,
  .stat-grid-v3 em,
  .user-meta small,
  .analytics-period a
) {
  font-size: 12px;
  line-height: 1.45;
}
.studio-v3 .topbar-notification > span {
  min-width: 22px;
  height: 22px;
  font-size: 12px;
}
.studio-v3 :is(.btn,.event-actions-v3 .btn,.editor-action-buttons .btn,.editor-command-bottomline .editor-action-buttons .btn,.preview-toolbar button,.preview-device-switch button,.analytics-period a) {
  min-height: 44px;
}
.studio-v3 :is(.preview-toolbar button,.preview-device-switch button) {
  width: 44px;
  height: 44px;
}
.studio-v3 :is(.analytics-period a,.analytics-range a) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 54px;
  min-height: 44px;
  font-size: 12px;
}
.studio-v3 .sidebar-upgrade a { min-height: 44px; }
.studio-v3 .guest-card-actions .btn,
.studio-v3 .guest-table .btn { min-height: 44px; }
.studio-v3 .save-state > span { font-size: 12px; line-height: 1.45; }
.studio-v3 .event-context-bar > a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
.auth-page :is(.brand,.auth-brand) { display:inline-flex; align-items:center; min-height:44px; }

/* Authentication readability and touch geometry. */
.auth-page .auth-heading-v3 > span,
.auth-page .demo-login-v3 span { font-size: 12px; line-height: 1.45; }
.auth-page .demo-login-v3 button { min-height: 44px; }
.auth-page :is(.auth-heading-v3 p a,.auth-form-v3 .custom-check a,.auth-form-v3 .auth-options a) {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}
.auth-page .auth-form-v3 .label-row a { display:inline-flex; align-items:center; min-height:44px; }

/* =========================================================
   v3.0.1 — mobile Studio sidebar interaction and scroll fix
   ========================================================= */
.studio-v3 .studio-sidebar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex: 0 0 auto;
}
.studio-v3 .studio-sidebar-header > .brand {
  min-width: 0;
  min-height: 48px;
  margin: 0 7px 18px;
  padding: 0;
  display: inline-flex;
  align-items: center;
}
.studio-v3 .studio-sidebar-close {
  display: none;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--ui-border);
  border-radius: 12px;
  background: #fff;
  color: var(--ui-text);
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.studio-v3 .studio-sidebar-close svg { width: 20px; height: 20px; }

@media (max-width: 980px) {
  body.studio-nav-open {
    overflow: hidden;
    overscroll-behavior: none;
  }

  .studio-v3 .studio-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 220;
    width: min(320px, 88vw);
    height: 100vh;
    height: 100dvh;
    max-height: 100dvh;
    padding:
      max(18px, env(safe-area-inset-top))
      max(16px, env(safe-area-inset-right))
      max(18px, env(safe-area-inset-bottom))
      max(16px, env(safe-area-inset-left));
    transform: translate3d(-105%, 0, 0);
    visibility: hidden;
    pointer-events: none;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
    scrollbar-gutter: stable;
    transition: transform .28s cubic-bezier(.22,.8,.24,1), visibility 0s linear .28s;
    will-change: transform;
  }

  .studio-v3 .studio-sidebar.open {
    transform: translate3d(0, 0, 0);
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
  }

  .studio-v3 .studio-sidebar-header {
    position: sticky;
    top: calc(-1 * max(18px, env(safe-area-inset-top)));
    z-index: 4;
    margin:
      calc(-1 * max(18px, env(safe-area-inset-top)))
      calc(-1 * max(16px, env(safe-area-inset-right)))
      10px
      calc(-1 * max(16px, env(safe-area-inset-left)));
    padding:
      max(18px, env(safe-area-inset-top))
      max(16px, env(safe-area-inset-right))
      10px
      max(16px, env(safe-area-inset-left));
    border-bottom: 1px solid rgba(230,217,212,.72);
    background: rgba(255,253,250,.97);
    backdrop-filter: blur(14px);
  }

  .studio-v3 .studio-sidebar-header > .brand { margin: 0; }
  .studio-v3 .studio-sidebar-close { display: inline-flex; }

  .studio-v3 .studio-sidebar nav {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
    padding-bottom: 4px;
  }

  .studio-v3 .sidebar-link,
  .studio-v3 .sidebar-upgrade a {
    position: relative;
    z-index: 2;
    pointer-events: auto;
    touch-action: manipulation;
  }

  .studio-v3 .sidebar-upgrade {
    flex: 0 0 auto;
    margin-top: 20px;
    margin-bottom: 2px;
  }

  .studio-v3 .studio-overlay {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 210;
    background: rgba(40,24,30,.42);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    touch-action: manipulation;
    transition: opacity .22s ease, visibility 0s linear .22s;
  }

  .studio-v3 .studio-overlay.open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition-delay: 0s;
  }

  .studio-v3 .studio-main { margin-left: 0; }
  .studio-v3 .studio-menu { display: grid; position: relative; z-index: 1; }
}

@media (min-width: 981px) {
  .studio-v3 .studio-sidebar {
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
  }
  .studio-v3 .studio-overlay { display: none !important; }
}

/* ========================================================================
   Momeniva Editor UX v3.2 — structured form system and responsive workflow
   ======================================================================== */
.studio-v3 .editor-layout-v3{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,420px);
  gap:24px;
  align-items:start;
}
.studio-v3 .editor-form-panel{
  min-width:0;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.studio-v3 .editor-icon-tabs{
  position:sticky;
  top:88px;
  z-index:38;
  display:grid;
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:6px;
  margin:0 0 14px;
  padding:7px;
  border:1px solid var(--ui-border);
  border-radius:16px;
  background:rgba(255,252,249,.96);
  box-shadow:0 12px 30px rgba(74,43,52,.08);
  backdrop-filter:blur(14px);
}
.studio-v3 .editor-icon-tabs button{
  min-width:0;
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:8px 7px;
  border:0;
  border-radius:11px;
  background:transparent;
  color:var(--ui-muted);
  font:600 12px/1.2 "DM Sans",sans-serif;
  white-space:nowrap;
  cursor:pointer;
}
.studio-v3 .editor-icon-tabs button::after{display:none}
.studio-v3 .editor-icon-tabs button:hover{background:#f8efec;color:var(--ui-text)}
.studio-v3 .editor-icon-tabs button.active{
  background:var(--ui-primary);
  color:#fff;
  box-shadow:0 7px 16px rgba(136,65,87,.2);
}
.studio-v3 .editor-icon-tabs button.is-complete:not(.active){color:#3d725b}
.studio-v3 .editor-tab-icon{
  width:21px;
  height:21px;
  display:grid;
  place-items:center;
  flex:0 0 21px;
}
.studio-v3 .editor-tab-icon svg{width:19px;height:19px}
.studio-v3 .editor-tab-label{overflow:hidden;text-overflow:ellipsis}
.studio-v3 .editor-tab-progress{
  min-width:17px;
  height:17px;
  display:grid;
  place-items:center;
  margin-left:0;
  border-radius:50%;
  background:#dcecdf;
  color:#32634e;
  font-size:10px;
}
.studio-v3 .editor-icon-tabs button.active .editor-tab-progress{background:rgba(255,255,255,.2);color:#fff}

.studio-v3 .editor-form{
  display:block;
  padding:0;
  border:1px solid var(--ui-border);
  border-radius:20px;
  background:var(--ui-surface);
  box-shadow:0 16px 42px rgba(74,43,52,.07);
  overflow:hidden;
}
.studio-v3 .editor-tab{display:none}
.studio-v3 .editor-tab.active{display:block}
.studio-v3 .editor-panel-heading{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:25px 28px 22px;
  border-bottom:1px solid var(--ui-border);
  background:linear-gradient(135deg,#fffdfb,#fbf4f1);
}
.studio-v3 .editor-panel-heading>span{
  min-width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:11px;
  background:var(--ui-primary);
  color:#fff;
  font:700 12px "DM Sans",sans-serif;
}
.studio-v3 .editor-panel-heading h2{
  margin:0;
  color:var(--ui-text);
  font:700 24px/1.2 "DM Sans",sans-serif;
  letter-spacing:-.45px;
}
.studio-v3 .editor-panel-heading p{
  max-width:650px;
  margin:5px 0 0;
  color:var(--ui-muted);
  font-size:13.5px;
  line-height:1.55;
}

.studio-v3 .editor-form .field-group,
.studio-v3 .editor-section{
  display:grid;
  gap:20px;
  margin:0;
  padding:28px;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.studio-v3 .editor-form .field-group+.field-group,
.studio-v3 .editor-section+.editor-section{
  border-top:1px solid var(--ui-border);
}
.studio-v3 .editor-section--compact{grid-template-columns:minmax(0,1fr);padding-bottom:30px}
.studio-v3 .field-group-head{
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:13px;
  align-items:start;
  margin:0 0 2px;
}
.studio-v3 .field-group-head--action{grid-template-columns:42px minmax(0,1fr) auto;align-items:center}
.studio-v3 .field-group-head>span{
  width:42px;
  height:42px;
  border-radius:12px;
  background:var(--ui-primary-soft);
  color:var(--ui-primary);
}
.studio-v3 .field-group-head>span svg{width:19px;height:19px}
.studio-v3 .field-group-head h3{
  margin:0;
  color:var(--ui-text);
  font:700 18px/1.3 "DM Sans",sans-serif;
  letter-spacing:-.15px;
}
.studio-v3 .field-group-head p{
  max-width:650px;
  margin:4px 0 0;
  color:var(--ui-muted);
  font-size:13px;
  line-height:1.55;
}

.studio-v3 .form-grid--editor{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.studio-v3 .form-grid--editor>.form-field--full,
.studio-v3 .form-grid--editor>.form-field:not(.form-field--half):not(.form-field--third){grid-column:1/-1}
.studio-v3 .form-field{
  min-width:0;
  display:grid;
  align-content:start;
  gap:8px;
  margin:0;
}
.studio-v3 .form-field__label-row{
  min-height:20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.studio-v3 .form-label{
  margin:0;
  color:var(--ui-text);
  font:650 14px/1.4 "DM Sans",sans-serif;
}
.studio-v3 .form-field__required,
.studio-v3 .form-field__optional{
  flex:0 0 auto;
  font:600 11px/1.3 "DM Sans",sans-serif;
}
.studio-v3 .form-field__required{color:var(--ui-primary)}
.studio-v3 .form-field__optional{color:var(--ui-muted)}
.studio-v3 .editor-form :is(input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),select,textarea),
.studio-v3 .form-control{
  width:100%;
  min-height:50px;
  margin:0;
  padding:0 14px;
  border:1px solid #d9cbc6;
  border-radius:12px;
  background:#fffdfb;
  color:var(--ui-text);
  font:500 15px/1.45 "DM Sans",sans-serif;
  outline:0;
  box-shadow:none;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.studio-v3 .editor-form textarea,
.studio-v3 textarea.form-control{
  min-height:112px;
  padding:13px 14px;
  resize:vertical;
}
.studio-v3 .editor-form :is(input,select,textarea):hover{border-color:#c9b5ae}
.studio-v3 .editor-form :is(input,select,textarea):focus{
  border-color:var(--ui-primary);
  background:#fff;
  box-shadow:0 0 0 3px rgba(136,65,87,.14);
}
.studio-v3 .editor-form :is(input,select,textarea)::placeholder{color:#a7979d;opacity:1}
.studio-v3 .editor-form :is(input,select,textarea):disabled{cursor:not-allowed;background:#f3eeeb;color:#998b90}
.studio-v3 .form-field__footer{
  min-height:19px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.studio-v3 .form-help{
  max-width:580px;
  margin:0;
  color:var(--ui-muted);
  font-size:12.5px;
  line-height:1.5;
}
.studio-v3 .form-counter{
  flex:0 0 auto;
  color:#8d7d83;
  font:600 11.5px/1.5 "DM Sans",sans-serif;
}
.studio-v3 .form-counter.is-near-limit{color:#a45e24}
.studio-v3 .field-attention{
  animation:editorFieldAttention 1.7s ease;
}
@keyframes editorFieldAttention{
  0%,100%{box-shadow:none}
  20%,65%{box-shadow:0 0 0 4px rgba(180,65,75,.18);border-radius:13px}
}

.studio-v3 .editor-command-bar{
  padding:20px 22px;
  border-radius:18px;
}
.studio-v3 .editor-command-title h1{font-family:"Cormorant Garamond",serif;font-size:36px;line-height:1.08}
.studio-v3 .editor-command-title p{font-size:12.5px}
.studio-v3 .save-state{min-height:32px;padding:6px 11px;border-radius:999px;font-size:12px}
.studio-v3 .editor-action-buttons{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap}

.studio-v3 .publish-readiness{
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(300px,1.28fr);
  gap:18px;
  align-items:start;
  padding:17px 18px;
}
.studio-v3 .publish-readiness__summary{display:flex;gap:12px;align-items:flex-start}
.studio-v3 .publish-readiness__summary>span{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#f7e7bf}
.studio-v3 .publish-readiness__issues{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.studio-v3 .publish-readiness__issues button{
  min-height:38px;
  display:flex;
  align-items:center;
  gap:6px;
  padding:7px 11px;
  border:1px solid rgba(130,103,47,.2);
  border-radius:999px;
  background:rgba(255,255,255,.58);
  color:#6d4f1b;
  font:600 12px/1.35 "DM Sans",sans-serif;
  cursor:pointer;
}
.studio-v3 .publish-readiness__issues button:hover{border-color:#a7792a;background:#fff}
.studio-v3 .publish-readiness__issues svg{width:15px;height:15px}

.studio-v3 .editor-local-nav{
  display:flex;
  align-items:center;
  gap:6px;
  margin:22px 28px 0;
  padding:5px;
  border:1px solid var(--ui-border);
  border-radius:13px;
  background:#faf5f2;
}
.studio-v3 .editor-local-nav button{
  min-height:40px;
  flex:1 1 0;
  padding:8px 13px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:var(--ui-muted);
  font:650 13px "DM Sans",sans-serif;
  cursor:pointer;
}
.studio-v3 .editor-local-nav button.active{background:#fff;color:var(--ui-primary);box-shadow:0 3px 10px rgba(65,39,47,.08)}
.studio-v3 [data-local-panel][hidden],
.studio-v3 [data-secondary-fields][hidden]{display:none}
.studio-v3 .conditional-fields{display:grid;gap:18px;padding-top:3px}

.studio-v3 .editor-repeater-list{display:grid;gap:12px}
.studio-v3 .editor-repeater-card{
  border:1px solid var(--ui-border);
  border-radius:15px;
  background:#fffdfb;
  overflow:hidden;
}
.studio-v3 .editor-repeater-card>summary{
  min-height:62px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  padding:11px 14px;
  cursor:pointer;
  list-style:none;
  user-select:none;
}
.studio-v3 .story-repeater-card>summary{grid-template-columns:auto auto minmax(0,1fr) auto}
.studio-v3 .editor-repeater-card>summary::-webkit-details-marker{display:none}
.studio-v3 .editor-repeater-card>summary strong,
.studio-v3 .editor-repeater-card>summary small{display:block}
.studio-v3 .editor-repeater-card>summary strong{color:var(--ui-text);font-size:14px}
.studio-v3 .editor-repeater-card>summary small{margin-top:2px;color:var(--ui-muted);font-size:12px}
.studio-v3 .editor-repeater-card>summary>svg{width:18px;transition:transform .18s ease}
.studio-v3 .editor-repeater-card[open]>summary>svg{transform:rotate(180deg)}
.studio-v3 .editor-repeater-body{display:grid;gap:18px;padding:18px;border-top:1px solid var(--ui-border);background:#fff}
.studio-v3 .repeater-index{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:var(--ui-primary-soft);color:var(--ui-primary);font:700 12px "DM Sans",sans-serif}
.studio-v3 .drag-handle{min-width:28px;min-height:38px;display:grid;place-items:center;color:#9f9095;cursor:grab;font-weight:800;letter-spacing:1px}
.studio-v3 .dragging{opacity:.55}

.studio-v3 .switch-list{display:grid;gap:10px}
.studio-v3 .switch-label{
  min-height:60px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:13px;
  padding:11px 13px;
  border:1px solid var(--ui-border);
  border-radius:13px;
  background:#fffdfb;
}
.studio-v3 .field-group-head>.switch-label{min-height:auto;padding:0;border:0;background:transparent}
.studio-v3 .switch-label strong{font-size:13.5px}
.studio-v3 .switch-label small{font-size:12px;line-height:1.45}
.studio-v3 .compact-switch{grid-template-columns:auto auto;min-height:44px;padding:7px 9px}

.studio-v3 .cover-uploader{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:20px;
  align-items:start;
  padding:16px;
  border:1px solid var(--ui-border);
  border-radius:16px;
  background:#fcf8f5;
}
.studio-v3 .cover-preview-frame{aspect-ratio:4/5;border-radius:13px;overflow:hidden;background:#eee4df}
.studio-v3 .cover-preview-frame img{width:100%;height:100%;display:block;object-fit:cover}
.studio-v3 .cover-copy{display:grid;align-content:start;gap:16px;min-width:0}
.studio-v3 .cover-copy>div:first-child strong{font:700 17px "DM Sans",sans-serif}
.studio-v3 .media-helper{margin:5px 0 0;font-size:12.5px;line-height:1.5}
.studio-v3 .media-action-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}
.studio-v3 .media-status{min-height:18px;margin:0;color:var(--ui-muted);font-size:12px}
.studio-v3 .gallery-manager{display:grid;gap:14px;margin-top:4px}
.studio-v3 .gallery-manager-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.studio-v3 .gallery-manager-head strong,
.studio-v3 .gallery-manager-head span{display:block}
.studio-v3 .gallery-manager-head strong{font-size:15px}
.studio-v3 .gallery-manager-head span{margin-top:2px;color:var(--ui-muted);font-size:12px}
.studio-v3 .gallery-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.studio-v3 .gallery-uploader{
  position:relative;
  display:grid;
  grid-template-columns:128px minmax(0,1fr);
  grid-template-areas:"image actions" "image fields" "status status";
  gap:11px 13px;
  padding:13px;
  border:1px solid var(--ui-border);
  border-radius:15px;
  background:#fffdfb;
}
.studio-v3 .gallery-uploader>img,
.studio-v3 .gallery-empty-preview{grid-area:image;width:128px;height:160px;border-radius:11px;object-fit:cover;background:#eee5df}
.studio-v3 .gallery-empty-preview{display:grid;place-items:center;text-align:center;color:var(--ui-muted);font-size:12px}
.studio-v3 .gallery-card-actions{grid-area:actions;display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap}
.studio-v3 .gallery-card-fields{grid-area:fields;display:grid;gap:12px;min-width:0}
.studio-v3 .gallery-uploader>.media-status{grid-area:status}
.studio-v3 .gallery-drag-handle{position:absolute;top:7px;left:7px;z-index:2;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:rgba(255,255,255,.92);color:#7f6f75;box-shadow:0 4px 12px rgba(0,0,0,.12);cursor:grab}

.studio-v3 .focal-select--native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.studio-v3 .focal-point-grid{
  width:126px;
  display:grid;
  grid-template-columns:repeat(3,38px);
  gap:6px;
  padding:6px;
  border:1px solid var(--ui-border);
  border-radius:12px;
  background:#f8f2ef;
}
.studio-v3 .focal-point-grid button{
  width:38px;
  height:34px;
  min-height:34px;
  padding:0;
  border:1px solid #dbcac4;
  border-radius:8px;
  background:#fff;
  cursor:pointer;
}
.studio-v3 .focal-point-grid button::after{content:"";width:7px;height:7px;display:block;margin:auto;border-radius:50%;background:#cbb9b2}
.studio-v3 .focal-point-grid button.active{border-color:var(--ui-primary);background:var(--ui-primary-soft);box-shadow:0 0 0 2px rgba(136,65,87,.12)}
.studio-v3 .focal-point-grid button.active::after{background:var(--ui-primary)}

.studio-v3 .video-uploader{
  display:grid;
  grid-template-columns:minmax(220px,42%) minmax(0,1fr);
  gap:20px;
  padding:16px;
  border:1px solid var(--ui-border);
  border-radius:16px;
  background:#fcf8f5;
}
.studio-v3 .video-preview-frame{min-height:220px;border-radius:13px;overflow:hidden;background:#211c20}
.studio-v3 .video-preview-frame video,.studio-v3 .video-empty-preview{width:100%;height:100%;min-height:220px;object-fit:cover}
.studio-v3 .video-empty-preview{display:grid;place-items:center;align-content:center;gap:9px;color:#d8c9cd}
.studio-v3 .video-empty-preview svg{width:30px;height:30px}
.studio-v3 .video-media-copy{display:grid;align-content:start;gap:14px;padding:4px 0}
.studio-v3 .video-media-copy>div:first-child>strong{display:block;color:var(--ui-text);font:700 18px/1.3 "DM Sans",sans-serif}
.studio-v3 .video-media-copy>div:first-child>p{font-size:13px;line-height:1.55}
.studio-v3 .editor-audio-preview{width:100%;height:46px}
.studio-v3 .audio-upload-row{display:flex;align-items:center;justify-content:flex-start;gap:11px;flex-wrap:wrap}
.studio-v3 .audio-upload-row small{color:var(--ui-muted);font-size:12px}

.studio-v3 .active-theme-summary{
  display:grid;
  grid-template-columns:86px minmax(0,1fr) auto;
  gap:15px;
  align-items:center;
  padding:13px;
  border:1px solid var(--ui-primary);
  border-radius:15px;
  background:linear-gradient(135deg,#fff9f6,#f8eeeb);
}
.studio-v3 .active-theme-summary img{width:86px;height:108px;border-radius:11px;object-fit:cover;background:#eee3dc}
.studio-v3 .active-theme-summary strong{display:block;margin:4px 0 2px;font-size:16px}
.studio-v3 .active-theme-summary p{margin:0;color:var(--ui-muted);font-size:12.5px}
.studio-v3 .variant-picker{display:grid;gap:11px;margin:0;padding:0;border:0}
.studio-v3 .variant-picker legend{padding:0;color:var(--ui-text);font:650 14px "DM Sans",sans-serif}
.studio-v3 .variant-picker>p{margin:-5px 0 0;color:var(--ui-muted);font-size:12.5px}
.studio-v3 .variant-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.studio-v3 .variant-option{
  min-height:76px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:11px;
  padding:11px;
  border:1px solid var(--ui-border);
  border-radius:13px;
  background:#fffdfb;
  cursor:pointer;
}
.studio-v3 .variant-option:has(input:checked){border-color:var(--ui-primary);background:var(--ui-primary-soft);box-shadow:0 0 0 2px rgba(136,65,87,.1)}
.studio-v3 .variant-option input{position:absolute;opacity:0;pointer-events:none}
.studio-v3 .variant-swatch{display:flex;align-items:center}
.studio-v3 .variant-swatch i{width:25px;height:42px;display:block;margin-left:-8px;border:2px solid #fff;border-radius:8px;background:var(--swatch);box-shadow:0 3px 8px rgba(0,0,0,.1)}
.studio-v3 .variant-swatch i:first-child{margin-left:0}
.studio-v3 .variant-option strong{font-size:12.5px}
.studio-v3 .dress-color-editor{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.studio-v3 .dress-color-editor label{position:relative;width:48px;height:48px;display:block;cursor:pointer}
.studio-v3 .dress-color-editor input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.studio-v3 .dress-color-editor span{width:48px;height:48px;display:block;border:3px solid #fff;border-radius:50%;background:var(--dress-color);box-shadow:0 0 0 1px #d6c5bf,0 5px 12px rgba(0,0,0,.1)}
.studio-v3 .dress-color-editor label:focus-within span{box-shadow:0 0 0 3px rgba(136,65,87,.18),0 0 0 1px var(--ui-primary)}
.studio-v3 .section-sort{display:grid;gap:9px}
.studio-v3 .section-sort-item{
  min-height:60px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  padding:8px 11px;
  border:1px solid var(--ui-border);
  border-radius:13px;
  background:#fffdfb;
}
.studio-v3 .section-sort-item strong,.studio-v3 .section-sort-item small{display:block}
.studio-v3 .section-sort-item strong{font-size:13.5px}
.studio-v3 .section-sort-item small{margin-top:2px;color:var(--ui-muted);font-size:11.5px}
.studio-v3 .section-sort-item .switch-label{min-height:auto;padding:0;border:0;background:transparent}

.studio-v3 .gift-account-editor{display:grid;gap:12px}
.studio-v3 .gift-account-card{display:grid;gap:16px;padding:15px;border:1px solid var(--ui-border);border-radius:15px;background:#fffdfb}
.studio-v3 .gift-account-card[hidden]{display:none}
.studio-v3 .gift-account-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}
.studio-v3 .gift-account-card>header strong,.studio-v3 .gift-account-card>header small{display:block}
.studio-v3 .gift-account-card>header strong{font-size:14px}
.studio-v3 .gift-account-card>header small{margin-top:2px;color:var(--ui-muted);font-size:11.5px}
.studio-v3 .social-preview-layout{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(0,1.1fr);gap:20px;align-items:start}
.studio-v3 .social-preview-card{overflow:hidden;border:1px solid var(--ui-border);border-radius:15px;background:#fff;box-shadow:0 10px 24px rgba(64,39,46,.08)}
.studio-v3 .social-preview-card img{width:100%;aspect-ratio:1.91/1;display:block;object-fit:cover;background:#eee5df}
.studio-v3 .social-preview-card>div{display:grid;gap:4px;padding:13px}
.studio-v3 .social-preview-card span{color:#8f8085;font-size:10.5px;text-transform:uppercase;letter-spacing:.7px}
.studio-v3 .social-preview-card strong{font-size:14px;line-height:1.35}
.studio-v3 .social-preview-card p{display:-webkit-box;margin:0;overflow:hidden;color:var(--ui-muted);font-size:11.5px;line-height:1.45;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.studio-v3 .social-preview-fields{display:grid;gap:16px}
.studio-v3 .revision-row>span{display:flex;align-items:center;gap:8px}
.studio-v3 .revision-row>span strong,.studio-v3 .revision-row>span small{display:block}
.studio-v3 .revision-row>span small{color:var(--ui-muted)}

.studio-v3 .editor-filter-chips{display:flex;gap:7px;flex-wrap:wrap}
.studio-v3 .editor-filter-chips button{
  min-height:38px;
  padding:7px 13px;
  border:1px solid var(--ui-border);
  border-radius:999px;
  background:#fffdfb;
  color:var(--ui-muted);
  font:600 12px "DM Sans",sans-serif;
  cursor:pointer;
}
.studio-v3 .editor-filter-chips button.active{border-color:var(--ui-primary);background:var(--ui-primary-soft);color:var(--ui-primary)}
.studio-v3 .moderation-copy p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.studio-v3 .empty-mini{display:grid;gap:4px;padding:20px;border:1px dashed #d9cac4;border-radius:13px;background:#fcf8f5;text-align:center}
.studio-v3 .empty-mini strong{font-size:14px}
.studio-v3 .empty-mini span{color:var(--ui-muted);font-size:12.5px}

.studio-v3 .editor-preview{
  position:sticky;
  top:88px;
  max-height:calc(100dvh - 106px);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  border:1px solid var(--ui-border);
  border-radius:20px;
  background:#fff;
  box-shadow:0 18px 45px rgba(74,43,52,.1);
  overflow:hidden;
}
.studio-v3 .preview-toolbar{min-height:67px;padding:12px 14px}
.studio-v3 .preview-title .panel-kicker{font-size:10.5px}
.studio-v3 .preview-title strong{font:700 15px "DM Sans",sans-serif}
.studio-v3 .preview-toolbar-actions{display:flex;align-items:center;gap:8px}
.studio-v3 .preview-device-switch button,
.studio-v3 .preview-toolbar-actions>.icon-button{width:44px;height:44px;min-height:44px}
.studio-v3 .preview-canvas{min-height:580px;padding:18px;background:linear-gradient(145deg,#ede4df,#f9f3ef)}
.studio-v3 .preview-device-shell{height:min(690px,calc(100dvh - 245px));min-height:520px}
.studio-v3 .preview-canvas.desktop .preview-device-shell{width:100%;border-radius:13px}
.studio-v3 .preview-link{min-height:68px;padding:12px 14px}
.studio-v3 .preview-link span{font-size:11px}
.studio-v3 .preview-link code{max-width:285px;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media(max-width:1280px){
  .studio-v3 .editor-layout-v3{grid-template-columns:minmax(0,1fr) 380px}
  .studio-v3 .editor-icon-tabs button{gap:5px;padding-inline:5px;font-size:11px}
  .studio-v3 .gallery-upload-grid{grid-template-columns:1fr}
}
@media(max-width:1060px){
  .studio-v3 .editor-layout-v3{grid-template-columns:1fr}
  .studio-v3 .editor-preview{position:static;max-height:none}
  .studio-v3 .preview-device-shell{height:680px}
  .studio-v3 .editor-icon-tabs{top:76px}
  .studio-v3 .editor-layout-v3[data-mobile-mode="edit"] .editor-preview{display:none}
  .studio-v3 .editor-layout-v3[data-mobile-mode="preview"] .editor-form-panel{display:none}
  .studio-v3 .editor-layout-v3[data-mobile-mode="preview"] .editor-preview{display:grid}
}
@media(max-width:820px){
  .studio-v3 .publish-readiness{grid-template-columns:1fr}
  .studio-v3 .publish-readiness__issues{justify-content:flex-start}
  .studio-v3 .editor-icon-tabs{display:none}
  .studio-v3 .editor-mobile-nav{display:block;margin-bottom:12px}
  .studio-v3 .editor-mobile-nav label{display:grid;gap:7px;color:var(--ui-text);font:650 13px "DM Sans",sans-serif}
  .studio-v3 .editor-mobile-nav select{min-height:48px;border:1px solid var(--ui-border);border-radius:12px;background:#fff;padding:0 13px;font-size:14px}
  .studio-v3 .editor-command-bottomline{display:grid;gap:16px}
  .studio-v3 .editor-action-buttons{justify-content:flex-start}
  .studio-v3 .editor-panel-heading{padding:22px 20px}
  .studio-v3 .editor-form .field-group,.studio-v3 .editor-section{padding:24px 20px}
  .studio-v3 .editor-local-nav{margin:18px 20px 0}
  .studio-v3 .cover-uploader,.studio-v3 .video-uploader{grid-template-columns:1fr}
  .studio-v3 .cover-preview-frame{max-width:240px}
  .studio-v3 .video-preview-frame{min-height:260px}
  .studio-v3 .gallery-upload-grid{grid-template-columns:1fr}
  .studio-v3 .social-preview-layout{grid-template-columns:1fr}
  .studio-v3 .variant-options{grid-template-columns:1fr}
}
@media(max-width:600px){
  .studio-v3 .editor-command-bar{padding:16px}
  .studio-v3 .editor-command-title h1{font-size:29px}
  .studio-v3 .editor-action-buttons{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .studio-v3 .editor-action-buttons .btn{width:100%;justify-content:center}
  .studio-v3 .editor-action-buttons .btn-primary{grid-column:1/-1}
  .studio-v3 .editor-panel-heading{gap:11px;padding:19px 16px}
  .studio-v3 .editor-panel-heading>span{min-width:32px;height:32px}
  .studio-v3 .editor-panel-heading h2{font-size:21px}
  .studio-v3 .editor-panel-heading p{font-size:12.5px}
  .studio-v3 .editor-form .field-group,.studio-v3 .editor-section{padding:22px 16px}
  .studio-v3 .field-group-head{grid-template-columns:38px minmax(0,1fr);gap:10px}
  .studio-v3 .field-group-head--action{grid-template-columns:38px minmax(0,1fr)}
  .studio-v3 .field-group-head--action>.switch-label{grid-column:1/-1;justify-self:start;margin-left:48px}
  .studio-v3 .field-group-head>span{width:38px;height:38px}
  .studio-v3 .field-group-head h3{font-size:16px}
  .studio-v3 .form-grid--editor{grid-template-columns:1fr;gap:16px}
  .studio-v3 .form-grid--editor>*{grid-column:1!important}
  .studio-v3 .editor-local-nav{margin:16px 16px 0;overflow-x:auto;overscroll-behavior-x:contain}
  .studio-v3 .editor-local-nav button{min-width:max-content;padding-inline:14px}
  .studio-v3 .gallery-manager-head{align-items:flex-start;flex-direction:column}
  .studio-v3 .gallery-uploader{grid-template-columns:104px minmax(0,1fr);grid-template-areas:"image actions" "image fields" "status status"}
  .studio-v3 .gallery-uploader>img,.studio-v3 .gallery-empty-preview{width:104px;height:132px}
  .studio-v3 .gallery-card-actions{display:grid;grid-template-columns:1fr}
  .studio-v3 .gallery-card-actions .btn{width:100%;justify-content:center}
  .studio-v3 .focal-point-grid{width:120px;grid-template-columns:repeat(3,36px);gap:4px}
  .studio-v3 .focal-point-grid button{width:36px;height:32px;min-height:32px}
  .studio-v3 .active-theme-summary{grid-template-columns:72px minmax(0,1fr)}
  .studio-v3 .active-theme-summary img{width:72px;height:92px}
  .studio-v3 .active-theme-summary>.plan-pill{grid-column:2;justify-self:start}
  .studio-v3 .section-sort-item{grid-template-columns:34px minmax(0,1fr) auto}
  .studio-v3 .social-preview-card{max-width:420px}
  .studio-v3 .preview-canvas{min-height:540px;padding:12px}
  .studio-v3 .preview-device-shell{height:620px;min-height:500px}
}
@media(max-width:390px){
  .studio-v3 .editor-action-buttons{grid-template-columns:1fr}
  .studio-v3 .editor-action-buttons .btn-primary{grid-column:auto}
  .studio-v3 .gallery-uploader{grid-template-columns:1fr;grid-template-areas:"image" "actions" "fields" "status"}
  .studio-v3 .gallery-uploader>img,.studio-v3 .gallery-empty-preview{width:100%;height:220px}
  .studio-v3 .gallery-card-actions{grid-template-columns:1fr 1fr}
  .studio-v3 .form-field__footer{display:grid;gap:4px}
}

/* Editor v3.2 accessibility floor */
.studio-v3 .form-field__required,
.studio-v3 .form-field__optional,
.studio-v3 .form-counter,
.studio-v3 .preview-title .panel-kicker{font-size:12px}
.studio-v3 .publish-readiness__issues button{min-height:44px}

/* Editor final layout corrections */
.studio-v3 .editor-panel.editor-form-panel {
  display: block;
  grid-template-columns: none;
}
.studio-v3 .editor-icon-tabs {
  width: 100%;
  max-width: 100%;
  overflow: visible;
}
.studio-v3 .preview-toolbar {
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.studio-v3 .preview-title {
  display: grid;
  align-content: center;
  gap: 2px;
  min-width: 0;
  padding: 0;
}
.studio-v3 .preview-title > * {
  min-width: 0;
}
.studio-v3 .preview-toolbar-actions {
  margin-left: auto;
  flex: 0 0 auto;
}
@media (max-width: 760px) {
  .studio-v3 .preview-toolbar {
    align-items: flex-start;
  }
  .studio-v3 .preview-toolbar-actions {
    width: 100%;
    margin-left: 0;
  }
}

/* Editor section navigation must never truncate labels. */
@media (min-width: 821px) {
  .studio-v3 .editor-icon-tabs {
    grid-template-columns: none;
    grid-auto-flow: column;
    grid-auto-columns: minmax(104px, 1fr);
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    scrollbar-color: #d8c7c1 transparent;
    overscroll-behavior-x: contain;
  }
  .studio-v3 .editor-icon-tabs button {
    min-width: 104px;
    padding-inline: 10px;
  }
  .studio-v3 .editor-tab-label {
    overflow: visible;
    text-overflow: clip;
  }
}

/* Keep all seven editor sections visible on standard desktop widths. */
@media (min-width: 821px) {
  .studio-v3 .editor-icon-tabs {
    grid-template-columns: repeat(7, minmax(0, 1fr));
    grid-auto-flow: row;
    grid-auto-columns: auto;
    overflow: visible;
  }
  .studio-v3 .editor-icon-tabs button {
    min-width: 0;
    gap: 4px;
    padding-inline: 5px;
    font-size: 11px;
  }
  .studio-v3 .editor-tab-icon {
    width: 18px;
    height: 18px;
    flex-basis: 18px;
  }
  .studio-v3 .editor-tab-icon svg {
    width: 17px;
    height: 17px;
  }
  .studio-v3 .editor-tab-label {
    min-width: 0;
    overflow: visible;
    text-overflow: clip;
  }
}

/* Override the legacy icon-only rail dimensions after switching to labeled tabs. */
@media (min-width: 821px) {
  .studio-v3 .editor-icon-tabs button {
    width: 100%;
    height: auto;
    min-width: 0;
    min-height: 50px;
    display: flex;
  }
}

/* ========================================================================
   Momeniva Editor UX v3.2.0 — final validation and mobile interaction pass
   ======================================================================== */
.studio-v3 .editor-tab-progress.has-issues,
.studio-v3 .editor-icon-tabs button.has-issues:not(.active) .editor-tab-progress{
  background:#f7dedf;
  color:#9c3543;
}
.studio-v3 .editor-icon-tabs button.active .editor-tab-progress.has-issues{
  background:rgba(255,255,255,.92);
  color:#9c3543;
}
.studio-v3 .form-field.is-invalid .form-control,
.studio-v3 [data-media-box].is-invalid{
  border-color:#b33f48;
}
.studio-v3 .form-field.is-invalid .form-control{
  background:#fffafa;
  box-shadow:0 0 0 3px rgba(179,63,72,.11);
}
.studio-v3 .form-error{
  margin:0;
  color:#a53742;
  font:600 12.5px/1.5 "DM Sans",sans-serif;
}
.studio-v3 [data-media-box].is-invalid>.form-error{
  grid-column:1/-1;
}
.studio-v3 .form-field,
.studio-v3 [data-media-box],
.studio-v3 .editor-panel-heading{
  scroll-margin-top:118px;
}
.studio-v3 .editor-icon-tabs button{
  font-size:12px;
}
.studio-v3 .social-preview-card span,
.studio-v3 .social-preview-card p,
.studio-v3 .preview-link span,
.studio-v3 .preview-link code,
.studio-v3 .section-sort-item small,
.studio-v3 .gift-account-card>header small{
  font-size:12px;
}
.studio-v3 .editor-local-nav button,
.studio-v3 .editor-filter-chips button{
  min-height:44px;
}
.studio-v3 .focal-point-grid button{
  min-width:40px;
  min-height:40px;
}

@media(max-width:760px){
  /* Autosave is always active; keep actions in document flow so they never cover fields. */
  .studio-v3 .editor-command-bottomline .editor-action-buttons,
  .studio-v3 .editor-action-buttons{
    position:static;
    inset:auto;
    z-index:auto;
    width:100%;
    max-width:none;
    padding:0;
    border:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
  }
  .studio-v3 .editor-command-bottomline .editor-action-buttons{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .studio-v3 .editor-command-bottomline .editor-action-buttons>a{
    display:none;
  }
  .studio-v3 .editor-command-bottomline .editor-action-buttons .btn{
    width:100%;
    min-height:46px;
    justify-content:center;
  }
  .studio-v3 .editor-mobile-mode{
    position:sticky;
    top:76px;
    z-index:34;
    margin:0 0 12px;
    background:rgba(250,246,243,.96);
    backdrop-filter:blur(14px);
  }
  .studio-v3 .editor-mobile-nav{
    position:sticky;
    top:137px;
    z-index:33;
    padding:10px;
    border:1px solid var(--ui-border);
    border-radius:14px;
    background:rgba(255,252,249,.97);
    box-shadow:0 8px 20px rgba(74,43,52,.07);
    backdrop-filter:blur(14px);
  }
  .studio-v3 .editor-form{
    padding-bottom:max(22px,env(safe-area-inset-bottom));
  }
  .studio-v3 .form-field,
  .studio-v3 [data-media-box],
  .studio-v3 .editor-panel-heading{
    scroll-margin-top:214px;
  }
  .studio-v3 .focal-point-grid{
    width:140px;
    grid-template-columns:repeat(3,44px);
    gap:4px;
  }
  .studio-v3 .focal-point-grid button{
    width:44px;
    height:44px;
    min-width:44px;
    min-height:44px;
  }
}
@media(max-width:390px){
  .studio-v3 .editor-command-bottomline .editor-action-buttons{
    grid-template-columns:1fr;
  }
}
.studio-v3 .form-field--switch{gap:0}
.studio-v3 .editor-schema-switch{margin:0}
.studio-v3 .editor-radio-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.studio-v3 .editor-radio-card{min-height:48px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--ui-border);border-radius:12px;background:#fffdfb;cursor:pointer}
.studio-v3 .editor-radio-card:has(input:checked){border-color:var(--ui-primary);background:var(--ui-primary-soft)}
.studio-v3 .editor-radio-card input{width:18px;height:18px;margin:0;accent-color:var(--ui-primary)}
.studio-v3 .editor-radio-card strong{font:650 13px/1.35 "DM Sans",sans-serif}

/* ===== Experience improvements P1-P2 ===== */
.guided-onboarding{
  display:grid;gap:16px;padding:22px;border:1px solid var(--ui-border);border-radius:20px;
  background:linear-gradient(135deg,#fffdfb 0%,#fbf1ee 100%);box-shadow:var(--ui-shadow-sm);margin-bottom:20px;
}
.guided-onboarding__head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center}
.guided-onboarding__head .onboarding-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--ui-primary-soft);color:var(--ui-primary)}
.guided-onboarding__head h2{margin:2px 0 3px;font:700 20px/1.25 "DM Sans",sans-serif;color:var(--ui-text)}
.guided-onboarding__head p{margin:0;color:var(--ui-muted);font-size:13px}
.guided-onboarding__head>strong{font:700 24px/1 "DM Sans",sans-serif;color:var(--ui-primary)}
.guided-next-step{display:grid;grid-template-columns:44px minmax(0,1fr) 24px;gap:12px;align-items:center;padding:15px;border:1px solid rgba(136,65,87,.2);border-radius:15px;background:#fff;color:var(--ui-text);text-decoration:none}
.guided-next-step>span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--ui-primary);color:#fff}
.guided-next-step small{display:block;color:var(--ui-primary);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.guided-next-step strong{display:block;margin-top:2px;font-size:15px}
.guided-next-step p{margin:2px 0 0;color:var(--ui-muted);font-size:13px}
.guided-next-step>svg{color:var(--ui-primary)}
.guided-onboarding__all>summary{cursor:pointer;color:var(--ui-primary);font-size:13px;font-weight:700;list-style:none}
.guided-onboarding__all>summary::-webkit-details-marker{display:none}
.onboarding-steps-guided{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.onboarding-steps-guided a{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:start;min-height:82px;padding:12px;border:1px solid var(--ui-border);border-radius:13px;background:#fff;text-decoration:none;color:var(--ui-text)}
.onboarding-steps-guided a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f6ece9;color:var(--ui-primary)}
.onboarding-steps-guided a.done{background:#f7fbf7;border-color:#d8e7d8}
.onboarding-steps-guided a.done>span{background:#e5f2e8;color:#36715a}
.onboarding-steps-guided strong{display:block;font-size:13px;line-height:1.35}
.onboarding-steps-guided small{display:block;margin-top:3px;color:var(--ui-muted);font-size:12px;line-height:1.45}

.dashboard-theme-hub{display:grid;gap:20px;margin:20px 0;padding:22px}
.dashboard-theme-head,.subsection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.dashboard-theme-head h2,.subsection-heading h3{margin:3px 0 4px;font-family:"DM Sans",sans-serif;color:var(--ui-text)}
.dashboard-theme-head h2{font-size:22px}.subsection-heading h3{font-size:17px}
.dashboard-theme-head p,.subsection-heading p{margin:0;color:var(--ui-muted);font-size:13px}
.theme-event-switch{display:grid;gap:5px;min-width:220px;color:var(--ui-muted);font-size:12px;font-weight:700}
.theme-event-switch select{min-height:44px;border:1px solid var(--ui-border);border-radius:11px;background:#fff;padding:0 12px;color:var(--ui-text);font-size:14px}
.active-theme-card{display:grid;grid-template-columns:112px minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px;border:1px solid var(--ui-border);border-radius:17px;background:linear-gradient(135deg,#fff 0%,#fbf4f0 100%)}
.active-theme-card>img{width:112px;height:86px;object-fit:cover;border-radius:12px;border:1px solid var(--ui-border)}
.active-theme-card h3{margin:2px 0 4px;font:700 18px/1.25 "DM Sans",sans-serif}
.active-theme-card p{margin:0;color:var(--ui-muted);font-size:13px}
.compact-entitlement{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:9px}.compact-entitlement small{color:var(--ui-muted);font-size:12px}
.active-theme-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.recommended-theme-area{display:grid;gap:13px;padding-top:18px;border-top:1px solid var(--ui-border)}
.subsection-heading>a{color:var(--ui-primary);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.dashboard-theme-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dashboard-theme-card{display:grid;grid-template-rows:150px auto auto;overflow:hidden;border:1px solid var(--ui-border);border-radius:15px;background:#fff}
.dashboard-theme-card>img{width:100%;height:150px;object-fit:cover}
.dashboard-theme-card>div{padding:12px}.dashboard-theme-card>div+div{padding-top:0}
.dashboard-theme-card span{color:var(--ui-primary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.dashboard-theme-card h4{margin:3px 0;font-size:15px}.dashboard-theme-card p{margin:0;color:var(--ui-muted);font-size:12.5px}
.theme-card-actions{display:flex;align-items:center;gap:8px}.theme-card-actions form{margin:0}.theme-card-actions .icon-button{font-size:18px}.icon-button.is-favorite{color:#a93659;background:#fae8ee;border-color:#e8b9c8}
.theme-empty-state{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center;padding:15px;border:1px dashed var(--ui-border-strong);border-radius:14px;background:#fffdfb}
.theme-empty-state>svg{width:28px;color:var(--ui-primary)}.theme-empty-state h4{margin:0 0 3px;font-size:15px}.theme-empty-state p{margin:0;color:var(--ui-muted);font-size:13px}

.theme-picker-dialog{width:min(1100px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:22px;background:#fff;box-shadow:0 30px 90px rgba(50,31,38,.25)}
.theme-picker-dialog::backdrop{background:rgba(46,29,36,.48);backdrop-filter:blur(4px)}
.theme-picker-shell{display:grid;grid-template-rows:auto auto minmax(0,1fr);max-height:calc(100dvh - 32px)}
.theme-picker-shell>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:22px;border-bottom:1px solid var(--ui-border)}
.theme-picker-shell>header h2{margin:3px 0 4px;font:700 22px/1.25 "DM Sans",sans-serif}.theme-picker-shell>header p{margin:0;color:var(--ui-muted);font-size:13px}
.theme-picker-filters{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:10px;padding:14px 22px;border-bottom:1px solid var(--ui-border);background:#fffaf7}
.theme-picker-filters label{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;min-height:46px;padding:0 12px;border:1px solid var(--ui-border);border-radius:12px;background:#fff}
.theme-picker-filters input,.theme-picker-filters select{min-height:46px;border:1px solid var(--ui-border);border-radius:12px;background:#fff;padding:0 12px;font-size:14px;color:var(--ui-text)}
.theme-picker-filters label input{border:0;padding:0;min-height:auto;outline:0}
.theme-picker-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;overflow:auto;padding:20px}
.theme-picker-card{display:grid;grid-template-rows:190px auto auto;border:1px solid var(--ui-border);border-radius:16px;overflow:hidden;background:#fff}
.theme-picker-visual{position:relative}.theme-picker-visual img{width:100%;height:190px;object-fit:cover}.theme-picker-visual span{position:absolute;left:10px;top:10px;padding:5px 8px;border-radius:999px;background:rgba(255,255,255,.9);font-size:11px;font-weight:700}
.theme-picker-copy{padding:13px}.theme-picker-copy h3{margin:0 0 3px;font:700 16px/1.3 "DM Sans",sans-serif}.theme-picker-copy p{margin:0;color:var(--ui-muted);font-size:12.5px}.theme-picker-copy small{display:block;margin-top:7px;color:var(--ui-primary);font-weight:700}
.theme-picker-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;padding:0 13px 13px;align-items:center}.theme-picker-actions form{margin:0}.theme-picker-actions .btn{width:100%}
.theme-picker-empty{display:grid;place-items:center;align-content:center;gap:8px;min-height:340px;padding:30px;text-align:center}.theme-picker-empty>svg{width:42px;color:var(--ui-primary)}.theme-picker-empty h3{margin:0}.theme-picker-empty p{max-width:520px;margin:0 0 8px;color:var(--ui-muted)}

.context-help-drawer{position:fixed;z-index:330;top:0;right:0;width:min(390px,calc(100vw - 24px));height:100dvh;padding:22px;background:#fffdfb;border-left:1px solid var(--ui-border);box-shadow:-20px 0 50px rgba(55,35,43,.16);transform:translateX(105%);transition:transform .24s ease;overflow:auto}
.context-help-drawer.open{transform:translateX(0)}
.context-help-backdrop{position:fixed;z-index:320;inset:0;background:rgba(45,28,35,.36);opacity:0;pointer-events:none;transition:opacity .2s ease}.context-help-backdrop.open{opacity:1;pointer-events:auto}
.context-help-head{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:12px;align-items:start;padding-bottom:18px;border-bottom:1px solid var(--ui-border)}
.context-help-head h2{margin:4px 0 5px;font:700 20px/1.3 "DM Sans",sans-serif}.context-help-head p{margin:0;color:var(--ui-muted);font-size:13px;line-height:1.55}
.context-help-actions{display:grid;gap:9px;padding-top:18px}.context-help-open{overflow:hidden}

.help-search-panel{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(320px,1.3fr);gap:20px;align-items:center;padding:20px;margin-bottom:18px;border:1px solid var(--ui-border);border-radius:18px;background:linear-gradient(135deg,#fff 0%,#fbf1ee 100%)}
.help-search-panel>div{display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:center}.help-search-panel h2{margin:0 0 3px;font:700 18px/1.3 "DM Sans",sans-serif}.help-search-panel p{margin:0;color:var(--ui-muted);font-size:13px}
.help-search-control{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px;align-items:center;min-height:50px;padding:0 14px;border:1px solid var(--ui-border-strong);border-radius:13px;background:#fff}.help-search-control input{width:100%;border:0;outline:0;background:transparent;font-size:15px}
.help-progress-card{display:grid;gap:14px;padding:20px;margin-bottom:18px;border:1px solid var(--ui-border);border-radius:18px;background:#fff}
.help-progress-card>header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.help-progress-card h2{margin:3px 0;font:700 19px/1.3 "DM Sans",sans-serif}.help-progress-card p{margin:0;color:var(--ui-muted);font-size:13px}.help-progress-card>header>a{color:var(--ui-primary);font-weight:700;font-size:13px;text-decoration:none}
.help-progress-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.help-progress-list a{display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;padding:10px;border:1px solid var(--ui-border);border-radius:12px;color:var(--ui-text);text-decoration:none}.help-progress-list a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f7ece9;color:var(--ui-primary)}.help-progress-list a.done{background:#f7fbf7}.help-progress-list a.done>span{background:#e5f2e8;color:#36715a}.help-progress-list strong{display:block;font-size:12.5px}.help-progress-list small{display:block;margin-top:2px;color:var(--ui-muted);font-size:11.5px;line-height:1.4}
.help-task-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:22px}.help-task-grid a{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;padding:12px;border:1px solid var(--ui-border);border-radius:13px;background:#fff;color:var(--ui-text);text-decoration:none}.help-task-grid>a>svg{width:22px;color:var(--ui-primary)}.help-task-grid strong{display:block;font-size:13px}.help-task-grid small{display:block;margin-top:2px;color:var(--ui-muted);font-size:11.5px;line-height:1.35}
.help-layout-tasked .help-section[hidden]{display:none}.help-actions-inline{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.help-section details{border-top:1px solid var(--ui-border);padding:12px 0}.help-section details summary{cursor:pointer;font-weight:700;font-size:14px}.help-section details p{margin:8px 0 0;color:var(--ui-muted)}
.help-no-results{display:grid;place-items:center;padding:50px 20px;text-align:center}.help-no-results>svg{width:38px;color:var(--ui-primary)}.help-no-results h2{margin:10px 0 4px}.help-no-results p{margin:0;color:var(--ui-muted)}
.help-popular-list{display:grid;gap:6px}.help-popular-list a{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--ui-border);color:var(--ui-text);text-decoration:none;font-size:13px}.help-popular-list a:last-child{border-bottom:0}.help-popular-list small{color:var(--ui-primary);font-weight:700}

.guest-journey-panel{display:grid;gap:18px}.guest-journey{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;align-items:stretch}
.guest-journey-stage{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);gap:9px;align-items:center;padding:12px 28px 12px 10px;border:1px solid var(--ui-border);border-right:0;background:#fff}.guest-journey-stage:first-child{border-radius:13px 0 0 13px}.guest-journey-stage:last-child{border-right:1px solid var(--ui-border);border-radius:0 13px 13px 0}.guest-journey-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:var(--ui-primary-soft);color:var(--ui-primary)}.guest-journey-stage small{display:block;color:var(--ui-muted);font-size:11.5px}.guest-journey-stage strong{display:block;font-size:22px;line-height:1.1}.guest-journey-stage p{margin:3px 0 0;color:var(--ui-muted);font-size:11px;line-height:1.35}.guest-journey-stage>i{position:absolute;right:5px;top:50%;transform:translateY(-50%);color:var(--ui-primary)}.guest-journey-stage:last-child>i{display:none}
.journey-insight{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px;border-radius:13px;background:#fbf1ee}.journey-insight>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#fff;color:var(--ui-primary)}.journey-insight h3{margin:0 0 3px;font-size:14px}.journey-insight p{margin:0;color:var(--ui-muted);font-size:12.5px}.analytics-next-actions{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;margin-top:24px}.analytics-next-actions h3{margin:3px 0;font-size:16px}.analytics-next-actions p{margin:0;color:var(--ui-muted);font-size:13px}

.media-status.uploading,.media-status.processing{color:#895b24}.media-status.success{color:#36715a}.media-status.error{color:#b33f48}
[data-media-box][data-upload-state="uploading"],[data-media-box][data-upload-state="processing"]{outline:2px solid rgba(165,106,36,.16);outline-offset:2px}

@media(max-width:1100px){
  .onboarding-steps-guided,.help-progress-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-theme-grid,.theme-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .help-task-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .guest-journey{grid-template-columns:1fr}.guest-journey-stage{border-right:1px solid var(--ui-border);border-bottom:0;border-radius:0;padding-right:12px}.guest-journey-stage:first-child{border-radius:13px 13px 0 0}.guest-journey-stage:last-child{border-bottom:1px solid var(--ui-border);border-radius:0 0 13px 13px}.guest-journey-stage>i{right:auto;left:29px;top:auto;bottom:-13px;transform:rotate(90deg);z-index:2;background:#fff}
}
@media(max-width:760px){
  .guided-onboarding{padding:16px}.guided-onboarding__head{grid-template-columns:44px minmax(0,1fr)}.guided-onboarding__head>strong{grid-column:2;font-size:20px}.guided-next-step{grid-template-columns:42px minmax(0,1fr)}.guided-next-step>svg{display:none}.onboarding-steps-guided{grid-template-columns:1fr}
  .dashboard-theme-head,.subsection-heading{display:grid;grid-template-columns:1fr}.theme-event-switch{min-width:0}.active-theme-card{grid-template-columns:82px minmax(0,1fr)}.active-theme-card>img{width:82px;height:72px}.active-theme-actions{grid-column:1/-1;justify-content:stretch}.active-theme-actions .btn{flex:1}.dashboard-theme-grid{grid-template-columns:1fr}.theme-empty-state{grid-template-columns:40px minmax(0,1fr)}.theme-empty-state .btn{grid-column:1/-1}
  .theme-picker-dialog{width:100vw;max-height:100dvh;height:100dvh;border-radius:0}.theme-picker-shell{max-height:100dvh;height:100dvh}.theme-picker-shell>header{padding:16px}.theme-picker-filters{grid-template-columns:1fr;padding:12px 16px}.theme-picker-grid{grid-template-columns:1fr;padding:14px}.theme-picker-card{grid-template-rows:170px auto auto}.theme-picker-visual img{height:170px}.theme-picker-actions{grid-template-columns:1fr auto}.theme-picker-actions form:nth-of-type(1){grid-column:1}.theme-picker-actions form:nth-of-type(2){grid-column:2;grid-row:1}.theme-picker-actions>a{grid-column:1/-1}
  .help-search-panel{grid-template-columns:1fr;padding:16px}.help-progress-card>header{display:grid}.help-progress-list,.help-task-grid{grid-template-columns:1fr}.help-task-grid a{min-height:64px}
  .journey-insight,.analytics-next-actions{grid-template-columns:42px minmax(0,1fr)}.journey-insight .btn,.analytics-next-actions .btn{grid-column:1/-1;width:100%}
  .topbar-help{display:grid}
}
@media(max-width:430px){
  .active-theme-actions{display:grid;grid-template-columns:1fr}.dashboard-theme-hub{padding:15px}.context-help-drawer{width:100vw;padding:18px}
}

/* Experience v3.3 final geometry and readability guards */
html,body{overflow-x:clip}
.subsection-heading>a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;margin:-8px;color:var(--ui-primary);font-size:13px;font-weight:700;text-decoration:none}
.guest-journey,.guest-journey-stage{min-width:0;max-width:100%}
.guest-journey{width:100%;overflow:hidden}
.guest-journey-stage small,.guest-journey-stage p{font-size:12px}
.context-help-drawer{pointer-events:none;visibility:hidden}
.context-help-drawer.open{pointer-events:auto;visibility:visible}
.builder-theme-empty{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:14px;align-items:center;padding:20px;border:1px dashed var(--ui-border-strong);border-radius:16px;background:#fffaf7}.builder-theme-empty>svg{width:28px;color:var(--ui-primary)}.builder-theme-empty h3{margin:0 0 4px;font:700 16px/1.35 "DM Sans",sans-serif}.builder-theme-empty p{margin:0;color:var(--ui-muted);font-size:13px;line-height:1.55}@media(max-width:760px){.builder-theme-empty{grid-template-columns:44px minmax(0,1fr)}.builder-theme-empty .btn{grid-column:1/-1;width:100%}}

/* ===== Desktop refinement v3.3.1 ===== */
/* Analytics: give the chart its own row and make the guest journey a full-width, readable sequence. */
.studio-v3 .analytics-grid--single{grid-template-columns:1fr}
.studio-v3 .guest-journey-panel{display:grid;gap:20px;margin-top:20px;padding:24px;overflow:hidden}
.studio-v3 .guest-journey-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);gap:28px;align-items:end}
.studio-v3 .guest-journey-heading h2{margin:4px 0 0;font:700 24px/1.22 "DM Sans",sans-serif;color:var(--ui-text)}
.studio-v3 .guest-journey-heading>p{margin:0;color:var(--ui-muted);font-size:13px;line-height:1.65}
.studio-v3 .guest-journey{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;overflow:visible}
.studio-v3 .guest-journey-stage{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);gap:12px;align-items:center;min-height:112px;padding:16px 28px 16px 14px;border:1px solid var(--ui-border);border-radius:15px;background:linear-gradient(145deg,#fff 0%,#fff9f6 100%);box-shadow:none}
.studio-v3 .guest-journey-stage:first-child,.studio-v3 .guest-journey-stage:last-child{border-radius:15px;border-right:1px solid var(--ui-border)}
.studio-v3 .guest-journey-icon{width:46px;height:46px;border-radius:13px}
.studio-v3 .guest-journey-copy{min-width:0}
.studio-v3 .guest-journey-stage small{display:block;color:var(--ui-muted);font-size:12px;line-height:1.35;white-space:normal}
.studio-v3 .guest-journey-stage strong{display:block;margin-top:4px;font:700 27px/1 "DM Sans",sans-serif;color:var(--ui-text)}
.studio-v3 .guest-journey-stage p{margin:6px 0 0;color:var(--ui-muted);font-size:12px;line-height:1.4}
.studio-v3 .guest-journey-stage>i{right:-11px;z-index:2;display:grid;place-items:center;width:22px;height:22px;border:1px solid var(--ui-border);border-radius:50%;background:#fff;color:var(--ui-primary)}
.studio-v3 .guest-journey-stage>i svg{width:13px;height:13px}
.studio-v3 .journey-insight{display:none}

/* Gallery: stable card geometry, compact native focal select, and actions that never collide. */
.studio-v3 .gallery-manager{gap:16px}
.studio-v3 .gallery-manager-head{align-items:center;padding-bottom:2px}
.studio-v3 .gallery-manager-head>div strong{font-size:17px}
.studio-v3 .gallery-manager-head>label.btn{flex:0 0 auto;min-height:44px}
.studio-v3 .gallery-upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.studio-v3 .gallery-uploader{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr);grid-template-areas:"image actions" "image fields" "status status";gap:12px 16px;align-items:start;min-height:0;padding:14px;border:1px solid var(--ui-border);border-radius:17px;background:#fff;overflow:visible}
.studio-v3 .gallery-uploader>img,.studio-v3 .gallery-uploader>.gallery-empty-preview{grid-area:image;width:150px;height:188px;border-radius:13px;object-fit:cover;background:#eee5df}
.studio-v3 .gallery-drag-handle{top:8px;left:8px;width:36px;height:36px;border:1px solid rgba(125,91,102,.12)}
.studio-v3 .gallery-card-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;padding:0}
.studio-v3 .gallery-card-actions .btn{flex:0 1 auto;min-width:0;min-height:42px;padding-inline:12px;font-size:12.5px}
.studio-v3 .gallery-card-fields{grid-area:fields;display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;align-items:end;min-width:0}
.studio-v3 .gallery-card-fields .form-field{gap:7px;min-width:0}
.studio-v3 .gallery-card-fields .form-label{font-size:13px}
.studio-v3 .gallery-card-fields .form-field__optional{font-size:11px}
.studio-v3 .gallery-uploader .gallery-alt,.studio-v3 .gallery-uploader .gallery-focal{position:static;width:100%;height:46px;min-height:46px;margin:0;border-radius:11px;font-size:14px}
.studio-v3 .gallery-uploader .focal-point-grid{display:none}
.studio-v3 .gallery-uploader>.media-status{grid-area:status;min-height:0;padding-top:0}
.studio-v3 [data-add-gallery]{min-height:48px;border:1px solid var(--ui-border);background:#fbf4f0}

/* Background video: do not render an empty black player; reveal preview only after a successful upload. */
.studio-v3 .video-uploader{grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:24px;align-items:stretch;padding:18px;border:1px solid var(--ui-border);border-radius:18px;background:linear-gradient(145deg,#fff 0%,#fcf6f3 100%)}
.studio-v3 .video-uploader.is-empty{grid-template-columns:1fr;padding:20px}
.studio-v3 .video-uploader.is-empty .video-preview-frame{display:none}
.studio-v3 .video-preview-frame{min-height:230px;aspect-ratio:16/10;border-radius:15px;background:#211c20}
.studio-v3 .video-preview-frame[hidden]{display:none}
.studio-v3 .video-preview-frame video{display:block;width:100%;height:100%;min-height:230px;object-fit:cover;border-radius:15px}
.studio-v3 .video-media-copy{display:grid;align-content:start;gap:14px;min-width:0}
.studio-v3 .video-media-copy>div:first-child>strong{display:block;margin:4px 0 5px;font:700 20px/1.3 "DM Sans",sans-serif;color:var(--ui-text)}
.studio-v3 .video-media-copy>div:first-child>p{max-width:620px;margin:0;color:var(--ui-muted);font-size:13px;line-height:1.6}
.studio-v3 .video-upload-placeholder{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;min-height:82px;padding:14px;border:1px dashed var(--ui-border-strong);border-radius:14px;background:#fffaf7;color:var(--ui-muted)}
.studio-v3 .video-upload-placeholder[hidden]{display:none}
.studio-v3 .video-upload-placeholder>svg{width:25px;color:var(--ui-primary)}
.studio-v3 .video-upload-placeholder strong,.studio-v3 .video-upload-placeholder span{display:block}
.studio-v3 .video-upload-placeholder strong{color:var(--ui-text);font-size:14px}
.studio-v3 .video-upload-placeholder span{margin-top:3px;font-size:12.5px;line-height:1.45}
.studio-v3 .video-media-copy .media-action-row{justify-content:flex-start}

/* Settings: clear field hierarchy and stable desktop alignment. */
.studio-v3 .settings-layout{grid-template-columns:210px minmax(0,980px);gap:28px;align-items:start}
.studio-v3 .settings-content{gap:20px}
.studio-v3 .settings-card{padding:28px}
.studio-v3 .settings-card-head{align-items:flex-start;margin-bottom:24px}
.studio-v3 .settings-card h2{font:700 23px/1.25 "DM Sans",sans-serif;color:var(--ui-text)}
.studio-v3 .settings-card-head p{font-size:13px;line-height:1.55}
.studio-v3 .settings-form{display:grid;gap:20px}
.studio-v3 .settings-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;align-items:start}
.studio-v3 .settings-field,.studio-v3 .settings-field-static{display:grid;align-content:start;gap:8px;min-width:0;margin:0}
.studio-v3 .settings-field>span,.studio-v3 .settings-field-label{font-size:14px;font-weight:700;color:var(--ui-text)}
.studio-v3 .settings-field input{width:100%;min-height:50px;padding:0 14px;border:1px solid var(--ui-border);border-radius:12px;background:#fff;font-size:15px;color:var(--ui-text)}
.studio-v3 .settings-field small{min-height:20px;margin:0;color:var(--ui-muted);font-size:12.5px;line-height:1.5}
.studio-v3 .settings-field-static .verification-status{min-height:50px;height:auto;border-radius:12px}
.studio-v3 .settings-form>.btn{justify-self:start;min-width:180px}
.studio-v3 .settings-password-layout{display:grid;gap:18px}
.studio-v3 .settings-password-current{max-width:460px}
.studio-v3 .settings-password-new{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.studio-v3 .settings-save-action{min-height:44px;background:#fff;color:var(--ui-primary);border:1px solid var(--ui-primary)}
.studio-v3 .settings-save-action:hover{background:var(--ui-primary-soft)}

/* Revision and section ordering controls. */
.studio-v3 .revision-row{min-height:64px;padding:12px 14px;border:1px solid var(--ui-border);background:#fff}
.studio-v3 .revision-restore-btn{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding-inline:14px;border:1px solid var(--ui-primary);background:#fff;color:var(--ui-primary);opacity:1;visibility:visible}
.studio-v3 .revision-restore-btn:hover{background:var(--ui-primary);color:#fff}
.studio-v3 .revision-restore-btn svg{width:16px;height:16px}
.studio-v3 .section-sort-item .compact-switch{display:inline-grid;grid-template-columns:44px;min-width:44px;width:44px;max-width:44px;padding:0;margin:0;overflow:visible}
.studio-v3 .section-sort-item .compact-switch>input[type="checkbox"]{position:absolute!important;width:1px!important;height:1px!important;clip-path:inset(50%)!important;opacity:0!important;pointer-events:none}
.studio-v3 .section-sort-item .compact-switch>span{display:block;width:44px;height:26px;border-radius:999px;background:#cfc5c9;position:relative;transition:.2s}
.studio-v3 .section-sort-item .compact-switch>span::after{content:"";position:absolute;top:4px;left:4px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(45,28,35,.18);transition:.2s}
.studio-v3 .section-sort-item .compact-switch>input:checked+span{background:var(--ui-primary)}
.studio-v3 .section-sort-item .compact-switch>input:checked+span::after{transform:translateX(18px)}
.studio-v3 .section-sort-item .compact-switch>.sr-only{display:none!important}

/* Sidebar package card: compact by default and expandable on demand. */
.studio-v3 .sidebar-package-card{flex:0 0 auto;margin-top:10px;padding:0;border:1px solid rgba(255,255,255,.18);border-radius:15px;background:linear-gradient(145deg,#7d3b51,#9a5166);color:#fff;box-shadow:var(--ui-shadow-sm);overflow:hidden}
.studio-v3 .sidebar-package-card>summary{display:grid;grid-template-columns:38px minmax(0,1fr) 22px;gap:10px;align-items:center;min-height:60px;padding:10px 12px;cursor:pointer;list-style:none}
.studio-v3 .sidebar-package-card>summary::-webkit-details-marker{display:none}
.studio-v3 .sidebar-package-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.14);color:#fff}
.studio-v3 .sidebar-package-icon svg{width:19px;height:19px}
.studio-v3 .sidebar-package-summary small,.studio-v3 .sidebar-package-summary strong{display:block;color:#fff}
.studio-v3 .sidebar-package-summary small{font-size:10px;letter-spacing:.08em;opacity:.74}
.studio-v3 .sidebar-package-summary strong{margin-top:2px;font-size:12.5px;line-height:1.35}
.studio-v3 .sidebar-package-chevron{display:grid;place-items:center;color:#fff;transition:transform .2s}
.studio-v3 .sidebar-package-chevron svg{width:17px}
.studio-v3 .sidebar-package-card[open] .sidebar-package-chevron{transform:rotate(180deg)}
.studio-v3 .sidebar-package-details{display:grid;gap:10px;padding:0 12px 12px;border-top:1px solid rgba(255,255,255,.13)}
.studio-v3 .sidebar-package-details p{margin:10px 0 0;color:rgba(255,255,255,.82);font-size:12px;line-height:1.5}
.studio-v3 .sidebar-package-details a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 12px;border-radius:10px;background:rgba(255,255,255,.16);color:#fff;font-size:12px;font-weight:700;text-decoration:none}

@media(max-width:1280px){
  .studio-v3 .guest-journey{grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
  .studio-v3 .guest-journey-stage{min-width:150px}
  .studio-v3 .gallery-card-fields{grid-template-columns:1fr}
}
@media(max-width:1100px){
  .studio-v3 .guest-journey-heading{grid-template-columns:1fr;gap:8px;align-items:start}
  .studio-v3 .guest-journey{grid-template-columns:1fr;overflow:visible;padding:0}
  .studio-v3 .guest-journey-stage{grid-template-columns:46px minmax(0,1fr);min-width:0;border:1px solid var(--ui-border);border-radius:14px;padding-right:14px}
  .studio-v3 .guest-journey-stage:first-child,.studio-v3 .guest-journey-stage:last-child{border-radius:14px}
  .studio-v3 .guest-journey-stage>i{right:auto;left:26px;top:auto;bottom:-16px;transform:rotate(90deg)}
  .studio-v3 .gallery-upload-grid{grid-template-columns:1fr}
  .studio-v3 .settings-layout{grid-template-columns:1fr}
  .studio-v3 .settings-password-new{grid-template-columns:1fr}
}
@media(max-width:760px){
  .studio-v3 .guest-journey-panel{padding:18px}
  .studio-v3 .gallery-uploader{grid-template-columns:104px minmax(0,1fr);grid-template-areas:"image actions" "image fields" "status status"}
  .studio-v3 .gallery-uploader>img,.studio-v3 .gallery-uploader>.gallery-empty-preview{width:104px;height:132px}
  .studio-v3 .gallery-card-fields{grid-template-columns:1fr}
  .studio-v3 .gallery-card-actions{display:grid;grid-template-columns:1fr}
  .studio-v3 .gallery-card-actions .btn{width:100%;justify-content:center}
  .studio-v3 .video-uploader,.studio-v3 .video-uploader.is-empty{grid-template-columns:1fr;padding:16px}
  .studio-v3 .settings-card{padding:20px}
  .studio-v3 .settings-profile-grid{grid-template-columns:1fr}
}
@media(max-width:430px){
  .studio-v3 .gallery-uploader{grid-template-columns:1fr;grid-template-areas:"image" "actions" "fields" "status"}
  .studio-v3 .gallery-uploader>img,.studio-v3 .gallery-uploader>.gallery-empty-preview{width:100%;height:220px}
  .studio-v3 .gallery-card-actions{grid-template-columns:1fr 1fr}
}

/* Final gallery density correction for the editor's split desktop canvas. */
.studio-v3 .gallery-upload-grid{grid-template-columns:1fr}
.studio-v3 .gallery-uploader{grid-template-columns:160px minmax(0,1fr);grid-template-areas:"image actions" "image fields" "status status"}
.studio-v3 .gallery-uploader>img,.studio-v3 .gallery-uploader>.gallery-empty-preview{width:160px;height:200px}
.studio-v3 .gallery-card-fields{grid-template-columns:minmax(0,1fr) 170px;gap:14px}
.studio-v3 .form-label-note{margin-left:4px;color:var(--ui-muted);font-size:11px;font-weight:500}
.studio-v3 .video-uploader [data-clear-media][hidden]{display:none!important}
.studio-v3 .revision-row{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:16px}
.studio-v3 .revision-row>.revision-restore-btn{flex:0 0 auto;width:auto!important}
@media(max-width:760px){
  .studio-v3 .gallery-uploader{grid-template-columns:104px minmax(0,1fr);grid-template-areas:"image actions" "image fields" "status status"}
  .studio-v3 .gallery-uploader>img,.studio-v3 .gallery-uploader>.gallery-empty-preview{width:104px;height:132px}
  .studio-v3 .gallery-card-fields{grid-template-columns:1fr}
}
@media(max-width:430px){
  .studio-v3 .gallery-uploader{grid-template-columns:1fr;grid-template-areas:"image" "actions" "fields" "status"}
  .studio-v3 .gallery-uploader>img,.studio-v3 .gallery-uploader>.gallery-empty-preview{width:100%;height:220px}
}


/* v3.3.3 — editor media and settings navigation hotfixes. */
.studio-v3 .settings-content [data-settings-panel][hidden]{display:none}
.studio-v3 .settings-content [data-settings-panel]{min-width:0}
.studio-v3 .settings-nav a.active{background:var(--ui-primary-soft);color:var(--ui-primary)}
.studio-v3 .settings-nav a.active::before{content:"";width:4px;height:22px;border-radius:999px;background:var(--ui-primary);flex:0 0 auto}
.studio-v3 .settings-nav a{display:flex;align-items:center;gap:9px}
.studio-v3 .settings-mobile-selector select{width:100%}

.studio-v3 .video-uploader--compact{display:block;padding:20px}
.studio-v3 .video-uploader--compact .video-media-copy{max-width:760px}
.studio-v3 .video-upload-ready{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;align-items:center;min-height:82px;padding:14px;border:1px solid #c9dfd2;border-radius:14px;background:#f1f8f3;color:#4d6a57}
.studio-v3 .video-upload-ready[hidden]{display:none}
.studio-v3 .video-upload-ready>svg{width:25px;height:25px}
.studio-v3 .video-upload-ready strong,.studio-v3 .video-upload-ready span{display:block}
.studio-v3 .video-upload-ready strong{font-size:14px;color:#315443}
.studio-v3 .video-upload-ready span{margin-top:3px;font-size:12.5px;line-height:1.45}
.studio-v3 .video-uploader--compact .media-action-row{margin-top:2px}

.studio-v3 .cover-uploader{align-items:start}
.studio-v3 .cover-copy{min-width:0}
.studio-v3 .cover-focal-placeholder{display:flex;align-items:center;gap:9px;min-height:46px;padding:11px 13px;border:1px dashed var(--ui-border-strong);border-radius:12px;background:#fffaf7;color:var(--ui-muted);font-size:12.5px;line-height:1.45}
.studio-v3 .cover-focal-placeholder[hidden],.studio-v3 .cover-focal-control[hidden]{display:none}
.studio-v3 .cover-focal-placeholder svg{width:18px;height:18px;flex:0 0 auto;color:var(--ui-primary)}
.studio-v3 .cover-focal-control{max-width:190px}
.studio-v3 .cover-focal-control .focal-point-grid{position:static;margin-top:2px}

/* Focal buttons use native title/aria-label; prevent the global tooltip pseudo-element
   from relocating their visual center dot outside the grid on hover. */
.studio-v3 .focal-point-grid button::after{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
  padding:0!important;
  content:""!important;
}
.studio-v3 .focal-point-grid button:hover::after{transform:none!important}

@media(max-width:1180px){
  .studio-v3 .settings-nav a.active::before{display:none}
}

/* ===== resources/ui/v340.css ===== */
/* Momeniva v3.4.0 — UI/UX P0–P2 stabilization layer */
:root{--z-base:0;--z-card:10;--z-sticky:100;--z-sidebar:200;--z-overlay:300;--z-modal:400;--z-toast:500}
.editor-command-bar{position:relative;z-index:var(--z-card);padding:18px 22px}
.editor-command-topline{margin-bottom:10px}.editor-command-bottomline{gap:18px}.editor-command-title h1{font-size:clamp(24px,2.2vw,34px);line-height:1.15}.editor-command-title p{font-size:12px}.editor-action-buttons{flex-wrap:wrap}.editor-open-result{min-width:44px}
.publish-readiness{position:relative;z-index:var(--z-card)}
.editor-tabs{z-index:var(--z-sticky)}
.editor-preview{z-index:var(--z-sticky)}
.preview-drawer-close{display:none}.preview-sync-state{font-size:12px;color:#617062;white-space:nowrap}.editor-preview-backdrop{display:none}
.story-local-nav{margin:0 0 18px}.story-local-nav button{min-height:44px}
/* Medium desktop: editor gets full width, preview becomes drawer. */
@media (min-width:1024px) and (max-width:1365px){
  .editor-layout-v3{grid-template-columns:minmax(0,1fr)!important}
  .editor-form-panel{min-width:0}
  .editor-preview{display:none!important;position:fixed!important;top:0!important;right:0;width:min(430px,92vw);height:100dvh;max-height:none!important;border-radius:24px 0 0 24px;z-index:var(--z-modal);box-shadow:-24px 0 70px rgba(51,36,42,.22)}
  body.preview-drawer-open .editor-preview{display:grid!important;grid-template-rows:auto 1fr auto}
  body.preview-drawer-open{overflow:hidden}
  .preview-drawer-close{display:grid}
  .editor-preview-backdrop{position:fixed;inset:0;border:0;background:rgba(44,30,35,.42);z-index:calc(var(--z-modal) - 1)}
  body.preview-drawer-open .editor-preview-backdrop{display:block}
  .editor-tabs button{min-width:66px;flex:1 1 0;padding-inline:8px}.editor-tabs button .editor-tab-label{display:none}.editor-tabs button.active .editor-tab-label{display:inline}
  .preview-canvas{height:auto;min-height:0}.preview-device-shell,.preview-canvas iframe{max-height:calc(100dvh - 150px)}
}
@media (min-width:1366px){
 .editor-layout-v3{grid-template-columns:minmax(620px,1.35fr) minmax(360px,.65fr)!important}
 .editor-preview{display:grid!important}
 .editor-preview-backdrop,[data-preview-drawer-toggle]{display:none!important}
}
@media (max-width:1023px){.editor-open-result{display:none}.editor-command-bar{padding:14px}.publish-readiness__issues{max-height:140px;overflow:auto}}
@media(max-width:760px){
 .editor-command-topline{margin:0}.editor-command-bottomline{display:grid;grid-template-columns:1fr}.editor-command-title h1{font-size:24px}.editor-command-title p,.editor-command-meta{display:none}.editor-action-buttons{display:grid;grid-template-columns:1fr 1fr}.editor-action-buttons .btn{min-width:0}.editor-action-buttons .btn:last-child{grid-column:1/-1}.publish-readiness{padding:12px}.publish-readiness__issues{display:none}.publish-readiness.is-expanded .publish-readiness__issues{display:grid}
}
/* Cleaner hierarchy and progressive disclosure */
.editor-form-panel .field-group{box-shadow:none}.editor-panel-heading h2,.field-group-head h3,.settings-card h2{font-family:"DM Sans",sans-serif}.field-group-head h3{font-size:18px}.field-group-head p{font-size:13px;line-height:1.55}.form-label{font-size:14px}.form-control{font-size:15px}.form-help,.form-counter{font-size:12.5px}
/* Gallery: thumbnail strip + focused inspector feel */
@media(min-width:1024px){
 .gallery-upload-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
 .gallery-uploader{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:10px!important;min-width:0;cursor:pointer}
 .gallery-uploader:not(.is-selected) .gallery-item-editor,.gallery-uploader:not(.is-selected) .gallery-item-actions{display:none!important}
 .gallery-uploader.is-selected{grid-column:1/-1;display:grid!important;grid-template-columns:180px minmax(0,1fr)!important;align-items:start;padding:16px!important}
 .gallery-uploader.is-selected .gallery-item-editor{display:grid!important}.gallery-uploader img{width:100%!important;aspect-ratio:4/5;object-fit:cover;border-radius:14px}
}
/* Preview states */
.editor-preview.is-loading .preview-canvas:after{content:"Memuat pratinjau…";position:absolute;inset:18px;display:grid;place-items:center;background:rgba(255,255,255,.78);z-index:6;font-size:14px;font-weight:700}
.editor-preview.is-error .preview-canvas:after{content:"Pratinjau gagal dimuat. Gunakan tombol muat ulang.";position:absolute;inset:18px;display:grid;place-items:center;background:#fff7f7;color:#9d3447;z-index:6;padding:24px;text-align:center}
/* Settings and help density */
.settings-layout{align-items:start}.settings-card{scroll-margin-top:110px}.help-section[hidden]{display:none!important}.help-section{content-visibility:auto;contain-intrinsic-size:420px}.help-section details{border:1px solid var(--ui-border);border-radius:12px;padding:12px 14px}
/* Analytics metric clarity */
.guest-journey-copy small{font-size:13px}.guest-journey-copy p{font-size:12px}.stat-grid-v3 article small{font-size:13px}.analytics-chart-panel header p{max-width:680px}
/* Safer global layering */
.studio-sidebar{z-index:var(--z-sidebar)!important}.studio-overlay{z-index:calc(var(--z-sidebar) - 1)!important}.dialog-modal,.modal{z-index:var(--z-modal)!important}.toast-stack{z-index:var(--z-toast)!important}
.editor-history-controls{display:flex;gap:4px}.editor-history-controls .icon-button{width:44px;height:44px;font-size:20px}.editor-history-controls .icon-button:disabled{opacity:.35;cursor:not-allowed}
.story-local-nav{display:flex;gap:6px;padding:5px;border:1px solid var(--ui-border);border-radius:13px;background:var(--ui-surface-muted)}.story-local-nav button{flex:1;border:0;border-radius:9px;background:transparent;font:600 13px "DM Sans",sans-serif;color:var(--ui-muted)}.story-local-nav button.active{background:#fff;color:var(--ui-primary);box-shadow:var(--ui-shadow-sm)}
@media(max-width:760px){.editor-history-controls{display:none}.story-local-nav{overflow:auto}.story-local-nav button{min-width:120px}}

/* ===== resources/ui/v341.css ===== */
/* Momeniva v3.4.1 — media gallery, search, date and settings UX hotfix */

/* Search shells already provide the visual border. Keep the internal field borderless. */
.studio-v3 :is(.guest-search-control,.search-input,.checkin-search,.help-search-control,.theme-picker-filters label) .search-field-inner,
.studio-v3 :is(.guest-search-control,.search-input,.checkin-search,.help-search-control,.theme-picker-filters label) input[type="search"] {
  width:100%;
  min-width:0;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background:transparent!important;
  -webkit-appearance:none;
  appearance:none;
}
.studio-v3 :is(.guest-search-control,.search-input,.checkin-search,.help-search-control,.theme-picker-filters label) .search-field-inner:focus,
.studio-v3 :is(.guest-search-control,.search-input,.checkin-search,.help-search-control,.theme-picker-filters label) input[type="search"]:focus {
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.studio-v3 input[type="search"]::-webkit-search-cancel-button{cursor:pointer}

/* Password confirmation must use the full panel width. */
.studio-v3 .settings-password-current{width:100%;max-width:none!important}

/* Preview toolbar no longer needs a duplicated title label. */
.studio-v3 .preview-toolbar{justify-content:flex-end}
.studio-v3 .preview-drawer-close{margin-right:auto}
.studio-v3 .preview-toolbar-actions{margin-left:auto}

/* Date fields use the native calendar picker and do not accept free typing. */
.studio-v3 input[type="date"][data-date-picker]{cursor:pointer;padding-right:12px}
.studio-v3 input[type="date"][data-date-picker]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.72}
.studio-v3 input[type="date"][data-date-picker]:hover::-webkit-calendar-picker-indicator{opacity:1}

/* Gallery manager: stable single-column cards with a thumbnail and inspector body. */
.studio-v3 .gallery-manager{gap:16px}
.studio-v3 .gallery-manager-head{min-height:44px;padding:0 2px}
.studio-v3 .gallery-manager-head>small{max-width:260px;color:var(--ui-muted);font-size:12px;line-height:1.45;text-align:right}
.studio-v3 .gallery-upload-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
.studio-v3 .gallery-uploader,
.studio-v3 .gallery-uploader.is-selected{
  grid-column:auto!important;
  display:grid!important;
  grid-template-columns:132px minmax(0,1fr)!important;
  grid-template-areas:"preview body"!important;
  gap:16px!important;
  align-items:start!important;
  min-width:0;
  padding:14px!important;
  border:1px solid var(--ui-border)!important;
  border-radius:16px!important;
  background:#fffdfb!important;
  overflow:hidden!important;
  cursor:default!important;
  box-shadow:none!important;
}
.studio-v3 .gallery-uploader:hover{border-color:var(--ui-border-strong)!important;background:#fff!important}
.studio-v3 .gallery-preview-shell{
  grid-area:preview;
  position:relative;
  width:132px;
  aspect-ratio:4/5;
  min-width:0;
  overflow:hidden;
  border:1px solid #eaded8;
  border-radius:13px;
  background:#eee6e1;
}
.studio-v3 .gallery-preview-shell>img,
.studio-v3 .gallery-preview-shell>.gallery-empty-preview{
  width:100%!important;
  height:100%!important;
  display:block;
  border:0!important;
  border-radius:0!important;
  object-fit:cover!important;
  background:#eee6e1;
}
.studio-v3 .gallery-preview-shell>.gallery-empty-preview{display:grid;place-items:center;padding:12px;color:var(--ui-muted);font-size:12px;text-align:center}
.studio-v3 .gallery-drag-handle{
  position:absolute!important;
  top:8px!important;
  left:8px!important;
  z-index:2!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(221,207,200,.9)!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.94)!important;
  color:#75656b!important;
  box-shadow:0 5px 14px rgba(53,35,42,.12)!important;
  cursor:grab!important;
}
.studio-v3 .gallery-drag-handle:active{cursor:grabbing!important}
.studio-v3 .gallery-order-badge{
  position:absolute;
  left:8px;
  bottom:8px;
  max-width:calc(100% - 16px);
  padding:5px 8px;
  border-radius:999px;
  background:rgba(39,27,32,.76);
  color:#fff;
  font:700 10.5px/1 "DM Sans",sans-serif;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.studio-v3 .gallery-card-body{grid-area:body;display:grid;align-content:start;gap:14px;min-width:0}
.studio-v3 .gallery-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;min-width:0}
.studio-v3 .gallery-card-title{min-width:0;padding-top:2px}
.studio-v3 .gallery-card-title strong,.studio-v3 .gallery-card-title small{display:block}
.studio-v3 .gallery-card-title strong{color:var(--ui-text);font:700 15px/1.3 "DM Sans",sans-serif}
.studio-v3 .gallery-card-title small{margin-top:3px;color:var(--ui-muted);font-size:12px;line-height:1.45}
.studio-v3 .gallery-card-actions{position:static!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:flex-end;gap:7px!important;flex:0 0 auto;min-width:0;margin:0!important;padding:0!important;background:transparent!important;box-shadow:none!important}
.studio-v3 .gallery-card-actions .btn{position:static!important;inset:auto!important;min-width:0;min-height:40px;padding:8px 11px;white-space:nowrap}
.studio-v3 .gallery-card-actions .btn svg{width:16px;height:16px}
.studio-v3 .gallery-card-fields{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(160px,190px)!important;gap:12px!important;min-width:0}
.studio-v3 .gallery-card-fields .form-field{min-width:0;margin:0}
.studio-v3 .gallery-card-fields .form-control{position:static!important;inset:auto!important;width:100%!important;max-width:100%!important;min-height:46px!important;margin:0!important;padding:0 12px!important;font-size:14px!important}
.studio-v3 .gallery-card-body>.media-status{position:static!important;min-height:0;margin:0;padding:0}
.studio-v3 .gallery-uploader.dragging{opacity:.58;transform:scale(.995)}
.studio-v3 [data-add-gallery]{justify-self:start;min-height:44px}

/* Video gallery mirrors the cinematic uploader and never renders an inline player. */
.studio-v3 .video-gallery-manager{display:grid;gap:14px;margin-top:18px}
.studio-v3 .video-gallery-list{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;margin:0!important}
.studio-v3 .video-gallery-item{
  position:relative;
  display:grid!important;
  gap:14px;
  min-width:0;
  padding:16px!important;
  border:1px solid var(--ui-border)!important;
  border-radius:16px!important;
  background:#fffdfb!important;
  overflow:hidden;
}
.studio-v3 .video-gallery-state{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;min-width:0;padding:13px;border:1px solid #eadfd9;border-radius:13px;background:#faf5f2}
.studio-v3 .video-gallery-state[hidden]{display:none!important}
.studio-v3 .video-gallery-state>svg{width:22px;height:22px;justify-self:center;color:var(--ui-primary)}
.studio-v3 .video-gallery-state strong,.studio-v3 .video-gallery-state span{display:block}
.studio-v3 .video-gallery-state strong{color:var(--ui-text);font:700 14px/1.35 "DM Sans",sans-serif}
.studio-v3 .video-gallery-state span{margin-top:3px;color:var(--ui-muted);font-size:12.5px;line-height:1.45}
.studio-v3 .video-gallery-ready{border-color:#dce8dc;background:#f6faf5}
.studio-v3 .video-gallery-ready>svg{color:#4e7652}
.studio-v3 .video-gallery-item .media-spec-list{justify-content:flex-start;margin:0}
.studio-v3 .video-gallery-item .media-action-row{justify-content:flex-start;margin:0}
.studio-v3 .video-gallery-item .media-status{position:static!important;min-height:0;margin:0;padding:0}
.studio-v3 .video-gallery-item video,
.studio-v3 .video-gallery-item .video-empty-preview{display:none!important}

@media(max-width:760px){
  .studio-v3 .gallery-manager-head{align-items:flex-start}
  .studio-v3 .gallery-manager-head>small{display:none}
  .studio-v3 .gallery-uploader,
  .studio-v3 .gallery-uploader.is-selected{grid-template-columns:104px minmax(0,1fr)!important;gap:12px!important;padding:12px!important}
  .studio-v3 .gallery-preview-shell{width:104px}
  .studio-v3 .gallery-card-head{display:grid;gap:10px}
  .studio-v3 .gallery-card-actions{justify-content:flex-start}
  .studio-v3 .gallery-card-actions .btn{flex:1 1 auto}
  .studio-v3 .gallery-card-fields{grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:440px){
  .studio-v3 .gallery-uploader,
  .studio-v3 .gallery-uploader.is-selected{grid-template-columns:88px minmax(0,1fr)!important;gap:10px!important;padding:10px!important}
  .studio-v3 .gallery-preview-shell{width:88px;border-radius:11px}
  .studio-v3 .gallery-drag-handle{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;top:6px!important;left:6px!important}
  .studio-v3 .gallery-order-badge{left:6px;bottom:6px;max-width:calc(100% - 12px);font-size:9.5px}
  .studio-v3 .gallery-card-title small{display:none}
  .studio-v3 .gallery-card-actions{display:grid!important;grid-template-columns:1fr 1fr;width:100%}
  .studio-v3 .gallery-card-actions .btn{width:100%;padding-inline:8px;font-size:12px}
  .studio-v3 .video-gallery-item{padding:12px!important}
  .studio-v3 .video-gallery-state{grid-template-columns:34px minmax(0,1fr);padding:11px}
}

/* Final gallery cascade reset: neutralize legacy absolute label and two-column rules. */
.studio-v3 .gallery-card-body{
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-areas:none!important;
}
.studio-v3 .gallery-card-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:10px!important;
}
.studio-v3 .gallery-card-actions{justify-content:flex-start!important}
.studio-v3 .gallery-card-fields{
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start!important;
}
.studio-v3 .gallery-card-fields .form-field__label-row{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  height:auto!important;
  min-height:20px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
.studio-v3 .gallery-card-fields .form-label{
  position:static!important;
  inset:auto!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  display:inline!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  color:var(--ui-text)!important;
  font:650 13px/1.4 "DM Sans",sans-serif!important;
  cursor:default!important;
}
.studio-v3 .gallery-card-fields .form-label-note{position:static!important;display:inline!important;padding:0!important;background:transparent!important}
.studio-v3 .gallery-card-head,
.studio-v3 .gallery-card-title,
.studio-v3 .gallery-card-actions,
.studio-v3 .gallery-card-fields,
.studio-v3 .gallery-card-body>.media-status{grid-area:auto!important}

/* ===== resources/ui/v342/01-tokens-search.css ===== */
/* v3.4.2 — product consistency: tokens and search controls */
:root{
  --z-base:0;--z-card:10;--z-sticky:100;--z-sidebar:200;--z-overlay:300;--z-modal:400;--z-toast:500;
  --ui-control-height:46px;
}
/* One visual outline only: the shell owns border/focus, the search input stays transparent. */
.studio-v3 :is(.guest-search-control,.search-input,.checkin-search,.help-search-control,.theme-picker-filters label,[data-search-shell]){
  outline:0;
}
.studio-v3 :is(.guest-search-control,.search-input,.checkin-search,.help-search-control,.theme-picker-filters label,[data-search-shell]):focus-within{
  border-color:var(--ui-primary)!important;
  box-shadow:0 0 0 4px rgba(136,65,87,.10)!important;
}
.studio-v3 :is(.guest-search-control,.search-input,.checkin-search,.help-search-control,.theme-picker-filters label,[data-search-shell]) :is(input[type="search"],.search-field-inner),
.studio-v3 input.search-field-inner[type="search"]{
  width:100%!important;min-width:0!important;border:0!important;outline:0!important;
  box-shadow:none!important;background:transparent!important;border-radius:0!important;
  -webkit-appearance:none!important;appearance:none!important;
}
.studio-v3 :is(.guest-search-control,.search-input,.checkin-search,.help-search-control,.theme-picker-filters label,[data-search-shell]) :is(input[type="search"],.search-field-inner):focus{
  border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;
}
.studio-v3 input[type="search"]::-webkit-search-decoration,
.studio-v3 input[type="search"]::-webkit-search-results-button,
.studio-v3 input[type="search"]::-webkit-search-results-decoration{display:none}
.studio-v3 .plan-prestige{background:#f3e7ec;color:#7f3651;border-color:#dcb9c7}

/* ===== resources/ui/v342/02-editor-shell.css ===== */
/* Editor shell only. Media cards intentionally remain governed by v3.4.1. */
.editor-command-bar{position:relative;z-index:var(--z-card);padding:16px 20px}
.editor-command-topline{gap:16px;margin-bottom:8px}.editor-command-bottomline{gap:12px}
.editor-command-title{min-width:0}.editor-command-title h1{font-size:clamp(24px,2vw,32px);line-height:1.12}
.editor-command-title p{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.editor-command-meta{gap:8px}.editor-action-buttons{gap:8px;flex-wrap:wrap}
.editor-tabs{z-index:var(--z-sticky)}.editor-preview{z-index:var(--z-sticky)}
/* 1024–1439: protect the form width; preview is an explicit drawer. */
@media (min-width:1024px) and (max-width:1439px){
  .editor-layout-v3{grid-template-columns:minmax(620px,1fr)!important;max-width:100%!important}
  .editor-form-panel{width:100%;min-width:620px!important;max-width:none!important}
  .editor-preview{display:none!important;position:fixed!important;inset:0 0 0 auto!important;width:min(440px,92vw)!important;height:100dvh!important;max-height:none!important;border-radius:24px 0 0 24px!important;z-index:var(--z-modal)!important;box-shadow:-24px 0 70px rgba(51,36,42,.22)!important}
  body.preview-drawer-open .editor-preview{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important}
  body.preview-drawer-open{overflow:hidden}
  .preview-drawer-close{display:grid!important}
  .editor-preview-backdrop{position:fixed!important;inset:0!important;display:none;border:0;background:rgba(44,30,35,.42)!important;z-index:calc(var(--z-modal) - 1)!important}
  body.preview-drawer-open .editor-preview-backdrop{display:block!important}
  .editor-tabs button{min-width:58px!important;flex:1 1 0!important;padding-inline:7px!important;gap:5px!important}
  .editor-tabs button .editor-tab-label{display:none!important}
  .editor-tabs button.active .editor-tab-label{display:inline!important;max-width:80px;overflow:hidden;text-overflow:ellipsis}
  .preview-canvas{min-height:0!important}.preview-device-shell,.preview-canvas iframe{max-height:calc(100dvh - 90px)!important}
}
@media (min-width:1440px){
  .editor-layout-v3{grid-template-columns:minmax(620px,1.45fr) minmax(360px,.65fr)!important}
  .editor-form-panel{min-width:620px!important}
  .editor-preview{display:grid!important}
  .editor-preview-backdrop,[data-preview-drawer-toggle],.preview-drawer-close{display:none!important}
}
@media (max-width:1023px){
  .editor-form-panel{min-width:0!important}.editor-command-bar{padding:12px 14px}
  .editor-command-title p,.editor-command-meta{display:none!important}
}
@media (max-width:760px){
  .editor-command-topline{margin:0}.editor-command-bottomline{display:grid;grid-template-columns:minmax(0,1fr)}
  .editor-command-title h1{font-size:23px}.editor-action-buttons{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .editor-action-buttons .btn{min-width:0}.editor-action-buttons .btn:last-child{grid-column:1/-1}
}

/* ===== resources/ui/v342/03-analytics.css ===== */
/* Analytics definitions, responsive journey and concise empty states. */
.metric-label{display:inline-flex;align-items:center;gap:5px}
.metric-help{position:relative;display:inline-grid;place-items:center;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--ui-muted);cursor:help}
.metric-help svg{width:15px;height:15px}.metric-help:hover,.metric-help:focus-visible{background:var(--ui-primary-soft);color:var(--ui-primary)}
.metric-help[data-tooltip]:after{max-width:270px;white-space:normal;text-align:left}
.analytics-definition-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;margin:0 0 16px;border:1px solid var(--ui-border);border-radius:14px;background:var(--ui-surface-muted)}
.analytics-definition-bar>div{display:grid;gap:4px}.analytics-definition-bar strong{font-size:14px}.analytics-definition-bar p{margin:0;color:var(--ui-muted);font-size:13px;line-height:1.5}
.analytics-definition-bar details{position:relative}.analytics-definition-bar summary{list-style:none;cursor:pointer;white-space:nowrap}.analytics-definition-bar summary::-webkit-details-marker{display:none}
.metric-dictionary{position:absolute;right:0;top:calc(100% + 8px);z-index:var(--z-overlay);width:min(440px,80vw);max-height:420px;overflow:auto;padding:12px;border:1px solid var(--ui-border);border-radius:14px;background:#fff;box-shadow:var(--ui-shadow-lg)}
.metric-dictionary dl{margin:0;display:grid;gap:10px}.metric-dictionary div{padding-bottom:10px;border-bottom:1px solid var(--ui-border)}.metric-dictionary div:last-child{padding:0;border:0}.metric-dictionary dt{font-weight:700}.metric-dictionary dd{margin:3px 0 0;color:var(--ui-muted);font-size:12.5px;line-height:1.45}
.analytics-stat-grid article{min-width:0}.analytics-stat-grid article em{line-height:1.4}
.chart-empty-state{min-height:220px!important;padding:30px 20px!important}
.guest-journey{display:grid!important;grid-template-columns:repeat(5,minmax(150px,1fr));gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin}
.guest-journey-stage{min-width:150px!important}.guest-journey-stage>i{display:none!important}
.analytics-response-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
.analytics-response-summary article{padding:14px;border:1px solid var(--ui-border);border-radius:13px;background:#fff}.analytics-response-summary small{display:block;color:var(--ui-muted);font-size:12px}.analytics-response-summary strong{display:block;margin-top:3px;font-size:24px}
@media(max-width:760px){
  .analytics-definition-bar{display:grid}.analytics-definition-bar details{justify-self:start}.metric-dictionary{position:fixed;left:14px;right:14px;top:auto;bottom:14px;width:auto;max-height:60dvh;z-index:var(--z-modal)}
  .analytics-response-summary{grid-template-columns:1fr}.analytics-stat-grid{grid-template-columns:1fr 1fr!important}
}
@media(max-width:440px){.analytics-stat-grid{grid-template-columns:1fr!important}}

/* ===== resources/ui/v342/04-guests-billing.css ===== */
/* Guest workflow: active filters, bulk actions, sticky header, one primary row action. */
.active-filter-chips{display:flex;gap:8px;flex-wrap:wrap;padding:0 0 14px}
.active-filter-chip{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:5px 10px;border:1px solid var(--ui-border);border-radius:999px;background:var(--ui-surface-muted);font-size:12px;font-weight:650;color:var(--ui-text);text-decoration:none}
.active-filter-chip:hover{border-color:var(--ui-primary);color:var(--ui-primary)}
.guest-bulk-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-bottom:10px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface-muted)}
.guest-bulk-bar[hidden]{display:none!important}.guest-bulk-actions{display:flex;gap:8px;flex-wrap:wrap}
.guest-table-wrap{max-height:min(66dvh,720px);overflow:auto}.guest-table thead{position:sticky;top:0;z-index:var(--z-card);background:#fff}.guest-table thead th{box-shadow:0 1px 0 var(--ui-border)}
.guest-select-cell{width:44px;text-align:center}.guest-select-cell input{width:18px;height:18px;accent-color:var(--ui-primary)}
.row-action-menu{position:relative}.row-action-menu>summary{list-style:none}.row-action-menu>summary::-webkit-details-marker{display:none}
.row-action-popover{position:absolute;right:0;top:calc(100% + 6px);z-index:var(--z-overlay);display:grid;min-width:190px;padding:7px;border:1px solid var(--ui-border);border-radius:12px;background:#fff;box-shadow:var(--ui-shadow-lg)}
.row-action-popover form{margin:0}.row-action-popover .btn{justify-content:flex-start;width:100%;min-height:40px}.row-action-popover .danger{color:var(--ui-danger)}
/* Package comparison and billing clarity. */
.plan-comparison{margin-top:22px;overflow:hidden}.plan-comparison-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.plan-comparison-head p{margin:4px 0 0;color:var(--ui-muted)}
.plan-comparison-wrap{overflow-x:auto;border:1px solid var(--ui-border);border-radius:16px}.plan-comparison-table{width:100%;min-width:760px;border-collapse:collapse;background:#fff}.plan-comparison-table th,.plan-comparison-table td{padding:13px 14px;border-bottom:1px solid var(--ui-border);text-align:center}.plan-comparison-table th:first-child,.plan-comparison-table td:first-child{text-align:left;position:sticky;left:0;background:inherit;z-index:1}.plan-comparison-table thead th{background:var(--ui-surface-muted)}.plan-comparison-table tbody tr:last-child td{border-bottom:0}.plan-comparison-table .included{color:#38765a;font-weight:750}.plan-comparison-table .excluded{color:#a08e94}
.billing-usage-list{display:grid;gap:9px}.billing-usage-row{display:grid;grid-template-columns:minmax(120px,1fr) auto;gap:10px;align-items:center}.billing-usage-row meter{grid-column:1/-1;width:100%}
.order-recovery{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.invoice-card .invoice-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:760px){.guest-bulk-bar{align-items:flex-start;display:grid}.guest-bulk-actions{display:grid;grid-template-columns:1fr 1fr}.plan-comparison-head{display:block}.row-action-popover{position:fixed;left:14px;right:14px;top:auto;bottom:14px;min-width:0;z-index:var(--z-modal)}}

/* ===== resources/ui/v342/05-settings-help-accessibility.css ===== */
/* Settings: clear devices, pagination, save state and security history. */
.settings-form[data-dirty="true"]{padding-bottom:68px}.settings-save-bar{position:sticky;bottom:12px;z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-top:14px;border:1px solid var(--ui-border-strong);border-radius:13px;background:rgba(255,255,255,.96);box-shadow:var(--ui-shadow-md);backdrop-filter:blur(12px)}
.settings-save-bar[hidden]{display:none!important}.settings-save-bar span{font-size:13px;font-weight:650}.settings-save-bar .btn{min-height:40px}
.remember-device-list article{align-items:center}.device-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:4px}.device-meta small{display:inline-flex}.device-current-badge{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:#e9f6ef;color:#347256;font-size:11.5px;font-weight:700}
.device-pagination,.security-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}.device-pagination small,.security-pagination small{color:var(--ui-muted)}
.security-history{margin-top:22px;padding-top:20px;border-top:1px solid var(--ui-border)}.security-history h3{margin:0 0 4px}.security-history>p{margin:0 0 12px;color:var(--ui-muted)}.security-history-list{display:grid;gap:8px}.security-history-list article{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--ui-border);border-radius:12px}.security-history-list article>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:var(--ui-primary-soft);color:var(--ui-primary)}.security-history-list strong{display:block;font-size:13.5px}.security-history-list small{display:block;color:var(--ui-muted);font-size:12px}.security-event-status{font-size:11.5px;font-weight:700;text-transform:capitalize}
/* Help Center: index first, detail route second. */
.help-index-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.help-article-card{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px;min-height:150px;padding:16px;border:1px solid var(--ui-border);border-radius:15px;background:#fff;color:inherit;text-decoration:none;transition:.18s ease}.help-article-card:hover{transform:translateY(-2px);border-color:var(--ui-primary);box-shadow:var(--ui-shadow-md)}.help-article-card>span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--ui-primary-soft);color:var(--ui-primary)}.help-article-card h2{margin:0;font:700 17px/1.3 "DM Sans",sans-serif}.help-article-card p{margin:5px 0;color:var(--ui-muted);font-size:13px;line-height:1.5}.help-article-card small{color:var(--ui-primary);font-weight:700}
.help-search-results{display:grid;gap:9px;margin:14px 0}.help-search-results[hidden]{display:none}.help-search-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid var(--ui-border);border-radius:12px;color:inherit;text-decoration:none}.help-search-result:hover{border-color:var(--ui-primary)}
.help-article-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(230px,300px);gap:22px;align-items:start}.help-article-body{padding:24px}.help-article-body h1{font-family:"DM Sans",sans-serif}.help-steps{counter-reset:help-step;display:grid;gap:12px;padding:0;margin:20px 0;list-style:none}.help-steps li{counter-increment:help-step;display:grid;grid-template-columns:34px minmax(0,1fr);gap:11px;align-items:start}.help-steps li:before{content:counter(help-step);display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--ui-primary-soft);color:var(--ui-primary);font-weight:800}.help-related{display:grid;gap:8px}.help-related a{padding:10px 12px;border:1px solid var(--ui-border);border-radius:10px;color:inherit;text-decoration:none}.help-feedback{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid var(--ui-border)}
/* Touch targets and small text accessibility. */
.studio-v3 :is(button,.btn,.icon-button,summary[role="button"]){min-height:44px}
.studio-v3 .sidebar-package-summary small,.studio-v3 .sidebar-package-summary span,.studio-v3 .panel-kicker{font-size:12px!important}
@media(max-width:1024px){.help-index-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.help-article-layout{grid-template-columns:1fr}.help-article-layout aside{order:-1}}
@media(max-width:640px){.help-index-grid{grid-template-columns:1fr}.help-article-card{min-height:0}.security-history-list article{grid-template-columns:38px minmax(0,1fr)}.security-event-status{grid-column:2}.help-feedback{display:grid}}

/* Settings navigation must remain a true vertical local navigation on laptop/desktop. */
@media(min-width:1024px){
  .studio-v3 .settings-layout{display:grid!important;grid-template-columns:210px minmax(0,980px)!important;gap:28px!important;align-items:start!important}
  .studio-v3 .settings-nav{display:grid!important;grid-auto-flow:row!important;gap:5px!important;position:sticky!important;top:94px!important;overflow:visible!important;padding:8px!important}
  .studio-v3 .settings-nav a{display:flex!important;width:100%!important;white-space:normal!important;justify-content:flex-start!important}
  .studio-v3 .settings-mobile-selector{display:none!important}
}
@media(max-width:1023px){
  .studio-v3 .settings-layout{display:block!important;grid-template-columns:1fr!important}
  .studio-v3 .settings-nav{display:none!important}
  .studio-v3 .settings-mobile-selector{display:grid!important}
}

/* ===== resources/ui/v342/06-marketing-auth.css ===== */
/* Marketing density and authentication error hierarchy. No theme assets are introduced here. */
.auth-error-summary{display:grid;gap:8px;margin:0 0 16px;padding:13px 15px;border:1px solid #e5b7c0;border-radius:13px;background:#fff1f3;color:#7f2f43}
.auth-error-summary strong{font-size:13.5px}.auth-error-summary ul{display:grid;gap:4px;margin:0;padding-left:18px;font-size:12.5px;line-height:1.45}

/* Keep the editorial atmosphere while reducing repeated vertical whitespace. */
.romantic-marketing .romance-hero{min-height:760px;padding-top:126px}
.romantic-marketing :is(.emotion-section,.romantic-template-section,.moments-section,.gentle-process,.love-note-section,.romantic-pricing,.romantic-faq){padding-top:88px;padding-bottom:88px}
.romantic-marketing .romantic-final{min-height:520px;padding:88px 0}
.romantic-marketing .emotion-features,.romantic-marketing .process-steps,.romantic-marketing .romantic-price-grid{margin-top:44px}
.romantic-marketing .emotion-card{min-height:310px;padding:30px}
.romantic-marketing .moment-cards article{min-height:190px;padding:24px}
.romantic-marketing .process-steps article{padding:32px 24px}.romantic-marketing .step-icon{width:76px;height:76px;margin-bottom:19px}
.romantic-marketing .love-note>p{margin:24px 0}

@media(max-width:850px){
  .romantic-marketing :is(.emotion-section,.romantic-template-section,.moments-section,.gentle-process,.love-note-section,.romantic-pricing,.romantic-faq){padding-top:68px;padding-bottom:68px}
}
@media(max-width:600px){
  .romantic-marketing .romance-hero{padding-top:104px;padding-bottom:18px}
  .romantic-marketing .romance-stage{height:410px;transform:scale(.61);margin-bottom:-155px}
  .romantic-marketing .feeling-marquee{padding:20px 0}
  .romantic-marketing :is(.emotion-section,.romantic-template-section,.moments-section,.gentle-process,.love-note-section,.romantic-pricing,.romantic-faq){padding-top:56px;padding-bottom:56px}
  .romantic-marketing :is(.emotion-heading h2,.romantic-section-head h2,.moments-copy h2,.process-heading h2,.romantic-faq h2){font-size:39px;line-height:1.02}
  .romantic-marketing .emotion-features{gap:12px;margin-top:30px}
  .romantic-marketing .emotion-card{min-height:0;padding:22px;border-radius:22px}
  .romantic-marketing .emotion-card h3{font-size:27px}.romantic-marketing .emotion-card p{line-height:1.6}
  .romantic-marketing .feature-art,.romantic-marketing .motion-flower{height:165px}
  .romantic-marketing .moment-cards{gap:10px}.romantic-marketing .moment-cards article{min-height:145px;padding:20px;border-radius:20px}
  .romantic-marketing .process-steps{gap:6px;margin-top:34px}.romantic-marketing .process-steps article{padding:25px 18px}.romantic-marketing .step-icon{width:64px;height:64px;margin-bottom:15px}
  .romantic-marketing .love-note>p{font-size:25px;line-height:1.28;margin:20px 0}
  .romantic-marketing .romantic-price-grid{gap:14px;margin-top:34px}.romantic-marketing .price-card{padding:24px 21px!important}
  .romantic-marketing .romantic-final{min-height:430px;padding:62px 0}.romantic-marketing .romantic-final h2{font-size:41px}
}

/* Event types are supporting information, not another full-height showcase. */
.romantic-marketing .event-types-strip{padding:58px 0;background:#573443;color:#f9eee9}
.romantic-marketing .event-types-strip__inner{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:28px;align-items:center}
.romantic-marketing .event-types-strip .romance-script{color:#e7abaf;font-size:34px}.romantic-marketing .event-types-strip h2{margin:2px 0 6px;font:600 32px/1.05 "Cormorant Garamond",serif}.romantic-marketing .event-types-strip p{max-width:560px;margin:0;color:#d8c2c7;font-size:13px;line-height:1.55}
.romantic-marketing .event-type-chips{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.romantic-marketing .event-type-chips span{padding:8px 11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:11px;white-space:nowrap}
@media(max-width:900px){.romantic-marketing .event-types-strip__inner{grid-template-columns:1fr;text-align:center}.romantic-marketing .event-types-strip p{margin-inline:auto}.romantic-marketing .event-types-strip .btn{justify-self:center}}
@media(max-width:600px){.romantic-marketing .event-types-strip{padding:42px 0}.romantic-marketing .event-types-strip__inner{gap:18px}.romantic-marketing .event-types-strip h2{font-size:29px}.romantic-marketing .event-type-chips{gap:6px}.romantic-marketing .event-type-chips span{font-size:10px;padding:7px 9px}}
@media(max-width:600px){
  .romantic-marketing :is(.emotion-section,.romantic-template-section,.gentle-process,.love-note-section,.romantic-pricing,.romantic-faq){padding-top:46px;padding-bottom:46px}
  .romantic-marketing .romance-stage{height:360px;margin-bottom:-165px}
  .romantic-marketing .feature-art,.romantic-marketing .motion-flower{height:135px}
  .romantic-marketing .price-card{padding:19px!important}
  .romantic-marketing .romantic-final{min-height:380px;padding:50px 0}
}
@media(max-width:600px){
  .romantic-marketing :is(.emotion-section,.romantic-template-section,.gentle-process,.love-note-section,.romantic-pricing,.romantic-faq){padding-top:42px;padding-bottom:42px}
  .romantic-marketing .romance-stage{height:340px}
  .romantic-marketing .price-card{padding:17px!important}
  .romantic-marketing .romantic-final{min-height:350px;padding:44px 0}
}

/* ===== resources/ui/v343/01-guests-dashboard-register.css ===== */
/* Momeniva v3.4.3 — full-width guest list, right-aligned event actions, compact registration. */

/* Guest list: desktop table follows the available content width and the page owns vertical scrolling. */
@media (min-width: 761px) {
  .studio-v3 .guest-panel { overflow: visible !important; }
  .studio-v3 .guest-table-wrap {
    width: 100%;
    max-width: 100%;
    max-height: none !important;
    overflow: visible !important;
    border-top: 1px solid var(--ui-border);
  }
  .studio-v3 .guest-table,
  .studio-v3 .guest-table-fluid {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed;
  }
  .studio-v3 .guest-table col.col-select { width: 42px; }
  .studio-v3 .guest-table col.col-guest { width: 18%; }
  .studio-v3 .guest-table col.col-category { width: 10%; }
  .studio-v3 .guest-table col.col-quota { width: 7%; }
  .studio-v3 .guest-table col.col-status { width: 17%; }
  .studio-v3 .guest-table col.col-link { width: auto; }
  .studio-v3 .guest-table col.col-actions { width: 142px; }
  .studio-v3 .guest-table th,
  .studio-v3 .guest-table td {
    min-width: 0;
    padding-inline: clamp(8px, .9vw, 14px);
    overflow: visible;
  }
  .studio-v3 .guest-table thead {
    position: static !important;
  }
  .studio-v3 .guest-table .guest-identity {
    display: grid;
    align-content: center;
    gap: 3px;
    min-width: 0;
  }
  .studio-v3 .guest-table .guest-identity > strong,
  .studio-v3 .guest-table .guest-identity > small,
  .studio-v3 .guest-table .guest-identity > em {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .studio-v3 .guest-table td:nth-child(5) { min-width: 0 !important; }
  .studio-v3 .guest-table td:nth-child(6) { overflow: hidden; }
  .studio-v3 .guest-table .personal-link-cell {
    min-width: 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
  }
  .studio-v3 .guest-table .personal-link-cell code {
    display: block;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .studio-v3 .guest-table .personal-link-actions { flex-wrap: nowrap; }
  .studio-v3 .guest-table .guest-actions-heading { text-align: right; }
  .studio-v3 .guest-table .table-actions {
    width: 100%;
    justify-content: flex-end;
    flex-wrap: nowrap;
  }
  .studio-v3 .guest-table .table-actions .btn { white-space: nowrap; }
}

/* On narrower laptops, keep the table readable without introducing a nested scrollbar. */
@media (min-width: 761px) and (max-width: 1180px) {
  .studio-v3 .guest-table col.col-guest { width: 19%; }
  .studio-v3 .guest-table col.col-category { width: 11%; }
  .studio-v3 .guest-table col.col-quota { width: 8%; }
  .studio-v3 .guest-table col.col-status { width: 17%; }
  .studio-v3 .guest-table col.col-actions { width: 126px; }
  .studio-v3 .guest-table th,
  .studio-v3 .guest-table td { padding-inline: 8px; }
  .studio-v3 .guest-table .table-actions .btn { padding-inline: 10px; }
}

/* Dashboard invitation rows use all horizontal space; actions terminate at the right edge. */
.studio-v3 .dashboard-event-panel .event-list,
.studio-v3 .dashboard-event-panel .event-row-v3 { width: 100%; max-width: none; }
@media (min-width: 1181px) {
  .studio-v3 .dashboard-event-panel .event-row-v3 {
    grid-template-columns: 88px minmax(0, 1fr) max-content !important;
  }
  .studio-v3 .dashboard-event-panel .event-actions-v3 {
    width: max-content;
    max-width: 100%;
    justify-self: end;
    justify-content: flex-end;
    margin-left: auto;
    flex-wrap: nowrap;
  }
}
@media (min-width: 941px) and (max-width: 1180px) {
  .studio-v3 .dashboard-event-panel .event-row-v3 {
    grid-template-columns: 82px minmax(0, 1fr) max-content !important;
  }
  .studio-v3 .dashboard-event-panel .event-actions-v3 {
    grid-column: auto !important;
    justify-self: end;
    justify-content: flex-end !important;
    flex-wrap: nowrap;
  }
}

/* Registration: keep the complete account creation workflow in a normal laptop viewport. */
@media (min-width: 941px) {
  .auth-page-register .auth-panel {
    padding: 16px clamp(24px, 4vw, 56px) !important;
    align-items: center !important;
    overflow: hidden !important;
  }
  .auth-page-register .auth-panel-inner {
    width: min(100%, 620px);
    padding-block: 0 !important;
  }
  .auth-page-register .auth-back.desktop {
    margin-bottom: 8px !important;
    font-size: 12px;
  }
  .auth-page-register .auth-card {
    padding: 20px 24px 18px !important;
    border-radius: 22px !important;
  }
  .auth-page-register .auth-card::before { left: 24px; right: 24px; }
  .auth-page-register .auth-heading-v3 > span { margin-bottom: 4px; font-size: 10px; }
  .auth-page-register .auth-heading-v3 h2 {
    font-size: clamp(31px, 2.7vw, 38px) !important;
    line-height: 1 !important;
  }
  .auth-page-register .auth-heading-v3 p { margin-top: 6px; font-size: 12.5px; }
  .auth-page-register .auth-form-v3 {
    margin-top: 14px !important;
    gap: 10px !important;
  }
  .auth-page-register .auth-form-register .form-row,
  .auth-page-register .auth-form-register .password-confirm-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .auth-page-register .auth-form-v3 .field { gap: 4px !important; font-size: 12.5px; }
  .auth-page-register .auth-form-v3 .input-with-icon,
  .auth-page-register .auth-form-v3 .password-field,
  .auth-page-register .auth-form-v3 .input-with-icon > input {
    height: 46px !important;
    min-height: 46px !important;
  }
  .auth-page-register .auth-form-register .password-confirm-row .field {
    grid-template-rows: auto 46px auto !important;
    row-gap: 4px !important;
  }
  .auth-page-register .auth-form-v3 .input-with-icon > input {
    border-radius: 12px;
    padding-left: 50px !important;
  }
  .auth-page-register .auth-form-v3 .field-feedback,
  .auth-page-register .auth-form-v3 .field-help,
  .auth-page-register .auth-form-v3 .field-error {
    min-height: 0 !important;
    font-size: 10.5px !important;
    line-height: 1.25 !important;
  }
  .auth-page-register .custom-check {
    gap: 8px !important;
    font-size: 11.5px !important;
    line-height: 1.35;
  }
  .auth-page-register .check-box { width: 18px; height: 18px; flex-basis: 18px; }
  .auth-page-register .btn-auth { min-height: 46px !important; height: 46px; margin-top: 0 !important; }
  .auth-page-register .auth-divider { margin: 10px 0 !important; }
  .auth-page-register .btn-google { min-height: 44px; }
  .auth-page-register .auth-note-v3 { margin-top: 8px; font-size: 10.5px; }
}

@media (min-width: 941px) and (max-height: 760px) {
  .auth-page-register .auth-note-v3 { display: none; }
  .auth-page-register .auth-card { padding-block: 17px 15px !important; }
  .auth-page-register .auth-form-v3 { margin-top: 11px !important; gap: 8px !important; }
  .auth-page-register .auth-heading-v3 h2 { font-size: 31px !important; }
}

/* Mobile registration remains single-column, but removes non-essential vertical whitespace. */
@media (max-width: 940px) {
  .auth-page-register .auth-panel { padding: 10px 14px 18px !important; }
  .auth-page-register .auth-mobile-header {
    padding: 0 0 10px !important;
    min-height: 50px;
  }
  .auth-page-register .auth-panel-inner { width: min(100%, 680px); padding-block: 0 !important; }
  .auth-page-register .auth-card { padding: 17px 16px 15px !important; border-radius: 20px !important; }
  .auth-page-register .auth-card::before { left: 18px; right: 18px; }
  .auth-page-register .auth-heading-v3 > span { margin-bottom: 3px; font-size: 9.5px; }
  .auth-page-register .auth-heading-v3 h2 { font-size: 30px !important; line-height: 1 !important; }
  .auth-page-register .auth-heading-v3 p { margin-top: 5px; font-size: 11.5px; }
  .auth-page-register .auth-form-v3 { margin-top: 12px !important; gap: 7px !important; }
  .auth-page-register .auth-form-register .form-row,
  .auth-page-register .auth-form-register .password-confirm-row { gap: 7px !important; }
  .auth-page-register .auth-form-v3 .field { gap: 3px !important; font-size: 11.5px; }
  .auth-page-register .auth-form-v3 .input-with-icon,
  .auth-page-register .auth-form-v3 .password-field,
  .auth-page-register .auth-form-v3 .input-with-icon > input {
    height: 46px !important;
    min-height: 46px !important;
  }
  .auth-page-register .auth-form-register .password-confirm-row .field {
    grid-template-rows: auto 46px auto !important;
    row-gap: 3px !important;
  }
  .auth-page-register .auth-form-v3 .field-feedback,
  .auth-page-register .auth-form-v3 .field-help,
  .auth-page-register .auth-form-v3 .field-error { min-height: 0 !important; font-size: 10px !important; line-height: 1.25 !important; }
  .auth-page-register .custom-check { gap: 7px !important; font-size: 10.5px !important; line-height: 1.3; }
  .auth-page-register .check-box { width: 18px; height: 18px; flex-basis: 18px; }
  .auth-page-register .btn-auth { height: 46px; min-height: 46px !important; margin-top: 0 !important; }
  .auth-page-register .auth-divider { margin: 8px 0 !important; }
  .auth-page-register .btn-google { min-height: 44px; }
  .auth-page-register .auth-note-v3 { display: none; }
}

@media (max-width: 940px) {
  .auth-page-register .auth-panel-inner {
    width: 100% !important;
    max-width: 680px;
    flex: 0 1 680px;
    margin: auto !important;
  }
}
@media (max-width: 420px) {
  .auth-page-register .auth-mobile-header { min-height: 44px; padding-bottom: 4px !important; }
}

/* Tablet and compact laptop auth composition: form-first, centered, never stacked below the visual. */
@media (min-width: 941px) and (max-width: 1100px) {
  .auth-page-register .auth-shell-v4 {
    display: block !important;
    height: 100svh;
    min-height: 100svh;
  }
  .auth-page-register .auth-visual { display: none !important; }
  .auth-page-register .auth-panel {
    width: 100% !important;
    height: 100svh;
    min-height: 100svh;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .auth-page-register .auth-panel-inner {
    width: min(100%, 680px) !important;
    max-width: 680px;
    flex: none;
    margin: auto !important;
  }
}
@media (max-width: 940px) {
  .auth-page-register .auth-panel {
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr);
    align-items: start !important;
  }
  .auth-page-register .auth-panel-inner {
    justify-self: center;
    align-self: center;
    flex: none;
  }
}
@media (max-width: 420px) {
  .auth-page-register .auth-panel { padding: 6px 10px 12px !important; }
  .auth-page-register .auth-mobile-header { min-height: 38px; padding-bottom: 2px !important; }
  .auth-page-register .auth-card { padding: 13px 14px 12px !important; }
  .auth-page-register .auth-heading-v3 h2 { font-size: 28px !important; }
  .auth-page-register .auth-heading-v3 p { font-size: 11px; }
  .auth-page-register .auth-form-v3 { margin-top: 9px !important; gap: 5px !important; }
  .auth-page-register .auth-form-register .form-row,
  .auth-page-register .auth-form-register .password-confirm-row { gap: 5px !important; }
  .auth-page-register .auth-form-v3 .field { gap: 2px !important; }
  .auth-page-register .custom-check { font-size: 10px !important; }
  .auth-page-register .auth-divider { margin: 6px 0 !important; }
}

/* Preserve readability on tablets and compact laptops without introducing a table scrollbar. */
@media (min-width: 761px) and (max-width: 1180px) {
  .studio-v3 .guest-table-wrap { display: none !important; }
  .studio-v3 .guest-mobile-list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 14px;
  }
  .studio-v3 .guest-mobile-card { min-width: 0; }
  .studio-v3 .guest-mobile-card footer {
    justify-content: flex-end;
    flex-wrap: wrap;
  }
}

@media (max-width: 880px) {
  .studio-v3 .guest-mobile-list { grid-template-columns: 1fr; }
}

/* The dashboard overflow panel must not consume grid width while closed. */
.studio-v3 .dashboard-event-panel .event-actions-v3 > .row-action-menu {
  position: absolute;
  right: 0;
  top: 48px;
  width: 200px;
}

.auth-oauth-consent {
  margin: 10px 12px 0;
  color: var(--v3-muted, #7f6b71);
  font-size: 11px;
  line-height: 1.55;
  text-align: center;
}
.auth-oauth-consent a { color: var(--v3-rose-dark, #793e51); font-weight: 700; }

/* ===== resources/ui/v344/01-marketing-hero-balance.css ===== */
/* Momeniva v3.4.4 — balanced marketing hero typography and media alignment. */

.romantic-marketing .romance-copy h1 .hero-title-line {
  display: block;
}

@media (min-width: 1051px) {
  .romantic-marketing .romance-hero-grid {
    align-items: start;
    gap: clamp(56px, 4.2vw, 76px);
  }

  .romantic-marketing .romance-copy h1 {
    max-width: 650px;
    margin-top: 24px;
    margin-bottom: 32px;
    font-size: clamp(72px, 5vw, 84px);
    line-height: .96;
    letter-spacing: -.035em;
  }

  .romantic-marketing .romance-copy h1 .hero-title-primary {
    white-space: nowrap;
  }

  .romantic-marketing .romance-copy h1 em {
    font-size: .9em;
    line-height: .94;
  }

  .romantic-marketing .romance-copy > p {
    max-width: 590px;
    line-height: 1.65;
  }

  .romantic-marketing .hero-video-stage {
    min-height: 0;
    margin-top: 82px;
    align-items: flex-start;
  }
}

@media (min-width: 1440px) {
  .romantic-marketing .romance-copy h1 {
    font-size: clamp(78px, 4.7vw, 86px);
  }

  .romantic-marketing .hero-video-stage {
    margin-top: 76px;
  }
}

@media (max-width: 1050px) {
  .romantic-marketing .romance-copy h1 .hero-title-primary {
    white-space: normal;
  }
}

@media (max-width: 600px) {
  .romantic-marketing .romance-copy h1 {
    font-size: clamp(46px, 13vw, 52px);
    line-height: .98;
    letter-spacing: -.025em;
    margin-bottom: 24px;
  }

  .romantic-marketing .romance-copy h1 em {
    line-height: .96;
  }
}

/* ===== resources/ui/v344/02-release-overrides.css ===== */
/* Momeniva v3.4.5 — guest actions, preview usability, auth icon, and story year picker */
.studio-v3 .guest-table .table-actions{
  display:grid;
  justify-items:end;
  gap:8px;
}
.studio-v3 .guest-table .table-actions > .btn,
.studio-v3 .guest-table .table-actions > details{
  width:100%;
}
.studio-v3 .guest-table .table-actions > .btn{
  justify-content:center;
}
.studio-v3 .guest-table .table-actions > details > summary.icon-button{
  width:100%;
  min-height:40px;
  border-radius:12px;
  border:1px solid var(--ui-border);
  background:var(--ui-surface);
  display:flex;
  align-items:center;
  justify-content:center;
}
.studio-v3 .guest-table .table-actions > details[open] > summary.icon-button{
  background:var(--ui-surface-muted);
}
.studio-v3 .guest-mobile-card footer{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.studio-v3 .guest-mobile-card footer > .btn,
.studio-v3 .guest-mobile-card footer > details,
.studio-v3 .guest-mobile-card footer summary{
  width:100%;
}

.studio-v3 .preview-copy-button{
  min-height:42px;
  border-radius:12px;
  padding-inline:14px;
}
.studio-v3 .preview-link{
  order:2;
  border-top:1px solid var(--ui-border);
  border-bottom:1px solid var(--ui-border);
  background:rgba(255,255,255,.92);
}
.studio-v3 .preview-link code{
  max-width:none;
}
.studio-v3 .preview-canvas{
  order:3;
  min-height:0;
  overflow:auto;
}
.studio-v3 .editor-preview{
  grid-template-rows:auto auto minmax(0,1fr);
}
.studio-v3 .preview-toolbar{
  align-items:flex-start;
}
.studio-v3 .preview-toolbar-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.studio-v3 .preview-device-switch{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:4px;
  border-radius:12px;
  background:var(--ui-surface-muted);
}
.studio-v3 .preview-device-switch button{
  min-width:44px;
  min-height:40px;
}
.studio-v3 .preview-device-shell{
  height:min(640px,calc(100dvh - 250px));
  min-height:460px;
}
.studio-v3 .preview-canvas.desktop .preview-device-shell{
  height:min(560px,calc(100dvh - 250px));
}

@media (max-width: 1439px){
  .studio-v3 .editor-action-buttons{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100%;
  }
  .studio-v3 .editor-action-buttons .btn{
    width:100%;
    justify-content:center;
  }
}

@media (max-width: 760px){
  .studio-v3 .preview-toolbar{
    gap:10px;
  }
  .studio-v3 .preview-toolbar-actions{
    width:100%;
    justify-content:flex-start;
  }
  .studio-v3 .preview-link{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  .studio-v3 .preview-copy-button{
    width:100%;
    justify-content:center;
  }
  .studio-v3 .preview-device-shell{
    width:min(320px,100%);
    height:min(540px,calc(100dvh - 280px));
    min-height:400px;
  }
}

.btn-google{
  gap:10px;
}
.btn-google svg{
  width:18px;
  height:18px;
  flex:0 0 auto;
}

.invite-brand{
  gap:10px;
}
.invite-brand-mark{
  width:32px;
  height:32px;
  border-radius:0;
  background:transparent;
}
.invite-brand-mark::after{
  display:none;
  content:none;
}
.invite-brand-mark img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* Momeniva v3.4.6 — visual audit corrections and preview panel refinement */
/* Registration retains compact geometry without using unreadably small copy. */
.auth-page-register .auth-heading-v3 > span,
.auth-page-register .auth-heading-v3 p,
.auth-page-register .auth-heading-v3 p a,
.auth-page-register .custom-check,
.auth-page-register .custom-check a,
.auth-page-register .auth-note-v3{
  font-size:12px !important;
  line-height:1.35 !important;
}
@media (max-width:940px){
  .auth-page-register .auth-heading-v3 > span,
  .auth-page-register .auth-heading-v3 p,
  .auth-page-register .auth-heading-v3 p a,
  .auth-page-register .custom-check,
  .auth-page-register .custom-check a{
    font-size:12px !important;
  }
}

/* Analytics information buttons keep a restrained icon but expose a full touch target. */
.metric-help{
  width:44px !important;
  height:44px !important;
  flex:0 0 44px;
  margin:-12px -10px -12px -8px;
}
.metric-help svg{width:16px;height:16px}
.metric-label{min-height:44px}

/* Sidebar upgrade CTA meets the same interaction contract as other controls. */
.studio-v3 .sidebar-upgrade a{
  min-height:44px !important;
  height:44px;
  display:flex !important;
  align-items:center;
  justify-content:center;
}

/* Guest selection uses a 44px target with an 18px visual checkbox. */
.guest-select-target{
  position:relative;
  display:inline-grid;
  place-items:center;
  width:44px;
  height:44px;
  cursor:pointer;
  border-radius:10px;
}
.guest-select-target:hover{background:var(--ui-surface-muted)}
.guest-select-target input{
  position:absolute;
  inset:0;
  width:44px !important;
  height:44px !important;
  margin:0;
  opacity:0;
  cursor:pointer;
}
.guest-select-target span{
  width:18px;
  height:18px;
  border:1px solid var(--ui-border-strong);
  border-radius:5px;
  background:#fff;
  box-shadow:inset 0 0 0 2px #fff;
}
.guest-select-target input:checked + span{
  background:var(--ui-primary);
  border-color:var(--ui-primary);
}
.guest-select-target input:focus-visible + span{
  outline:3px solid color-mix(in srgb,var(--ui-primary) 22%,transparent);
  outline-offset:3px;
}

/* Preview drawer: compact toolbar, visible copy action, and top-aligned non-clipped device. */
.studio-v3 .editor-preview{
  min-height:0;
  overflow:hidden;
  background:var(--ui-surface);
}
.studio-v3 .preview-toolbar{
  min-height:64px;
  height:auto;
  padding:10px 12px;
  align-items:center;
  background:rgba(255,255,255,.96);
}
.studio-v3 .preview-toolbar-actions{
  min-width:0;
  gap:6px;
}
.studio-v3 .preview-sync-state{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  padding:0 10px;
  border-radius:10px;
  background:var(--ui-surface-muted);
}
.studio-v3 .preview-toolbar .icon-button,
.studio-v3 .preview-device-switch button{
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
}
.studio-v3 .preview-link{
  min-height:72px;
  padding:10px 12px;
  gap:10px;
  background:#fff;
}
.studio-v3 .preview-link > div{gap:3px}
.studio-v3 .preview-link span{font-size:12px;font-weight:700}
.studio-v3 .preview-link code{font-size:11.5px}
.studio-v3 .preview-copy-button{
  min-width:118px;
  min-height:44px;
}
.studio-v3 .preview-canvas{
  place-items:start center !important;
  align-content:start;
  padding:14px !important;
  min-height:0 !important;
  overflow:auto !important;
  overscroll-behavior:contain;
}
.studio-v3 .preview-device-shell{
  flex:0 0 auto;
  margin:0 auto;
  height:620px;
  min-height:0;
  max-height:none !important;
}
.studio-v3 .preview-canvas iframe{max-height:none !important}

@media (min-width:1024px) and (max-width:1439px){
  .studio-v3 .editor-preview{
    width:min(520px,100vw) !important;
    grid-template-rows:auto auto minmax(0,1fr) !important;
  }
  .studio-v3 .preview-device-shell{
    width:min(360px,100%);
    height:640px;
  }
}
@media (min-width:1440px){
  .studio-v3 .editor-preview{
    grid-template-rows:auto auto minmax(0,1fr) !important;
  }
  .studio-v3 .preview-device-shell{
    width:min(360px,100%);
    height:640px;
  }
}
@media (max-width:760px){
  .studio-v3 .preview-toolbar{
    display:grid;
    grid-template-columns:44px minmax(0,1fr);
    gap:8px;
  }
  .studio-v3 .preview-toolbar-actions{
    display:grid;
    grid-template-columns:minmax(70px,1fr) 44px auto 44px;
    width:100%;
    justify-content:stretch;
  }
  .studio-v3 .preview-sync-state{justify-content:center;padding-inline:6px}
  .studio-v3 .preview-link{
    grid-template-columns:minmax(0,1fr);
    min-height:104px;
  }
  .studio-v3 .preview-copy-button{
    width:100%;
  }
  .studio-v3 .preview-canvas{
    padding:10px !important;
  }
  .studio-v3 .preview-device-shell{
    width:min(330px,100%);
    height:590px;
  }
}

/* Guest details trigger must remain visible; only its popover is conditional. */
.studio-v3 details.row-action-menu{
  position:relative !important;
  right:auto !important;
  top:auto !important;
  width:100% !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  opacity:1 !important;
  visibility:visible !important;
  z-index:auto !important;
}
.studio-v3 details.row-action-menu > summary.guest-action-trigger{
  width:100%;
  min-height:42px;
  justify-content:center;
  list-style:none;
}
.studio-v3 details.row-action-menu > summary.guest-action-trigger::-webkit-details-marker{display:none}
.studio-v3 details.row-action-menu > .row-action-popover{display:none}
.studio-v3 details.row-action-menu[open] > .row-action-popover{display:grid}
.btn-google .google-brand-icon,
.btn-google .google-brand-icon path{
  stroke:none !important;
}
.btn-google .google-brand-icon{width:18px;height:18px}

/* Momeniva v3.4.7 — audience fit, task-first dashboard, review workflow and event-day operations */
.hero-functional-proof{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;max-width:620px;margin:22px 0 0}.hero-functional-proof span{display:flex;align-items:center;gap:7px;min-height:36px;padding:7px 10px;border:1px solid rgba(123,61,80,.12);border-radius:12px;background:rgba(255,255,255,.48);color:#71565f;font-size:12px;font-weight:650}.hero-functional-proof svg{width:15px;height:15px;color:#7b3d50;flex:0 0 auto}.footer-coming-soon{font-size:13px;color:#9f898e;line-height:1.5}

.trust-control-section{padding:clamp(76px,9vw,124px) 0;background:linear-gradient(180deg,#fffaf7,#f7eeea)}.trust-control-shell{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(38px,7vw,90px);align-items:start}.trust-control-intro h2{margin:12px 0 18px;font:600 clamp(44px,5vw,70px)/.98 "Cormorant Garamond",serif;letter-spacing:-.035em;color:#4f303b}.trust-control-intro p{max-width:520px;margin:0;color:#78646a;font-size:16px;line-height:1.75}.trust-control-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.trust-control-grid article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:start;padding:22px;border:1px solid #ead9d3;border-radius:20px;background:rgba(255,255,255,.82);box-shadow:0 18px 44px rgba(80,48,57,.06)}.trust-control-grid article>svg{width:21px;height:21px;padding:11px;box-sizing:content-box;border-radius:13px;background:#f4e5e2;color:#7b3d50}.trust-control-grid strong{display:block;font-size:15px;color:#4f303b}.trust-control-grid p{margin:6px 0 0;color:#806c72;font-size:13px;line-height:1.65}

.dashboard-hero-compact{min-height:0;padding:8px 0 18px;align-items:center}.dashboard-hero-compact h1{font-size:clamp(34px,3.5vw,48px);margin-bottom:8px}.dashboard-hero-compact p{font-size:14px}.dashboard-hero-compact .dashboard-welcome-actions{align-items:center}
.guided-onboarding-compact{display:grid;gap:12px;padding:18px 20px;border:1px solid var(--ui-border);border-radius:18px;background:var(--ui-surface);box-shadow:var(--ui-shadow-sm);margin-bottom:16px}.guided-onboarding-compact__main{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:12px;align-items:center}.guided-onboarding-compact__main .onboarding-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--ui-primary-soft);color:var(--ui-primary)}.guided-onboarding-compact__main h2{margin:2px 0 3px;font:600 21px/1.15 var(--ui-font-display)}.guided-onboarding-compact__main p{margin:0;color:var(--ui-muted);font-size:13px}.guided-onboarding-compact__main>strong{font-size:22px;color:var(--ui-primary)}.guided-onboarding-compact .onboarding-progress{height:7px}.guided-onboarding-compact__actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.guided-onboarding-compact__actions details{position:relative;margin-left:auto}.guided-onboarding-compact__actions summary{cursor:pointer;color:var(--ui-primary);font-size:13px;font-weight:700;list-style:none}.guided-onboarding-compact__actions summary::-webkit-details-marker{display:none}.guided-onboarding-compact__actions details[open] .onboarding-steps{display:grid}.guided-onboarding-compact__actions .onboarding-steps{position:absolute;right:0;top:34px;z-index:120;width:min(420px,85vw);padding:10px;border:1px solid var(--ui-border);border-radius:16px;background:#fff;box-shadow:var(--ui-shadow-lg)}

.dashboard-action-center{padding:0;margin:0 0 18px;overflow:hidden}.dashboard-action-center .panel-head{padding:20px;border-bottom:1px solid var(--ui-border)}.dashboard-action-center .panel-head h2{margin-bottom:4px}.dashboard-action-center .panel-head p{margin:0;color:var(--ui-muted);font-size:13px}.action-center-list{display:grid}.action-center-item{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:14px;align-items:center;padding:15px 20px;border-bottom:1px solid var(--ui-border);transition:.2s}.action-center-item:last-child{border-bottom:0}.action-center-item:hover{background:var(--ui-surface-muted)}.action-center-item>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#f3ebe7;color:var(--ui-primary)}.action-center-item>span svg{width:19px;height:19px}.action-center-item strong{display:block;font-size:14px}.action-center-item p{margin:3px 0 0;color:var(--ui-muted);font-size:12.5px;line-height:1.5}.action-center-item em{font-style:normal;color:var(--ui-primary);font-size:12px;font-weight:700;white-space:nowrap}.action-center-item.tone-warning>span{background:#fff0d9;color:#976118}.action-center-item.tone-danger>span{background:#fde7eb;color:#a33e52}.action-center-item.tone-success>span{background:#e6f1e3;color:#4c6e45}.action-center-item.tone-primary>span{background:var(--ui-primary-soft)}

.event-actions-labeled{max-width:520px}.event-actions-labeled>.btn{min-height:42px}.event-actions-labeled>.btn svg{width:16px;height:16px}.event-actions-labeled>.btn-primary{order:-1}.sidebar-package-card[data-package-tone="calm"]{background:rgba(255,255,255,.62);border-color:rgba(139,91,105,.13);box-shadow:none}.sidebar-package-card[data-package-tone="calm"] .sidebar-package-icon{background:#efe6e3;color:#785765}.sidebar-package-card[data-package-tone="calm"] summary strong{font-size:12.5px}.sidebar-package-card[data-package-tone="urgent"]{box-shadow:0 14px 35px rgba(123,61,80,.14)}


.publishing-assurance,.scheduled-publish-card,.review-workflow-card{margin-top:16px;padding:17px;border:1px solid var(--ui-border);border-radius:16px;background:#fffaf7}.publishing-assurance{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:start;background:#f6f0eb}.publishing-assurance>svg{width:18px;height:18px;padding:10px;box-sizing:content-box;border-radius:11px;background:#fff;color:var(--ui-primary)}.publishing-assurance strong{display:block;font-size:13.5px}.publishing-assurance p{margin:4px 0 0;color:var(--ui-muted);font-size:12.5px;line-height:1.55}.scheduled-publish-card .field-group-head,.review-workflow-card .field-group-head{margin-bottom:14px}.scheduled-publish-state{display:grid;align-content:center;gap:3px;min-height:64px;padding:10px 14px;border-radius:13px;background:var(--ui-surface-muted)}.scheduled-publish-state small{color:var(--ui-muted);font-size:11px}.scheduled-publish-state strong{font-size:14px}.scheduled-publish-state span{font-size:12px;color:var(--ui-primary)}.review-link-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;margin-top:12px}.review-link-row code{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:12px;border-radius:12px;background:var(--ui-surface-muted);font-size:10px}.review-status{display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:start;margin-top:12px;padding:12px;border-radius:13px;background:var(--ui-surface-muted)}.review-status>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#fff;color:var(--ui-primary)}.review-status strong{display:block;font-size:13px}.review-status p{margin:3px 0 0;color:var(--ui-muted);font-size:12px;line-height:1.5}.review-status-approved{background:#eaf3e7}.review-status-changes_requested{background:#fff0e3}

.review-page{min-height:100vh;background:radial-gradient(circle at 15% 10%,#f4ddd9,transparent 30%),linear-gradient(145deg,#fffaf7,#f4ece9)}.review-shell{min-height:100vh;display:grid;place-items:center;padding:32px 18px}.review-card{width:min(720px,100%);padding:clamp(28px,5vw,52px);border:1px solid #ead8d2;border-radius:28px;background:rgba(255,255,255,.9);box-shadow:0 30px 90px rgba(80,46,56,.14)}.review-card>.brand{margin-bottom:28px}.review-card h1{margin:8px 0 12px;font:600 clamp(40px,7vw,66px)/.96 "Cormorant Garamond",serif;color:#4f303b}.review-card>p{color:#79666c;font-size:15px;line-height:1.7}.review-actions{margin:22px 0}.review-state{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;margin:18px 0;padding:14px;border-radius:15px;background:#f6f0ed}.review-state>svg{width:20px;height:20px;padding:10px;box-sizing:content-box;border-radius:12px;background:#fff}.review-state p{margin:4px 0 0;color:#756269}.review-state.success{background:#eaf3e7}.review-state.warning{background:#fff0e3}.review-form{display:grid;gap:14px;padding-top:18px;border-top:1px solid #ead8d2}.review-form label{display:grid;gap:8px;font-size:13px;font-weight:700}.review-form textarea{width:100%;padding:13px;border:1px solid #dbc7c1;border-radius:13px;resize:vertical}.review-form>div{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.review-card>small{display:block;margin-top:18px;color:#927f85;font-size:11px}

.event-day-page{display:grid;gap:18px}.event-day-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px;border-radius:22px;background:linear-gradient(135deg,#51313d,#7b3d50);color:#fff}.event-day-hero h1{margin:6px 0;font:600 clamp(34px,4vw,52px)/1 "Cormorant Garamond",serif}.event-day-hero p{margin:0;color:#e8d8dc}.event-day-countdown{text-align:right}.event-day-countdown strong{display:block;font-size:32px}.event-day-countdown small{display:block;max-width:280px;margin-top:4px;color:#e8d8dc}.event-day-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.event-day-stats article{display:flex;align-items:center;gap:12px;padding:18px;border:1px solid var(--ui-border);border-radius:17px;background:#fff}.event-day-stats article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--ui-primary-soft);color:var(--ui-primary)}.event-day-stats small,.event-day-stats strong{display:block}.event-day-stats small{color:var(--ui-muted);font-size:11px}.event-day-stats strong{font-size:25px}.event-day-actions{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:28px;align-items:center;padding:24px}.event-day-actions h2{margin:5px 0 8px}.event-day-actions p{margin:0;color:var(--ui-muted);line-height:1.6}.event-day-actions>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.event-day-contact{padding:24px}.event-day-contact>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:12px}.event-day-contact article{padding:18px;border-radius:15px;background:var(--ui-surface-muted)}.event-day-contact small{display:block;color:var(--ui-muted)}.event-day-contact strong{display:block;margin:5px 0}.event-day-contact p{color:var(--ui-muted)}.event-day-contact a{color:var(--ui-primary);font-weight:700}

@media (min-width:700px) and (max-width:920px){.emotion-features{grid-template-columns:repeat(2,minmax(0,1fr))}.process-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.process-steps article{min-height:0}.romantic-price-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,1fr));overflow-x:auto;padding-bottom:12px}.romantic-price-grid .price-card{min-width:260px}}
@media (max-width:900px){.trust-control-shell{grid-template-columns:1fr}.trust-control-intro{max-width:650px}.dashboard-hero-compact{display:grid;gap:14px}.event-actions-labeled{max-width:none}.event-day-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.event-day-actions{grid-template-columns:1fr}.event-day-contact>div{grid-template-columns:1fr}}
@media (max-width:760px){.hero-functional-proof{grid-template-columns:1fr;margin-top:16px}.feeling-marquee{display:none}.event-types-strip{display:none}.emotion-section,.gentle-process,.romantic-pricing,.romantic-faq,.trust-control-section{padding-top:64px!important;padding-bottom:64px!important}.emotion-card{min-height:0!important}.trust-control-grid{grid-template-columns:1fr}.trust-control-grid article{padding:17px}.dashboard-hero-compact h1{font-size:32px}.dashboard-hero-compact .dashboard-welcome-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}.dashboard-hero-compact .btn{width:100%}.guided-onboarding-compact{padding:15px}.guided-onboarding-compact__main{grid-template-columns:40px minmax(0,1fr)}.guided-onboarding-compact__main>strong{grid-column:2;font-size:16px}.guided-onboarding-compact__actions{align-items:stretch;display:grid}.guided-onboarding-compact__actions details{margin:0}.guided-onboarding-compact__actions summary{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid var(--ui-border);border-radius:12px}.guided-onboarding-compact__actions .onboarding-steps{position:static;width:100%;margin-top:8px}.action-center-item{grid-template-columns:40px minmax(0,1fr);padding:14px}.action-center-item em{grid-column:2}.event-actions-labeled{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%}.event-actions-labeled>.btn{width:100%}.event-actions-labeled>.btn-primary{grid-column:1/-1}review-link-row{grid-template-columns:1fr}.review-link-row .btn{width:100%}.review-form>div{display:grid}.review-form .btn{width:100%}.event-day-hero{display:grid}.event-day-countdown{text-align:left}.event-day-stats{grid-template-columns:1fr 1fr}.event-day-actions>div:last-child{grid-template-columns:1fr}.event-day-contact{padding:18px}}
@media (max-width:430px){.dashboard-hero-compact .dashboard-welcome-actions{grid-template-columns:1fr}.event-actions-labeled{grid-template-columns:1fr!important}.event-actions-labeled>.btn-primary{grid-column:auto}.event-day-stats{grid-template-columns:1fr}}


/* Momeniva v3.4.9 — minimal copy and typography hierarchy */
:root{
  --type-hero:clamp(72px,5.6vw,84px);
  --type-h2:clamp(48px,4.3vw,60px);
  --type-h2-support:clamp(36px,3.2vw,44px);
  --type-h3:clamp(22px,2vw,28px);
  --type-body:16px;
  --type-label:14px;
  --type-helper:13px;
  --type-meta:12px;
}
.section-kicker{
  display:inline-flex;
  align-items:center;
  color:#8c5261;
  font:700 12px/1.2 "DM Sans",sans-serif;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.romantic-marketing .romance-copy>p{max-width:570px;line-height:1.65}
.romantic-marketing .hero-functional-proof{grid-template-columns:repeat(3,max-content);gap:9px 14px}
.romantic-marketing .romance-trust-compact{gap:9px;margin-top:22px}
.romantic-marketing .romance-trust-compact svg{width:17px;height:17px;color:#8a4055}
.romantic-marketing .romance-trust-compact p{font-size:13px}
.romantic-marketing .emotion-features{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.romantic-marketing .emotion-card{min-height:300px}
.romantic-marketing .emotion-heading h2,
.romantic-marketing .process-heading h2,
.romantic-marketing .romantic-section-head h2,
.romantic-marketing .romantic-faq h2{font-size:var(--type-h2);line-height:1.02}
.romantic-marketing .emotion-card h3{font-size:var(--type-h3);line-height:1.15}
.romantic-marketing .emotion-card p,
.romantic-marketing .process-steps p,
.romantic-marketing .trust-control-grid p{font-size:15px;line-height:1.6}
.romantic-marketing .price-card>p{min-height:0}
.romantic-marketing .price-card ul{gap:11px}
.romantic-marketing .romantic-final{min-height:460px}
.romantic-marketing .romantic-final h2{font-size:clamp(52px,5vw,68px)}

.studio-v3 .dashboard-priority{display:grid;gap:13px;padding:18px 20px;margin-bottom:16px}
.studio-v3 .dashboard-priority__head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}
.studio-v3 .dashboard-priority__head h2{margin:4px 0;font:700 20px/1.25 "DM Sans",sans-serif}
.studio-v3 .dashboard-priority__head p{margin:0;color:var(--ui-muted);font-size:13px}
.studio-v3 .dashboard-priority__head>strong{color:var(--ui-primary);font-size:21px}
.studio-v3 .dashboard-priority__actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.studio-v3 .dashboard-priority__actions details{position:relative;margin-left:auto}
.studio-v3 .dashboard-priority__actions summary{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border:1px solid var(--ui-border);border-radius:11px;cursor:pointer;font-size:13px;font-weight:700;list-style:none}
.studio-v3 .dashboard-priority__actions summary::-webkit-details-marker{display:none}
.studio-v3 .dashboard-priority__actions details .onboarding-steps{position:absolute;right:0;top:48px;z-index:120;display:none;width:min(420px,86vw);padding:10px;border:1px solid var(--ui-border);border-radius:15px;background:#fff;box-shadow:var(--ui-shadow-lg)}
.studio-v3 .dashboard-priority__actions details[open] .onboarding-steps{display:grid}
.studio-v3 .dashboard-priority__alerts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:4px}
.studio-v3 .dashboard-priority__alerts>a{display:grid;grid-template-columns:36px minmax(0,1fr);gap:9px;align-items:center;padding:10px 12px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface-muted)}
.studio-v3 .dashboard-priority__alerts>a>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#fff;color:var(--ui-primary)}
.studio-v3 .dashboard-priority__alerts strong,.studio-v3 .dashboard-priority__alerts small{display:block}
.studio-v3 .dashboard-priority__alerts strong{font-size:13px}
.studio-v3 .dashboard-priority__alerts small{margin-top:2px;color:var(--ui-primary);font-size:12px}

.studio-v3 .editor-required-note{margin:0 0 14px;padding:9px 12px;border-radius:10px;background:var(--ui-surface-muted);color:var(--ui-muted);font-size:12.5px;line-height:1.45}
.studio-v3 .editor-panel-heading h2,
.studio-v3 .field-group-head h3,
.studio-v3 .panel h2,
.studio-v3 .panel h3,
.studio-v3 .settings-panel h2,
.studio-v3 .analytics-chart-panel h2,
.studio-v3 .guest-journey-panel h2{font-family:"DM Sans",sans-serif}
.studio-v3 .editor-panel-heading h2{font-size:24px;line-height:1.2}
.studio-v3 .field-group-head h3{font-size:16px;line-height:1.3}
.studio-v3 .form-label{font-size:var(--type-label)}
.studio-v3 .form-help,
.studio-v3 .field-group-head p,
.studio-v3 .editor-panel-heading p{font-size:var(--type-helper);line-height:1.5}
.studio-v3 .form-field__optional:empty{display:none}

@media (min-width:700px) and (max-width:1050px){
  .romantic-marketing .emotion-features{grid-template-columns:repeat(2,minmax(0,1fr))}
  .romantic-marketing .emotion-card:last-child{grid-column:1/-1}
}
@media (max-width:760px){
  .romantic-marketing .hero-functional-proof{grid-template-columns:1fr}
  .romantic-marketing .romance-trust-compact{align-items:center;text-align:left}
  .romantic-marketing .emotion-features{grid-template-columns:1fr}
  .romantic-marketing .romance-copy h1{font-size:clamp(44px,13vw,52px)}
  .romantic-marketing .emotion-heading h2,
  .romantic-marketing .process-heading h2,
  .romantic-marketing .romantic-section-head h2,
  .romantic-marketing .romantic-faq h2{font-size:clamp(34px,10vw,42px)}
  .studio-v3 .dashboard-priority{padding:15px}
  .studio-v3 .dashboard-priority__head{grid-template-columns:1fr}
  .studio-v3 .dashboard-priority__head>strong{font-size:17px}
  .studio-v3 .dashboard-priority__actions{display:grid;grid-template-columns:1fr 1fr}
  .studio-v3 .dashboard-priority__actions .btn{width:100%}
  .studio-v3 .dashboard-priority__actions details{grid-column:1/-1;margin:0}
  .studio-v3 .dashboard-priority__actions summary{justify-content:center;min-height:44px}
  .studio-v3 .dashboard-priority__actions details .onboarding-steps{position:static;width:100%;margin-top:8px}
  .studio-v3 .dashboard-priority__alerts{grid-template-columns:1fr}
}

/* ===== Footer brand refinement v3.5.0 ===== */
.footer-brand-lockup{
  display:inline-flex;
  align-items:center;
  width:clamp(190px,22vw,240px);
  max-width:100%;
  margin-bottom:14px;
}
.footer-brand-lockup img{
  display:block;
  width:100%;
  height:auto;
  filter:brightness(0) invert(1);
  opacity:.98;
}
.romantic-footer .footer-grid > div:first-child p{
  max-width:360px;
}
@media (max-width:760px){
  .footer-brand-lockup{
    width:200px;
    margin-bottom:12px;
  }
}

/* ===== Footer logo refinement v3.4.11 ===== */
.footer-brand-lockup{
  display:inline-flex;
  align-items:center;
  gap:14px;
  width:auto;
  max-width:100%;
  margin-bottom:16px;
}
.footer-brand-symbol{
  width:58px;
  height:58px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.footer-brand-symbol img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.footer-brand-name{
  display:block;
  color:#fffaf6;
  font-family:"Cormorant Garamond", Georgia, serif;
  font-size:44px;
  font-weight:600;
  line-height:0.95;
  letter-spacing:-0.03em;
}
.romantic-footer .footer-grid > div:first-child p{
  max-width:370px;
}
.romantic-footer .made-by{
  display:block;
  margin-top:10px;
}
@media (max-width:760px){
  .footer-brand-lockup{
    gap:12px;
    margin-bottom:14px;
  }
  .footer-brand-symbol{
    width:50px;
    height:50px;
  }
  .footer-brand-name{
    font-size:38px;
  }
}

/* ===== Footer logo size alignment v3.4.12 ===== */
.footer-brand-lockup{
  gap:10px;
  margin-bottom:8px;
}
.footer-brand-symbol{
  width:42px;
  height:42px;
}
.footer-brand-name{
  font-size:27px;
  font-weight:600;
  letter-spacing:-0.02em;
}
.romantic-footer .footer-grid > div:first-child{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.romantic-footer .footer-grid > div:first-child p{
  max-width:380px;
  margin:0 0 6px;
}
.romantic-footer .made-by{
  margin-top:0;
}
@media (max-width:760px){
  .footer-brand-lockup{
    margin-bottom:8px;
  }
  .footer-brand-symbol{
    width:38px;
    height:38px;
  }
  .footer-brand-name{
    font-size:24px;
  }
}

/* ===== Momeniva v3.4.13 — dashboard, guests, help, and preview refinements ===== */
.studio-v3 .dashboard-hero-active{
  margin-top: 10px;
  padding: 18px 18px 22px;
  border: 1px solid var(--ui-border);
  border-radius: 24px;
  background: linear-gradient(90deg, rgba(255,255,255,.84), rgba(244,229,232,.86));
}
.studio-v3 .dashboard-hero-active > div:first-child{
  padding-right: 18px;
}
.studio-v3 .dashboard-hero-active .dashboard-welcome-actions{
  gap: 10px;
  align-self: center;
}
.studio-v3 .dashboard-hero-active .dashboard-welcome-actions .btn{
  min-height: 54px;
  padding-inline: 18px;
}

.studio-v3 .guest-table-wrap{
  overflow: visible;
  max-height: none;
}
.studio-v3 .guest-table th:last-child,
.studio-v3 .guest-table td:last-child{
  padding-right: 24px;
}
.studio-v3 .guest-table .guest-actions-heading{
  text-align: right;
}
.studio-v3 .guest-table .guest-table-actions{
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  width: auto;
  margin-left: auto;
}
.studio-v3 .guest-table .guest-table-actions > details,
.studio-v3 .guest-table .guest-table-actions > button{
  flex: 0 0 auto;
}
.studio-v3 .guest-table .guest-table-actions .icon-button{
  width: 44px;
  height: 44px;
  border-radius: 12px;
}
.studio-v3 .guest-table .guest-table-actions .row-action-popover{
  right: 0;
  top: calc(100% + 8px);
}

.help-article-layout aside{
  display: grid;
  gap: 18px;
}
.help-side-card{
  padding: 22px;
}
.help-related{
  gap: 10px;
}
.help-related a{
  display: grid;
  gap: 4px;
  padding: 14px 14px;
  border-radius: 14px;
}
.help-related a small{
  display: block;
  color: var(--ui-muted);
  line-height: 1.45;
}

.studio-v3 .preview-toolbar{
  min-height: 72px;
  padding: 12px 14px;
}
.studio-v3 .preview-toolbar-actions{
  gap: 10px;
  flex-wrap: nowrap;
}
.studio-v3 .preview-sync-trigger{
  position: relative;
}
.studio-v3 .preview-sync-trigger[data-state="dirty"]{
  color: #8e5b1d;
  background: #fff5e3;
}
.studio-v3 .preview-sync-trigger[data-state="saving"]{
  color: var(--ui-primary);
  background: var(--ui-primary-soft);
}
.studio-v3 .preview-sync-trigger[data-state="error"]{
  color: #9d3447;
  background: #fff1f3;
}
.studio-v3 .preview-link{
  gap: 12px;
  align-items: center;
}
.studio-v3 .preview-link > div{
  min-width: 0;
}
.studio-v3 .preview-link code{
  max-width: 100%;
}
.studio-v3 .editor-preview{
  overflow: hidden;
}
.studio-v3 .preview-canvas{
  min-height: 0;
  padding: 16px 14px 18px;
  overflow: auto;
}
.studio-v3 .preview-device-shell{
  width: min(316px, 100%);
  height: min(628px, calc(100dvh - 248px));
  min-height: 500px;
  margin-inline: auto;
}
.studio-v3 .preview-canvas.desktop .preview-device-shell{
  width: 100%;
  height: min(560px, calc(100dvh - 248px));
  min-height: 420px;
}

@media (min-width: 1280px){
  .studio-v3 .editor-layout-v3{
    grid-template-columns: minmax(0, 1fr) 410px !important;
  }
}

@media (max-width: 1024px){
  .help-article-layout aside{
    gap: 14px;
  }
}

@media (max-width: 760px){
  .studio-v3 .dashboard-hero-active{
    padding: 16px 16px 18px;
  }
  .studio-v3 .guest-table th:last-child,
  .studio-v3 .guest-table td:last-child{
    padding-right: 16px;
  }
  .studio-v3 .preview-toolbar-actions{
    flex-wrap: wrap;
  }
  .studio-v3 .preview-device-shell{
    width: min(312px,100%);
    height: min(560px, calc(100dvh - 270px));
    min-height: 430px;
  }
}

.studio-v3 .guest-table .guest-table-actions > details,
.studio-v3 .guest-table .guest-table-actions > button{width:auto !important;}
