@import url('https://fonts.googleapis.com/css2?family=Bungee+Tint&family=Cormorant+Garamond:wght@400;500;600;700&family=Fleur+De+Leah&family=Inter:wght@300;400;500;600;700;800&family=Monomaniac+One&family=Montserrat:wght@300;400;500;600;700;800&family=Playfair+Display:wght@400;500;600;700&family=Playwrite+BR+Guides&family=Playwrite+DE+Grund+Guides&display=swap');
:root{
    --brand:#e95186;
    --brand-hover:#d94378;
    --brand-soft:#fff0f5;

    --bg:#f7f7f9;
    --surface:#fff;
    --text:#28242a;
    --muted:#746f77;
    --line:#e9e6eb;

    --radius:14px;
    --radius-lg:20px;

    --shadow:0 14px 45px rgba(28,22,30,.06);
}

*{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased}
body{
    margin:0;
    background:var(--bg);
    color:var(--text);
    font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
a{color:inherit}
button,input,textarea,select{font:inherit}
h1,h2,h3,p{margin-top:0}

.eyebrow{
    font-size:10px;
    letter-spacing:.16em;
    font-weight:900;
    color:var(--brand);
}

.btn{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 18px;
    border:0;
    border-radius:12px;
    background:var(--brand);
    color:#fff;
    text-decoration:none;
    font-weight:800;
    cursor:pointer;
}
.btn:hover{background:var(--brand-hover)}
.btn.secondary{
    background:#fff;
    color:var(--text);
    border:1px solid var(--line);
}
.btn.big{width:100%;min-height:49px;margin-top:18px}

label{
    display:block;
    margin:13px 0 6px;
    font-size:12px;
    font-weight:800;
}
input,textarea,select{
    width:100%;
    border:1px solid #ddd7df;
    background:#fff;
    border-radius:11px;
    padding:12px 13px;
    outline:none;
    color:var(--text);
}
input,select{min-height:44px}
textarea{min-height:115px;resize:vertical}
input:focus,textarea:focus,select:focus{
    border-color:var(--brand);
    box-shadow:0 0 0 4px rgba(233,81,134,.08);
}

.notice{
    padding:12px 14px;
    border-radius:11px;
    margin-bottom:14px;
    font-size:13px;
}
.notice.error{background:#fff0f2;color:#a83b48}
.notice.success{background:#edf9f3;color:#21734f}

.grid2{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

/* HOME */
.home-page{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:24px;
    background:
        radial-gradient(circle at 15% 10%,#ffeaf1,transparent 35%),
        #faf9fa;
}
.home-card{
    max-width:680px;
    text-align:center;
    padding:45px;
}
.home-card h1{
    font-size:58px;
    line-height:1.03;
    letter-spacing:-.04em;
    margin:10px 0 18px;
}
.home-card p{
    max-width:560px;
    margin:0 auto 25px;
    color:var(--muted);
    font-size:16px;
    line-height:1.6;
}
.home-actions{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:18px;
}
.text-link{
    font-weight:750;
    text-decoration:none;
}

/* AUTH */
.auth-page{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:22px;
}
.auth-card{
    width:min(430px,100%);
    padding:32px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:22px;
    box-shadow:var(--shadow);
}
.auth-card h1{
    font-size:34px;
    margin:8px 0 24px;
}

/* TOPBAR */
.topbar{
    position:sticky;
    top:0;
    z-index:50;
    height:68px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:0 32px;
    background:rgba(255,255,255,.96);
    border-bottom:1px solid var(--line);
    backdrop-filter:blur(14px);
}
.brand-mark{
    display:flex;
    align-items:center;
    gap:10px;
    text-decoration:none;
}
.brand-mark span{
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:9px;
    background:var(--brand);
    color:#fff;
}
.topbar>div{
    font-size:13px;
    color:var(--muted);
}
.topbar a{text-decoration:none}

/* APP */
.app-shell{
    min-height:calc(100vh - 68px);
    display:grid;
    grid-template-columns:230px 1fr;
}
.sidebar{
    padding:28px 16px;
    background:#fff;
    border-right:1px solid var(--line);
}
.sidebar-label{
    display:block;
    margin:0 12px 15px;
    color:#9a949d;
    font-size:10px;
    font-weight:900;
    letter-spacing:.15em;
}
.sidebar nav{
    display:flex;
    flex-direction:column;
    gap:5px;
}
.sidebar nav a{
    padding:11px 13px;
    border-radius:10px;
    text-decoration:none;
    color:#66616a;
    font-size:14px;
    font-weight:650;
}
.sidebar nav a:hover,
.sidebar nav a.active{
    background:var(--brand-soft);
    color:var(--brand);
}
.event-side-title{
    padding:0 12px 20px;
    margin-bottom:20px;
    border-bottom:1px solid var(--line);
}
.event-side-title small{
    display:block;
    color:var(--muted);
    text-transform:uppercase;
    font-size:10px;
    margin-bottom:3px;
}
.event-side-title b{
    display:block;
    font-size:24px;
}

.app-content,
.single-page{
    width:100%;
    max-width:1450px;
    padding:38px 42px 70px;
    margin:0 auto;
}
.single-page{max-width:1180px}

.page-title{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:26px;
}
.page-title h1{
    margin:0 0 5px;
    font-size:36px;
    letter-spacing:-.035em;
}
.page-title p{
    margin:0;
    color:var(--muted);
}
.page-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.metric-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:15px;
    margin-bottom:22px;
}
.metric-grid.five{grid-template-columns:repeat(5,1fr)}
.metric-grid article{
    min-height:116px;
    padding:20px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:18px;
    box-shadow:0 5px 18px rgba(30,25,32,.025);
}
.metric-grid span{
    display:block;
    color:var(--muted);
    font-size:12px;
    margin-bottom:8px;
}
.metric-grid b{
    font-size:29px;
    letter-spacing:-.04em;
}

.panel{
    padding:24px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:20px;
    box-shadow:0 5px 18px rgba(30,25,32,.025);
}
.panel-title h2{font-size:19px}

.empty-state{
    min-height:240px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    color:var(--muted);
}
.empty-state>span{
    font-size:44px;
    color:var(--brand);
}
.empty-state h3{color:var(--text)}

.event-table{display:flex;flex-direction:column}
.event-row{
    min-height:72px;
    display:grid;
    grid-template-columns:2fr 1fr 1fr auto;
    gap:18px;
    align-items:center;
    border-bottom:1px solid var(--line);
}
.event-row:last-child{border-bottom:0}
.event-row small{
    display:block;
    margin-top:3px;
    color:var(--muted);
}
.event-row>div:last-child{
    display:flex;
    gap:10px;
}
.event-row a{
    font-size:12px;
    font-weight:800;
    text-decoration:none;
}

/* FORMS */
.form-page{
    width:min(900px,calc(100% - 30px));
    margin:38px auto 70px;
}
.form-card{
    background:#fff;
    border:1px solid var(--line);
    border-radius:22px;
    padding:32px;
    box-shadow:var(--shadow);
}
.form-card h1{
    font-size:34px;
    margin:7px 0 28px;
}
.form-card hr{
    border:0;
    border-top:1px solid var(--line);
    margin:30px 0;
}

/* CLIENT CARDS */
.cards-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}
.event-card{
    background:#fff;
    border:1px solid var(--line);
    border-radius:20px;
    padding:22px;
}
.event-card h2{
    margin:6px 0;
    font-size:22px;
}
.event-card p{color:var(--muted)}
.event-card-stat{
    padding-top:14px;
    margin-top:14px;
    border-top:1px solid var(--line);
    color:var(--muted);
}

/* MEMORIES */
.memory-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:17px;
}
.memory-card{
    overflow:hidden;
    background:#fff;
    border:1px solid var(--line);
    border-radius:18px;
}
.memory-card img,
.memory-card video{
    display:block;
    width:100%;
    max-height:430px;
    object-fit:cover;
}
.memory-card footer{
    padding:12px 14px;
}
.memory-card footer b,
.memory-card footer small{display:block}
.memory-card footer small{
    margin-top:2px;
    color:var(--muted);
}
.memory-audio{
    padding:58px 18px;
    background:#fff5f8;
}
.memory-audio>span{
    display:block;
    text-align:center;
    font-size:36px;
    margin-bottom:12px;
}
.memory-audio audio{width:100%}
.memory-card.message{
    min-height:230px;
    padding:24px;
    display:flex;
    flex-direction:column;
    justify-content:center;
}
.memory-card.message>span{
    color:var(--brand);
    font-family:Georgia,serif;
    font-size:58px;
    line-height:.6;
}
.memory-card.message p{
    font-family:Georgia,serif;
    font-size:17px;
    line-height:1.55;
}
.memory-card.message footer{padding:0}

/* EDITOR */
.editor-page{min-height:100vh;background:#f5f4f6}
.editor-layout{
    min-height:100vh;
    display:grid;
    grid-template-columns:390px 1fr;
}
.editor-controls{
    padding:30px 24px 70px;
    background:#fff;
    border-right:1px solid var(--line);
}
.editor-intro{
    padding-bottom:23px;
    border-bottom:1px solid var(--line);
}
.editor-intro h1{
    margin:6px 0 7px;
    font-size:28px;
}
.editor-intro p{
    margin:0;
    color:var(--muted);
    font-size:13px;
}
.editor-section{
    padding:23px 0;
    border-bottom:1px solid var(--line);
}
.editor-section-head{
    margin-bottom:14px;
}
.editor-section-head b,
.editor-section-head small{display:block}
.editor-section-head small{
    margin-top:3px;
    color:var(--muted);
    font-size:11px;
}
.editor-color-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:9px 0;
}
.editor-color-row>div b,
.editor-color-row>div small{display:block}
.editor-color-row>div b{font-size:12px}
.editor-color-row>div small{
    color:var(--muted);
    font-size:10px;
}
.color-input-wrap{
    margin:0;
    display:flex;
    align-items:center;
    gap:8px;
    padding:5px 9px 5px 5px;
    border:1px solid var(--line);
    border-radius:10px;
    cursor:pointer;
}
.color-input-wrap input{
    width:34px;
    height:34px;
    min-height:0;
    padding:1px;
    border:0;
    border-radius:7px;
    cursor:pointer;
}
.color-input-wrap span{
    font-family:ui-monospace,Consolas,monospace;
    font-size:10px;
}
.editor-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    padding-top:24px;
}

.editor-preview-side{
    position:sticky;
    top:0;
    height:100vh;
    overflow:auto;
    padding:24px;
}
.preview-toolbar{
    max-width:900px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin:0 auto 13px;
}
.preview-toolbar>div{
    display:flex;
    gap:5px;
    padding:4px;
    background:#eae7eb;
    border-radius:10px;
}
.device-btn{
    border:0;
    border-radius:7px;
    padding:7px 10px;
    background:transparent;
    cursor:pointer;
    font-size:11px;
}
.device-btn.active{background:#fff}
.preview-stage{
    min-height:calc(100vh - 90px);
    display:flex;
    justify-content:center;
}
.preview-event{
    width:min(900px,100%);
    min-height:760px;
    padding:42px 22px;
    border-radius:20px;
    background:
        linear-gradient(
            180deg,
            var(--event-bg) 0%,
            var(--event-bg) 30%,
            #fff 86%
        );
    box-shadow:0 20px 55px rgba(35,25,30,.09);
    transition:width .2s ease;
}
.preview-event.mobile{width:390px}
.preview-event-head{
    max-width:590px;
    margin:auto;
    text-align:center;
}
.preview-event-head>span{
    display:block;
    font-size:30px;
    color:var(--event-primary);
    font-family:Georgia,serif;
    line-height:1;
}
.preview-event-head h2{
    margin:4px 0 8px;
    color:var(--event-primary);
    font-size:75px;
    line-height:.92;
    font-weight:500;
}
.preview-ornament{
    color:var(--event-primary);
    margin:4px 0 8px;
}
.preview-event-head p{
    max-width:520px;
    margin:auto;
    line-height:1.4;
}
.preview-card{
    width:min(520px,100%);
    margin:22px auto;
    padding:18px;
    background:#fff;
    border:1px solid rgba(50,30,40,.08);
    border-radius:18px;
    box-shadow:0 14px 40px rgba(40,25,30,.06);
}
.preview-fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}
.preview-fields span,
.preview-message-box{
    height:37px;
    display:flex;
    align-items:center;
    padding:0 10px;
    border:1px solid #e1dbe0;
    border-radius:9px;
    color:#9b9399;
    font-size:10px;
}
.preview-types{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:6px;
    margin:10px 0;
}
.preview-types div{
    min-height:65px;
    display:grid;
    place-content:center;
    text-align:center;
    border-radius:11px;
    background:color-mix(in srgb,var(--event-button) 9%,white);
    color:var(--event-button-text);
}
.preview-types small{
    display:block;
    margin-top:3px;
    font-size:9px;
}
.preview-message-box{height:80px}
.preview-submit{
    min-height:40px;
    display:grid;
    place-items:center;
    margin-top:10px;
    background:var(--event-button);
    color:var(--event-button-text);
    border-radius:10px;
    font-size:11px;
    font-weight:800;
}
.preview-bottom{
    max-width:590px;
    margin:27px auto 0;
    text-align:center;
}
.preview-divider,
.public-divider{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:12px;
}
.preview-divider span,
.public-divider span{
    flex:1;
    height:1px;
    background:color-mix(in srgb,var(--event-primary) 28%,transparent);
}
.preview-divider b,
.public-divider b{
    color:var(--event-primary);
    font-weight:400;
}
.preview-bottom strong{
    display:block;
    font-size:11px;
}
.preview-bottom p{
    margin-top:10px;
    font-family:Georgia,serif;
    font-style:italic;
    font-size:11px;
}

/* PUBLIC EVENT */
.public-event{
    min-height:100vh;
    color:#3c3237;
    background:
        linear-gradient(
            180deg,
            var(--event-bg) 0%,
            var(--event-bg) 30%,
            #fff 86%
        );
}
.public-head{
    max-width:700px;
    margin:auto;
    padding:44px 20px 18px;
    text-align:center;
}
.public-kicker{
    display:block;
    color:var(--event-primary);
    font-size:45px;
    line-height:1;
    margin-bottom:6px;
}
.public-head h1{
    margin:0 0 10px;
    color:var(--event-primary);
    font-size:75px;
    line-height:.92;
    font-weight:500;
}
.public-head-icon{
    color:var(--event-primary);
    margin-bottom:9px;
}
.public-head p{
    max-width:580px;
    margin:auto;
    line-height:1.4;
    font-size:16px;
}

.font-title-caligrafia .public-head h1,
.font-title-caligrafia .preview-event-head h2{
    font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive;
}
.font-title-serifada .public-head h1{font-family:Georgia,"Times New Roman",serif}
.font-title-moderna .public-head h1{font-family:Inter,Arial,sans-serif}
.font-title-classica .public-head h1{font-family:"Times New Roman",Times,serif}
.font-title-minimalista .public-head h1{font-family:Arial,Helvetica,sans-serif}

.font-body-moderna{font-family:Inter,Arial,sans-serif}
.font-body-serifada{font-family:Georgia,"Times New Roman",serif}
.font-body-classica{font-family:"Times New Roman",Times,serif}
.font-body-minimalista{font-family:Arial,Helvetica,sans-serif}

.send-card{
    width:min(570px,calc(100% - 28px));
    margin:0 auto;
    padding:20px;
    background:#fff;
    border:1px solid rgba(60,40,50,.09);
    border-radius:22px;
    box-shadow:0 18px 55px rgba(55,35,45,.07);
}
.guest-hello{
    padding:11px 12px;
    margin-bottom:12px;
    text-align:center;
    background:color-mix(in srgb,var(--event-bg) 45%,white);
    border-radius:11px;
}
.send-radio{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.send-type-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:8px;
    margin:14px 0;
}
.send-type-grid label{
    min-height:73px;
    margin:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:1px solid transparent;
    border-radius:14px;
    background:color-mix(in srgb,var(--event-button) 10%,white);
    color:var(--event-button-text);
    cursor:pointer;
    font-size:20px;
}
.send-type-grid span{
    margin-top:4px;
    font-size:11px;
    font-weight:750;
}

/* active tab — no JS required */
#sendMessage:checked ~ .send-ui label[for="sendMessage"],
#sendAudio:checked ~ .send-ui label[for="sendAudio"],
#sendPhoto:checked ~ .send-ui label[for="sendPhoto"],
#sendVideo:checked ~ .send-ui label[for="sendVideo"]{
    background:#fff;
    border-color:var(--event-button);
}

.send-pane{display:none}
#sendMessage:checked ~ .send-ui .pane-message,
#sendAudio:checked ~ .send-ui .pane-audio,
#sendPhoto:checked ~ .send-ui .pane-photo,
#sendVideo:checked ~ .send-ui .pane-video{
    display:block;
}

.pane-title{
    text-align:center;
    margin:7px 0 14px;
}
.pane-title b,
.pane-title small{display:block}
.pane-title b{
    font-family:Georgia,serif;
    font-size:20px;
}
.pane-title small{
    margin-top:3px;
    color:#8d8187;
}

.media-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
}
.media-actions label{
    min-height:108px;
    margin:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    border:1px solid color-mix(in srgb,var(--event-button) 25%,white);
    border-radius:15px;
    background:color-mix(in srgb,var(--event-button) 6%,white);
    cursor:pointer;
}
.media-actions label>span{
    color:var(--event-button);
    font-size:27px;
}
.media-actions label>b{
    margin-top:3px;
    font-size:12px;
}
.media-actions label>small{
    margin-top:2px;
    color:#8e8288;
    font-size:10px;
}

.native-file{
    position:absolute!important;
    left:-10000px!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important;
}
.file-feedback{
    margin-top:10px;
    font-size:11px;
    color:#766b71;
}

.public-submit{
    width:100%;
    min-height:49px;
    margin-top:17px;
    border:0;
    border-radius:13px;
    background:var(--event-button);
    color:var(--event-button-text);
    font-weight:850;
    cursor:pointer;
}

/* AUDIO */
.audio-start{
    padding:12px 0 6px;
    text-align:center;
}
.audio-start>p{
    font-family:Georgia,serif;
    font-size:20px;
    margin-bottom:13px;
}
.audio-record-button{
    width:112px;
    height:112px;
    margin:0 auto 9px;
    display:grid;
    place-items:center;
    border:12px solid color-mix(in srgb,var(--event-button) 13%,white);
    border-radius:50%;
    background:var(--event-button);
    color:var(--event-button-text);
    cursor:pointer;
    touch-action:manipulation;
}
.audio-record-button>span{font-size:36px}
.audio-record-button.recording{
    animation:recordPulse 1.1s ease-in-out infinite;
}
@keyframes recordPulse{
    0%,100%{transform:scale(1);box-shadow:0 0 0 0 color-mix(in srgb,var(--event-button) 20%,transparent)}
    50%{transform:scale(1.05);box-shadow:0 0 0 14px color-mix(in srgb,var(--event-button) 7%,transparent)}
}
.audio-start>b{
    display:block;
    font-size:16px;
}
.audio-start>small{
    display:block;
    margin-top:5px;
    color:#8f7c84;
}
.audio-review{
    padding-top:8px;
}
.audio-review-head{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:12px;
}
.audio-review-head>span{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:11px;
    background:color-mix(in srgb,var(--event-button) 9%,white);
}
.audio-review-head b,
.audio-review-head small{display:block}
.audio-review-head small{
    color:#8d8187;
    margin-top:2px;
}
.audio-review audio{
    width:100%;
}
.audio-again{
    width:100%;
    min-height:43px;
    margin-top:10px;
    border:1px solid var(--event-button);
    border-radius:11px;
    background:#fff;
    color:var(--event-button);
    font-weight:800;
    cursor:pointer;
}
.audio-fallback{
    margin-top:14px;
    padding-top:13px;
    border-top:1px solid #eee7ea;
    text-align:center;
}
.audio-fallback span{
    display:block;
    margin-bottom:5px;
    color:#8f8389;
    font-size:10px;
}
.audio-fallback label{
    margin:0;
    color:var(--event-button);
    font-size:11px;
    cursor:pointer;
}
.audio-error{
    margin-top:9px;
    color:#ae3d4b;
    text-align:center;
    font-size:11px;
}
.hidden{display:none!important}

/* PUBLIC FOOTER */
.public-footer{
    max-width:650px;
    margin:0 auto;
    padding:28px 18px 65px;
    text-align:center;
}
.public-counter{
    margin:0;
    font-size:14px;
    line-height:1.45;
}
.public-final{
    margin-top:12px;
    font-family:Georgia,serif;
    font-style:italic;
    color:#76696f;
}

/* ALBUM */
.album-page{
    min-height:100vh;
    background:#f7edf1;
}
.album-cover{
    min-height:60vh;
    display:grid;
    place-content:center;
    padding:35px;
    text-align:center;
    color:#fff;
    background:linear-gradient(145deg,var(--event-bg),var(--event-primary));
}
.album-cover>span{
    font-size:10px;
    letter-spacing:.16em;
    font-weight:900;
}
.album-cover h1{
    margin:8px 0;
    font-family:Georgia,serif;
    font-size:clamp(48px,8vw,86px);
    font-weight:500;
}
.album-cover p{
    font-family:Georgia,serif;
    font-style:italic;
}
.album-grid{
    max-width:1320px;
    margin:-30px auto 0;
    padding:0 18px 70px;
    columns:4 260px;
    column-gap:16px;
}
.album-item{
    break-inside:avoid;
    overflow:hidden;
    margin-bottom:16px;
    background:#fff;
    border-radius:17px;
    box-shadow:0 14px 40px rgba(45,30,38,.08);
}
.album-item img,
.album-item video{
    display:block;
    width:100%;
}
.album-item footer{
    padding:10px 12px;
    font-size:11px;
    color:#766d72;
}
.album-audio{
    padding:25px;
}
.album-audio b{
    display:block;
    margin-bottom:11px;
}
.album-audio audio{width:100%}
.album-quote{
    min-height:220px;
    padding:25px;
}
.album-quote>span{
    color:var(--event-primary);
    font-family:Georgia,serif;
    font-size:60px;
    line-height:.6;
}
.album-quote p{
    font-family:Georgia,serif;
    font-size:17px;
    line-height:1.55;
}

/* RESPONSIVE */
@media(max-width:1050px){
    .metric-grid.five{grid-template-columns:repeat(3,1fr)}
    .cards-grid{grid-template-columns:repeat(2,1fr)}
    .memory-grid{grid-template-columns:repeat(2,1fr)}
    .editor-layout{grid-template-columns:350px 1fr}
    .album-grid{columns:2 240px}
}

@media(max-width:760px){
    .grid2{grid-template-columns:1fr}
    .home-card h1{font-size:42px}

    .app-shell{display:block}
    .sidebar{
        border-right:0;
        border-bottom:1px solid var(--line);
    }
    .sidebar nav{flex-direction:row;overflow-x:auto}
    .app-content,.single-page{padding:26px 18px 55px}

    .page-title{
        align-items:flex-start;
        flex-direction:column;
    }
    .metric-grid,
    .metric-grid.five{
        grid-template-columns:repeat(2,1fr);
    }
    .cards-grid,.memory-grid{grid-template-columns:1fr}
    .event-row{grid-template-columns:1fr}

    .editor-layout{display:block}
    .editor-preview-side{
        position:relative;
        height:auto;
    }
    .editor-controls{
        border-right:0;
        border-bottom:1px solid var(--line);
    }

    .album-grid{columns:1}
}

@media(max-width:600px){
    .topbar{padding:0 16px}

    .public-head{
        padding-top:32px;
    }
    .public-kicker{
        font-size:32px;
    }
    .public-head h1{
        font-size:58px;
    }
    .public-head p{
        font-size:14px;
    }

    .send-card{
        padding:16px;
    }

    .media-actions{
        grid-template-columns:1fr 1fr;
    }

    .preview-event-head>span{font-size:24px}
    .preview-event-head h2{font-size:56px}
}


/* =========================================================
   V2.0.1 — CONTADOR EM PÍLULA
   ========================================================= */

.public-counter,
.preview-counter-pill{
    width:min(525px,92%);
    margin:0 auto !important;
    padding:12px 22px;
    display:block;
    text-align:center;
    border:1px solid color-mix(in srgb,var(--event-primary) 28%,white);
    border-radius:999px;
    background:color-mix(in srgb,var(--event-bg) 68%,white);
    color:#5b3e49;
    font-size:14px;
    line-height:1.35;
    font-weight:500;
}

.preview-counter-pill{
    font-size:11px;
    padding:9px 16px;
}

.public-final{
    margin-top:14px !important;
}


/* =========================================================
   V2.1 — PRESENTES
   ========================================================= */
.gift-after-memory{
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:12px;
    align-items:center;
    margin:12px 0 16px;
    padding:14px;
    border:1px solid color-mix(in srgb,var(--event-button) 20%,white);
    border-radius:15px;
    background:color-mix(in srgb,var(--event-bg) 55%,white);
}
.gift-after-memory>span{font-size:28px}
.gift-after-memory b{display:block;font-size:13px}
.gift-after-memory p{margin:3px 0 0;font-size:11px;color:#7f747a}
.gift-after-memory a{
    padding:9px 12px;
    border-radius:10px;
    background:var(--event-button);
    color:var(--event-button-text);
    text-decoration:none;
    font-size:11px;
    font-weight:850;
}
.public-gift-link{
    display:inline-flex;
    margin-top:14px;
    padding:10px 16px;
    border:1px solid color-mix(in srgb,var(--event-button) 28%,white);
    border-radius:999px;
    background:#fff;
    color:var(--event-button);
    text-decoration:none;
    font-size:12px;
    font-weight:800;
}

/* Master financial */
.gift-order-table{display:flex;flex-direction:column}
.gift-order-row{
    min-height:68px;
    display:grid;
    grid-template-columns:44px minmax(200px,1.7fr) 120px 110px 120px;
    gap:14px;
    align-items:center;
    border-bottom:1px solid var(--line);
}
.gift-order-row:last-child{border-bottom:0}
.gift-order-icon{
    width:40px;height:40px;
    display:grid;place-items:center;
    border-radius:12px;
    background:#fff2f6;
    font-size:21px;
}
.gift-order-row small{color:var(--muted)}
.status-badge{
    display:inline-flex;
    width:max-content;
    padding:6px 9px;
    border-radius:999px;
    background:#f1eff1;
    font-size:9px;
    font-weight:900;
    letter-spacing:.06em;
}
.status-received{background:#e9f8f1;color:#20734f}
.status-pending{background:#fff6df;color:#8c6a16}
.status-refunded,.status-cancelled,.status-failed{background:#fff0f2;color:#a43e4a}

.switch-line{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 0 20px;
    padding:14px;
    border:1px solid var(--line);
    border-radius:14px;
}
.switch-line input{width:20px;height:20px;min-height:0}
.switch-line span b,.switch-line span small{display:block}
.switch-line span small{margin-top:2px;color:var(--muted);font-size:11px}
.webhook-box,.financial-explain{
    margin-top:18px;
    padding:14px;
    border-radius:13px;
    background:#f8f6f7;
}
.webhook-box small{display:block;margin-bottom:6px}
.webhook-box code{display:block;overflow:auto}
.webhook-box p,.financial-explain p{margin:7px 0 0;color:var(--muted);font-size:12px}

/* Client gift builder */
.gift-config-form{padding-bottom:80px}
.gift-settings-card{margin-bottom:18px}
.gift-builder{
    display:grid;
    grid-template-columns:210px 1fr;
    gap:18px;
    align-items:start;
}
.gift-category-sidebar{
    position:sticky;
    top:88px;
    padding:16px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:17px;
}
.gift-category-sidebar>b{
    display:block;
    margin:0 8px 9px;
    font-size:11px;
    color:var(--muted);
    text-transform:uppercase;
    letter-spacing:.12em;
}
.gift-category-sidebar a{
    display:block;
    padding:9px 8px;
    border-radius:9px;
    text-decoration:none;
    font-size:12px;
}
.gift-category-sidebar a:hover{background:var(--brand-soft);color:var(--brand)}
.gift-catalog-content{display:grid;gap:18px}
.gift-catalog-section{
    padding:22px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:19px;
}
.gift-catalog-title{
    display:flex;
    gap:12px;
    align-items:center;
    margin-bottom:18px;
}
.gift-catalog-title>span{
    width:48px;height:48px;
    display:grid;place-items:center;
    border-radius:14px;
    background:#fff1f5;
    font-size:25px;
}
.gift-catalog-title h2{margin:0;font-size:21px}
.gift-catalog-title p{margin:3px 0 0;color:var(--muted);font-size:11px}
.gift-subcategory{margin-top:17px}
.gift-subcategory h3{font-size:13px;margin-bottom:10px}
.gift-select-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:9px;
}
.gift-select-card{
    position:relative;
    min-height:105px;
    margin:0;
    padding:13px 8px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff;
    cursor:pointer;
}
.gift-select-card input{position:absolute;opacity:0}
.gift-select-card i{font-style:normal;font-size:27px}
.gift-select-card b{margin-top:5px;font-size:11px}
.gift-select-check{
    position:absolute;
    right:7px;top:7px;
    width:20px;height:20px;
    display:none;
    place-items:center;
    border-radius:50%;
    background:var(--brand);
    color:#fff;
    font-size:10px;
}
.gift-select-card:has(input:checked){
    border-color:var(--brand);
    background:var(--brand-soft);
}
.gift-select-card:has(input:checked) .gift-select-check{display:grid}
.custom-gift-row{
    display:grid;
    grid-template-columns:70px 1fr 40px;
    gap:8px;
    margin-bottom:8px;
}
.remove-custom-gift{
    border:1px solid var(--line);
    border-radius:10px;
    background:#fff;
    cursor:pointer;
    font-size:20px;
}
.sticky-save{
    position:sticky;
    bottom:14px;
    display:flex;
    justify-content:flex-end;
    margin-top:18px;
    padding:10px;
    border:1px solid var(--line);
    border-radius:16px;
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(12px);
}

/* Gift public */
.gift-public-page{
    min-height:100vh;
    padding:0 18px 70px;
    background:
        linear-gradient(180deg,var(--event-bg) 0%,#fff 58%);
}
.gift-public-head{
    max-width:680px;
    margin:auto;
    padding:45px 10px 28px;
    text-align:center;
}
.gift-back{
    display:block;
    width:max-content;
    margin:0 auto 24px;
    color:#766a70;
    text-decoration:none;
    font-size:12px;
}
.gift-public-head>span{
    color:var(--event-primary);
    font-size:10px;
    font-weight:900;
    letter-spacing:.15em;
}
.gift-public-head h1{
    margin:7px 0 12px;
    color:var(--event-primary);
    font-family:Georgia,serif;
    font-size:52px;
    font-weight:500;
}
.gift-public-head p{
    max-width:560px;
    margin:auto;
    color:#766a70;
    line-height:1.5;
}
.gift-public-grid{
    width:min(1050px,100%);
    margin:auto;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
}
.gift-public-card{
    min-height:205px;
    padding:20px 13px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    border:1px solid color-mix(in srgb,var(--event-primary) 16%,white);
    border-radius:20px;
    background:#fff;
    cursor:pointer;
    box-shadow:0 12px 35px rgba(45,30,38,.04);
    transition:transform .18s ease,box-shadow .18s ease;
}
.gift-public-card:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 42px rgba(45,30,38,.08);
}
.gift-public-card i{font-style:normal;font-size:44px}
.gift-public-card b{margin-top:10px;font-size:14px}
.gift-public-card small{margin-top:4px;color:#8d8087}
.gift-public-card>span{
    margin-top:14px;
    padding:8px 12px;
    border-radius:999px;
    background:var(--event-button);
    color:var(--event-button-text);
    font-size:10px;
    font-weight:850;
}
.gift-symbolic-note{
    max-width:700px;
    margin:28px auto 0;
    padding:15px;
    text-align:center;
    color:#756a70;
    font-size:11px;
}
.gift-symbolic-note b{display:block;color:#4c4147;margin-bottom:4px}
.gift-symbolic-note p{margin:0;line-height:1.5}

/* dialog */
.gift-dialog{
    width:min(450px,calc(100% - 24px));
    padding:0;
    border:0;
    border-radius:22px;
    box-shadow:0 30px 90px rgba(30,20,25,.22);
}
.gift-dialog::backdrop{
    background:rgba(30,20,25,.48);
    backdrop-filter:blur(4px);
}
.gift-dialog form{padding:28px}
.gift-dialog-close{
    position:absolute;
    right:14px;top:14px;
    width:34px;height:34px;
    border:0;border-radius:10px;
    background:#f5f1f3;
    cursor:pointer;
    font-size:20px;
}
.gift-dialog-icon{
    width:62px;height:62px;
    display:grid;place-items:center;
    margin-bottom:12px;
    border-radius:18px;
    background:#fff1f5;
    font-size:34px;
}
.gift-dialog h2{margin:5px 0 20px;font-size:28px}
.money-input{
    display:grid;
    grid-template-columns:48px 1fr;
    align-items:center;
    border:1px solid #ddd7df;
    border-radius:13px;
    overflow:hidden;
}
.money-input>span{
    display:grid;place-items:center;
    height:52px;
    background:#f8f6f7;
    color:#766a70;
    font-weight:800;
}
.money-input input{
    height:52px;
    border:0;
    border-radius:0;
    font-size:22px;
    font-weight:800;
}
.gift-quick-values{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:6px;
    margin-top:8px;
}
.gift-quick-values button{
    padding:8px 4px;
    border:1px solid var(--line);
    border-radius:9px;
    background:#fff;
    cursor:pointer;
    font-size:10px;
}
.gift-fee-info{
    display:flex;
    justify-content:space-between;
    gap:10px;
    margin-top:17px;
    padding:10px 12px;
    border-radius:10px;
    background:#f8f6f7;
    font-size:10px;
    color:#776b71;
}

/* PIX */
.gift-pix-page{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:24px;
    background:#f7f5f6;
}
.gift-pix-card{
    width:min(500px,100%);
    padding:30px;
    text-align:center;
    background:#fff;
    border:1px solid var(--line);
    border-radius:24px;
    box-shadow:0 22px 65px rgba(35,25,30,.08);
}
.gift-pix-icon{font-size:46px;margin:10px 0 4px}
.gift-pix-card h1{margin:0;font-size:27px}
.gift-pix-value{
    margin:8px 0 20px;
    font-size:31px;
    font-weight:900;
}
.pix-qr{
    width:min(280px,85%);
    aspect-ratio:1/1;
    object-fit:contain;
}
.gift-pix-card>div>p{color:var(--muted);font-size:12px}
.pix-copy-box{
    display:grid;
    gap:8px;
    margin-top:12px;
}
.pix-copy-box textarea{
    height:90px;
    min-height:90px;
    font-family:ui-monospace,Consolas,monospace;
    font-size:10px;
}
.pix-waiting{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:8px;
    margin-top:15px;
    color:#7d7076;
    font-size:11px;
}
.pix-waiting>span{
    width:9px;height:9px;
    border-radius:50%;
    background:#e9a331;
    animation:pixBlink 1s infinite alternate;
}
@keyframes pixBlink{to{opacity:.25}}
.gift-paid>span{
    width:68px;height:68px;
    display:grid;place-items:center;
    margin:10px auto;
    border-radius:50%;
    background:#e9f8f1;
    color:#25835b;
    font-size:30px;
}
.gift-paid p{color:var(--muted)}
.gift-payment-note{
    display:block;
    margin-top:18px;
    color:#9a9095;
    font-size:9px;
}

@media(max-width:1000px){
    .gift-select-grid{grid-template-columns:repeat(3,1fr)}
    .gift-public-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
    .gift-builder{display:block}
    .gift-category-sidebar{
        position:relative;top:0;
        display:flex;
        gap:6px;
        overflow-x:auto;
        margin-bottom:14px;
    }
    .gift-category-sidebar>b{display:none}
    .gift-category-sidebar a{
        flex:0 0 auto;
        background:#f8f6f7;
    }
    .gift-select-grid{grid-template-columns:repeat(2,1fr)}
    .gift-public-grid{grid-template-columns:repeat(2,1fr)}
    .gift-order-row{grid-template-columns:40px 1fr}
    .gift-order-row>*:nth-child(n+3){grid-column:2}
}
@media(max-width:480px){
    .gift-public-grid{grid-template-columns:1fr 1fr}
    .gift-public-card{min-height:170px;padding:15px 8px}
    .gift-public-card i{font-size:36px}
    .gift-quick-values{grid-template-columns:repeat(2,1fr)}
}


/* =========================================================
   V2.2 — ONBOARDING DE PRESENTES
   ========================================================= */
.onboarding-page{
    min-height:calc(100vh - 68px);
    display:flex;
    justify-content:center;
    padding:34px 18px 75px;
    background:
        radial-gradient(circle at 50% 0,#fff0f5,transparent 35%),
        #f7f6f8;
}
.onboarding-shell{width:min(690px,100%)}
.onboarding-progress{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    margin-bottom:20px;
}
.onboarding-progress span{
    width:29px;height:29px;
    display:grid;place-items:center;
    border:1px solid #e0d9dd;
    border-radius:50%;
    background:#fff;
    color:#9c9096;
    font-size:10px;
    font-weight:900;
}
.onboarding-progress span.active{
    background:var(--brand);
    border-color:var(--brand);
    color:#fff;
    box-shadow:0 0 0 5px rgba(233,81,134,.09);
}
.onboarding-progress span.done{
    border-color:#80c7a5;
    background:#ecf9f3;
    color:#24815a;
}
.onboarding-card{
    padding:31px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:24px;
    box-shadow:0 20px 65px rgba(38,25,32,.07);
}
.onboarding-card>.eyebrow{display:block;margin-top:8px}
.onboarding-card>h1{
    margin:5px 0 10px;
    font-size:34px;
    letter-spacing:-.035em;
}
.onboarding-card>p{
    color:var(--muted);
    line-height:1.55;
}
.onboarding-icon{
    width:66px;height:66px;
    display:grid;place-items:center;
    border-radius:19px;
    background:var(--brand-soft);
    font-size:34px;
}
.onboarding-info-box{
    display:grid;
    gap:7px;
    margin:22px 0;
    padding:16px;
    border:1px solid #eee6ea;
    border-radius:15px;
    background:#fcfafb;
}
.onboarding-info-box b{margin-bottom:3px}
.onboarding-info-box span{
    position:relative;
    padding-left:19px;
    color:#6f646a;
    font-size:12px;
}
.onboarding-info-box span:before{
    content:"✓";
    position:absolute;left:0;
    color:#27835d;
    font-weight:900;
}
.gift-choice-buttons{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
}
.gift-choice-card>small{
    display:block;
    margin-top:13px;
    text-align:center;
    color:#9a8f95;
}
.person-type-switch{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}
.person-type-switch label{
    display:flex;
    align-items:center;
    gap:8px;
    margin:0;
    padding:12px;
    border:1px solid var(--line);
    border-radius:11px;
}
.person-type-switch input{
    width:18px;height:18px;min-height:0;
}
.financial-form h2{
    margin:27px 0 5px;
    font-size:18px;
}
.privacy-note{
    margin-top:18px;
    padding:12px 14px;
    border-radius:12px;
    background:#f5f3f7;
    color:#71666c;
    font-size:11px;
    line-height:1.5;
}
.masked-data-card{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin:22px 0;
}
.masked-data-card>div{
    padding:14px;
    border:1px solid var(--line);
    border-radius:13px;
    background:#faf9fa;
}
.masked-data-card span,
.masked-data-card b{display:block}
.masked-data-card span{
    margin-bottom:4px;
    color:#93878d;
    font-size:10px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.masked-data-card b{font-size:14px}
.confirm-warning{
    padding:12px 14px;
    border-left:3px solid #e8ad39;
    background:#fff9e9;
    color:#6d5c37!important;
    font-size:11px;
}
.confirm-buttons{
    display:grid;
    gap:8px;
    margin-top:18px;
}
.status-stack{
    display:grid;
    gap:8px;
    margin:21px 0;
}
.status-stack>div{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    padding:12px 13px;
    border:1px solid var(--line);
    border-radius:11px;
}
.status-stack span{font-size:11px;color:#766a70}
.status-stack b{font-size:10px}
.Mercado Pago-brand-note{
    margin:7px 0 0!important;
    text-align:center;
    font-size:10px;
}
.text-action{
    width:100%;
    margin-top:10px;
    padding:8px;
    border:0;
    background:transparent;
    color:#81757b;
    text-decoration:underline;
    cursor:pointer;
    font-size:11px;
}
.financial-status-banner{
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:12px;
    align-items:center;
    margin-bottom:15px;
    padding:14px;
    border:1px solid #edd9a6;
    border-radius:15px;
    background:#fff9e9;
}
.financial-status-banner>span{font-size:27px}
.financial-status-banner b{display:block}
.financial-status-banner p{
    margin:3px 0 0;
    color:#766a55;
    font-size:11px;
}
.financial-status-banner a{
    padding:9px 11px;
    border-radius:9px;
    background:#fff;
    color:#6e5a2e;
    text-decoration:none;
    font-size:10px;
    font-weight:850;
}
@media(max-width:600px){
    .onboarding-card{padding:22px}
    .onboarding-card>h1{font-size:28px}
    .gift-choice-buttons{grid-template-columns:1fr}
    .masked-data-card{grid-template-columns:1fr}
    .financial-status-banner{grid-template-columns:auto 1fr}
    .financial-status-banner a{grid-column:1/-1;text-align:center}
}


/* =========================================================
   V2.3 — CPF / LOCALIZAÇÃO DE CLIENTE
   ========================================================= */
.form-section-help{
    margin:-5px 0 15px;
    color:var(--muted);
    font-size:12px;
}
.cpf-lookup-box{
    margin-bottom:18px;
    padding:16px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#faf9fa;
}
.cpf-search-line{
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
    align-items:center;
}
.cpf-search-line input{
    font-size:17px;
    font-weight:750;
    letter-spacing:.025em;
}
.cpf-status{
    min-width:100px;
    padding:7px 9px;
    border-radius:999px;
    text-align:center;
    font-size:9px;
    font-weight:900;
    white-space:nowrap;
}
.cpf-status.loading{background:#f2eff1;color:#776c72}
.cpf-status.valid{background:#eaf8f1;color:#237a55}
.cpf-status.found{background:#eaf8f1;color:#237a55}
.cpf-status.invalid{background:#fff0f2;color:#a13b49}

.existing-client-card,
.new-client-message{
    margin-top:12px;
    padding:13px;
    display:flex;
    gap:11px;
    align-items:center;
    border-radius:13px;
}
.existing-client-card{
    border:1px solid #c9eadb;
    background:#edf9f3;
}
.existing-client-icon{
    width:38px;height:38px;
    display:grid;place-items:center;
    flex:0 0 auto;
    border-radius:50%;
    background:#279367;
    color:#fff;
    font-weight:900;
}
.existing-client-card small,
.existing-client-card b,
.existing-client-card span,
.existing-client-card em{
    display:block;
}
.existing-client-card small{
    margin-bottom:2px;
    color:#31745a;
    font-size:8px;
    letter-spacing:.12em;
    font-weight:900;
}
.existing-client-card b{font-size:14px}
.existing-client-card span{
    margin-top:2px;
    color:#63746c;
    font-size:10px;
}
.existing-client-card em{
    margin-top:3px;
    color:#39755d;
    font-size:10px;
    font-style:normal;
    font-weight:750;
}
.new-client-message{
    border:1px solid #eadfe3;
    background:#fff;
}
.new-client-message>span{
    width:37px;height:37px;
    display:grid;place-items:center;
    border-radius:11px;
    background:var(--brand-soft);
    color:var(--brand);
    font-size:20px;
    font-weight:800;
}
.new-client-message b,
.new-client-message small{display:block}
.new-client-message small{
    margin-top:2px;
    color:var(--muted);
}
.field-help{
    display:block;
    margin-top:5px;
    color:var(--muted);
    font-size:10px;
    line-height:1.35;
}
input[readonly]{
    background:#f6f4f5;
    color:#766e72;
    cursor:not-allowed;
}
@media(max-width:600px){
    .cpf-search-line{grid-template-columns:1fr}
    .cpf-status{width:max-content}
}


/* =========================================================
   V2.4 — CONTA / SEGURANÇA
   ========================================================= */
.auth-description{
    color:var(--muted);
    line-height:1.5;
    font-size:13px;
}
.auth-help-line{
    display:flex;
    justify-content:flex-end;
    margin-top:8px;
}
.auth-help-line.centered{justify-content:center}
.auth-help-line a{
    color:var(--brand);
    text-decoration:none;
    font-size:11px;
    font-weight:750;
}

.account-security-grid{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:18px;
    align-items:start;
}
.account-summary-card h2,
.change-password-card h2{
    margin-bottom:17px;
}
.account-data-row{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    padding:12px 0;
    border-bottom:1px solid var(--line);
}
.account-data-row:last-of-type{border-bottom:0}
.account-data-row span{
    color:var(--muted);
    font-size:11px;
}
.account-data-row b{
    text-align:right;
    font-size:12px;
}
.security-note{
    margin-top:18px;
    padding:12px;
    border-radius:11px;
    background:#f5f3f7;
    color:#70656c;
    font-size:10px;
    line-height:1.45;
}
.change-password-card>p{
    color:var(--muted);
    font-size:12px;
    line-height:1.5;
}
.password-field{
    display:grid;
    grid-template-columns:1fr auto;
    border:1px solid #ddd7df;
    border-radius:11px;
    overflow:hidden;
    background:#fff;
}
.password-field:focus-within{
    border-color:var(--brand);
    box-shadow:0 0 0 4px rgba(233,81,134,.08);
}
.password-field input{
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
}
.password-field button{
    border:0;
    padding:0 12px;
    background:#f8f6f7;
    color:#766a70;
    cursor:pointer;
    font-size:10px;
    font-weight:800;
}
.password-requirements{
    display:flex;
    flex-wrap:wrap;
    gap:5px 12px;
    margin-top:8px;
    color:#8b8086;
    font-size:9px;
}

@media(max-width:800px){
    .account-security-grid{grid-template-columns:1fr}
}


/* =========================================================
   V2.5 — AJUSTES PRESENTES / ONBOARDING
   ========================================================= */
.payment-required-note{
    display:block;
    margin-top:6px;
    color:#8a7d84;
    font-size:10px;
    line-height:1.45;
}

.public-gift-cta{
    width:100%;
    min-height:48px;
    margin-top:10px;
    padding:11px 15px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:1px solid color-mix(in srgb,var(--event-button) 55%,#ffffff);
    border-radius:14px;
    background:color-mix(in srgb,var(--event-button) 13%,#ffffff);
    color:var(--event-button);
    text-decoration:none;
    font-family:inherit;
    font-size:13px;
    font-weight:800;
    text-align:center;
    transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
}
.public-gift-cta:hover{
    transform:translateY(-1px);
    background:color-mix(in srgb,var(--event-button) 18%,#ffffff);
    box-shadow:0 8px 22px color-mix(in srgb,var(--event-button) 12%,transparent);
}
.public-gift-cta span{font-size:17px}
.public-gift-cta strong{font-weight:850}

@media(max-width:600px){
    .public-gift-cta{
        min-height:46px;
        font-size:12px;
    }
}

.public-gift-link{display:none!important;}


/* V2.6 — CPF do pagador */
.gift-dialog .payment-required-note{
    margin:-5px 0 12px;
    color:#8b7f85;
}
.gift-dialog input:invalid:not(:placeholder-shown){
    border-color:#e89ba9;
}


/* =========================================================
   V2.7 — CONFIRMAÇÃO + PRESENTE COMO PRÓXIMO PASSO
   ========================================================= */
.memory-success{
    display:flex;
    align-items:flex-start;
    gap:11px;
    margin-bottom:15px;
    padding:14px 15px;
    border:1px solid color-mix(in srgb,var(--event-primary) 18%,#ffffff);
    border-radius:16px;
    background:color-mix(in srgb,var(--event-primary) 5%,#ffffff);
    color:var(--event-primary);
}
.memory-success>span{
    display:flex;
    width:34px;
    height:34px;
    flex:0 0 34px;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:color-mix(in srgb,var(--event-primary) 10%,#ffffff);
    font-size:16px;
}
.memory-success b{
    display:block;
    margin:1px 0 3px;
    font-size:13px;
}
.memory-success p{
    margin:0;
    color:var(--event-primary);
    opacity:.76;
    font-size:11px;
    line-height:1.45;
}

.post-memory-gift{
    margin:0 0 17px;
    padding:18px;
    border:1px solid color-mix(in srgb,var(--event-button) 22%,#ffffff);
    border-radius:18px;
    background:color-mix(in srgb,var(--event-button) 7%,#ffffff);
    text-align:center;
}
.post-memory-gift-icon{
    display:flex;
    width:44px;
    height:44px;
    margin:0 auto 9px;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:color-mix(in srgb,var(--event-button) 13%,#ffffff);
    font-size:21px;
}
.post-memory-gift-copy b{
    display:block;
    color:var(--event-primary);
    font-size:14px;
    line-height:1.3;
}
.post-memory-gift-copy p{
    margin:5px 0 13px;
    color:var(--event-primary);
    opacity:.72;
    font-size:11px;
    line-height:1.45;
}
.post-memory-gift-button{
    min-height:46px;
    padding:11px 16px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:14px;
    background:var(--event-button);
    color:var(--event-button-text);
    text-decoration:none;
    font-family:inherit;
    font-size:13px;
    font-weight:850;
    transition:transform .16s ease,box-shadow .16s ease;
}
.post-memory-gift-button:hover{
    transform:translateY(-1px);
    box-shadow:0 9px 24px color-mix(in srgb,var(--event-button) 20%,transparent);
}

/* CTA antigo não deve mais aparecer junto ao formulário. */
.public-gift-cta{display:none!important;}


/* =========================================================
   V3.0 — GESTÃO DE CLIENTES / RECEBIMENTO
   ========================================================= */
.master-client-search{
    display:grid;
    grid-template-columns:1fr auto;
    gap:9px;
    margin-bottom:15px;
}
.master-client-list{display:flex;flex-direction:column}
.master-client-row{
    min-height:76px;
    display:grid;
    grid-template-columns:46px minmax(220px,1.5fr) 180px 80px 80px;
    gap:14px;
    align-items:center;
    border-bottom:1px solid var(--line);
    text-decoration:none;
}
.master-client-row:last-child{border-bottom:0}
.master-client-avatar{
    width:42px;height:42px;
    display:grid;place-items:center;
    border-radius:13px;
    background:var(--brand-soft);
    color:var(--brand);
    font-weight:900;
}
.master-client-main b,
.master-client-main span,
.master-client-row small,
.master-client-row>div>b{display:block}
.master-client-main span,
.master-client-row small{color:var(--muted);font-size:10px}
.client-open{font-size:10px;font-weight:850;color:var(--brand)}
.master-client-detail-grid{
    display:grid;
    grid-template-columns:1fr .8fr;
    gap:18px;
}
.master-events-admin-list{display:flex;flex-direction:column}
.master-event-admin-row{
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:12px;
    align-items:center;
    padding:13px 0;
    border-bottom:1px solid var(--line);
}
.master-event-admin-row:last-child{border-bottom:0}
.master-event-admin-row>div>b,
.master-event-admin-row>div>small{display:block}
.master-event-admin-row>div>small{margin-top:3px;color:var(--muted)}
.danger-details summary{
    cursor:pointer;
    color:#a84050;
    font-size:10px;
    font-weight:850;
}
.danger-inline-form{
    min-width:290px;
    margin-top:9px;
    padding:13px;
    border:1px solid #f0cbd1;
    border-radius:12px;
    background:#fff7f8;
}
.danger-inline-form p{font-size:10px;color:#815d64}
.danger-zone{
    margin-top:22px;
    padding:20px;
    border:1px solid #efc8cf;
    border-radius:18px;
    background:#fff8f9;
}
.danger-zone h2{color:#a4394b}
.danger-zone p{color:#765a60;font-size:11px;line-height:1.5}
.danger-zone summary{
    cursor:pointer;
    color:#a4394b;
    font-weight:850;
}
.danger-button{
    min-height:42px;
    padding:10px 14px;
    border:0;
    border-radius:11px;
    background:#ad3348;
    color:#fff;
    cursor:pointer;
    font-weight:850;
}
.receiving-shortcut-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}
.receiving-shortcut-card h2{margin:5px 0}
.receiving-shortcut-card p{margin:0;color:var(--muted);font-size:11px}
.receiving-data-page{max-width:850px}
.receiving-status-card{margin-bottom:0}

@media(max-width:820px){
    .master-client-row{
        grid-template-columns:42px 1fr;
    }
    .master-client-row>*:nth-child(n+3){grid-column:2}
    .master-client-detail-grid{grid-template-columns:1fr}
    .master-event-admin-row{grid-template-columns:1fr}
    .receiving-shortcut-card{display:block}
    .receiving-shortcut-card .btn{margin-top:12px}
}


/* =========================================================
   V3.1 — TERMOS DE PRESENTES / REPASSE
   ========================================================= */
.gift-commercial-summary{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin-bottom:16px;
}
.gift-commercial-summary>div{
    padding:14px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff;
}
.gift-commercial-summary span,
.gift-commercial-summary b,
.gift-commercial-summary small{
    display:block;
}
.gift-commercial-summary span{
    color:var(--muted);
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:850;
}
.gift-commercial-summary b{
    margin:5px 0 4px;
    font-size:17px;
}
.gift-commercial-summary small{
    color:var(--muted);
    font-size:9px;
    line-height:1.4;
}

@media(max-width:700px){
    .gift-commercial-summary{grid-template-columns:1fr}
}

/* V3.2 — DESTINO PIX + REPASSES */
.payout-page{max-width:780px}
.payout-current{background:linear-gradient(180deg,#fff,#fbfbfd)}
.payout-destination{display:flex;align-items:center;gap:12px;margin:12px 0}
.payout-destination>span{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;background:var(--brand-soft);font-size:20px}
.payout-destination small,.payout-destination b{display:block}
.payout-explanation{display:flex;flex-direction:column;gap:7px;margin:12px 0 18px;padding:14px;border-radius:14px;background:var(--soft)}
.payout-explanation span{font-size:10px;color:var(--muted)}
.gift-money-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}
.gift-money-summary>div{padding:13px;border:1px solid var(--line);border-radius:14px;background:#fff}
.gift-money-summary span,.gift-money-summary b,.gift-money-summary small{display:block}
.gift-money-summary span{font-size:9px;color:var(--muted);text-transform:uppercase;font-weight:800}
.gift-money-summary b{margin:5px 0;font-size:15px}
.gift-money-summary small{font-size:9px;color:var(--muted)}
.settlement-list{display:flex;flex-direction:column}
.settlement-row{display:grid;grid-template-columns:1.4fr 1fr .8fr 1fr .8fr;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.settlement-row small,.settlement-row b{display:block}
.settlement-row small{font-size:9px;color:var(--muted)}
.settlement-error{display:block;color:#a4394b;padding:0 0 10px}
@media(max-width:800px){.gift-money-summary{grid-template-columns:1fr 1fr}.settlement-row{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.gift-money-summary{grid-template-columns:1fr}.settlement-row{grid-template-columns:1fr}}

/* V3.3 — REPASSE IMEDIATO SANDBOX */
.sandbox-test-box{margin:18px 0;padding:16px;border:1px dashed var(--line);border-radius:16px;background:var(--soft)}
.sandbox-test-box h3{margin:5px 0}
.sandbox-test-box p{margin:0 0 12px;color:var(--muted);font-size:10px;line-height:1.5}
.settlement-row{grid-template-columns:1.25fr .9fr .7fr .9fr .7fr auto}
@media(max-width:900px){.settlement-row{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.settlement-row{grid-template-columns:1fr}}

/* V3.4 — HOMOLOGAÇÃO MAIS VISÍVEL */
.sandbox-mode-banner{
    display:flex;justify-content:space-between;gap:12px;align-items:center;
    margin:0 0 16px;padding:12px 14px;border-radius:14px;
    border:1px solid #d9c88f;background:#fffaf0;
}
.sandbox-mode-banner span{font-size:10px;color:var(--muted)}
.sandbox-state{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.sandbox-state span{padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:9px}
.settlement-test-btn{min-width:110px}
@media(max-width:650px){.sandbox-mode-banner{align-items:flex-start;flex-direction:column}}

/* V3.5 — DIAGNÓSTICO DE REPASSE SANDBOX */
.settlement-diagnostic{margin:10px 0 18px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}
.settlement-diagnostic summary{cursor:pointer;font-weight:800}
.diag-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:14px}
.diag-grid>div{min-width:0;padding:10px;border-radius:12px;background:var(--soft)}
.diag-grid small,.diag-grid b,.diag-grid code{display:block}
.diag-grid small{font-size:8px;color:var(--muted);text-transform:uppercase;font-weight:800}
.diag-grid b,.diag-grid code{margin-top:4px;font-size:10px;overflow-wrap:anywhere}
.diag-fail{margin-top:12px}
.diag-json-title{display:flex;justify-content:space-between;gap:12px;margin:14px 0 7px}
.diag-json-title small{color:var(--muted)}
.diag-json{max-height:360px;overflow:auto;margin:0;padding:12px;border-radius:12px;background:#17191d;color:#f4f4f4;font-size:10px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:1000px){.diag-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.diag-grid{grid-template-columns:1fr 1fr}.diag-json-title{flex-direction:column}}
@media(max-width:430px){.diag-grid{grid-template-columns:1fr}}

/* V3.6 — CARTEIRA, EXTRATO E HISTÓRICO */
.wallet-page{max-width:900px}
.wallet-hero{display:grid;grid-template-columns:1.15fr 2fr;gap:12px;margin-bottom:8px}
.wallet-primary{padding:22px;border-radius:20px;background:#17191d;color:#fff}
.wallet-primary span,.wallet-primary strong,.wallet-primary small{display:block}
.wallet-primary span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.7}
.wallet-primary strong{font-size:32px;margin:7px 0}
.wallet-primary small{font-size:9px;opacity:.65}
.wallet-secondary{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wallet-secondary>div{padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff}
.wallet-secondary span,.wallet-secondary b{display:block}
.wallet-secondary span{font-size:9px;color:var(--muted);text-transform:uppercase;font-weight:800}
.wallet-secondary b{font-size:17px;margin-top:5px}
.wallet-disclaimer{font-size:9px;color:var(--muted);margin:0 0 18px}
.wallet-pix{display:flex;align-items:center;gap:12px}
.wallet-pix>span{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--soft)}
.wallet-pix small,.wallet-pix b{display:block}
.client-statement{display:flex;flex-direction:column}
.client-statement-row{display:grid;grid-template-columns:100px 1fr 170px;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}
.client-statement-row:last-child{border-bottom:0}
.statement-date b,.statement-date small,.statement-event b,.statement-event small,.statement-status b,.statement-status small{display:block}
.statement-date small,.statement-event small,.statement-status small{font-size:9px;color:var(--muted)}
.statement-status{text-align:right}
.status-pill{display:inline-block!important;margin-bottom:5px;padding:4px 8px;border-radius:999px;background:var(--soft);font-size:8px!important;font-weight:850}
.status-pill.status-done{background:#eaf7ef;color:#247243}
.status-pill.status-processing{background:#fff6dc;color:#8a6715}
.status-pill.status-failed{background:#fdecef;color:#a4394b}

.master-financial-page{max-width:1050px}
.subaccount-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.subaccount-summary>div{padding:15px;border:1px solid var(--line);border-radius:16px;background:#fff}
.subaccount-summary span,.subaccount-summary strong,.subaccount-summary small{display:block}
.subaccount-summary span{font-size:9px;color:var(--muted);text-transform:uppercase;font-weight:800}
.subaccount-summary strong{font-size:20px;margin:6px 0}
.subaccount-summary small{font-size:9px;color:var(--muted)}
.statement-count{font-size:9px;color:var(--muted)}
.subaccount-statement{display:flex;flex-direction:column}
.subaccount-tx{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.subaccount-tx:last-child{border-bottom:0}
.subaccount-tx b,.subaccount-tx small{display:block}
.subaccount-tx small{font-size:9px;color:var(--muted);margin-top:3px}
.tx-value{text-align:right;font-weight:850}
.tx-value small{font-weight:400}
.tx-value.negative{color:#a4394b}
.tx-value.positive{color:#247243}

@media(max-width:800px){
    .wallet-hero{grid-template-columns:1fr}
    .subaccount-summary{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
    .wallet-secondary{grid-template-columns:1fr}
    .client-statement-row{grid-template-columns:80px 1fr}
    .statement-status{grid-column:2;text-align:left}
    .subaccount-summary{grid-template-columns:1fr}
}


/* =========================================================
   V4.0 — SEGURANÇA FINANCEIRA POR AMBIENTE
   ========================================================= */
.environment-credentials-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-bottom:15px;
}
.environment-credentials-grid>div{
    padding:14px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff;
}
.environment-credentials-grid span,
.environment-credentials-grid b,
.environment-credentials-grid small{display:block}
.environment-credentials-grid span{font-size:9px;color:var(--muted);text-transform:uppercase;font-weight:850}
.environment-credentials-grid b{margin:5px 0}
.environment-credentials-grid small{color:var(--muted);font-size:9px}

.environment-safety-banner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:15px;
    padding:12px 14px;
    border-radius:14px;
}
.environment-safety-banner.production{
    background:#eaf8ef;
    border:1px solid #bde2ca;
}
.environment-safety-banner.sandbox{
    background:#fff8e8;
    border:1px solid #ead49a;
}
.environment-safety-banner span{font-size:10px}
.environment-chip{
    display:inline-flex;
    margin-top:8px;
    padding:4px 8px;
    border-radius:999px;
    background:var(--soft);
    font-size:9px;
    font-weight:850;
}
.environment-warning{line-height:1.55}
.financial-diagnostic-page{max-width:1100px}
.financial-account-list{display:flex;flex-direction:column}
.financial-account-row{
    display:grid;
    grid-template-columns:1.5fr .8fr 1fr auto;
    gap:12px;
    align-items:center;
    padding:12px 0;
    border-bottom:1px solid var(--line);
}
.financial-account-row:last-child{border-bottom:0}
.financial-account-row small,
.financial-account-row b{display:block}
.financial-account-row small{font-size:9px;color:var(--muted)}
.financial-log-list{display:flex;flex-direction:column;gap:8px}
.financial-log{
    border:1px solid var(--line);
    border-radius:12px;
    padding:10px 12px;
}
.financial-log.error{border-color:#efc4cb;background:#fffafb}
.financial-log summary{
    display:grid;
    grid-template-columns:80px 1fr auto;
    gap:10px;
    cursor:pointer;
    align-items:center;
}
.financial-log summary span{font-size:8px;font-weight:900}
.financial-log summary small{font-size:9px;color:var(--muted)}
.financial-log-body{padding-top:10px}
.financial-log-body p{margin:5px 0;font-size:10px}
.financial-log-body pre{
    max-height:280px;
    overflow:auto;
    padding:10px;
    border-radius:10px;
    background:#17191d;
    color:#fff;
    white-space:pre-wrap;
    font-size:9px;
}

@media(max-width:700px){
    .environment-credentials-grid{grid-template-columns:1fr}
    .financial-account-row{grid-template-columns:1fr}
    .financial-log summary{grid-template-columns:1fr}
}


/* V4.0.3 — fluxo financeiro guiado */
.financial-step-blocker{
    text-align:left;
}
.financial-step-blocker .step-icon{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    margin-bottom:12px;
    border-radius:14px;
    background:var(--brand-soft);
    color:var(--brand);
    font-size:20px;
    font-weight:900;
}
.financial-step-blocker h2{
    margin:6px 0 8px;
}
.financial-step-blocker p{
    color:var(--muted);
    line-height:1.55;
}
.financial-step-blocker .btn.big{
    margin-top:14px;
}
.financial-status-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin:14px 0;
}
.financial-status-grid>div{
    padding:12px;
    border:1px solid var(--line);
    border-radius:12px;
    background:var(--soft);
}
.financial-status-grid span,
.financial-status-grid b{
    display:block;
}
.financial-status-grid span{
    font-size:8px;
    color:var(--muted);
    text-transform:uppercase;
    font-weight:800;
}
.financial-status-grid b{
    margin-top:4px;
    font-size:10px;
}
.financial-flow-complete{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:14px;
    padding:11px 13px;
    border:1px solid #bfe2ca;
    border-radius:13px;
    background:#edf9f1;
    color:#246d40;
    font-size:10px;
}
.production-onboarding-banner{
    margin-bottom:15px;
}
.production-onboarding-banner a{
    margin-left:6px;
    font-weight:850;
}
@media(max-width:600px){
    .financial-status-grid{
        grid-template-columns:1fr;
    }
    .financial-flow-complete{
        align-items:flex-start;
        flex-direction:column;
    }
}


/* =========================================================
   V4.1 — GERADOR DE QR CODE / PDF
   ========================================================= */
.topbar-actions{
    display:flex;
    align-items:center;
    gap:10px;
}
.top-home-link{
    display:inline-flex;
    align-items:center;
    padding:7px 11px;
    border:1px solid var(--line);
    border-radius:999px;
    background:#fff;
    text-decoration:none;
    font-size:10px;
    font-weight:850;
}

.qr-generator-page{
    max-width:1180px;
}

.qr-event-destination{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin-bottom:18px;
    padding:13px 15px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff;
}
.qr-event-destination small{
    color:var(--muted);
    font-size:8px;
    font-weight:900;
    letter-spacing:.08em;
}
.qr-event-destination b{
    overflow-wrap:anywhere;
    font-size:11px;
}

.qr-layout-picker-panel{
    margin-bottom:18px;
}
.qr-layout-picker-panel .panel-title p{
    margin:4px 0 0;
    color:var(--muted);
}
.qr-layout-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:11px;
}
.qr-layout-option{
    appearance:none;
    width:100%;
    padding:7px;
    border:2px solid transparent;
    border-radius:16px;
    background:#fff;
    cursor:pointer;
    text-align:left;
    transition:
        border-color .16s ease,
        transform .16s ease,
        box-shadow .16s ease;
}
.qr-layout-option:hover{
    transform:translateY(-2px);
    box-shadow:0 8px 24px rgba(0,0,0,.07);
}
.qr-layout-option.selected{
    border-color:var(--brand);
    box-shadow:0 10px 28px rgba(0,0,0,.09);
}
.qr-layout-thumb{
    position:relative;
    overflow:hidden;
    border-radius:11px;
    background:var(--soft);
    aspect-ratio:2/3;
}
.qr-layout-thumb img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}
.qr-layout-missing{
    display:none;
    position:absolute;
    inset:0;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:4px;
    padding:12px;
    text-align:center;
    background:#f6f6f8;
}
.qr-layout-thumb.missing img{
    display:none;
}
.qr-layout-thumb.missing .qr-layout-missing{
    display:flex;
}
.qr-layout-missing b{
    font-size:28px;
}
.qr-layout-missing small{
    color:var(--muted);
}
.qr-layout-option-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:6px;
    margin-top:7px;
}
.qr-layout-option-footer b{
    font-size:10px;
}
.qr-layout-option-footer span{
    color:var(--muted);
    font-size:8px;
}
.qr-layout-option.selected .qr-layout-option-footer span{
    color:var(--brand);
    font-weight:850;
}

.qr-preview-workspace{
    display:grid;
    grid-template-columns:minmax(0,650px) minmax(280px,1fr);
    gap:18px;
    align-items:start;
}
.qr-preview-panel{
    min-width:0;
}
.qr-current-layout{
    padding:6px 9px;
    border-radius:999px;
    background:var(--soft);
    font-size:9px;
}
.qr-canvas-stage{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:12px;
    padding:16px;
    border-radius:16px;
    background:#eeeef1;
}
#qrPrintCanvas{
    display:block;
    width:min(100%,410px);
    height:auto;
    aspect-ratio:2/3;
    background:#fff;
    box-shadow:0 12px 38px rgba(0,0,0,.16);
}
.qr-preview-loading{
    position:absolute;
    inset:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.82);
    border-radius:10px;
    font-size:11px;
    font-weight:850;
}
.qr-preview-loading[hidden]{
    display:none;
}
.qr-print-spec{
    margin:12px 0 0;
    color:var(--muted);
    font-size:9px;
    text-align:center;
}

.qr-download-panel{
    position:sticky;
    top:18px;
}
.qr-download-panel p{
    color:var(--muted);
    line-height:1.55;
}
.qr-check-list{
    display:flex;
    flex-direction:column;
    gap:8px;
    margin:17px 0;
}
.qr-check-list span{
    padding:9px 10px;
    border-radius:10px;
    background:var(--soft);
    font-size:9px;
}
.qr-generate-pdf-button{
    width:100%;
    min-height:52px;
}
.qr-security-note{
    display:block;
    margin-top:9px;
    color:var(--muted);
    text-align:center;
}

@media(max-width:1000px){
    .qr-layout-grid{
        grid-template-columns:repeat(4,minmax(0,1fr));
    }
}
@media(max-width:820px){
    .qr-preview-workspace{
        grid-template-columns:1fr;
    }
    .qr-download-panel{
        position:static;
    }
}
@media(max-width:700px){
    .qr-layout-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:420px){
    .qr-layout-grid{
        grid-template-columns:1fr;
    }
}


/* =========================================================
   V5 — HOME COMERCIAL + RECEBIMENTO SIMPLES
   ========================================================= */
.marketing-home{max-width:1180px;margin:0 auto;padding:0 24px 70px}
.marketing-nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line)}
.marketing-nav>div{display:flex;align-items:center;gap:16px}
.marketing-hero{padding:84px 0 70px;max-width:900px}
.marketing-hero h1{font-size:clamp(42px,6vw,78px);line-height:.98;letter-spacing:-.045em;margin:14px 0 22px}
.marketing-hero>p{max-width:720px;font-size:18px;line-height:1.65;color:var(--muted)}
.marketing-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:30px 0 18px}
.marketing-price small{width:100%;font-weight:900;letter-spacing:.12em;color:var(--brand)}
.marketing-price strong{font-size:42px}
.marketing-price span{color:var(--muted)}
.marketing-hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.marketing-section{padding:60px 0;border-top:1px solid var(--line)}
.marketing-section>h2,.marketing-gifts h2,.marketing-final h2{font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-.035em;max-width:820px}
.marketing-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.marketing-steps article{padding:26px;border:1px solid var(--line);border-radius:22px;background:#fff}
.marketing-steps article>b{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--brand);color:#fff}
.marketing-steps h3{font-size:20px;margin:20px 0 8px}
.marketing-steps p,.marketing-occasions p,.marketing-gifts p,.marketing-final p{color:var(--muted);line-height:1.65}
.marketing-gifts{display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center}
.marketing-fees{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.marketing-fees span{padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff}
.marketing-fees b{display:block;font-size:30px;margin-bottom:4px}
.marketing-final{text-align:center;padding:72px 20px;border-radius:28px;background:#17191d;color:#fff}
.marketing-final h2,.marketing-final p{margin-left:auto;margin-right:auto}
.marketing-final p{max-width:680px;color:#c9cbd0}
.marketing-final .btn{margin:18px 8px 8px}
.marketing-final .text-link{display:block;color:#fff;margin-top:12px}

.simple-pix-panel{max-width:720px}
.current-pix-destination{display:flex;flex-direction:column;gap:5px;padding:18px;margin-bottom:18px;border-radius:16px;background:var(--soft)}
.current-pix-destination span{font-size:8px;font-weight:900;letter-spacing:.12em;color:var(--brand)}
.current-pix-destination strong{font-size:18px}
.simple-fee-box{display:flex;flex-direction:column;gap:8px;margin:18px 0;padding:16px;border-radius:14px;background:#fff7e9;border:1px solid #f1d9a8}
.simple-fee-box span{font-size:10px;line-height:1.45}

@media(max-width:760px){
    .marketing-nav{align-items:flex-start;padding:16px 0}
    .marketing-nav>div{flex-direction:column;align-items:flex-end;gap:8px}
    .marketing-hero{padding-top:56px}
    .marketing-steps,.marketing-gifts,.marketing-fees{grid-template-columns:1fr}
}


/* =========================================================
   V5.1 — QR CODE VISÍVEL NO EVENTO
   ========================================================= */
.topbar-actions{display:flex;align-items:center;gap:12px}
.top-home-link{
    display:inline-flex;align-items:center;gap:5px;
    padding:7px 11px;border:1px solid var(--line);
    border-radius:999px;background:#fff;
    text-decoration:none;font-size:10px;font-weight:850;
}
.qr-sidebar-link{
    color:var(--brand)!important;
    font-weight:900!important;
}
.qr-main-action{
    border-color:var(--brand)!important;
    color:var(--brand)!important;
}
.qr-print-page{max-width:1160px}
.qr-link-card{
    display:flex;flex-direction:column;gap:4px;
    padding:14px 16px;margin-bottom:18px;
    border:1px solid var(--line);border-radius:15px;background:#fff;
}
.qr-link-card small{font-size:8px;font-weight:900;letter-spacing:.1em;color:var(--brand)}
.qr-link-card b{font-size:11px;overflow-wrap:anywhere}
.qr-link-card span{font-size:9px;color:var(--muted)}
.qr-model-grid{
    display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
    gap:11px;margin-top:14px;
}
.qr-model{
    appearance:none;padding:7px;border:2px solid transparent;
    border-radius:16px;background:#fff;cursor:pointer;text-align:left;
    transition:.16s ease;
}
.qr-model:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.07)}
.qr-model.selected{border-color:var(--brand);box-shadow:0 10px 28px rgba(0,0,0,.09)}
.qr-model-image{
    position:relative;overflow:hidden;aspect-ratio:2/3;
    border-radius:11px;background:var(--soft);
}
.qr-model-image img{display:block;width:100%;height:100%;object-fit:cover}
.qr-model-missing{
    display:none;position:absolute;inset:0;
    align-items:center;justify-content:center;flex-direction:column;
    text-align:center;background:#f6f6f8;color:var(--muted);
}
.qr-model-image.missing img{display:none}
.qr-model-image.missing .qr-model-missing{display:flex}
.qr-model-missing strong{font-size:28px;color:#222}
.qr-model-label{
    display:flex;align-items:center;justify-content:space-between;gap:6px;
    padding:8px 2px 2px;
}
.qr-model-label b{font-size:9px}
.qr-model-label span{font-size:8px;color:var(--muted)}
.qr-model.selected .qr-model-label span{color:var(--brand);font-weight:900}
.qr-print-workspace{
    display:grid;grid-template-columns:minmax(0,650px) minmax(280px,1fr);
    gap:18px;align-items:start;margin-top:18px;
}
.qr-layout-pill{
    display:inline-flex;padding:6px 9px;border-radius:999px;
    background:var(--soft);font-size:9px
}
.qr-preview-stage{
    position:relative;display:flex;align-items:center;justify-content:center;
    padding:18px;margin-top:12px;border-radius:16px;background:#ededf1;
}
#qrPrintCanvas{
    display:block;width:min(100%,410px);height:auto;aspect-ratio:2/3;
    background:#fff;box-shadow:0 14px 40px rgba(0,0,0,.16);
}
.qr-preview-status{
    position:absolute;inset:18px;display:flex;align-items:center;justify-content:center;
    border-radius:10px;background:rgba(255,255,255,.88);
    font-size:11px;font-weight:900;
}
.qr-preview-status[hidden]{display:none}
.qr-preview-caption{text-align:center;color:var(--muted);font-size:9px;margin:12px 0 0}
.qr-print-action{position:sticky;top:18px}
.qr-print-action>p{line-height:1.55;color:var(--muted)}
.qr-ready-list{display:flex;flex-direction:column;gap:8px;margin:18px 0}
.qr-ready-list span{padding:9px 10px;border-radius:10px;background:var(--soft);font-size:9px}
.qr-print-action .btn{width:100%;min-height:54px}
.qr-print-action>small{display:block;text-align:center;margin-top:9px;color:var(--muted)}

@media(max-width:980px){
    .qr-model-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:820px){
    .qr-print-workspace{grid-template-columns:1fr}
    .qr-print-action{position:static}
}
@media(max-width:650px){
    .qr-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* =========================================================
   V5.2 — HOME PÚBLICA DO EVENTO
   ========================================================= */
.event-public-home{
    min-height:100vh;
    background:var(--home-bg);
    color:var(--home-text);
    font-family:Arial,sans-serif;
}
.event-public-home.home-body-serif{font-family:Georgia,'Times New Roman',serif}
.event-public-home.home-title-serif h1,
.event-public-home.home-title-serif h2{font-family:Georgia,'Times New Roman',serif}
.event-public-home.home-title-sans h1,
.event-public-home.home-title-sans h2{font-family:Arial,sans-serif}
.event-public-home.home-title-script h1,
.event-public-home.home-title-script h2{
    font-family:Georgia,'Times New Roman',serif;
    font-style:italic;
    font-weight:500;
}

.event-home-hero{
    position:relative;
    min-height:min(88vh,820px);
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    padding:80px 24px;
    background:
        radial-gradient(circle at 15% 20%,color-mix(in srgb,var(--home-primary) 12%,transparent),transparent 40%),
        var(--home-bg);
}
.event-home-hero.with-image{
    background-image:var(--hero-image);
    background-position:center;
    background-size:cover;
}
.event-home-hero-overlay{
    position:absolute;
    inset:0;
    background:transparent;
}
.event-home-hero.with-image .event-home-hero-overlay{
    background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.52));
}
.event-home-hero-content{
    position:relative;
    z-index:2;
    max-width:900px;
    margin:auto;
    text-align:center;
}
.event-home-hero.with-image .event-home-hero-content{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.24)}
.event-home-kicker,
.event-home-eyebrow{
    display:block;
    color:var(--home-primary);
    font-size:11px;
    font-weight:900;
    letter-spacing:.14em;
    text-transform:uppercase;
}
.event-home-hero.with-image .event-home-kicker{color:#fff}
.event-home-hero h1{
    max-width:880px;
    margin:18px auto 16px;
    font-size:clamp(48px,9vw,100px);
    line-height:.96;
    letter-spacing:-.055em;
}
.event-home-hero p{
    max-width:650px;
    margin:0 auto;
    font-size:clamp(16px,2vw,21px);
    line-height:1.6;
}
.event-home-date{
    margin-top:25px;
    font-size:14px;
    font-weight:800;
    letter-spacing:.08em;
}
.event-countdown{
    display:inline-flex;
    align-items:baseline;
    justify-content:center;
    gap:8px;
    margin-top:22px;
    padding:13px 18px;
    border:1px solid color-mix(in srgb,var(--home-text) 13%,transparent);
    border-radius:999px;
    background:color-mix(in srgb,var(--home-surface) 82%,transparent);
    color:var(--home-text);
    text-shadow:none;
}
.event-home-hero.with-image .event-countdown{
    background:rgba(255,255,255,.92);
    color:#172033;
}
.event-countdown b{font-size:25px}
.event-countdown small,.event-countdown span{font-size:11px}
.event-home-primary-actions{
    display:flex;
    justify-content:center;
    gap:10px;
    flex-wrap:wrap;
    margin-top:30px;
}
.event-home-main-button,
.event-home-secondary-button{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    min-height:48px;
    padding:12px 20px;
    border-radius:999px;
    text-decoration:none;
    font-weight:900;
    font-size:13px;
    cursor:pointer;
}
.event-home-main-button{
    border:1px solid var(--home-primary);
    background:var(--home-primary);
    color:#fff;
}
.event-home-secondary-button{
    border:1px solid color-mix(in srgb,var(--home-text) 18%,transparent);
    background:var(--home-surface);
    color:var(--home-text);
}
.event-home-hero.with-image .event-home-secondary-button{
    border-color:rgba(255,255,255,.45);
    background:rgba(255,255,255,.92);
    color:#172033;
}
.event-home-content{
    width:min(1080px,calc(100% - 32px));
    margin:0 auto;
    padding:60px 0 24px;
}
.event-home-section{
    margin-bottom:22px;
    padding:clamp(26px,5vw,55px);
    border:1px solid color-mix(in srgb,var(--home-text) 8%,transparent);
    border-radius:var(--home-radius);
    background:var(--home-surface);
}
.event-home-section h2{
    max-width:760px;
    margin:10px 0 12px;
    font-size:clamp(30px,5vw,52px);
    line-height:1.06;
    letter-spacing:-.035em;
}
.event-home-section p{
    max-width:700px;
    color:color-mix(in srgb,var(--home-text) 68%,transparent);
    line-height:1.65;
}
.memory-callout{text-align:center}
.memory-callout h2,.memory-callout p{margin-left:auto;margin-right:auto}
.memory-callout .event-home-main-button{margin-top:12px}

.event-home-gallery{
    display:grid;
    grid-template-columns:repeat(12,1fr);
    gap:10px;
    margin-top:22px;
}
.event-home-gallery-item{
    appearance:none;
    padding:0;
    border:0;
    overflow:hidden;
    border-radius:calc(var(--home-radius) * .55);
    background:#eee;
    cursor:pointer;
    min-height:240px;
}
.event-home-gallery-item:nth-child(6n+1),
.event-home-gallery-item:nth-child(6n+4){grid-column:span 7}
.event-home-gallery-item:nth-child(6n+2),
.event-home-gallery-item:nth-child(6n+3){grid-column:span 5}
.event-home-gallery-item:nth-child(6n+5),
.event-home-gallery-item:nth-child(6n+6){grid-column:span 6}
.event-home-gallery-item img{
    width:100%;
    height:100%;
    min-height:240px;
    display:block;
    object-fit:cover;
    transition:transform .25s ease;
}
.event-home-gallery-item:hover img{transform:scale(1.025)}

.event-rsvp-card{max-width:760px;margin-left:auto;margin-right:auto}
.rsvp-deadline{
    display:inline-flex;
    margin:5px 0 20px;
    padding:7px 10px;
    border-radius:999px;
    background:color-mix(in srgb,var(--home-primary) 10%,transparent);
    color:var(--home-primary);
    font-size:11px;
    font-weight:850;
}
.public-rsvp-form{margin-top:22px}
.public-rsvp-form label{
    display:block;
    margin:12px 0 6px;
    font-size:11px;
    font-weight:850;
}
.public-rsvp-form label small{font-weight:400;color:color-mix(in srgb,var(--home-text) 55%,transparent)}
.public-rsvp-form input,
.public-rsvp-form textarea{
    width:100%;
    box-sizing:border-box;
    padding:13px 14px;
    border:1px solid color-mix(in srgb,var(--home-text) 13%,transparent);
    border-radius:13px;
    background:var(--home-bg);
    color:var(--home-text);
    font:inherit;
}
.rsvp-choice{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
}
.rsvp-choice label{
    margin:0;
    position:relative;
}
.rsvp-choice input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.rsvp-choice span{
    display:flex;
    justify-content:center;
    padding:13px;
    border:1px solid color-mix(in srgb,var(--home-text) 13%,transparent);
    border-radius:13px;
    cursor:pointer;
}
.rsvp-choice input:checked+span{
    border-color:var(--home-primary);
    background:color-mix(in srgb,var(--home-primary) 9%,var(--home-surface));
    color:var(--home-primary);
}
.public-rsvp-form .event-home-main-button{
    width:100%;
    margin-top:17px;
    font:inherit;
}
.event-home-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    padding:28px 8px 10px;
    font-size:11px;
    color:color-mix(in srgb,var(--home-text) 56%,transparent);
}
.event-home-footer a{color:var(--home-primary);font-weight:850}

.event-gallery-lightbox{
    position:fixed;
    z-index:9999;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:30px;
    background:rgba(0,0,0,.88);
}
.event-gallery-lightbox[hidden]{display:none}
.event-gallery-lightbox img{
    max-width:min(1100px,92vw);
    max-height:88vh;
    border-radius:18px;
}
.event-gallery-lightbox button{
    position:absolute;
    top:20px;
    right:25px;
    width:44px;
    height:44px;
    border:0;
    border-radius:50%;
    background:#fff;
    font-size:26px;
    cursor:pointer;
}

/* Presets */
.home-style-elegant .event-home-hero h1,
.home-style-elegant .event-home-section h2{font-family:Georgia,'Times New Roman',serif;font-weight:500}
.home-style-romantic .event-home-hero{background-color:color-mix(in srgb,var(--home-primary) 5%,var(--home-bg))}
.home-style-celebration .event-home-hero::before{
    content:"";
    position:absolute;
    inset:0;
    opacity:.25;
    background:
        radial-gradient(circle at 10% 20%,var(--home-primary) 0 5px,transparent 6px),
        radial-gradient(circle at 80% 10%,#f4b942 0 5px,transparent 6px),
        radial-gradient(circle at 90% 70%,#7d75f5 0 5px,transparent 6px);
    background-size:130px 150px,170px 190px,220px 190px;
}
.home-style-corporate .event-home-hero h1{font-family:Arial,sans-serif;font-weight:900}
.home-style-corporate .event-home-main-button{border-radius:12px}
.home-style-corporate .event-home-secondary-button{border-radius:12px}

/* Editor */
.event-home-editor{max-width:1180px}
.event-home-editor-grid{
    display:grid;
    grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr);
    gap:18px;
    align-items:start;
}
.event-home-editor-side{position:sticky;top:18px}
.event-home-form hr{border:0;border-top:1px solid var(--line);margin:30px 0}
.event-home-current-hero{
    display:block;
    width:100%;
    max-height:280px;
    margin-top:10px;
    object-fit:cover;
    border-radius:14px;
}
.rsvp-admin-metrics{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
}
.rsvp-admin-metrics>div{
    padding:13px;
    border-radius:12px;
    background:var(--soft);
}
.rsvp-admin-metrics span,.rsvp-admin-metrics b{display:block}
.rsvp-admin-metrics span{font-size:8px;color:var(--muted)}
.rsvp-admin-metrics b{margin-top:4px;font-size:20px}
.event-home-gallery-admin{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}
.event-home-gallery-admin>div{
    position:relative;
    overflow:hidden;
    border-radius:12px;
}
.event-home-gallery-admin img{
    display:block;
    width:100%;
    aspect-ratio:1;
    object-fit:cover;
}
.event-home-gallery-admin form{
    position:absolute;
    right:5px;
    bottom:5px;
}
.event-home-gallery-admin button{
    border:0;
    padding:5px 7px;
    border-radius:7px;
    background:rgba(0,0,0,.72);
    color:#fff;
    font-size:8px;
    cursor:pointer;
}

@media(max-width:800px){
    .event-home-editor-grid{grid-template-columns:1fr}
    .event-home-editor-side{position:static}
    .event-home-gallery-item,
    .event-home-gallery-item:nth-child(n){grid-column:span 12;min-height:230px}
}
@media(max-width:560px){
    .event-home-hero{min-height:76vh;padding:60px 18px}
    .event-home-primary-actions{flex-direction:column}
    .event-home-primary-actions a{width:100%;box-sizing:border-box}
    .rsvp-choice{grid-template-columns:1fr}
    .event-home-footer{align-items:flex-start;flex-direction:column}
    .rsvp-admin-metrics{grid-template-columns:1fr}
}


/* =========================================================
   V5.2.3 — PAINEL DE CONFIRMAÇÕES DE PRESENÇA
   ========================================================= */
.rsvp-client-page{min-width:0}
.rsvp-dashboard-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px;
}
.rsvp-metric-card{
    padding:18px;
    border:1px solid var(--line);
    border-radius:16px;
    background:#fff !important;
}
.rsvp-metric-card span,
.rsvp-metric-card b,
.rsvp-metric-card small{display:block}
.rsvp-metric-card span{
    font-size:9px;
    color:var(--muted);
    font-weight:800;
}
.rsvp-metric-card b{
    margin:7px 0 4px;
    font-size:32px;
}
.rsvp-metric-card small{
    color:var(--muted);
    font-size:8px;
    line-height:1.4;
}
.rsvp-status-panel{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}
.rsvp-status-panel p{
    margin:6px 0 10px;
    color:var(--muted);
}
.rsvp-response-count{
    font-size:9px;
    color:var(--muted);
}
.rsvp-table-wrap{
    width:100%;
    overflow-x:auto;
}
.rsvp-table{
    width:100%;
    min-width:900px;
    border-collapse:collapse;
}
.rsvp-table th{
    padding:10px 9px;
    border-bottom:1px solid var(--line);
    color:var(--muted);
    font-size:8px;
    text-align:left;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.rsvp-table td{
    padding:13px 9px;
    border-bottom:1px solid var(--line);
    vertical-align:top;
    font-size:10px;
}
.rsvp-table tr:last-child td{border-bottom:0}
.rsvp-answer{
    display:inline-flex;
    padding:5px 8px;
    border-radius:999px;
    font-size:8px;
    font-weight:900;
    white-space:nowrap;
}
.rsvp-answer.yes{
    background:#eaf8ef;
    color:#267447;
}
.rsvp-answer.no{
    background:#fff0f1;
    color:#a83e47;
}
.rsvp-note-cell{
    max-width:280px;
    white-space:normal;
    line-height:1.45;
}
.rsvp-delete-button{
    appearance:none;
    padding:5px 7px;
    border:0;
    background:transparent !important;
    color:#a83e47 !important;
    font-size:8px;
    font-weight:800;
    cursor:pointer;
}
.rsvp-empty-state{
    display:flex;
    flex-direction:column;
    gap:6px;
}
.rsvp-empty-state span{
    color:var(--muted);
}

@media(max-width:1050px){
    .rsvp-dashboard-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:650px){
    .rsvp-dashboard-grid{grid-template-columns:1fr}
    .rsvp-status-panel{align-items:flex-start;flex-direction:column}
}


/* =========================================================
   V5.2.4 — RSVP EM PÁGINA PRÓPRIA
   ========================================================= */
.event-rsvp-page{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px 18px;
    background:var(--home-bg) !important;
    color:var(--home-text) !important;
}
.event-rsvp-page-inner{
    width:min(100%,680px);
}
.event-rsvp-back{
    display:inline-flex;
    margin-bottom:14px;
    color:var(--home-text) !important;
    text-decoration:none;
    font-size:11px;
    font-weight:850;
}
.event-rsvp-form-card,
.event-rsvp-success{
    padding:clamp(28px,6vw,54px);
    border:1px solid color-mix(in srgb,var(--home-text) 9%,transparent);
    border-radius:var(--home-radius);
    background:var(--home-surface) !important;
    color:var(--home-text) !important;
}
.event-rsvp-form-card h1,
.event-rsvp-success h1{
    margin:10px 0 12px;
    font-size:clamp(34px,6vw,58px);
    line-height:1.02;
    letter-spacing:-.04em;
}
.event-rsvp-form-card>p,
.event-rsvp-success>p{
    color:color-mix(in srgb,var(--home-text) 67%,transparent) !important;
    line-height:1.65;
}
.event-rsvp-form-card .public-rsvp-form{
    margin-top:24px;
}
.event-rsvp-success{
    text-align:center;
}
.event-rsvp-success-icon{
    width:66px;
    height:66px;
    display:grid;
    place-items:center;
    margin:0 auto 18px;
    border-radius:50%;
    background:color-mix(in srgb,var(--home-primary) 10%,var(--home-surface)) !important;
    color:var(--home-primary) !important;
    font-size:32px;
}
.event-rsvp-success .event-home-eyebrow{
    text-align:center;
}
.event-rsvp-success h1,
.event-rsvp-success p{
    margin-left:auto;
    margin-right:auto;
}
.event-rsvp-success-actions{
    display:flex;
    justify-content:center;
    gap:9px;
    flex-wrap:wrap;
    margin-top:25px;
}
.event-rsvp-closed{
    text-align:center;
}
.event-rsvp-closed h2,
.event-rsvp-closed p{
    margin-left:auto;
    margin-right:auto;
}
@media(max-width:560px){
    .event-rsvp-page{
        align-items:flex-start;
        padding-top:22px;
    }
    .event-rsvp-success-actions{
        flex-direction:column;
    }
    .event-rsvp-success-actions a{
        width:100%;
        box-sizing:border-box;
    }
}


/* =========================================================
   V5.2.5 — UI/UX HOME DO EVENTO
   Mais convidativa, mantendo o estilo escolhido pelo cliente
   ========================================================= */

/* Transição visual entre capa e conteúdo */
.event-home-transition{
    width:min(1080px,calc(100% - 32px));
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin:-17px auto 12px;
    position:relative;
    z-index:5;
}
.event-home-transition span{
    height:1px;
    flex:1;
    max-width:130px;
    background:color-mix(in srgb,var(--home-primary) 38%,transparent);
}
.event-home-transition b{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid color-mix(in srgb,var(--home-primary) 28%,transparent);
    border-radius:50%;
    background:var(--home-surface) !important;
    color:var(--home-primary) !important;
    font-size:15px;
}

/* Hero mais editorial */
.event-home-hero::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:22px;
    width:1px;
    height:38px;
    transform:translateX(-50%);
    background:linear-gradient(
        to bottom,
        color-mix(in srgb,var(--home-primary) 55%,transparent),
        transparent
    );
}
.event-home-hero-content{
    padding:30px 0;
}
.event-home-hero h1{
    text-wrap:balance;
}
.event-home-hero p{
    text-wrap:pretty;
}
.event-home-date{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 13px;
    border:1px solid color-mix(in srgb,var(--home-text) 12%,transparent);
    border-radius:999px;
    background:color-mix(in srgb,var(--home-surface) 78%,transparent);
    box-shadow:0 8px 30px rgba(0,0,0,.04);
}
.event-home-hero.with-image .event-home-date{
    background:rgba(255,255,255,.92) !important;
    color:#182033 !important;
    text-shadow:none;
}

.event-home-primary-actions{
    margin-top:34px;
}
.event-home-message-button{
    max-width:100%;
    padding-left:24px;
    padding-right:24px;
}

/* Cards com presença visual sutil */
.event-home-section{
    position:relative;
    overflow:hidden;
    box-shadow:
        0 1px 0 rgba(255,255,255,.65) inset,
        0 18px 55px rgba(24,32,51,.045);
}
.event-home-section::before{
    content:"";
    position:absolute;
    width:140px;
    height:140px;
    top:-85px;
    right:-70px;
    border-radius:50%;
    border:1px solid color-mix(in srgb,var(--home-primary) 12%,transparent);
    pointer-events:none;
}
.event-home-section::after{
    content:"";
    position:absolute;
    width:70px;
    height:70px;
    bottom:-42px;
    left:-35px;
    border-radius:50%;
    background:color-mix(in srgb,var(--home-primary) 4%,transparent);
    pointer-events:none;
}

/* Bloco principal de mensagem */
.event-home-memory-card{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:30px;
    align-items:start;
}
.event-home-memory-ornament{
    width:84px;
    height:84px;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:1px solid color-mix(in srgb,var(--home-primary) 20%,transparent);
    background:color-mix(in srgb,var(--home-primary) 6%,var(--home-surface)) !important;
    color:var(--home-primary) !important;
    font-size:34px;
    box-shadow:0 12px 34px rgba(0,0,0,.05);
}
.event-home-memory-copy{
    position:relative;
    z-index:2;
}
.event-home-memory-copy h2{
    max-width:720px;
}
.event-home-memory-copy p{
    max-width:650px;
}
.event-home-memory-types{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin:18px 0 22px;
}
.event-home-memory-types span{
    display:inline-flex;
    align-items:center;
    padding:7px 10px;
    border:1px solid color-mix(in srgb,var(--home-text) 9%,transparent);
    border-radius:999px;
    background:color-mix(in srgb,var(--home-bg) 62%,var(--home-surface)) !important;
    color:color-mix(in srgb,var(--home-text) 72%,transparent) !important;
    font-size:10px;
    font-weight:800;
}

/* Galeria mais sofisticada */
.event-home-gallery{
    gap:12px;
}
.event-home-gallery-item{
    position:relative;
    border:1px solid color-mix(in srgb,var(--home-text) 8%,transparent);
    box-shadow:0 12px 34px rgba(0,0,0,.055);
}
.event-home-gallery-item::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(to top,rgba(0,0,0,.08),transparent 42%);
    opacity:0;
    transition:opacity .22s ease;
    pointer-events:none;
}
.event-home-gallery-item:hover::after{
    opacity:1;
}

/* RSVP / contagem mais polidos */
.event-countdown{
    box-shadow:0 12px 34px rgba(0,0,0,.045);
}
.event-home-main-button,
.event-home-secondary-button{
    transition:
        transform .16s ease,
        box-shadow .16s ease,
        opacity .16s ease;
}
.event-home-main-button:hover,
.event-home-secondary-button:hover{
    transform:translateY(-1px);
}
.event-home-main-button{
    box-shadow:0 12px 26px color-mix(in srgb,var(--home-primary) 18%,transparent);
}
.event-home-main-button:hover{
    box-shadow:0 16px 32px color-mix(in srgb,var(--home-primary) 24%,transparent);
}

/* Footer com mais acabamento */
.event-home-footer{
    margin-top:10px;
    padding:30px 8px 18px;
    border-top:1px solid color-mix(in srgb,var(--home-text) 7%,transparent);
}
.event-home-footer>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}
.event-home-footer small{
    color:color-mix(in srgb,var(--home-text) 42%,transparent) !important;
    font-size:9px;
}

/* Ajustes por preset */
.home-style-minimal .event-home-section{
    box-shadow:0 14px 42px rgba(24,32,51,.035);
}
.home-style-elegant .event-home-transition b{
    border-radius:0;
    transform:rotate(45deg);
}
.home-style-elegant .event-home-transition b{
    font-size:0;
}
.home-style-elegant .event-home-transition b::after{
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--home-primary);
}
.home-style-romantic .event-home-memory-ornament{
    box-shadow:0 10px 30px color-mix(in srgb,var(--home-primary) 12%,transparent);
}
.home-style-corporate .event-home-section::before,
.home-style-corporate .event-home-section::after{
    border-radius:12px;
}
.home-style-corporate .event-home-memory-ornament{
    border-radius:16px;
}

@media(max-width:700px){
    .event-home-memory-card{
        grid-template-columns:1fr;
        gap:18px;
    }
    .event-home-memory-ornament{
        width:58px;
        height:58px;
        font-size:25px;
    }
    .event-home-message-button{
        width:100%;
        box-sizing:border-box;
    }
}


/* =========================================================
   V5.2.6 — HOME MAIS CONVIDATIVA + LOCAL DA COMEMORAÇÃO
   ========================================================= */
.event-home-details{
    width:min(100%,760px);
    display:flex;
    align-items:stretch;
    justify-content:center;
    gap:10px;
    flex-wrap:wrap;
    margin:28px auto 0;
}
.event-home-detail{
    min-height:66px;
    display:flex;
    align-items:center;
    gap:11px;
    padding:12px 16px;
    border:1px solid color-mix(in srgb,var(--home-text) 11%,transparent);
    border-radius:18px;
    background:color-mix(in srgb,var(--home-surface) 92%,transparent) !important;
    color:var(--home-text) !important;
    box-shadow:0 12px 34px rgba(24,32,51,.055);
    text-align:left;
    backdrop-filter:blur(10px);
}
.event-home-detail-icon{
    width:34px;
    height:34px;
    flex:0 0 34px;
    display:grid;
    place-items:center;
    border-radius:12px;
    background:color-mix(in srgb,var(--home-primary) 9%,var(--home-surface)) !important;
    color:var(--home-primary) !important;
    font-size:15px;
    font-weight:900;
}
.event-home-detail>div{
    min-width:0;
}
.event-home-detail small{
    display:block;
    margin-bottom:3px;
    color:color-mix(in srgb,var(--home-text) 48%,transparent) !important;
    font-size:8px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.event-home-detail b{
    display:block;
    color:var(--home-text) !important;
    font-size:13px;
    line-height:1.2;
}
.event-home-detail b em{
    font-size:9px;
    font-style:normal;
    font-weight:700;
    color:color-mix(in srgb,var(--home-text) 55%,transparent) !important;
}
.event-home-detail-place{
    flex:1 1 310px;
    max-width:470px;
}
.event-home-detail-place>div{
    flex:1;
}
.event-home-detail-place span:not(.event-home-detail-icon){
    display:block;
    max-width:290px;
    margin-top:3px;
    overflow:hidden;
    color:color-mix(in srgb,var(--home-text) 58%,transparent) !important;
    font-size:9px;
    line-height:1.35;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.event-home-map-link{
    flex:0 0 auto;
    padding:8px 10px;
    border:1px solid color-mix(in srgb,var(--home-primary) 22%,transparent);
    border-radius:999px;
    color:var(--home-primary) !important;
    background:color-mix(in srgb,var(--home-primary) 5%,var(--home-surface)) !important;
    text-decoration:none;
    font-size:8px;
    font-weight:900;
    white-space:nowrap;
}
.event-home-map-link:hover{
    transform:translateY(-1px);
}
.event-home-hero.with-image .event-home-detail{
    border-color:rgba(255,255,255,.3);
    background:rgba(255,255,255,.93) !important;
    color:#182033 !important;
}
.event-home-hero.with-image .event-home-detail small{
    color:rgba(24,32,51,.52) !important;
}
.event-home-hero.with-image .event-home-detail b{
    color:#182033 !important;
}
.event-home-hero.with-image .event-home-detail-place span:not(.event-home-detail-icon){
    color:rgba(24,32,51,.62) !important;
}
.event-home-invite-note{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    max-width:560px;
    margin:24px auto 0;
    color:color-mix(in srgb,var(--home-text) 48%,transparent) !important;
}
.event-home-invite-note span{
    color:color-mix(in srgb,var(--home-primary) 55%,transparent) !important;
    font-size:8px;
}
.event-home-invite-note p{
    margin:0;
    color:inherit !important;
    font-size:9px;
    line-height:1.4;
    text-align:center;
}

/* Editor */
.editor-help{
    margin:-4px 0 16px;
    color:var(--muted);
    line-height:1.55;
}
.editor-inline-tip{
    display:flex;
    align-items:flex-start;
    gap:9px;
    margin-top:10px;
    padding:12px 14px;
    border:1px solid #ece7e9;
    border-radius:12px;
    background:#fffafb !important;
}
.editor-inline-tip b{
    flex:0 0 auto;
    font-size:9px;
}
.editor-inline-tip span{
    color:var(--muted);
    font-size:9px;
    line-height:1.45;
}

/* Presets */
.home-style-elegant .event-home-detail{
    border-radius:4px;
}
.home-style-romantic .event-home-detail{
    box-shadow:0 14px 38px color-mix(in srgb,var(--home-primary) 8%,transparent);
}
.home-style-corporate .event-home-detail,
.home-style-corporate .event-home-detail-icon{
    border-radius:10px;
}
.home-style-minimal .event-home-detail{
    box-shadow:none;
}

@media(max-width:650px){
    .event-home-details{
        display:grid;
        grid-template-columns:1fr 1fr;
        width:100%;
    }
    .event-home-detail{
        min-height:62px;
    }
    .event-home-detail-place{
        grid-column:1 / -1;
        max-width:none;
    }
}
@media(max-width:430px){
    .event-home-details{
        grid-template-columns:1fr;
    }
    .event-home-detail-place{
        grid-column:auto;
    }
    .event-home-map-link{
        padding:7px 9px;
    }
}


/* =========================================================
   V5.2.7 — HOME HERDA O LAYOUT + RSVP RECONHECIDO
   ========================================================= */

/* A Home usa exatamente as famílias já escolhidas no editor principal. */
.font-title-caligrafia.event-public-home h1,
.font-title-caligrafia.event-public-home h2{
    font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive !important;
}
.font-title-serifada.event-public-home h1,
.font-title-serifada.event-public-home h2{
    font-family:Georgia,"Times New Roman",serif !important;
}
.font-title-moderna.event-public-home h1,
.font-title-moderna.event-public-home h2{
    font-family:Inter,Arial,sans-serif !important;
}
.font-title-classica.event-public-home h1,
.font-title-classica.event-public-home h2{
    font-family:"Times New Roman",Times,serif !important;
}
.font-title-minimalista.event-public-home h1,
.font-title-minimalista.event-public-home h2{
    font-family:Arial,Helvetica,sans-serif !important;
}

.event-public-home .event-home-main-button{
    background:var(--home-primary) !important;
    border-color:var(--home-primary) !important;
    color:var(--home-button-text) !important;
}
.event-public-home .event-home-secondary-button{
    color:var(--home-text) !important;
}

.event-home-rsvp-done{
    width:min(100%,560px);
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    margin:18px auto 0;
    padding:10px 13px;
    border:1px solid color-mix(in srgb,var(--home-primary) 16%,transparent);
    border-radius:14px;
    background:color-mix(in srgb,var(--home-primary) 5%,var(--home-surface)) !important;
    color:var(--home-text) !important;
}
.event-home-rsvp-done>span{
    width:24px;
    height:24px;
    flex:0 0 24px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:var(--home-primary) !important;
    color:var(--home-button-text) !important;
    font-size:10px;
    font-weight:900;
}
.event-home-rsvp-done p{
    margin:0;
    color:color-mix(in srgb,var(--home-text) 68%,transparent) !important;
    font-size:9px;
    line-height:1.45;
    text-align:left;
}

.home-layout-sync-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:16px;
    border:1px solid var(--line);
    border-radius:15px;
    background:var(--soft) !important;
}
.home-layout-sync-card>div{
    display:flex;
    flex-direction:column;
    gap:4px;
}
.home-layout-sync-card b{
    font-size:11px;
}
.home-layout-sync-card span{
    max-width:550px;
    color:var(--muted);
    font-size:9px;
    line-height:1.5;
}

@media(max-width:650px){
    .home-layout-sync-card{
        align-items:flex-start;
        flex-direction:column;
    }
    .home-layout-sync-card .btn{
        width:100%;
    }
    .event-home-rsvp-done{
        align-items:flex-start;
    }
}


/* =========================================================
   V5.2.8 — PRESENTES / RECEBIMENTO SIMPLES
   ========================================================= */
.gift-payout-metric{
    position:relative;
}
.gift-payout-metric b{
    font-size:18px !important;
}
.gift-payout-metric small{
    display:block;
    margin-top:5px;
    color:var(--muted);
    font-size:8px;
}
.gift-payout-metric.ready::after,
.gift-payout-metric.needs-setup::after{
    content:"";
    position:absolute;
    top:14px;
    right:14px;
    width:8px;
    height:8px;
    border-radius:50%;
}
.gift-payout-metric.ready::after{
    background:#3aa76d;
}
.gift-payout-metric.needs-setup::after{
    background:#e8a23c;
}

.gift-payout-card{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    margin:22px 0 16px;
    padding:18px 20px;
    border:1px solid var(--line);
    border-radius:18px;
    background:#fff !important;
}
.gift-payout-card.ready{
    border-color:#cfe9da;
    background:linear-gradient(135deg,#fbfffc,#f3fbf6) !important;
}
.gift-payout-card.setup{
    border-color:#efdba9;
    background:linear-gradient(135deg,#fffdf8,#fff8e9) !important;
}
.gift-payout-card-icon{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    border-radius:14px;
    font-size:19px;
    font-weight:900;
}
.gift-payout-card.ready .gift-payout-card-icon{
    background:#e8f7ee !important;
    color:#277a4a !important;
}
.gift-payout-card.setup .gift-payout-card-icon{
    background:#fff0c9 !important;
    color:#9f6b16 !important;
}
.gift-payout-card-copy{
    min-width:0;
}
.gift-payout-card-copy>b{
    display:block;
    margin:4px 0 5px;
    font-size:14px;
}
.gift-payout-card-copy>p{
    max-width:760px;
    margin:0;
    color:var(--muted);
    font-size:9px;
    line-height:1.55;
}
.gift-payout-card-copy>p strong{
    color:inherit;
}
.gift-fee-summary{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    margin-top:10px;
}
.gift-fee-summary span{
    display:inline-flex;
    gap:4px;
    padding:6px 9px;
    border:1px solid rgba(20,25,35,.07);
    border-radius:999px;
    background:rgba(255,255,255,.7) !important;
    font-size:8px;
}
.gift-fee-summary b{
    font-size:8px;
}

.gift-how-it-works{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin:18px 0;
}
.gift-how-it-works>div{
    display:flex;
    align-items:center;
    gap:10px;
    padding:13px 14px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff !important;
}
.gift-how-it-works>div>span{
    width:30px;
    height:30px;
    flex:0 0 30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:var(--brand) !important;
    color:#fff !important;
    font-size:9px;
    font-weight:900;
}
.gift-how-it-works p{
    margin:0;
    color:var(--muted);
    font-size:9px;
    line-height:1.4;
}
.gift-how-it-works p b{
    color:#182033;
}

.gift-settings-card .switch-line{
    padding:14px 16px;
    border-radius:14px;
    background:var(--soft) !important;
}

@media(max-width:850px){
    .gift-payout-card{
        grid-template-columns:auto 1fr;
    }
    .gift-payout-card>a{
        grid-column:1 / -1;
        width:100%;
    }
    .gift-how-it-works{
        grid-template-columns:1fr;
    }
}
@media(max-width:560px){
    .gift-payout-card{
        grid-template-columns:1fr;
    }
    .gift-payout-card-icon{
        width:38px;
        height:38px;
    }
}


/* =========================================================
   V5.2.9 — DIAGNÓSTICO PIX REAL
   ========================================================= */
.pix-readiness-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.pix-readiness-grid article{
    padding:15px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff !important;
}
.pix-readiness-grid span,
.pix-readiness-grid b,
.pix-readiness-grid small{
    display:block;
}
.pix-readiness-grid span{
    color:var(--muted);
    font-size:8px;
    font-weight:850;
}
.pix-readiness-grid b{
    margin:6px 0 4px;
    font-size:17px;
}
.pix-readiness-grid small{
    color:var(--muted);
    font-size:8px;
    line-height:1.45;
}
.pix-readiness-errors{
    margin-top:12px;
    padding:10px 12px;
    border:1px solid var(--line);
    border-radius:12px;
}
.pix-readiness-errors summary{
    cursor:pointer;
    font-size:9px;
    font-weight:850;
}
.pix-readiness-errors p{
    margin:7px 0 0;
    color:var(--muted);
    font-size:8px;
}
.payment-support-code{
    margin:12px 0;
    color:var(--muted);
    font-size:10px;
    text-align:center;
}
.payment-support-code b{
    color:#182033;
}
@media(max-width:760px){
    .pix-readiness-grid{grid-template-columns:1fr}
}




/* =========================================================
   V5.2.16 — ÚNICA CAMADA DE TEMA
   ========================================================= */
html{color-scheme:light!important}
body{color-scheme:light!important}

/* O evento é a única fonte das cores. */
.event-public-home,
.event-public-home .event-home-content,
.event-public-home .event-home-hero:not(.with-image),
.event-rsvp-page{
    background:var(--home-bg)!important;
    color:var(--home-text)!important;
}

.event-public-home .event-home-section,
.event-public-home .event-home-detail,
.event-rsvp-page .event-rsvp-form-card,
.event-rsvp-page .event-rsvp-success,
.event-home-rsvp-done{
    background:var(--home-surface)!important;
    color:var(--home-text)!important;
}

.event-public-home .event-home-main-button,
.event-rsvp-page .event-home-main-button{
    background:var(--home-primary)!important;
    border-color:var(--home-primary)!important;
    color:var(--home-button-text)!important;
}

.event-public-home .event-home-secondary-button,
.event-rsvp-page .event-home-secondary-button{
    background:var(--home-surface)!important;
    color:var(--home-text)!important;
}

.event-public-home input:not([type=radio]):not([type=checkbox]),
.event-public-home textarea,
.event-public-home select,
.event-rsvp-page input:not([type=radio]):not([type=checkbox]),
.event-rsvp-page textarea,
.event-rsvp-page select{
    color-scheme:light!important;
    background:var(--home-surface)!important;
    color:var(--home-text)!important;
    -webkit-text-fill-color:var(--home-text)!important;
    caret-color:var(--home-text)!important;
}

/* Não há prefers-color-scheme. O sistema operacional não altera o layout escolhido. */

/* Samsung Force Dark tende a preservar imagens; usamos um pixel-art SVG sólido
   como camada visual principal, mantendo a cor do evento. */
.event-public-home,
.event-public-home .event-home-content,
.event-public-home .event-home-hero:not(.with-image),
.event-rsvp-page{
    background-image:var(--mps-bg-svg)!important;
    background-repeat:repeat!important;
}

.event-public-home .event-home-main-button,
.event-rsvp-page .event-home-main-button{
    background-image:var(--mps-primary-svg)!important;
    background-repeat:repeat!important;
}

/* V5.3 — Home comercial */
.mps-home{background:#fff;color:#1d1b20;min-height:100vh}
.mps-home-nav{max-width:1180px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.mps-logo-link img,.mps-home-footer img,.mps-checkout-logo img{display:block;width:auto;object-fit:contain}
.mps-logo-link img{height:58px;max-width:260px}.mps-home-nav nav{display:flex;align-items:center;gap:24px}.mps-home-nav nav>a:not(.btn){color:#4d4750;text-decoration:none;font-weight:700;font-size:14px}
.mps-hero{max-width:1180px;margin:auto;min-height:680px;padding:72px 28px 100px;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:72px}
.mps-hero-copy h1{font-family:Georgia,serif;font-weight:500;font-size:clamp(46px,5.4vw,78px);line-height:.99;letter-spacing:-3px;max-width:720px;margin:18px 0 24px}.mps-hero-copy>p{font-size:19px;line-height:1.65;color:#696169;max-width:650px}
.mps-hero-actions{display:flex;align-items:center;gap:22px;margin-top:34px;flex-wrap:wrap}.mps-soft-link{color:#6b5262;text-decoration:none;font-weight:750}.mps-trust{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px;color:#746b72;font-size:13px;font-weight:700}
.mps-phone-stage{position:relative;min-height:560px;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#f8e9ef 0,#fbf5f7 45%,transparent 70%);border-radius:50%}
.mps-phone{width:286px;padding:9px;border-radius:44px;background:#222;box-shadow:0 35px 70px rgba(55,35,45,.22);transform:rotate(2deg)}.mps-phone-screen{min-height:550px;border-radius:36px;background:#fff7fa;padding:44px 24px 28px;text-align:center;overflow:hidden}.mps-demo-kicker{font-size:10px;letter-spacing:2px;color:#8d6979}.mps-phone-screen h3{font-family:Georgia,serif;font-size:48px;font-weight:500;margin:14px 0 5px;color:#6d4658}.mps-phone-screen p{color:#9b7887}.mps-demo-photo{height:185px;border-radius:120px 120px 18px 18px;margin:24px 8px;background:linear-gradient(145deg,#e6c4d0,#f5e4e9)}.mps-phone-screen strong{display:block;font-family:Georgia,serif;font-size:20px;color:#654554}.mps-phone-screen button{border:0;background:#865b70;color:white;border-radius:999px;padding:13px 18px;margin:20px auto;font-weight:800}.mps-phone-screen small{display:block;color:#9b7887}.mps-floating-card{position:absolute;right:0;bottom:80px;background:#fff;padding:16px 22px;border-radius:18px;box-shadow:0 16px 45px rgba(50,35,43,.14);font-weight:800;color:#815b6c}
.mps-section,.mps-feature-section,.mps-price-section{max-width:1180px;margin:auto;padding:100px 28px}.mps-section-heading h2,.mps-feature-section h2,.mps-price-section h2{font-family:Georgia,serif;font-weight:500;font-size:clamp(38px,4vw,58px);line-height:1.05;letter-spacing:-1.8px;margin:15px 0 40px}.mps-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.mps-steps article{padding:30px;border:1px solid #eee5e9;border-radius:24px;background:#fff}.mps-steps article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#f7e8ee;color:#7c5366;font-weight:900}.mps-steps h3{font-size:19px;margin:28px 0 10px}.mps-steps p{color:#746d72;line-height:1.55}
.mps-feature-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:center;background:#faf7f8;max-width:none;padding-left:max(28px,calc((100vw - 1124px)/2));padding-right:max(28px,calc((100vw - 1124px)/2))}.mps-feature-section>div:first-child>p{color:#716970;line-height:1.65;font-size:17px}.mps-feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.mps-feature-grid article{background:#fff;border-radius:20px;padding:22px;display:grid;grid-template-columns:36px 1fr;gap:3px 10px;box-shadow:0 8px 30px rgba(60,45,53,.05);font-size:22px}.mps-feature-grid b{font-size:16px}.mps-feature-grid span{grid-column:2;color:#8a8187;font-size:13px}
.mps-occasions{padding:34px 24px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap;border-block:1px solid #eee7ea}.mps-occasions span{padding:10px 16px;border-radius:999px;background:#faf5f7;font-size:13px;font-weight:800;color:#735767}
.mps-price-section{display:grid;grid-template-columns:1fr .7fr;gap:70px;align-items:center}.mps-price-card{padding:38px;border-radius:30px;background:#281f25;color:#fff;display:flex;flex-direction:column;gap:13px;box-shadow:0 28px 60px rgba(39,28,35,.18)}.mps-price-card small{letter-spacing:1.5px;color:#d8c9d0}.mps-price-card strong{font-size:54px}.mps-price-card sup{font-size:20px}.mps-price-card span{color:#d8c9d0;margin-bottom:15px}.mps-home-footer{max-width:1180px;margin:auto;border-top:1px solid #eee7ea;padding:38px 28px 50px;display:flex;align-items:center;gap:25px}.mps-home-footer img{height:45px;max-width:220px}.mps-home-footer p{flex:1;color:#7c7479}.mps-home-footer a{color:#5c4652;font-weight:800}
.mps-checkout-page,.mps-payment-page{min-height:100vh;background:#faf7f8;padding:32px}.mps-checkout-logo{display:block;max-width:1100px;margin:0 auto 38px}.mps-checkout-logo img{height:56px;max-width:260px}.mps-checkout-grid{max-width:1000px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.mps-checkout-grid h1,.mps-payment-card h1{font-family:Georgia,serif;font-size:48px;font-weight:500;line-height:1.05}.mps-checkout-grid section>p{color:#756d73;line-height:1.6}.mps-checkout-summary{margin-top:35px;padding:24px;border-radius:22px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:8px}.mps-checkout-summary b{font-size:22px}.mps-checkout-summary small{grid-column:1/-1;color:#8b8388}.mps-checkout-card,.mps-payment-card{background:#fff;border-radius:28px;padding:34px;box-shadow:0 18px 55px rgba(50,36,44,.08)}.mps-checkout-card label{display:block;font-weight:800;font-size:13px;margin:18px 0 7px}.mps-checkout-card input{width:100%;padding:14px 16px;border:1px solid #ded6da;border-radius:12px;background:#fff;color:#222}.mps-checkout-card .btn{width:100%;margin-top:24px}.mps-secure-note{display:block;text-align:center;color:#8a8187;margin-top:14px}.mps-payment-card{max-width:560px;margin:auto;text-align:center}.mps-pix-qr{width:260px;max-width:80%;margin:22px auto;display:block}.mps-pix-value{font-size:28px;font-weight:900;margin:12px}.mps-payment-card textarea{width:100%;height:90px;padding:12px;border:1px solid #ddd;border-radius:12px;resize:none}.mps-payment-card .btn{margin:14px}.mps-payment-card .mps-soft-link{display:block;margin:14px}.mps-paid-icon{width:70px;height:70px;display:grid;place-items:center;border-radius:50%;background:#e8f7ee;color:#16864a;font-size:35px;font-weight:900;margin:0 auto 20px}.mps-webhook-box{background:#f6f3f5;padding:18px;border-radius:14px;margin:22px 0;display:grid;gap:8px}.mps-webhook-box code{overflow-wrap:anywhere}
@media(max-width:820px){.mps-home-nav nav>a:not(.btn){display:none}.mps-logo-link img{height:48px}.mps-home-nav .btn{font-size:12px;padding:11px 13px}.mps-hero{grid-template-columns:1fr;padding-top:45px;gap:30px}.mps-hero-copy h1{font-size:48px;letter-spacing:-2px}.mps-phone-stage{min-height:520px}.mps-steps{grid-template-columns:1fr 1fr}.mps-feature-section,.mps-price-section,.mps-checkout-grid{grid-template-columns:1fr;gap:35px}.mps-feature-section{padding-block:70px}.mps-home-footer{flex-direction:column;align-items:flex-start}.mps-checkout-page{padding:22px}.mps-checkout-grid h1,.mps-payment-card h1{font-size:38px}}
@media(max-width:520px){.mps-steps,.mps-feature-grid{grid-template-columns:1fr}.mps-hero{padding-inline:20px}.mps-section,.mps-price-section{padding:70px 20px}.mps-phone{width:260px}.mps-phone-screen{min-height:510px}.mps-floating-card{right:5px}.mps-price-card strong{font-size:46px}}

/* V5.3.1 Mercado Pago settings diagnostics */
.mps-settings-title{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:26px}
.mps-settings-title h1{margin:7px 0}.mps-settings-title p{max-width:680px;color:#716970}
.mps-mp-status-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0 30px}
.mps-mp-status-grid>div{padding:17px;border:1px solid #e7e0e4;border-radius:14px;display:flex;flex-direction:column;gap:5px}
.mps-mp-status-grid small{font-size:10px;font-weight:900;letter-spacing:1px;color:#81787e}
.mps-mp-status-grid b.ok{color:#16864a}.mps-mp-status-grid b.pending{color:#a16d1b}
.mps-mp-form h3{margin:30px 0 12px;padding-top:22px;border-top:1px solid #eee7ea}
.mps-mp-form>label{display:block;font-weight:800;margin:14px 0 7px}
.mps-mp-form>input,.mps-mp-form>select{width:100%;max-width:720px}
.mps-setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;background:#faf7f8;border-radius:14px;margin-bottom:20px}
.mps-setting-row div{display:grid;gap:4px}.mps-setting-row small{color:#81787e}
.notice code{display:block;white-space:pre-wrap;overflow-wrap:anywhere;margin-top:6px}
@media(max-width:700px){.mps-settings-title{display:block}.mps-settings-title .btn{margin-top:14px}.mps-mp-status-grid{grid-template-columns:1fr 1fr}.mps-setting-row{align-items:flex-start;flex-direction:column}}


/* =========================================================
   V5.3.3 — RSVP / NOMES DOS ACOMPANHANTES
   ========================================================= */
.rsvp-count-field label small{
    display:block;
    margin-top:3px;
    color:color-mix(in srgb,var(--home-text) 50%,transparent) !important;
    font-size:9px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.rsvp-companion-names{
    margin-top:16px;
    padding:18px;
    border:1px solid color-mix(in srgb,var(--home-text) 10%,transparent);
    border-radius:16px;
    background:color-mix(in srgb,var(--home-primary) 4%,var(--home-surface)) !important;
}
.rsvp-companion-names[hidden]{
    display:none;
}
.rsvp-companion-intro{
    margin-bottom:14px;
}
.rsvp-companion-intro b,
.rsvp-companion-intro span{
    display:block;
}
.rsvp-companion-intro b{
    font-size:13px;
}
.rsvp-companion-intro span{
    margin-top:3px;
    color:color-mix(in srgb,var(--home-text) 58%,transparent) !important;
    font-size:10px;
    line-height:1.45;
}
.rsvp-companion-field{
    display:block;
    margin-top:10px !important;
}
.rsvp-companion-field>span{
    display:block;
    margin-bottom:5px;
    font-size:9px;
    font-weight:850;
}
.rsvp-guests-cell{
    min-width:170px;
}
.rsvp-guests-cell span{
    display:block;
    margin-bottom:3px;
    font-size:9px;
    line-height:1.35;
}


/* =========================================================
   V5.3.4 — HOME DO EVENTO = LAYOUT PRINCIPAL (ESTILO V5.0)
   ========================================================= */

/*
 * O editor principal é a única autoridade visual:
 * --event-primary
 * --event-bg
 * --event-button
 * --event-button-text
 * title_font / body_font
 */
.public-event.event-public-home{
    min-height:100vh;
    color:var(--event-primary) !important;
    background:
        linear-gradient(
            180deg,
            var(--event-bg) 0%,
            var(--event-bg) 38%,
            #ffffff 92%
        ) !important;
}

/* Capa volta à linguagem visual da V5.0 */
.public-event.event-public-home .event-home-hero:not(.with-image){
    background:transparent !important;
}
.public-event.event-public-home .event-home-hero{
    min-height:auto;
    padding:0;
}
.public-event.event-public-home .event-home-hero-content{
    max-width:720px;
    margin:auto;
    padding:50px 20px 28px;
    text-align:center;
}
.public-event.event-public-home .event-home-kicker.public-kicker{
    display:block;
    margin:0 0 8px;
    color:var(--event-primary) !important;
    -webkit-text-fill-color:var(--event-primary) !important;
    font-size:clamp(28px,6vw,45px);
    line-height:1;
}
.public-event.event-public-home .v5-home-name{
    margin:0 0 14px;
    color:var(--event-primary) !important;
    -webkit-text-fill-color:var(--event-primary) !important;
    font-size:clamp(52px,11vw,82px);
    line-height:.94;
    font-weight:500;
    letter-spacing:-.035em;
}
.public-event.event-public-home .event-home-hero-content>p{
    max-width:580px;
    margin:0 auto;
    color:var(--event-primary) !important;
    -webkit-text-fill-color:var(--event-primary) !important;
    font-size:16px;
    line-height:1.5;
}

/* Mesmas famílias que o layout original sempre utilizou. */
.font-title-caligrafia .v5-home-name{
    font-family:"Brush Script MT","Segoe Script","Lucida Handwriting",cursive !important;
}
.font-title-serifada .v5-home-name{font-family:Georgia,"Times New Roman",serif !important}
.font-title-moderna .v5-home-name{font-family:Inter,Arial,sans-serif !important}
.font-title-classica .v5-home-name{font-family:"Times New Roman",Times,serif !important}
.font-title-minimalista .v5-home-name{font-family:Arial,Helvetica,sans-serif !important}

/* Data/local/contagem são informações, não um segundo tema. */
.public-event.event-public-home .event-home-details{
    margin-top:24px;
}
.public-event.event-public-home .event-home-detail{
    background:#ffffff !important;
    background-image:none !important;
    border:1px solid color-mix(in srgb,var(--event-primary) 12%,transparent) !important;
    color:var(--event-primary) !important;
    box-shadow:0 14px 40px rgba(55,35,45,.06);
}
.public-event.event-public-home .event-home-detail-icon{
    background:color-mix(in srgb,var(--event-button) 10%,#fff) !important;
    color:var(--event-button) !important;
}
.public-event.event-public-home .event-home-detail small,
.public-event.event-public-home .event-home-detail b,
.public-event.event-public-home .event-home-detail span{
    color:var(--event-primary) !important;
    -webkit-text-fill-color:var(--event-primary) !important;
}
.public-event.event-public-home .event-home-map-link{
    color:var(--event-button) !important;
    -webkit-text-fill-color:var(--event-button) !important;
}

/* Ações exatamente na identidade do botão escolhido. */
.public-event.event-public-home .event-home-main-button{
    background:var(--event-button) !important;
    background-image:none !important;
    border-color:var(--event-button) !important;
    color:var(--event-button-text) !important;
    -webkit-text-fill-color:var(--event-button-text) !important;
}
.public-event.event-public-home .event-home-secondary-button{
    background:#fff !important;
    background-image:none !important;
    border-color:var(--event-button) !important;
    color:var(--event-button) !important;
    -webkit-text-fill-color:var(--event-button) !important;
}

/* Conteúdo complementar permanece discreto e não inventa paleta. */
.public-event.event-public-home .event-home-content{
    background:transparent !important;
}
.public-event.event-public-home .event-home-section{
    background:#fff !important;
    background-image:none !important;
    border:1px solid rgba(60,40,50,.09) !important;
    color:#3c3237 !important;
    box-shadow:0 18px 55px rgba(55,35,45,.07);
}
.public-event.event-public-home .event-home-section h2,
.public-event.event-public-home .event-home-section h3{
    color:var(--event-primary) !important;
    -webkit-text-fill-color:var(--event-primary) !important;
}
.public-event.event-public-home .event-home-eyebrow{
    color:var(--event-button) !important;
    -webkit-text-fill-color:var(--event-button) !important;
}

/* V5.3.4 — Mercado Pago Pix */
.mps-test-payment-note{
    margin-top:14px;
    padding:12px 14px;
    border:1px solid #ead5a7;
    border-radius:12px;
    background:#fff9e9;
    display:grid;
    gap:4px;
}
.mps-test-payment-note b{font-size:11px;color:#8c6518}
.mps-test-payment-note span{font-size:10px;line-height:1.5;color:#7c6b49}
.mps-test-badge{
    width:max-content;
    margin:4px auto 14px;
    padding:6px 9px;
    border-radius:999px;
    background:#fff3cd;
    color:#896615;
    font-size:9px;
    font-weight:900;
}
.mps-mp-log{
    margin-top:34px;
    padding-top:28px;
    border-top:1px solid #ece5e9;
}
.mps-mp-log h3{margin:6px 0 14px}
.mps-mp-log>article{
    padding:12px 14px;
    margin-top:8px;
    border:1px solid #e9e2e6;
    border-radius:12px;
    background:#fff;
}
.mps-mp-log>article.has-error{
    border-color:#f0c9cd;
    background:#fff8f8;
}
.mps-mp-log article>div{
    display:flex;
    justify-content:space-between;
    gap:12px;
}
.mps-mp-log article span{
    color:#82787f;
    font-size:9px;
}
.mps-mp-log article code{
    display:block;
    margin-top:8px;
    padding:8px;
    border-radius:8px;
    background:#25262a;
    color:#fff;
    white-space:pre-wrap;
    overflow-wrap:anywhere;
    font-size:9px;
}

/* V5.3.5 MP monitor */
.mp-log-grid{display:grid!important;grid-template-columns:repeat(3,1fr);gap:8px!important;margin-top:10px}.mp-log-grid span{padding:8px;border:1px solid #eee7ea;border-radius:9px;font-size:9px;overflow-wrap:anywhere}.mp-log-grid small{display:block;font-weight:900;color:#8c8188;margin-bottom:3px}.mp-sync-form{margin-top:10px}.mp-json{margin-top:10px}.mp-json summary{cursor:pointer;font-size:10px;font-weight:800}.mp-json pre{max-height:300px;overflow:auto;padding:10px;border-radius:9px;background:#242529;color:#fff;font-size:9px;white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:700px){.mp-log-grid{grid-template-columns:1fr!important}}


/* V5.3.6 — Consulta direta de Orders */
.mps-order-lookup{
    margin-top:30px;
    padding:22px;
    border:1px solid #e8e0e5;
    border-radius:18px;
    background:#faf7f9;
}
.mps-order-lookup h3{margin:5px 0 6px}
.mps-order-lookup p{
    margin:0;
    color:#786f75;
    font-size:11px;
}
.mps-order-lookup>form{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
    margin-top:16px;
}
.mps-order-lookup>form input{
    min-width:0;
    padding:12px 14px;
    border:1px solid #ddd4d9;
    border-radius:11px;
    background:#fff;
}
.mps-manual-result{
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid #e3dbe0;
}
.mp-sync-form{margin-top:11px}
.mp-sync-form form{margin:0}
.mp-sync-form button[disabled]{
    opacity:.48;
    cursor:not-allowed;
}
.mp-no-order{
    display:block;
    margin-top:5px;
    color:#8a8187;
    font-size:9px;
}
@media(max-width:650px){
    .mps-order-lookup>form{
        grid-template-columns:1fr;
    }
}

/* V5.4.0 — cadastro pré-pagamento e meios de pagamento */
.mps-form-section-title{
    margin-top:2px;
    font-size:12px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:#ec477e;
}
.mps-form-section-title.payment-title{
    margin-top:28px;
    padding-top:22px;
    border-top:1px solid #eee7ea;
}
.mps-password-row{position:relative}
.mps-password-row input{padding-right:82px!important}
.mps-password-row button{
    position:absolute;
    right:8px;
    top:50%;
    transform:translateY(-50%);
    border:0;
    background:#f6f1f3;
    border-radius:8px;
    padding:7px 9px;
    font-weight:800;
    cursor:pointer;
}
.mps-payment-choice{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:12px;
}
.mps-pay-option{
    margin:0!important;
    padding:15px;
    border:1px solid #e4dce0;
    border-radius:14px;
    display:flex!important;
    gap:10px;
    align-items:flex-start;
    cursor:pointer;
}
.mps-pay-option:has(input:checked){
    border-color:#ec477e;
    box-shadow:0 0 0 2px rgba(236,71,126,.08);
    background:#fff8fb;
}
.mps-pay-option input{width:auto!important;margin-top:3px}
.mps-pay-option span{display:grid;gap:4px}
.mps-pay-option b{font-size:13px}
.mps-pay-option small{font-weight:500;color:#81777d;line-height:1.35}
#cardPaymentBrick_container{margin-top:20px;text-align:left}
#mpsCardBrickLoading{padding:22px;border-radius:14px;background:#faf7f8;color:#766d72;margin-top:18px}
#mpsCardError{margin-top:14px;text-align:left}
@media(max-width:560px){
    .mps-payment-choice{grid-template-columns:1fr}
}


/* V5.4.2 — criação do primeiro evento após pagamento */
.mps-first-event-page{
    min-height:calc(100vh - 70px);
    padding:48px 20px 80px;
    background:#faf7f8;
}
.mps-first-event-shell{
    max-width:680px;
    margin:auto;
    padding:36px;
    border-radius:28px;
    background:#fff;
    box-shadow:0 18px 55px rgba(55,35,45,.08);
}
.mps-first-event-shell h1{
    margin:8px 0 12px;
    font-family:Georgia,"Times New Roman",serif;
    font-size:44px;
    line-height:1.02;
    font-weight:500;
    letter-spacing:-1.4px;
}
.mps-first-event-shell>p{
    margin:0 0 26px;
    color:#756d73;
    line-height:1.6;
}
.mps-first-event-form label{
    display:block;
    margin:17px 0 7px;
    font-size:12px;
    font-weight:850;
}
.mps-first-event-form label small{
    color:#8a8187;
    font-weight:500;
}
.mps-first-event-form input,
.mps-first-event-form select{
    width:100%;
    box-sizing:border-box;
    padding:14px 15px;
    border:1px solid #dfd7db;
    border-radius:12px;
    background:#fff;
    color:#242026;
}
.mps-first-event-form .btn{
    width:100%;
    margin-top:26px;
}
.mps-no-events{
    max-width:650px;
    margin-top:22px;
    padding:36px!important;
}
.mps-no-events h2{margin-top:0}
@media(max-width:650px){
    .mps-first-event-shell{padding:26px 20px}
    .mps-first-event-shell h1{font-size:36px}
}

/* V5.5 dashboard */
.mps-client-nav{display:flex;flex-direction:column}.mps-client-nav nav{flex:1}.mps-client-nav nav a{display:flex;justify-content:space-between;align-items:center}.nav-badge{background:#ec477e;color:#fff;border-radius:999px;padding:2px 7px;font-size:9px}.mps-new-event-btn{margin:18px 10px;text-align:center}
.mps-client-dashboard{padding-top:42px}.mps-dashboard-welcome{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;margin-bottom:24px}.mps-dashboard-welcome h1{margin:5px 0 8px;font-size:40px}.mps-dashboard-welcome p{margin:0;color:#766d73}
.mps-dashboard-metrics,.mps-financial-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}.mps-dashboard-metrics article,.mps-financial-metrics article{padding:22px;border:1px solid #e8e1e5;border-radius:18px;background:#fff;display:grid;gap:6px}.mps-dashboard-metrics small,.mps-financial-metrics small{font-size:9px;font-weight:900;color:#8b8187}.mps-dashboard-metrics strong,.mps-financial-metrics strong{font-size:28px}.mps-dashboard-metrics a{font-size:10px;font-weight:800;color:#ec477e}.mps-financial-metrics .highlight{background:#2a2026;color:#fff}.mps-financial-metrics .highlight small{color:#d8c8d0}
.mps-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:18px;align-items:start}.mps-event-list{display:grid;gap:10px}.mps-event-list article{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:15px;border:1px solid #eee7ea;border-radius:13px}.mps-event-list article>div{display:grid;gap:3px}.mps-event-list small{color:#ec477e;text-transform:uppercase;font-size:8px;font-weight:900}.mps-event-list span{color:#81777d;font-size:10px}.mps-balance-card>strong{display:block;font-size:38px;margin:13px 0}.mps-balance-card p,.mps-fee-card p{color:#766d73;line-height:1.5}
.mps-withdraw-form label,.mps-support-form label{display:block;margin:14px 0 6px;font-weight:850}.mps-withdraw-form input,.mps-support-form input,.mps-support-form select,.mps-support-form textarea,.mps-reply-box textarea{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #ddd5da;border-radius:11px;background:#fff}.mps-support-form textarea,.mps-reply-box textarea{min-height:120px}
.mps-destination-box{margin:18px 0;padding:16px;border-radius:14px;background:#faf7f8;display:grid;gap:4px}.mps-destination-box small{font-size:8px;font-weight:900;color:#8b8187}.mps-fee-card>div{display:grid;grid-template-columns:80px 1fr;gap:10px;padding:14px 0;border-bottom:1px solid #eee7ea}.mps-fee-card>div b{font-size:20px}.mps-fee-card>div span{font-size:11px;color:#756d73}
.mps-ticket-list{display:grid;gap:8px}.mps-ticket-list a,.mps-ticket-admin-list a{padding:13px;border:1px solid #eee7ea;border-radius:12px;display:flex;justify-content:space-between;gap:12px;text-decoration:none;color:inherit}.mps-ticket-list small,.mps-ticket-admin-list span,.mps-ticket-admin-list small{font-size:9px;color:#81777d}.mps-conversation{display:grid;gap:12px;max-width:850px;margin-bottom:18px}.mps-conversation article{max-width:72%;padding:14px 16px;border-radius:16px}.mps-conversation .from-client{margin-left:auto;background:#fff1f6}.mps-conversation .from-support{margin-right:auto;background:#fff;border:1px solid #eee7ea}.mps-conversation p{margin:6px 0}.mps-conversation small{font-size:8px;color:#887f84}.mps-reply-box{max-width:850px}.status-pill{padding:7px 10px;border-radius:999px;background:#f5edf1;font-size:9px;font-weight:900}
.mps-master-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.mps-master-action-grid a{padding:18px;border:1px solid #e8e1e5;border-radius:16px;background:#fff;text-decoration:none;color:inherit;display:grid;gap:5px}.mps-master-action-grid small{color:#ec477e;font-size:8px;font-weight:900}.mps-master-action-grid strong{font-size:26px}.mps-master-action-grid span{font-size:9px;color:#81777d}
.mps-withdraw-admin-list{display:grid;gap:14px}.mps-withdraw-admin-list article{padding:18px;border:1px solid #e8e1e5;border-radius:16px}.mps-withdraw-admin-head{display:flex;justify-content:space-between;gap:16px}.mps-withdraw-admin-head h3{margin:4px 0}.mps-withdraw-admin-head>strong,.mps-admin-withdraw-amount{font-size:28px}.mps-withdraw-admin-grid,.mps-admin-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.mps-withdraw-admin-grid span,.mps-admin-review-grid span{padding:10px;border-radius:10px;background:#faf7f8;display:grid;gap:3px}.mps-withdraw-admin-grid small,.mps-admin-review-grid small{font-size:8px;font-weight:900;color:#8a8086}
.mps-admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.btn.danger{background:#fff0f1;color:#b2303c;border-color:#efc6ca}.mps-new-event-payment{max-width:620px}.mps-new-event-price{display:grid;gap:5px;margin-bottom:20px}.mps-new-event-price strong{font-size:38px}.mps-gift-fee-disclosure{margin-top:16px;padding:13px 14px;border-radius:12px;background:#faf7f8;display:grid;gap:4px}.mps-gift-fee-disclosure b{font-size:11px}.mps-gift-fee-disclosure span{font-size:10px;color:#776e74;line-height:1.5}
@media(max-width:900px){.mps-dashboard-metrics,.mps-financial-metrics{grid-template-columns:1fr 1fr}.mps-dashboard-grid{grid-template-columns:1fr}.mps-master-action-grid{grid-template-columns:1fr}}
@media(max-width:620px){.mps-dashboard-metrics,.mps-financial-metrics{grid-template-columns:1fr}.mps-dashboard-welcome{flex-direction:column}.mps-withdraw-admin-grid,.mps-admin-review-grid{grid-template-columns:1fr}.mps-conversation article{max-width:88%}}

/* V6 — Influencers / cupons */
.mps-influencer-list{display:grid;gap:9px}.mps-influencer-list>a{display:flex;justify-content:space-between;gap:16px;padding:15px;border:1px solid #eee7ea;border-radius:13px;text-decoration:none;color:inherit}.mps-influencer-list>a>div{display:grid;gap:3px}.mps-influencer-list span,.mps-influencer-list small{font-size:9px;color:#81777d}.mps-coupon-row{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #eee7ea}.mps-coupon-row span{font-size:10px;color:#776e74}.mps-login-page{min-height:100vh;display:grid;place-items:center;padding:20px;background:#faf7f8}.mps-login-page .form-card{width:min(100%,440px)}

/* =========================================================
   V7 — EDITOR VISUAL
   ========================================================= */
.mps-editor-page{max-width:1500px;margin:auto;padding:28px}
.mps-editor-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.mps-editor-top h1{margin:5px 0 0}
.mps-editor-progress{padding:9px 12px;border:1px solid #e7e0e4;border-radius:999px;background:#fff;font-size:11px;font-weight:800}
.mps-editor-shell{display:grid;grid-template-columns:minmax(440px,620px) minmax(360px,1fr);gap:24px;align-items:start}
.mps-editor-controls{background:#fff;border:1px solid #e8e1e5;border-radius:22px;overflow:hidden}
.mps-editor-steps{display:grid;grid-template-columns:repeat(6,1fr);border-bottom:1px solid #eee7ea}
.mps-editor-steps a{padding:12px 8px;text-decoration:none;color:#7d7479;font-size:9px;font-weight:800;text-align:center;display:grid;gap:5px;justify-items:center}
.mps-editor-steps a span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#f3eef1}
.mps-editor-steps a.active{color:#ec477e;background:#fff8fb}.mps-editor-steps a.active span{background:#ec477e;color:#fff}
.mps-step-card{padding:24px}.mps-step-card h2{margin:0 0 7px}.mps-step-card>p{margin:0 0 20px;color:#776e74}
.mps-step-card form,.mps-step-card.mps-live-form{display:grid;gap:10px}.mps-step-card label{font-size:11px;font-weight:800;margin-top:8px}.mps-step-card input[type="text"],.mps-step-card input:not([type]),.mps-step-card input[type="file"],.mps-step-card select,.mps-step-card textarea{width:100%;box-sizing:border-box}
.mps-step-card textarea{min-height:100px}
.mps-editor-preview-wrap{position:sticky;top:18px;display:grid;justify-items:center;gap:8px}
.mps-editor-phone{width:min(100%,440px);aspect-ratio:9/16;border-radius:28px;padding:10px;background:#171317;box-shadow:0 20px 65px rgba(40,25,33,.18);overflow:hidden}
.mps-event-preview{height:100%;overflow:auto;border-radius:20px;background:var(--event-bg,#fff);color:var(--event-text,#111);font-size:var(--body-size,18px)}
.mps-preview-header{height:34%;overflow:hidden}.mps-preview-header img{width:100%;height:100%;object-fit:cover;object-position:var(--header-x,50%) var(--header-y,50%);transform:scale(var(--header-zoom,1))}
.mps-preview-profile{display:block;width:96px;height:96px;border-radius:50%;object-fit:cover;margin:-48px auto 0;position:relative;border:5px solid var(--event-bg,#fff)}
.mps-preview-content{text-align:center;padding:24px 20px}.mps-preview-content small{font-size:var(--subtitle-size,20px)}.mps-preview-content h2{font-size:var(--title-size,54px);line-height:1;margin:8px 0 12px}.mps-preview-content p{font-size:var(--body-size,18px);line-height:1.5}.mps-preview-content a{display:inline-block;margin-top:10px;padding:12px 18px;border-radius:999px;background:var(--event-button,#ec477e);color:var(--event-button-text,#fff);font-size:13px;font-weight:800}
.mps-layout-options,.mps-intro-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mps-layout-options label,.mps-intro-options label{margin:0}.mps-layout-options input,.mps-intro-options input{position:absolute;opacity:0}.mps-layout-options span,.mps-intro-options span{display:block;padding:14px;border:1px solid #e5dde2;border-radius:12px;text-align:center;cursor:pointer}.mps-layout-options input:checked+span,.mps-intro-options input:checked+span{border-color:#ec477e;background:#fff5f9;box-shadow:0 0 0 2px rgba(236,71,126,.08)}
.mps-preview-gallery{display:grid;gap:8px;padding:10px}.mps-preview-gallery img{width:100%;height:160px;object-fit:cover;border-radius:10px}
.mps-preview-gallery.editorial{grid-template-columns:2fr 1fr}.mps-preview-gallery.editorial img:first-child{grid-row:span 2;height:328px}.mps-preview-gallery.mosaic{grid-template-columns:repeat(2,1fr)}.mps-preview-gallery.polaroid{grid-template-columns:repeat(2,1fr);padding:18px}.mps-preview-gallery.polaroid img{background:#fff;padding:8px 8px 28px;border-radius:3px;box-shadow:0 8px 18px rgba(0,0,0,.12);transform:rotate(-2deg)}.mps-preview-gallery.polaroid img:nth-child(even){transform:rotate(2deg)}.mps-preview-gallery.cinema{grid-template-columns:1fr}.mps-preview-gallery.cinema img{height:210px;border-radius:0}.mps-preview-gallery.story{display:flex;overflow-x:auto}.mps-preview-gallery.story img{min-width:72%;height:280px}.mps-preview-gallery.minimal{grid-template-columns:1fr}.mps-preview-gallery.minimal img{height:auto;border-radius:0}
.mps-gallery-manage{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.mps-gallery-manage article{position:relative}.mps-gallery-manage img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:9px}.mps-delete-photo{position:absolute;top:5px;right:5px;width:24px;height:24px;border:0;border-radius:50%;background:#fff;color:#b42d48;font-weight:900;cursor:pointer}
.mps-editor-video{width:100%;margin-top:18px;border-radius:14px}

/* first access intro */
.mps-intro-overlay{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;background:#fff;color:#171317;overflow:hidden}
.mps-intro-overlay[hidden]{display:none!important}.mps-intro-skip{position:absolute;top:18px;right:18px;z-index:3;border:1px solid rgba(0,0,0,.14);background:rgba(255,255,255,.9);border-radius:999px;padding:9px 14px;cursor:pointer}
.mps-intro-stage{display:grid;justify-items:center;gap:18px;text-align:center;padding:24px}.mps-intro-copy{display:grid;gap:8px}.mps-intro-copy small{letter-spacing:.16em;font-size:10px}.mps-intro-copy strong{font-family:"Playfair Display",serif;font-size:48px}
.mps-intro-object{width:170px;height:140px;position:relative}.mps-intro-overlay[data-animation="gift"] .mps-intro-object,.mps-intro-overlay.gift .mps-intro-object{background:#ec477e;border-radius:8px;box-shadow:0 -22px 0 -8px #f36b99;animation:mpsGiftOpen 1.15s cubic-bezier(.2,.75,.25,1) both}.mps-intro-overlay.gift .mps-intro-object:before{content:"";position:absolute;width:22px;height:100%;left:74px;background:#fff3}.mps-intro-overlay.gift .mps-intro-object:after{content:"";position:absolute;height:20px;width:100%;top:58px;background:#fff3}
.mps-intro-overlay.envelope .mps-intro-object{width:200px;height:130px;background:#f5e5eb;border-radius:6px;clip-path:polygon(0 0,100% 0,100% 100%,0 100%);animation:mpsEnvelope 1s ease both}.mps-intro-overlay.envelope .mps-intro-object:after{content:"";position:absolute;inset:0;background:#edcbd7;clip-path:polygon(0 0,50% 58%,100% 0)}
.mps-intro-overlay.celebration .mps-intro-object{width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,#fff 0 28%,transparent 29%),conic-gradient(#ec477e 0 10%,transparent 10% 20%,#f5bd34 20% 30%,transparent 30% 40%,#6dd3c7 40% 50%,transparent 50% 60%,#9f7aea 60% 70%,transparent 70% 80%,#ec477e 80% 90%,transparent 90%);animation:mpsCelebrate 1.2s ease both}
.mps-intro-overlay.minimal .mps-intro-object{width:80px;height:2px;background:#ec477e;animation:mpsMinimal 1.1s ease both}
.mps-intro-video{width:min(88vw,520px);max-height:58vh;border-radius:18px}.mps-intro-video-btn{border:0;border-radius:999px;background:#ec477e;color:#fff;padding:13px 20px;font-weight:800;cursor:pointer}
@keyframes mpsGiftOpen{0%{transform:translateY(30px) scale(.8);opacity:0}60%{transform:translateY(0) scale(1.04)}100%{transform:scale(1);opacity:1}}
@keyframes mpsEnvelope{0%{transform:translateY(35px);opacity:0}100%{transform:translateY(0);opacity:1}}
@keyframes mpsCelebrate{0%{transform:scale(.35) rotate(-30deg);opacity:0}100%{transform:scale(1) rotate(0);opacity:1}}
@keyframes mpsMinimal{0%{width:0;opacity:0}100%{width:80px;opacity:1}}
@media(prefers-reduced-motion:reduce){.mps-intro-object{animation:none!important}.mps-intro-overlay *{scroll-behavior:auto!important}}
@media(max-width:980px){.mps-editor-shell{grid-template-columns:1fr}.mps-editor-preview-wrap{position:static}.mps-editor-controls{order:1}.mps-editor-preview-wrap{order:2}.mps-editor-steps{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.mps-editor-page{padding:16px}.mps-editor-shell{display:block}.mps-editor-preview-wrap{margin-top:18px}.mps-editor-phone{width:100%;max-width:430px}.mps-layout-options,.mps-intro-options{grid-template-columns:1fr 1fr}}

/* V7.1 */
.public-event,.event-public-home,.gift-public-page{font-family:var(--mps-body-font,Inter),Arial,sans-serif!important}.public-event h1,.public-event h2,.public-event h3,.event-public-home h1,.event-public-home h2,.event-public-home h3,.v5-home-name,.public-head h1{font-family:var(--mps-title-font,"Playfair Display"),Georgia,serif!important}.event-home-memory-card{background:var(--memory-bg,#fff)!important;color:var(--memory-text,#182033)!important;border-color:color-mix(in srgb,var(--memory-accent,#ec4c83) 28%,transparent)!important}.event-home-memory-card .event-home-eyebrow,.event-home-memory-card .event-home-memory-ornament{color:var(--memory-accent,#ec4c83)!important}.event-home-memory-card h2,.event-home-memory-card p{color:var(--memory-text,#182033)!important}.event-home-memory-card .event-home-main-button{background:var(--memory-accent,#ec4c83)!important}.mps-preview-memory{margin:12px;padding:20px 16px;border:1px solid var(--memory-accent,#ec4c83);border-radius:18px;background:var(--memory-bg,#fff);color:var(--memory-text,#182033);text-align:center}.mps-preview-memory small{color:var(--memory-accent,#ec4c83);font-size:9px;font-weight:900}.mps-preview-memory h3{margin:8px 0;font-size:24px}.mps-preview-memory p{font-size:13px}.mps-preview-memory a{display:inline-block;margin-top:8px;background:var(--memory-accent,#ec4c83);color:#fff;padding:10px 14px;border-radius:999px}.mps-editor-divider{border:0;border-top:1px solid #eee7ea;margin:20px 0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mps-wizard-nav{display:flex;justify-content:space-between;gap:10px;margin-top:18px;padding-top:15px;border-top:1px solid #eee7ea}.mps-support-attachment{display:block;margin-top:10px}.mps-support-attachment img{display:block;max-width:min(100%,560px);max-height:420px;object-fit:contain;border-radius:12px;border:1px solid #e9e2e6}.mps-full-pix{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}.mps-pdf-builder{max-width:1180px;margin:auto;padding:34px 24px 70px}.mps-pdf-layout-picker{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:18px 0 28px}.mps-pdf-layout-picker input{position:absolute;opacity:0}.mps-pdf-layout-picker span{display:grid;gap:4px;padding:15px;border:1px solid #e6dfe3;border-radius:14px;background:#fff;cursor:pointer}.mps-pdf-layout-picker input:checked+span{border-color:#ec477e;background:#fff7fa}.mps-pdf-document{max-width:794px;margin:auto}.pdf-page{width:794px;min-height:1123px;box-sizing:border-box;background:#fff;padding:72px;position:relative;overflow:hidden;margin:0 auto 22px;box-shadow:0 8px 36px rgba(34,22,28,.08)}.mps-pdf-cover{display:grid;align-content:center;text-align:center;justify-items:center}.mps-pdf-cover h1{font-family:"Playfair Display",serif;font-size:64px}.mps-pdf-memory blockquote{margin:0 0 28px;padding:24px;border-radius:18px;background:#faf6f8;font-family:"Cormorant Garamond",serif;font-size:24px}.mps-pdf-media{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mps-pdf-media>img,.mps-pdf-video{width:100%;height:290px;object-fit:cover;border-radius:16px}.mps-pdf-video{position:relative;display:block;overflow:hidden;background:#171317;color:#fff}.mps-pdf-video video,.mps-pdf-video canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mps-pdf-video>span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#171317}.mps-pdf-video>b{position:absolute;left:14px;bottom:14px;background:rgba(0,0,0,.55);padding:7px 10px;border-radius:999px}.mps-pdf-audio{display:flex;gap:10px;padding:18px;border:1px solid #e8e1e5;border-radius:14px}.pdf-editorial .pdf-page{padding:54px}.pdf-editorial .mps-pdf-cover{text-align:left;justify-items:start}.pdf-polaroid .pdf-page{background:#f6f0e9}.pdf-polaroid .mps-pdf-media>img,.pdf-polaroid .mps-pdf-video{border:10px solid #fff;box-shadow:0 8px 18px rgba(0,0,0,.12)}.pdf-minimal .pdf-page{box-shadow:none;border:1px solid #eee}.pdf-night .pdf-page{background:#171317;color:#f8f4f6}.pdf-night .mps-pdf-memory blockquote{background:#282126;color:#fff}.mps-pdf-note{max-width:794px;margin:20px auto;padding:16px;border-radius:14px;background:#fff8df}@media(max-width:900px){.mps-pdf-layout-picker{grid-template-columns:1fr 1fr}}@media(max-width:620px){.grid3{grid-template-columns:1fr}.mps-wizard-nav{flex-direction:column}}

/* V7.1.1 — ticket encerrado */
.mps-ticket-closed{
    max-width:850px;
    border-style:dashed;
    background:#faf8f9;
}
.mps-ticket-closed h2{margin:7px 0 8px}
.mps-ticket-closed p{color:#756d73;line-height:1.55;max-width:640px}
.status-pill.is-closed{background:#efecef;color:#6f676c}

/* V7.2 — público = preview */
html:has(.public-event.event-public-home),body:has(.public-event.event-public-home){background:#f4f1f3!important}
.public-event.event-public-home{width:min(100%,560px)!important;max-width:560px!important;margin:0 auto!important;min-height:100vh;overflow:hidden;font-family:var(--mps-body-font,Inter),Arial,sans-serif!important;font-size:var(--public-body-size,18px)!important;box-shadow:0 0 70px rgba(45,28,37,.10)}
.public-event.event-public-home .event-home-hero{position:relative;overflow:hidden}
.public-event.event-public-home .event-home-unified-cover{width:100%;height:310px;overflow:hidden}
.public-event.event-public-home .event-home-unified-cover img{width:100%;height:100%;object-fit:cover;object-position:var(--header-x,50%) var(--header-y,50%);transform:scale(var(--header-zoom,1));transform-origin:var(--header-x,50%) var(--header-y,50%)}
.public-event.event-public-home .event-home-hero.with-image .event-home-hero-overlay{display:none!important}
.public-event.event-public-home .event-home-hero-content{width:100%;max-width:none!important;box-sizing:border-box;padding:34px 26px 28px!important}
.public-event.event-public-home .event-home-public-profile{display:block;width:104px;height:104px;object-fit:cover;border-radius:50%;border:5px solid var(--event-bg);margin:-84px auto 22px;position:relative;z-index:2;box-shadow:0 8px 24px rgba(30,20,25,.12)}
.public-event.event-public-home .event-home-kicker.public-kicker{font-family:var(--mps-body-font,Inter),Arial,sans-serif!important;font-size:var(--public-subtitle-size,20px)!important;font-weight:700!important;line-height:1.2!important;letter-spacing:.08em!important;text-transform:uppercase}
.public-event.event-public-home .v5-home-name{font-family:var(--mps-title-font,"Playfair Display"),Georgia,serif!important;font-size:var(--public-title-size,54px)!important;line-height:1!important;letter-spacing:-.025em!important;overflow-wrap:anywhere}
.public-event.event-public-home .event-home-hero-content>p{font-family:var(--mps-body-font,Inter),Arial,sans-serif!important;font-size:var(--public-body-size,18px)!important;line-height:1.55!important}
.public-event.event-public-home .event-home-details{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%}
.public-event.event-public-home .event-home-detail{min-width:0!important;background:color-mix(in srgb,var(--event-primary) 12%,transparent)!important;border:1px solid color-mix(in srgb,var(--event-primary) 30%,transparent)!important;color:var(--event-primary)!important;box-shadow:none!important}
.public-event.event-public-home .event-home-detail-place{grid-column:1/-1}
.public-event.event-public-home .event-home-detail small,.public-event.event-public-home .event-home-detail b,.public-event.event-public-home .event-home-detail span,.public-event.event-public-home .event-home-map-link{color:var(--event-primary)!important;-webkit-text-fill-color:var(--event-primary)!important}
.public-event.event-public-home .event-home-detail-icon{background:color-mix(in srgb,var(--event-primary) 15%,transparent)!important;color:var(--event-primary)!important}
.public-event.event-public-home .event-home-main-button,.public-event.event-public-home .event-home-secondary-button,.public-event.event-public-home button,.public-event.event-public-home input,.public-event.event-public-home textarea,.public-event.event-public-home select,.public-event.event-public-home .event-home-memory-card,.public-event.event-public-home .event-home-footer,.public-event.event-public-home .event-home-invite-note{font-family:var(--mps-body-font,Inter),Arial,sans-serif!important}
.public-event.event-public-home .event-home-content{width:100%!important;max-width:none!important;box-sizing:border-box;padding:22px 18px 44px!important}
.public-event.event-public-home .event-home-section{width:100%!important;box-sizing:border-box;border-radius:22px!important}
.public-event.event-public-home .event-home-transition{max-width:90%!important}
.public-event.event-public-home .event-home-gallery{display:grid;gap:8px}
.public-event.event-public-home .event-home-gallery-item{padding:0!important;border:0!important;overflow:hidden;background:transparent!important}
.public-event.event-public-home .event-home-gallery-item img{width:100%;height:180px;object-fit:cover;display:block}
.public-event.event-public-home .gallery-editorial{grid-template-columns:2fr 1fr}.public-event.event-public-home .gallery-editorial .event-home-gallery-item:first-child{grid-row:span 2}.public-event.event-public-home .gallery-editorial .event-home-gallery-item:first-child img{height:368px}
.public-event.event-public-home .gallery-mosaic{grid-template-columns:1fr 1fr}
.public-event.event-public-home .gallery-polaroid{grid-template-columns:1fr 1fr;padding:8px}.public-event.event-public-home .gallery-polaroid .event-home-gallery-item{background:#fff!important;padding:8px 8px 28px!important;box-shadow:0 8px 18px rgba(0,0,0,.12);transform:rotate(-2deg)}.public-event.event-public-home .gallery-polaroid .event-home-gallery-item:nth-child(even){transform:rotate(2deg)}
.public-event.event-public-home .gallery-cinema{grid-template-columns:1fr}.public-event.event-public-home .gallery-cinema img{height:250px}
.public-event.event-public-home .gallery-story{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory}.public-event.event-public-home .gallery-story .event-home-gallery-item{min-width:78%;scroll-snap-align:center}.public-event.event-public-home .gallery-story img{height:330px}
.public-event.event-public-home .gallery-minimal{grid-template-columns:1fr}.public-event.event-public-home .gallery-minimal img{height:auto}
@media(max-width:600px){.public-event.event-public-home{width:100%!important;box-shadow:none}.public-event.event-public-home .event-home-unified-cover{height:58vw;min-height:220px;max-height:320px}}

/* V7.2.1 — crédito de evento pago */
.mps-paid-credit-banner{
    display:flex;
    justify-content:space-between;
    gap:22px;
    align-items:center;
    padding:20px 22px;
    margin-bottom:20px;
    border-radius:18px;
    border:1px solid #bfe7d2;
    background:#effaf4;
}
.mps-paid-credit-banner h2{margin:5px 0 6px;font-size:20px}
.mps-paid-credit-banner p{margin:0;color:#5f6f67;line-height:1.5}
.mps-master-password-card{max-width:620px}
.mps-master-password-card form{display:grid;gap:10px}
.mps-master-password-card label{font-weight:850;margin-top:6px}
.mps-master-password-card input{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #ddd5da;border-radius:11px}
@media(max-width:720px){.mps-paid-credit-banner{flex-direction:column;align-items:flex-start}.mps-paid-credit-banner .btn{width:100%;box-sizing:border-box;text-align:center}}

/* V7.2.2 — cards visuais de fonte */
.mps-font-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:6px}
.mps-font-option{margin:0!important;cursor:pointer}
.mps-font-option input{position:absolute;opacity:0;pointer-events:none}
.mps-font-option span{display:grid;gap:7px;min-height:90px;align-content:center;padding:14px;border:1px solid #e6dfe3;border-radius:14px;background:#fff;transition:.15s ease}
.mps-font-option strong{font-family:var(--font-preview),serif;font-size:28px;line-height:1;font-weight:500;overflow-wrap:anywhere}
.mps-font-picker-body .mps-font-option strong{font-size:20px}
.mps-font-option small{font-family:Inter,Arial,sans-serif!important;font-size:9px;color:#83787e}
.mps-font-option input:checked+span{border-color:#ec477e;background:#fff6f9;box-shadow:0 0 0 2px rgba(236,71,126,.10)}

/* Paletas prontas — sem RGB */
.mps-palette-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:7px}
.mps-palette-option{margin:0!important;cursor:pointer}
.mps-palette-option input{position:absolute;opacity:0;pointer-events:none}
.mps-palette-option>span{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:11px;min-height:62px;padding:11px 12px;border:1px solid #e5dde2;border-radius:13px;background:#fff}
.mps-palette-option input:checked+span{border-color:#ec477e;background:#fff7fa;box-shadow:0 0 0 2px rgba(236,71,126,.09)}
.mps-palette-swatch{display:flex;width:60px;height:30px;overflow:hidden;border:1px solid #e7e0e4;border-radius:999px}
.mps-palette-swatch b{flex:1;height:100%}
.mps-palette-option strong{font:800 11px/1.2 Inter,Arial,sans-serif}

.mps-memory-palette-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mps-memory-palette-option{margin:0!important;cursor:pointer}
.mps-memory-palette-option input{position:absolute;opacity:0;pointer-events:none}
.mps-memory-palette-option span{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #e5dde2;border-radius:12px;background:#fff}
.mps-memory-palette-option input:checked+span{border-color:#ec477e;background:#fff7fa}
.mps-memory-palette-option i{width:42px;height:42px;border:2px solid;border-radius:10px;display:grid;place-items:center;font:800 15px/1 Inter,Arial,sans-serif}
.mps-memory-palette-option strong{font:800 10px/1.2 Inter,Arial,sans-serif}

/* Mobile: preview não fica perdido no final da página */
.mps-mobile-editor-switch{display:none}
@media(max-width:980px){
    .mps-mobile-editor-switch{
        position:sticky;top:8px;z-index:60;
        display:grid;grid-template-columns:1fr 1fr;gap:4px;
        width:min(100%,430px);margin:0 auto 12px;padding:4px;
        border:1px solid #e5dde2;border-radius:999px;
        background:rgba(255,255,255,.96);
        box-shadow:0 7px 24px rgba(35,22,29,.10);
        backdrop-filter:blur(14px)
    }
    .mps-mobile-editor-switch button{border:0;border-radius:999px;padding:11px 14px;background:transparent;color:#756b71;font:800 12px/1 Inter,Arial,sans-serif;cursor:pointer}
    .mps-mobile-editor-switch button.active{background:#ec477e;color:#fff}

    .mps-editor-shell[data-mobile-editor-mode="edit"] [data-mobile-editor-panel="preview"]{display:none!important}
    .mps-editor-shell[data-mobile-editor-mode="preview"] [data-mobile-editor-panel="edit"]{display:none!important}
    .mps-editor-shell[data-mobile-editor-mode="preview"] [data-mobile-editor-panel="preview"]{display:grid!important;position:static!important;margin:0 auto!important;width:100%;justify-items:center}
    .mps-editor-phone{width:min(100%,430px)!important;max-width:430px;min-height:680px;aspect-ratio:9/16}
}
@media(max-width:620px){
    .mps-font-option span{min-height:80px;padding:12px 10px}
    .mps-font-option strong{font-size:23px}
    .mps-palette-picker,.mps-memory-palette-picker{grid-template-columns:1fr 1fr}
    .mps-palette-option>span{grid-template-columns:1fr;justify-items:start}
}

/* V7.2.3 — confirmação dos dados de recebimento */
.mps-payout-saved{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}
.mps-payout-saved>div{
    display:grid;
    gap:4px;
}
.mps-payout-saved span{
    font-size:12px;
    opacity:.78;
}
.mps-payout-saved .btn{
    flex:0 0 auto;
    white-space:nowrap;
}
@media(max-width:620px){
    .mps-payout-saved{
        align-items:stretch;
        flex-direction:column;
    }
    .mps-payout-saved .btn{
        width:100%;
        box-sizing:border-box;
        text-align:center;
    }
}

/* =========================================================
   V7.3 — PUBLICO E PREVIEW USAM A MESMA LINGUAGEM VISUAL
   ========================================================= */
html:has(.mps-public-event-page),body:has(.mps-public-event-page){margin:0;background:#f5f2f4!important}
.mps-public-event-page{min-height:100vh;padding:24px 12px 48px;box-sizing:border-box;font-family:Inter,Arial,sans-serif}
.mps-public-canvas{width:min(100%,560px);margin:0 auto;overflow:hidden;background:var(--event-bg,#fff);color:var(--event-text,#171317);border-radius:28px;box-shadow:0 20px 70px rgba(45,28,37,.14);font-family:var(--body-font,Inter),Arial,sans-serif;font-size:var(--body-size,18px)}
.mps-public-header{height:310px;overflow:hidden}.mps-public-header img{width:100%;height:100%;object-fit:cover;object-position:var(--header-x,50%) var(--header-y,50%);transform:scale(var(--header-zoom,1));transform-origin:var(--header-x,50%) var(--header-y,50%);display:block}
.mps-public-profile{display:block;width:106px;height:106px;border-radius:50%;object-fit:cover;margin:-53px auto 0;position:relative;z-index:2;border:5px solid var(--event-bg,#fff);box-shadow:0 8px 24px rgba(34,24,29,.14)}
.mps-public-intro{text-align:center;padding:28px 24px 22px}.mps-public-intro>small{display:block;font:800 var(--subtitle-size,18px)/1.2 var(--body-font,Inter),Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase}.mps-public-intro h1{margin:9px auto 14px;max-width:480px;font-family:var(--title-font,"Playfair Display"),Georgia,serif;font-size:var(--title-size,54px);font-weight:500;line-height:1;letter-spacing:-.025em;color:var(--event-text)}.mps-public-intro>p{max-width:450px;margin:0 auto;font:400 var(--body-size,18px)/1.55 var(--body-font,Inter),Arial,sans-serif;color:var(--event-text)}
.mps-public-details{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px auto 0;max-width:470px}.mps-public-details article{display:flex;align-items:center;gap:9px;min-width:0;padding:11px 12px;border:1px solid color-mix(in srgb,var(--event-text) 20%,transparent);border-radius:14px;background:color-mix(in srgb,var(--event-text) 9%,transparent);color:var(--event-text);text-align:left}.mps-public-details article.wide{grid-column:1/-1}.mps-public-details article>span{flex:0 0 30px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--event-text) 10%,transparent)}.mps-public-details div{min-width:0;display:grid;gap:2px}.mps-public-details small{font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.08em}.mps-public-details b{font:800 12px/1.2 var(--body-font,Inter),Arial,sans-serif;overflow-wrap:anywhere}.mps-public-details em{font:400 10px/1.35 var(--body-font,Inter),Arial,sans-serif;font-style:normal;opacity:.8;overflow-wrap:anywhere}.mps-public-details article>a{margin-left:auto;font:800 9px/1 Inter,Arial,sans-serif;color:inherit;text-decoration:underline}
.mps-public-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:20px}.mps-public-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;text-decoration:none;font:800 12px/1 Inter,Arial,sans-serif}.mps-public-actions .primary{background:var(--event-button);color:var(--event-button-text)}.mps-public-actions .secondary{background:transparent;color:var(--event-button);border:1px solid var(--event-button)}.mps-public-rsvp-done{margin:16px auto 0;max-width:430px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--event-button) 10%,transparent);font:700 11px/1.4 Inter,Arial,sans-serif}
.mps-public-memory{margin:12px 14px 14px;padding:24px 20px;border:1px solid color-mix(in srgb,var(--memory-accent) 34%,transparent);border-radius:22px;background:var(--memory-bg);color:var(--memory-text);text-align:center}.mps-public-memory>small{display:block;color:var(--memory-accent);font:900 9px/1.2 Inter,Arial,sans-serif;letter-spacing:.12em}.mps-public-memory h2{margin:9px auto 10px;max-width:440px;color:var(--memory-text);font:800 26px/1.08 var(--body-font,Inter),Arial,sans-serif}.mps-public-memory p{max-width:430px;margin:0 auto;color:var(--memory-text);font:400 13px/1.55 var(--body-font,Inter),Arial,sans-serif}.mps-public-memory-types{display:flex;justify-content:center;gap:6px;flex-wrap:wrap;margin:15px 0}.mps-public-memory-types span{padding:6px 8px;border-radius:999px;background:color-mix(in srgb,var(--memory-accent) 14%,var(--memory-bg));font:800 8px/1 Inter,Arial,sans-serif}.mps-public-memory>a{display:inline-flex;padding:12px 16px;border-radius:999px;background:var(--memory-accent);color:#fff;text-decoration:none;font:800 11px/1 Inter,Arial,sans-serif}
.mps-public-gallery-section{padding:0 14px 14px}.mps-public-gallery{display:grid;gap:8px}.mps-public-gallery button{padding:0;border:0;background:transparent;overflow:hidden;border-radius:12px;cursor:pointer}.mps-public-gallery img{display:block;width:100%;height:180px;object-fit:cover}.mps-public-gallery.gallery-editorial{grid-template-columns:2fr 1fr}.mps-public-gallery.gallery-editorial button:first-child{grid-row:span 2}.mps-public-gallery.gallery-editorial button:first-child img{height:368px}.mps-public-gallery.gallery-mosaic{grid-template-columns:1fr 1fr}.mps-public-gallery.gallery-polaroid{grid-template-columns:1fr 1fr;padding:12px}.mps-public-gallery.gallery-polaroid button{padding:8px 8px 28px;background:#fff;box-shadow:0 7px 18px rgba(0,0,0,.12);border-radius:2px;transform:rotate(-2deg)}.mps-public-gallery.gallery-polaroid button:nth-child(even){transform:rotate(2deg)}.mps-public-gallery.gallery-cinema{grid-template-columns:1fr}.mps-public-gallery.gallery-cinema img{height:250px}.mps-public-gallery.gallery-story{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.mps-public-gallery.gallery-story button{min-width:78%;scroll-snap-align:center}.mps-public-gallery.gallery-story img{height:330px}.mps-public-gallery.gallery-minimal{grid-template-columns:1fr}.mps-public-gallery.gallery-minimal img{height:auto}
.mps-public-notice{margin:0 14px 14px;padding:13px;border-radius:14px;background:#fff8dc;color:#735f23;font:700 11px/1.5 Inter,Arial,sans-serif;text-align:center}.mps-public-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:18px 18px 22px;font:600 9px/1.4 Inter,Arial,sans-serif;opacity:.75}.mps-public-footer a{color:var(--event-button);font-weight:800}

/* Editor preview gets the same informational blocks. */
.mps-preview-details{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:16px 0}.mps-preview-details span{display:grid;gap:2px;padding:9px;border-radius:10px;background:color-mix(in srgb,var(--event-text) 9%,transparent);border:1px solid color-mix(in srgb,var(--event-text) 18%,transparent);text-align:left}.mps-preview-details span.wide{grid-column:1/-1}.mps-preview-details small{font:800 7px/1 Inter,Arial,sans-serif}.mps-preview-details b{font:800 10px/1.2 Inter,Arial,sans-serif}.mps-preview-details em{font:400 8px/1.3 Inter,Arial,sans-serif;font-style:normal;opacity:.8}.mps-preview-actions{display:flex;justify-content:center;gap:7px;flex-wrap:wrap}.mps-preview-actions a{margin:0!important;padding:10px 12px!important;font:800 9px/1 Inter,Arial,sans-serif!important}.mps-preview-actions a.secondary{background:transparent!important;color:var(--event-button)!important;border:1px solid var(--event-button)!important}

@media(max-width:620px){.mps-public-event-page{padding:0}.mps-public-canvas{width:100%;border-radius:0;box-shadow:none}.mps-public-header{height:58vw;min-height:220px;max-height:320px}.mps-public-intro{padding-left:18px;padding-right:18px}.mps-public-intro h1{font-size:min(var(--title-size,54px),18vw)}.mps-public-memory{margin-left:10px;margin-right:10px}.mps-public-gallery-section{padding-left:10px;padding-right:10px}.mps-public-footer{flex-direction:column;text-align:center}}

/* V7.3.1 — página de mensagens */
.mps-public-message-page{background:var(--event-bg)!important;color:var(--event-primary)!important;font-family:var(--mps-body-font,Inter),Arial,sans-serif!important}
.mps-public-message-page .public-head h1{color:var(--event-primary)!important;font-family:var(--mps-title-font,"Playfair Display"),Georgia,serif!important}
.mps-public-message-page .public-kicker,.mps-public-message-page .public-head p,.mps-public-message-page label,.mps-public-message-page .guest-hello,.mps-public-message-page .public-final,.mps-public-message-page .public-counter{color:var(--event-primary)!important}
.mps-public-message-page .send-card{background:color-mix(in srgb,var(--event-bg) 85%,#fff 15%)!important;border-color:color-mix(in srgb,var(--event-primary) 18%,transparent)!important}
.mps-public-message-page input,.mps-public-message-page textarea{color:var(--event-primary)!important;background:color-mix(in srgb,var(--event-bg) 68%,#fff 32%)!important;border-color:color-mix(in srgb,var(--event-primary) 25%,transparent)!important}
.mps-public-message-page input::placeholder,.mps-public-message-page textarea::placeholder{color:color-mix(in srgb,var(--event-primary) 62%,transparent)!important}
.mps-public-message-page .send-type-grid label{color:var(--event-primary)!important;background:color-mix(in srgb,var(--event-button) 8%,var(--event-bg))!important;border-color:color-mix(in srgb,var(--event-primary) 15%,transparent)!important}
.mps-public-message-page #sendMessage:checked~.send-ui .send-type-grid label[for="sendMessage"],.mps-public-message-page #sendAudio:checked~.send-ui .send-type-grid label[for="sendAudio"],.mps-public-message-page #sendPhoto:checked~.send-ui .send-type-grid label[for="sendPhoto"],.mps-public-message-page #sendVideo:checked~.send-ui .send-type-grid label[for="sendVideo"]{border-color:var(--event-button)!important;color:var(--event-button)!important}
.mps-public-message-page .public-submit{display:flex!important;align-items:center;justify-content:center;gap:9px;background:var(--event-button)!important;color:var(--event-button-text)!important;border-color:var(--event-button)!important}
.mps-public-message-page .public-divider span{background:color-mix(in srgb,var(--event-primary) 38%,transparent)!important}.mps-public-message-page .public-divider b{color:var(--event-primary)!important}
.mps-public-message-page .public-counter{background:color-mix(in srgb,var(--event-button) 7%,var(--event-bg))!important;border-color:color-mix(in srgb,var(--event-button) 36%,transparent)!important}
.mps-form-icon,.mps-send-type-icon,.mps-submit-icon,.mps-divider-icon,.mps-audio-icon{display:block;width:22px;height:22px;color:currentColor;flex:0 0 auto}.mps-send-type-icon{width:25px;height:25px;margin:0 auto 5px}.mps-submit-icon{width:18px;height:18px}.mps-divider-icon{width:18px;height:18px}
.mps-icon-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:7px 0 16px}.mps-icon-option{margin:0!important;cursor:pointer}.mps-icon-option input{position:absolute;opacity:0;pointer-events:none}.mps-icon-option span{min-height:78px;display:grid;place-items:center;align-content:center;gap:7px;border:1px solid #e5dde2;border-radius:13px;background:#fff}.mps-icon-option input:checked+span{border-color:#ec477e;background:#fff7fa;box-shadow:0 0 0 2px rgba(236,71,126,.09)}.mps-icon-preview{width:25px;height:25px;color:#433a3f}.mps-icon-option small{font:800 9px/1.2 Inter,Arial,sans-serif;color:#786f74}

/* V7.3.1 — PDF masonry e cinco identidades */
.mps-pdf-layout-picker-v731{grid-template-columns:repeat(5,1fr)}.pdf-theme-card{min-height:96px!important;position:relative;overflow:hidden;align-content:end!important}.pdf-theme-card i{position:absolute;inset:0 0 44px}.pdf-theme-card-romance i{background:linear-gradient(135deg,#f7dfe8,#fff 55%,#d99ab1)}.pdf-theme-card-botanico i{background:linear-gradient(135deg,#e8f0e5,#fff 55%,#8ca17f)}.pdf-theme-card-celebracao i{background:linear-gradient(135deg,#fff2d4,#fff 48%,#ef7a88)}.pdf-theme-card-memorias i{background:linear-gradient(135deg,#efe5d8,#fff 50%,#bca38b)}.pdf-theme-card-noite i{background:linear-gradient(135deg,#161419,#342b35 55%,#b28a5c)}
.mps-pdf-document-v731{width:794px;margin:0 auto;--pdf-bg:#fff9fb;--pdf-paper:#fff;--pdf-text:#3b2931;--pdf-muted:#927982;--pdf-accent:#c76c8e;--pdf-soft:#f7e7ed;--pdf-line:#e7cbd5;--pdf-title:"Playfair Display",serif;--pdf-body:Inter,Arial,sans-serif}
.mps-pdf-cover-v731{width:794px;height:1123px;box-sizing:border-box;position:relative;overflow:hidden;display:grid;align-content:center;justify-items:center;text-align:center;padding:90px;background:var(--pdf-bg);color:var(--pdf-text)}
.mps-pdf-cover-v731:before,.mps-pdf-cover-v731:after{content:"";position:absolute;border:1px solid var(--pdf-line);border-radius:50%}.mps-pdf-cover-v731:before{width:380px;height:380px;left:-210px;top:-170px}.mps-pdf-cover-v731:after{width:300px;height:300px;right:-170px;bottom:-120px}.pdf-cover-ornament{position:absolute;border:1px solid var(--pdf-line);border-radius:999px;opacity:.75}.pdf-cover-ornament-a{width:65%;height:72%;transform:rotate(14deg)}.pdf-cover-ornament-b{width:54%;height:61%;transform:rotate(-13deg)}
.pdf-cover-mark{position:relative;z-index:2;width:72px;height:72px;display:grid;place-items:center;border-radius:50%;background:var(--pdf-paper);color:var(--pdf-accent);border:1px solid var(--pdf-line);box-shadow:0 12px 32px rgba(30,20,25,.08);margin-bottom:28px}.pdf-cover-icon{width:30px;height:30px}.mps-pdf-cover-v731>small{z-index:2;letter-spacing:.18em;font:800 11px/1 var(--pdf-body);color:var(--pdf-accent)}.mps-pdf-cover-v731 h1{z-index:2;font:500 68px/.96 var(--pdf-title);margin:22px 0;color:var(--pdf-text);max-width:620px}.mps-pdf-cover-v731 p{z-index:2;font:500 18px/1.3 var(--pdf-body);margin:0 0 8px}.mps-pdf-cover-v731>span{z-index:2;font:700 12px/1.3 var(--pdf-body);color:var(--pdf-muted)}.pdf-cover-rule{z-index:2;display:flex;align-items:center;gap:10px;width:210px;margin-top:38px}.pdf-cover-rule i{height:1px;background:var(--pdf-line);flex:1}.pdf-cover-rule b{width:7px;height:7px;background:var(--pdf-accent);transform:rotate(45deg)}
.mps-pdf-flow-wrap{width:794px;box-sizing:border-box;min-height:1123px;padding:64px 58px 70px;background:var(--pdf-bg);color:var(--pdf-text);font-family:var(--pdf-body);position:relative}.mps-pdf-flow-wrap:before{content:"";position:absolute;inset:22px;border:1px solid var(--pdf-line);pointer-events:none}.mps-pdf-flow-header{position:relative;z-index:1;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--pdf-line)}.mps-pdf-flow-header small{font:850 10px/1 var(--pdf-body);letter-spacing:.15em;color:var(--pdf-accent)}.mps-pdf-flow-header h2{font:500 40px/1.05 var(--pdf-title);margin:10px 0;color:var(--pdf-text)}.mps-pdf-flow-header p{font:400 13px/1.5 var(--pdf-body);color:var(--pdf-muted);margin:0;max-width:520px}
.mps-pdf-masonry{column-count:2;column-gap:18px;position:relative;z-index:1}.mps-pdf-memory-card{break-inside:avoid;display:inline-block;width:100%;box-sizing:border-box;margin:0 0 18px;padding:19px;border:1px solid var(--pdf-line);border-radius:18px;background:var(--pdf-paper);box-shadow:0 8px 24px rgba(42,26,33,.055)}.mps-pdf-memory-card>header{display:flex;align-items:center;gap:10px;margin-bottom:13px}.mps-pdf-memory-card>header>span{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--pdf-soft);color:var(--pdf-accent)}.pdf-card-icon{width:16px;height:16px}.mps-pdf-memory-card h3{font:650 16px/1.15 var(--pdf-title);margin:0;color:var(--pdf-text)}.mps-pdf-memory-card header small{font:600 8px/1 var(--pdf-body);color:var(--pdf-muted)}.mps-pdf-memory-card blockquote{margin:0 0 14px;padding:14px;border-radius:12px;background:var(--pdf-soft);color:var(--pdf-text);font:500 17px/1.38 var(--pdf-title)}
.mps-pdf-media-masonry{display:grid;grid-template-columns:1fr 1fr;gap:7px}.mps-pdf-media-masonry.media-count-1{grid-template-columns:1fr}.mps-pdf-media-masonry.media-count-1>*{height:220px}.mps-pdf-media-masonry.media-count-2>*{height:155px}.mps-pdf-media-masonry.media-count-3>*:first-child{grid-column:1/-1;height:185px}.mps-pdf-media-masonry.media-count-3>*:not(:first-child){height:120px}.mps-pdf-media-masonry.media-count-4>*{height:125px}.mps-pdf-photo,.mps-pdf-video-v731{margin:0;position:relative;overflow:hidden;border-radius:11px;background:#eee}.mps-pdf-photo img,.mps-pdf-video-v731 video,.mps-pdf-video-v731 canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.mps-pdf-video-v731{display:block;color:#fff;text-decoration:none}.mps-pdf-video-v731:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 50%,rgba(0,0,0,.55))}.mps-pdf-video-v731>span{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:#222}.pdf-media-icon{width:19px;height:19px}.mps-pdf-video-v731>b{position:absolute;z-index:2;left:10px;bottom:9px;font:800 8px/1 var(--pdf-body)}.mps-pdf-audio-v731{min-height:72px!important;grid-column:1/-1;display:flex;align-items:center;gap:11px;padding:13px;box-sizing:border-box;border-radius:11px;text-decoration:none;background:var(--pdf-soft);color:var(--pdf-text);border:1px solid var(--pdf-line)}.mps-pdf-audio-v731 .pdf-media-icon{color:var(--pdf-accent)}.mps-pdf-audio-v731 b{display:block;font:800 10px/1.2 var(--pdf-body)}.mps-pdf-audio-v731 small{font:600 8px/1.2 var(--pdf-body);color:var(--pdf-muted)}.mps-pdf-book-footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:30px;padding-top:20px;border-top:1px solid var(--pdf-line);color:var(--pdf-muted);font:700 9px/1 var(--pdf-body)}.pdf-footer-icon{width:14px;height:14px;color:var(--pdf-accent)}
.pdf-theme-romance{--pdf-bg:#fff8fb;--pdf-paper:#fff;--pdf-text:#50313d;--pdf-muted:#9b7a87;--pdf-accent:#c96f91;--pdf-soft:#f8e8ee;--pdf-line:#ebcdd8;--pdf-title:"Playfair Display",serif}.pdf-theme-botanico{--pdf-bg:#f5f8f2;--pdf-paper:#fffef9;--pdf-text:#344434;--pdf-muted:#73806d;--pdf-accent:#718968;--pdf-soft:#e8efe3;--pdf-line:#cbd9c5;--pdf-title:"Cormorant Garamond",serif}.pdf-theme-botanico .mps-pdf-flow-wrap:after{content:"❦";position:absolute;right:42px;top:32px;color:var(--pdf-accent);font-size:44px;opacity:.15}.pdf-theme-celebracao{--pdf-bg:#fff8ed;--pdf-paper:#fff;--pdf-text:#563d35;--pdf-muted:#96776c;--pdf-accent:#ed7180;--pdf-soft:#fff0d8;--pdf-line:#f2d7b0;--pdf-title:"Montserrat",sans-serif}.pdf-theme-celebracao .mps-pdf-cover-v731:before{border-radius:0;transform:rotate(35deg);border-width:22px;border-color:color-mix(in srgb,var(--pdf-accent) 20%,transparent)}.pdf-theme-memorias{--pdf-bg:#f5efe7;--pdf-paper:#fffdf9;--pdf-text:#473c32;--pdf-muted:#88796a;--pdf-accent:#9b7a5c;--pdf-soft:#eee2d4;--pdf-line:#d9c6b3;--pdf-title:"Playfair Display",serif}.pdf-theme-memorias .mps-pdf-memory-card{border-radius:4px;box-shadow:0 10px 18px rgba(55,40,26,.10);border:8px solid #fff}.pdf-theme-memorias .mps-pdf-photo,.pdf-theme-memorias .mps-pdf-video-v731{border-radius:2px}.pdf-theme-noite{--pdf-bg:#17151a;--pdf-paper:#242027;--pdf-text:#f8f2f5;--pdf-muted:#baabb3;--pdf-accent:#c8a26d;--pdf-soft:#302a31;--pdf-line:#4b4047;--pdf-title:"Cormorant Garamond",serif}.pdf-theme-noite .mps-pdf-cover-v731,.pdf-theme-noite .mps-pdf-flow-wrap{background:radial-gradient(circle at 50% 20%,#29232b,#17151a 65%)}.pdf-theme-noite .mps-pdf-memory-card{box-shadow:none}
@media(max-width:900px){.mps-pdf-layout-picker-v731{grid-template-columns:1fr 1fr}}@media(max-width:620px){.mps-icon-picker{grid-template-columns:repeat(3,1fr)}}

/* =========================================================
   V7.4 — 5 TEMPLATES DE EVENTO
   ========================================================= */
.mps-template-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 16px}.mps-template-option{cursor:pointer}.mps-template-option>input{position:absolute;opacity:0;pointer-events:none}.mps-template-card{display:block;height:100%;padding:9px;border:1px solid #e6e0e3;border-radius:18px;background:#fff;transition:.2s ease}.mps-template-option>input:checked+.mps-template-card{border-color:#ec477e;box-shadow:0 0 0 2px rgba(236,71,126,.12),0 10px 28px rgba(36,23,29,.08);transform:translateY(-1px)}.mps-template-card>span{display:grid;gap:3px;padding:9px 4px 3px}.mps-template-card>span>strong{font-size:13px}.mps-template-card>span>small{font-size:10px;line-height:1.35;color:#756c70}.mps-template-demo{height:158px;border-radius:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;font-style:normal;text-align:center;padding:15px;box-sizing:border-box}.mps-template-demo small{font:700 7px/1.2 Inter,sans-serif;letter-spacing:.16em}.mps-template-demo strong{font-size:35px;line-height:1;margin:9px 0}.mps-template-demo em{display:block;width:54px;height:48px;margin:1px 0 11px;background:rgba(0,0,0,.07);border-radius:28px 28px 9px 9px}.mps-template-demo b{font:700 8px/1.2 Inter,sans-serif;padding:7px 10px;border-radius:999px}.mps-template-option.template-essencial .mps-template-demo{background:#fff9f6;color:#392e31}.mps-template-option.template-essencial .mps-template-demo strong{font-family:"Cormorant Garamond",serif;font-weight:500}.mps-template-option.template-essencial .mps-template-demo b{background:#e84f83;color:#fff}.mps-template-option.template-romance .mps-template-demo{background:#fdebf2;color:#8b3556}.mps-template-option.template-romance .mps-template-demo strong{font-family:"Fleur De Leah",cursive;font-weight:400}.mps-template-option.template-romance .mps-template-demo b{background:#ec477e;color:#fff}.mps-template-option.template-editorial .mps-template-demo{background:#fcfbf8;color:#191919;align-items:flex-start;text-align:left}.mps-template-option.template-editorial .mps-template-demo strong{font-family:"Playfair Display",serif;font-weight:500;font-size:31px}.mps-template-option.template-editorial .mps-template-demo em{width:100%;border-radius:0;height:36px}.mps-template-option.template-editorial .mps-template-demo b{background:#191919;color:#fff;border-radius:2px}.mps-template-option.template-jardim .mps-template-demo{background:#f1f4ec;color:#405247}.mps-template-option.template-jardim .mps-template-demo strong{font-family:"Cormorant Garamond",serif;font-weight:500}.mps-template-option.template-jardim .mps-template-demo em{border-radius:50% 50% 45% 45%;background:#d7dfcf}.mps-template-option.template-jardim .mps-template-demo b{background:#748d75;color:#fff}.mps-template-option.template-noite .mps-template-demo{background:#17181c;color:#f2e7d2}.mps-template-option.template-noite .mps-template-demo strong{font-family:"Playfair Display",serif;font-weight:500}.mps-template-option.template-noite .mps-template-demo em{background:#292b31;border:1px solid #c9a86a;border-radius:2px}.mps-template-option.template-noite .mps-template-demo b{background:#c9a86a;color:#17181c}.mps-apply-template{margin-bottom:18px}@media(max-width:560px){.mps-template-picker{grid-template-columns:1fr}.mps-template-demo{height:180px}}

/* Essencial — referência direta ao mockup clean da Home */
.mps-public-canvas.template-essencial,.mps-event-preview.template-essencial{--template-radius:30px}.mps-public-canvas.template-essencial .mps-public-header{margin:20px 20px 0;height:300px;border-radius:150px 150px 24px 24px}.mps-public-canvas.template-essencial .mps-public-profile{display:none}.mps-public-canvas.template-essencial .mps-public-intro{padding-top:34px}.mps-public-canvas.template-essencial .mps-public-intro>small{letter-spacing:.2em;font-size:10px}.mps-public-canvas.template-essencial .mps-public-intro h1{font-weight:500;letter-spacing:.01em}.mps-public-canvas.template-essencial .mps-public-details article{background:transparent;border-color:color-mix(in srgb,var(--event-text) 14%,transparent)}.mps-public-canvas.template-essencial .mps-public-memory{border:0;background:transparent!important;padding-top:28px}.mps-public-canvas.template-essencial .mps-public-memory h2{font-family:var(--title-font);font-weight:500;font-size:31px}.mps-public-canvas.template-essencial .mps-public-memory-types{display:none}

/* Romance — delicado e arredondado */
.mps-public-canvas.template-romance .mps-public-header{height:285px}.mps-public-canvas.template-romance .mps-public-profile{width:116px;height:116px;border-radius:50%}.mps-public-canvas.template-romance .mps-public-intro h1{font-weight:400;letter-spacing:0}.mps-public-canvas.template-romance .mps-public-details article,.mps-public-canvas.template-romance .mps-public-memory{border-radius:24px}.mps-public-canvas.template-romance .mps-public-memory{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--memory-accent) 12%,transparent)}

/* Editorial — contraste, linhas retas e composição de revista */
.mps-public-canvas.template-editorial{border-radius:4px}.mps-public-canvas.template-editorial .mps-public-header{height:360px}.mps-public-canvas.template-editorial .mps-public-profile{display:none}.mps-public-canvas.template-editorial .mps-public-intro{text-align:left;padding:34px 32px}.mps-public-canvas.template-editorial .mps-public-intro>small{letter-spacing:.22em}.mps-public-canvas.template-editorial .mps-public-intro h1{margin-left:0;line-height:.92}.mps-public-canvas.template-editorial .mps-public-intro>p{margin-left:0}.mps-public-canvas.template-editorial .mps-public-details{margin-left:0}.mps-public-canvas.template-editorial .mps-public-details article{border-radius:0;background:transparent}.mps-public-canvas.template-editorial .mps-public-actions{justify-content:flex-start}.mps-public-canvas.template-editorial .mps-public-actions a,.mps-public-canvas.template-editorial .mps-public-memory>a{border-radius:2px}.mps-public-canvas.template-editorial .mps-public-memory{margin:0;border-width:1px 0;border-radius:0;text-align:left;padding:32px}.mps-public-canvas.template-editorial .mps-public-memory h2,.mps-public-canvas.template-editorial .mps-public-memory p{margin-left:0}.mps-public-canvas.template-editorial .mps-public-memory-types{justify-content:flex-start}

/* Jardim — formas orgânicas e respiro */
.mps-public-canvas.template-jardim{border-radius:42px}.mps-public-canvas.template-jardim .mps-public-header{margin:16px;height:300px;border-radius:46% 46% 28px 28px}.mps-public-canvas.template-jardim .mps-public-profile{width:96px;height:96px;margin-top:-62px;border-radius:44% 56% 50% 50%}.mps-public-canvas.template-jardim .mps-public-intro h1{font-weight:500}.mps-public-canvas.template-jardim .mps-public-details article{border:0;background:color-mix(in srgb,var(--event-text) 7%,transparent);border-radius:22px}.mps-public-canvas.template-jardim .mps-public-memory{border:0;border-radius:36px;margin:16px 20px 22px}

/* Noite — fundo escuro, champagne e acabamento premium */
html:has(.mps-public-canvas.template-noite),body:has(.mps-public-canvas.template-noite){background:#0d0e11!important}.mps-public-canvas.template-noite{border:1px solid rgba(201,168,106,.24);box-shadow:0 28px 90px rgba(0,0,0,.48)}.mps-public-canvas.template-noite .mps-public-header{height:340px;filter:saturate(.75) contrast(1.05)}.mps-public-canvas.template-noite .mps-public-profile{border-color:#17181c}.mps-public-canvas.template-noite .mps-public-intro>small{color:#c9a86a}.mps-public-canvas.template-noite .mps-public-details article{border-color:rgba(201,168,106,.26);background:rgba(255,255,255,.035)}.mps-public-canvas.template-noite .mps-public-actions .secondary{color:#c9a86a;border-color:#c9a86a}.mps-public-canvas.template-noite .mps-public-memory{border-color:rgba(201,168,106,.3);background:#202126!important;color:#f2e7d2!important}.mps-public-canvas.template-noite .mps-public-memory>*{color:inherit}.mps-public-canvas.template-noite .mps-public-footer{border-top:1px solid rgba(201,168,106,.16)}

/* Preview: diferenças estruturais sem precisar abrir a página pública */
.mps-event-preview.template-essencial .mps-preview-header{margin:10px;border-radius:90px 90px 16px 16px;overflow:hidden}.mps-event-preview.template-essencial .mps-preview-profile{display:none}.mps-event-preview.template-editorial{border-radius:2px!important}.mps-event-preview.template-editorial .mps-preview-content{text-align:left}.mps-event-preview.template-editorial .mps-preview-profile{display:none}.mps-event-preview.template-editorial .mps-preview-memory{border-radius:0}.mps-event-preview.template-jardim{border-radius:30px!important}.mps-event-preview.template-jardim .mps-preview-header{margin:8px;border-radius:40% 40% 18px 18px;overflow:hidden}.mps-event-preview.template-noite{background:#17181c!important;color:#f2e7d2!important}.mps-event-preview.template-noite .mps-preview-memory{background:#202126!important;color:#f2e7d2!important;border-color:#c9a86a!important}
