:root{--pink:#ff8fe8;--pink2:#ffb6f8;--dark:#1f1724;--text:#3a2d3e;--muted:#766a7a;--soft:#fff3fd;--line:#ffd7fb;--white:#fff}*{box-sizing:border-box}body{margin:0;font-family:'Poppins',Arial,sans-serif;color:var(--text);background:linear-gradient(180deg,#fff 0%,#fff6fe 55%,#fff 100%)}a{text-decoration:none;color:inherit}.container{width:min(1160px,92%);margin:auto}.nav{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.85);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-inner{height:74px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:900;font-size:24px;color:var(--dark)}.brand span{color:var(--pink)}.menu{display:flex;gap:22px;align-items:center;color:var(--muted);font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;border-radius:999px;border:0;cursor:pointer;font-weight:800;transition:.25s}.btn-primary{background:linear-gradient(135deg,var(--pink),var(--pink2));color:#fff;box-shadow:0 12px 28px rgba(255,143,232,.32)}.btn-primary:hover{transform:translateY(-2px)}.btn-light{background:#fff;color:var(--dark);border:1px solid var(--line)}.hero{padding:78px 0 50px;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;width:480px;height:480px;border-radius:50%;background:rgba(255,182,248,.32);right:-150px;top:-120px;filter:blur(4px)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:46px;align-items:center;position:relative}.badge{display:inline-block;background:#fff;border:1px solid var(--line);color:var(--pink);font-weight:800;border-radius:999px;padding:9px 16px;margin-bottom:18px}.hero h1{font-size:clamp(38px,5vw,70px);line-height:.98;margin:0;color:var(--dark);letter-spacing:-2px}.hero p{font-size:18px;line-height:1.7;color:var(--muted);max-width:610px}.hero-card{background:#fff;border:1px solid var(--line);border-radius:34px;padding:22px;box-shadow:0 24px 70px rgba(255,143,232,.18);transform:rotate(1deg)}.mock{min-height:470px;border-radius:26px;background:linear-gradient(160deg,#2a1730,#ff8fe8);padding:28px;color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}.mock:before{content:"";position:absolute;inset:auto -80px -120px auto;width:260px;height:260px;background:#fff;border-radius:50%;opacity:.14}.mock small{letter-spacing:3px;text-transform:uppercase}.mock h2{font-size:42px;margin:12px 0}.mock .date{background:rgba(255,255,255,.18);padding:16px;border-radius:20px;backdrop-filter:blur(10px)}.section{padding:64px 0}.section-title{text-align:center;margin-bottom:34px}.section-title h2{font-size:38px;margin:0;color:var(--dark)}.section-title p{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:0 14px 35px rgba(255,143,232,.11)}.card h3{margin-top:8px;color:var(--dark)}.icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:var(--soft);color:var(--pink);font-size:24px}.templates{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.template{border:1px solid var(--line);background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 10px 26px rgba(255,143,232,.09)}.template-img{height:230px;background:linear-gradient(145deg,#fff0fd,#ffb6f8);display:grid;place-items:center;font-size:56px}.template-body{padding:18px}.price-box{background:linear-gradient(135deg,#fff,#fff0fd);border:1px solid var(--line);border-radius:34px;padding:34px;text-align:center;box-shadow:0 18px 42px rgba(255,143,232,.15)}.price{font-size:54px;font-weight:900;color:var(--dark)}.form-shell{display:grid;grid-template-columns:.78fr 1.22fr;gap:28px;align-items:start}.side-panel{background:linear-gradient(145deg,#2a1730,#ff8fe8);color:#fff;border-radius:34px;padding:34px;position:sticky;top:92px}.form-card{background:#fff;border:1px solid var(--line);border-radius:34px;padding:30px;box-shadow:0 20px 55px rgba(255,143,232,.12)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.field{display:flex;flex-direction:column;gap:8px}.field.full{grid-column:1/-1}.field label{font-weight:800;color:var(--dark)}input,select,textarea{width:100%;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:#fffafd;color:var(--text);outline:none;font:inherit}textarea{min-height:110px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--pink);box-shadow:0 0 0 4px rgba(255,182,248,.22)}.pay-card{max-width:680px;margin:50px auto;background:#fff;border:1px solid var(--line);border-radius:34px;padding:34px;text-align:center;box-shadow:0 20px 60px rgba(255,143,232,.18)}.invite-body{background:#fff7fe}.invite{min-height:100vh}.invite-cover{min-height:560px;background:linear-gradient(160deg,rgba(42,23,48,.7),rgba(255,143,232,.65)),var(--cover);background-size:cover;background-position:center;display:grid;place-items:center;text-align:center;color:#fff;padding:40px}.invite-cover h1{font-size:clamp(42px,8vw,92px);margin:10px 0}.invite-cover p{font-size:22px}.invite-panel{margin-top:-70px;position:relative}.invite-card{background:#fff;border:1px solid var(--line);border-radius:34px;padding:34px;box-shadow:0 18px 50px rgba(0,0,0,.08)}.invite-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.detail{text-align:center;background:#fff7fe;border-radius:22px;padding:22px}.map iframe{width:100%;height:360px;border:0;border-radius:28px}.rsvp{max-width:700px;margin:30px auto}.footer{padding:32px 0;text-align:center;color:var(--muted);border-top:1px solid var(--line)}.admin-table{width:100%;border-collapse:collapse;background:#fff;border-radius:20px;overflow:hidden}.admin-table th,.admin-table td{padding:14px;border-bottom:1px solid var(--line);text-align:left}.admin-table th{background:#fff0fd;color:var(--dark)}@media(max-width:900px){.hero-grid,.form-shell{grid-template-columns:1fr}.cards,.templates,.invite-grid{grid-template-columns:1fr 1fr}.side-panel{position:relative;top:auto}.menu{display:none}}@media(max-width:560px){.cards,.templates,.invite-grid,.form-grid{grid-template-columns:1fr}.hero{padding-top:46px}.mock{min-height:360px}.nav-inner{height:64px}.price{font-size:42px}}


/* Mejoras personalizables para invitaciones */
.mini-preview{margin-top:26px;padding:26px;border-radius:28px;background:linear-gradient(135deg,var(--c1,#ff8fe8),var(--c2,#7c3aed));box-shadow:0 18px 45px rgba(0,0,0,.18);min-height:190px;display:flex;flex-direction:column;justify-content:center;gap:8px}.mini-preview span{font-size:12px;text-transform:uppercase;letter-spacing:3px;opacity:.8}.mini-preview strong{font-size:32px;line-height:1.1}.mini-preview small{font-size:15px;opacity:.9}.invite-body{background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 12%,#fff),#fff 45%,color-mix(in srgb,var(--secondary) 10%,#fff))}.invite-hero-long{min-height:100vh;position:relative;display:grid;place-items:center;text-align:center;color:#fff;padding:60px 20px;background-image:linear-gradient(135deg,rgba(0,0,0,.52),rgba(0,0,0,.18)),var(--cover),linear-gradient(135deg,var(--primary),var(--secondary));background-size:cover;background-position:center;background-attachment:fixed;overflow:hidden}.invite-hero-long:before,.invite-hero-long:after{content:"";position:absolute;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));filter:blur(2px);opacity:.35}.invite-hero-long:before{width:420px;height:420px;left:-160px;top:-120px}.invite-hero-long:after{width:300px;height:300px;right:-110px;bottom:-100px}.hero-overlay{position:absolute;inset:24px;border:1px solid rgba(255,255,255,.36);border-radius:36px}.invite-hero-content{position:relative;z-index:2;max-width:920px}.invite-kicker{display:inline-flex;align-items:center;justify-content:center;padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(12px);font-weight:900;letter-spacing:2px;text-transform:uppercase;font-size:12px}.script-title{font-family:'Great Vibes',cursive;font-size:clamp(42px,9vw,96px);margin:24px 0 0;text-shadow:0 10px 28px rgba(0,0,0,.22)}.invite-hero-content h1{font-size:clamp(44px,8vw,108px);line-height:.95;margin:6px 0 18px;font-weight:900;text-shadow:0 14px 40px rgba(0,0,0,.3)}.hero-message{font-size:clamp(17px,2.4vw,24px);max-width:760px;margin:0 auto 26px;line-height:1.7;text-shadow:0 6px 18px rgba(0,0,0,.28)}.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.long-panel{margin-top:-80px}.center-card{text-align:center}.center-card h2{font-size:clamp(30px,4vw,52px);margin:10px 0;color:var(--dark)}.ornament{font-size:34px;color:var(--primary)}.date-big{display:inline-flex;gap:18px;align-items:center;margin-top:20px;padding:18px 26px;border-radius:26px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 18%,#fff),color-mix(in srgb,var(--secondary) 16%,#fff));border:1px solid color-mix(in srgb,var(--primary) 34%,#fff)}.date-big span{font-size:58px;font-weight:900;color:var(--secondary);line-height:1}.date-big div{font-weight:900;color:var(--dark);text-align:left}.date-big small{display:block;color:var(--muted)}.section-tight{padding:38px 0}.details-grid .detail{border:1px solid color-mix(in srgb,var(--primary) 35%,#fff);box-shadow:0 16px 40px color-mix(in srgb,var(--primary) 14%,transparent)}.detail i{display:block;font-style:normal;font-size:34px;margin-bottom:10px}.split-section{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;padding:48px 0}.photo-frame{border-radius:38px;padding:14px;background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 24px 70px color-mix(in srgb,var(--primary) 22%,transparent);transform:rotate(-1deg)}.photo-frame img{width:100%;height:560px;object-fit:cover;border-radius:28px;display:block;background:#fff}.story-card{background:#fff;border:1px solid color-mix(in srgb,var(--primary) 28%,#fff);border-radius:38px;padding:38px;box-shadow:0 18px 55px rgba(0,0,0,.07)}.story-card h2{font-size:clamp(30px,4vw,52px);margin:16px 0;color:var(--dark)}.story-card p{font-size:17px;line-height:1.8;color:var(--muted)}.countdown-card{text-align:center;padding:36px;border-radius:38px;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;box-shadow:0 22px 60px color-mix(in srgb,var(--primary) 28%,transparent)}.countdown{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:22px}.countdown div{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.26);border-radius:24px;padding:22px 12px;backdrop-filter:blur(10px)}.countdown strong{display:block;font-size:42px}.countdown small{text-transform:uppercase;letter-spacing:1px}.map-card{text-align:center}.rsvp-card{border-color:color-mix(in srgb,var(--primary) 28%,#fff)}.success-msg{background:color-mix(in srgb,var(--primary) 14%,#fff);border:1px solid color-mix(in srgb,var(--primary) 30%,#fff);padding:14px 18px;border-radius:18px;font-weight:800}.custom-invite .btn-primary{background:linear-gradient(135deg,var(--primary),var(--secondary));box-shadow:0 14px 32px color-mix(in srgb,var(--primary) 35%,transparent)}.custom-invite input:focus,.custom-invite select:focus,.custom-invite textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 18%,transparent)}
@supports not (color: color-mix(in srgb,#fff,#000)){.invite-body{background:#fff7fe}.details-grid .detail,.story-card,.rsvp-card{border-color:#ffd7fb}.countdown-card,.custom-invite .btn-primary{background:linear-gradient(135deg,var(--primary),var(--secondary))}}
@media(max-width:900px){.invite-hero-long{background-attachment:scroll}.split-section{grid-template-columns:1fr}.photo-frame img{height:420px}.countdown{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.hero-overlay{inset:12px;border-radius:24px}.photo-frame img{height:330px}.countdown strong{font-size:32px}.date-big span{font-size:46px}}

/* ===== Módulo invitados / confirmaciones ===== */
.stats-grid{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:16px;margin:24px 0}
.stat-card{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:22px;padding:20px;text-align:center;box-shadow:0 12px 35px rgba(0,0,0,.06)}
.stat-card b{display:block;font-size:34px;color:var(--primary,#ff8fe8);line-height:1}
.stat-card span{display:block;margin-top:8px;color:#6b7280;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.04em}
.admin-upload{margin:25px 0;padding:24px}
.admin-msg{padding:14px 18px;border-radius:16px;background:#eefaf2;color:#177245;font-weight:700;margin:15px 0}
.guests-table td{vertical-align:middle!important}
.status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.status-pendiente{background:#fff7ed;color:#c2410c}
.status-asiste{background:#ecfdf5;color:#047857}
.status-no_asiste{background:#fef2f2;color:#b91c1c}
.copy-input{width:260px;max-width:100%;border:1px solid #eee;border-radius:12px;padding:10px;background:#fafafa;font-size:12px;color:#555}
.btn-danger{background:#fff1f2;color:#be123c;border:1px solid #ffe4e6}
.guest-welcome{background:linear-gradient(135deg,color-mix(in srgb,var(--primary,#ff8fe8) 18%,#fff),#fff);border:1px solid color-mix(in srgb,var(--primary,#ff8fe8) 35%,#fff);border-radius:18px;padding:14px 18px;margin-bottom:18px;text-align:center}
@media(max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}.admin-table{font-size:13px}.copy-input{width:180px}}
@media(max-width:560px){.stats-grid{grid-template-columns:1fr}.admin-table{display:block;overflow-x:auto;white-space:nowrap}}

/* ===== Identidad formal de fiesta / panel 2026 ===== */
:root{--pink:#a88455;--pink2:#d4b98d;--dark:#1f1d1a;--text:#3c3833;--muted:#77716a;--soft:#f6f1e9;--line:#e4ddd2;--white:#fff}
body{font-family:'Montserrat','Poppins',Arial,sans-serif;background:linear-gradient(180deg,#fbfaf7 0%,#f5f1ea 52%,#fbfaf7 100%)}.nav{background:rgba(250,248,244,.92);border-bottom-color:#e5ded4}.brand{font-family:'Cormorant Garamond',serif;font-size:30px;letter-spacing:-1px}.brand span{color:#a88455}.btn{border-radius:12px}.btn-primary{background:linear-gradient(135deg,#25221e,#826b4e);box-shadow:0 12px 28px rgba(58,47,34,.18)}.btn-light{background:#fff;color:#2c2925;border-color:#ddd5ca}.badge{background:#f8f5ef;border-color:#dfd6ca;color:#866c4e}.section-title h2{font-family:'Cormorant Garamond',serif;color:#26231f}.form-card,.pay-card,.card,.template,.price-box{border-color:#e2dbd1;box-shadow:0 18px 48px rgba(56,48,39,.08)}input,select,textarea{background:#fcfbf9;border-color:#dfd8cf}.admin-table th{background:#f1ece4;color:#2a2723}.admin-table td{border-bottom-color:#ece6de}
.formal-site{background:#f7f4ee}.formal-hero{padding:72px 0 80px;background:radial-gradient(circle at 80% 10%,rgba(203,178,138,.2),transparent 32%),#f7f4ee}.formal-hero-grid{display:grid;grid-template-columns:1fr .9fr;gap:58px;align-items:center}.formal-copy h1{font:600 clamp(48px,6vw,82px)/.93 'Cormorant Garamond',serif;letter-spacing:-2px;margin:8px 0 24px;color:#211f1c}.formal-copy p{max-width:660px;color:#6e6861;line-height:1.8;font-size:17px}.formal-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.wedding-demo{background:#fff;padding:13px;border-radius:34px;box-shadow:0 30px 80px rgba(58,48,37,.16);transform:rotate(1deg)}.wedding-demo-photo{height:390px;border-radius:24px 24px 0 0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.08)),url('../img/default-cover.svg') center/cover}.wedding-demo-copy{text-align:center;padding:32px 22px 28px}.wedding-demo-copy>span{font:400 42px/1 'Great Vibes',cursive;color:#8b7050}.wedding-demo-copy h2{font:600 48px/1 'Cormorant Garamond',serif;margin:8px 0}.wedding-demo-copy p{font-size:13px;color:#7b746d}.demo-count{display:flex;justify-content:center;align-items:end;gap:8px;margin-top:20px}.demo-count b{font:600 32px 'Cormorant Garamond',serif}.demo-count small{text-transform:uppercase;font-size:8px;letter-spacing:1px;padding-bottom:8px}.formal-title span,.formal-kicker{display:block;text-transform:uppercase;letter-spacing:3px;font-size:11px;font-weight:800;color:#9a7b56;margin-bottom:8px}.event-showcase{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.event-theme{background:#fff;border:1px solid #e4ddd3;border-radius:22px;padding:10px 10px 18px;box-shadow:0 12px 35px rgba(57,49,40,.06)}.event-theme h3{font:600 28px 'Cormorant Garamond',serif;margin:16px 10px 4px}.event-theme p{margin:0 10px;color:#7b746c;font-size:12px}.event-visual{height:210px;border-radius:16px;padding:18px;display:flex;flex-direction:column;justify-content:space-between}.event-visual span{text-transform:uppercase;letter-spacing:2px;font-size:9px;font-weight:800}.event-visual b{font:600 54px/1 'Cormorant Garamond',serif}.event-theme.wedding .event-visual{background:linear-gradient(150deg,#e6ded0,#bda580);color:#40362d}.event-theme.xv .event-visual{background:linear-gradient(150deg,#3a223b,#a06390);color:#f3dca0}.event-theme.baptism .event-visual{background:linear-gradient(150deg,#f5f5ef,#b9ccc5);color:#687b74}.event-theme.birthday .event-visual{background:linear-gradient(150deg,#f9c866,#dd6a4e);color:#fff}.event-theme.baby .event-visual{background:linear-gradient(150deg,#e8f1f3,#d9c3d5);color:#627983}.event-theme.corporate .event-visual{background:linear-gradient(150deg,#111827,#28364e);color:#d2b277}.event-theme.graduation .event-visual{background:linear-gradient(150deg,#1f3048,#52718e);color:#e6c881}.event-theme.communion .event-visual{background:linear-gradient(150deg,#faf8f1,#d7cdb6);color:#8c7959}.editor-feature{background:#1e1c19;color:#f7f2e9}.editor-feature-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.editor-feature h2{font:600 56px/1 'Cormorant Garamond',serif;margin:8px 0 18px}.editor-feature p{color:#c9c1b5;line-height:1.8}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.feature-list>div{display:flex;gap:16px;padding:22px;border:1px solid #393631;border-radius:18px;background:#25221f}.feature-list b{font:600 28px 'Cormorant Garamond',serif;color:#c4a475}.feature-list span{font-size:12px;color:#bfb8ad;line-height:1.5}.feature-list strong{display:block;color:#fff;font-size:14px;margin-bottom:4px}.formal-price{text-align:center;background:#fff;border:1px solid #e3dcd1;border-radius:28px;padding:46px 28px;box-shadow:0 20px 60px rgba(50,43,35,.08)}.formal-price>span{text-transform:uppercase;letter-spacing:3px;font-size:10px;font-weight:800;color:#907656}.formal-price .price{font:600 68px 'Cormorant Garamond',serif;margin:10px 0}.formal-price .price small{font:700 13px 'Montserrat',sans-serif}.formal-price p{color:#756f68;max-width:650px;margin:0 auto 24px}
@media(max-width:980px){.formal-hero-grid,.editor-feature-grid{grid-template-columns:1fr}.event-showcase{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.formal-hero{padding-top:45px}.formal-copy h1{font-size:50px}.wedding-demo-photo{height:300px}.event-showcase,.feature-list{grid-template-columns:1fr}.editor-feature h2{font-size:44px}}
