/* Carregar depois dos estilos do convite. Todas as regras são locais ao módulo. */

.mem-section,.mem-admin,.mem-dialog{color:var(--creme,#F6EEDC);overflow-wrap:anywhere}
.mem-heading{text-align:center;padding:32px 12px 24px}
.mem-heading h1{font-family:'Cinzel',Georgia,serif;font-size:clamp(28px,7vw,46px);line-height:1.18;margin:12px 0;color:var(--ouro,#F2C14E)}
.mem-heading p{max-width:38ch;margin:16px auto;line-height:1.6}
.mem-eyebrow{color:var(--lilas,#C9A5FF);font-size:12px;letter-spacing:.1em}
.mem-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:16px 0}
.mem-toolbar select{width:auto;flex:1;min-width:140px}
.mem-button{display:inline-block;box-sizing:border-box;min-height:44px;min-width:44px;padding:11px 16px;border:1px solid var(--lilas,#C9A5FF);border-radius:12px;background:var(--pedra2,#1C1430);color:var(--creme,#F6EEDC);font:inherit;line-height:1.4;cursor:pointer}
.mem-button:hover:not(:disabled){background:var(--roxo,#3B1D5E)}
.mem-button:disabled{opacity:.55;cursor:default}
.mem-button:focus-visible,.mem-photo-open:focus-visible,.mem-guide-button:focus-visible,.mem-admin input:focus-visible,.mem-admin textarea:focus-visible,#memYear:focus-visible{outline:3px solid var(--ouro,#F2C14E);outline-offset:4px}
.mem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding-bottom:12px}
.mem-public-note{padding-bottom:24px;line-height:1.5}.mem-removal{margin:16px 0;text-align:left}.mem-removal .mem-button{margin:4px 4px 4px 0}.mem-removal label{display:block;margin:12px 0 6px}
.mem-photo{margin:0;background:var(--pedra2,#1C1430);border:1px solid #C9A5FF55;border-radius:18px;overflow:hidden}
.mem-photo-open{display:block;width:100%;padding:0;border:0;background:var(--pedra,#120C22);color:var(--creme,#F6EEDC);cursor:zoom-in;aspect-ratio:4/3}
.mem-photo-open img{display:block;width:100%;height:100%;object-fit:cover}
.mem-photo figcaption{padding:16px}.mem-photo figcaption p{margin:8px 0 0;line-height:1.5;white-space:pre-wrap}
.mem-image-error{display:block;padding:20px;line-height:1.5}
.mem-dialog{background:var(--pedra2,#1C1430);border:1px solid var(--lilas,#C9A5FF);border-radius:20px;padding:20px;width:min(900px,calc(100% - 24px));max-width:900px;max-height:90vh;max-height:90dvh;margin:auto;overflow:auto;box-shadow:0 24px 80px #0009}
.mem-dialog::backdrop{background:#090510de}
.mem-dialog-head{display:flex;justify-content:flex-end;margin-bottom:12px;position:sticky;top:0;background:var(--pedra2,#1C1430);z-index:1}
.mem-dialog figure{margin:0}.mem-dialog figure img{display:block;max-width:100%;max-height:60vh;max-height:60dvh;object-fit:contain;margin:auto}
.mem-dialog figcaption{padding-top:16px;white-space:pre-wrap;line-height:1.5}
.mem-guide{max-width:420px}.mem-guide-links{display:grid;gap:10px}.mem-guide-links button{text-align:left}
.mem-guide-portrait{width:64px;height:64px;border:1px solid var(--lilas,#C9A5FF);border-radius:50%;background:var(--pedra,#120C22);padding:6px;margin-bottom:12px}.mem-guide-portrait svg{display:block;width:100%;height:100%}
.mem-admin-disclosure{margin:18px 0;border:1px solid #C9A5FF66;border-radius:16px;background:var(--pedra2,#1C1430);color:var(--creme,#F6EEDC)}
.mem-admin-disclosure>summary{min-height:48px;padding:14px 18px;cursor:pointer;font-weight:700;line-height:1.5;border-radius:15px;color:var(--ouro,#F2C14E)}
.mem-admin-disclosure>summary::marker{color:var(--lilas,#C9A5FF)}
.mem-admin-disclosure>summary:hover{background:var(--roxo,#3B1D5E)}
.mem-admin-disclosure>summary:focus-visible{outline:3px solid var(--ouro,#F2C14E);outline-offset:3px}
.mem-admin-disclosure[open]>summary{border-bottom:1px solid #C9A5FF44;border-radius:15px 15px 0 0}
.mem-admin-disclosure>.mem-admin{border:0;margin:0}
.mem-guide-slot{margin:20px 0;text-align:left}.mem-guide-panel{margin-top:12px;padding:20px;border:1px solid var(--lilas,#C9A5FF);border-radius:18px;background:var(--pedra2,#1C1430)}
.mem-guide-button{display:flex;align-items:center;gap:6px;min-height:48px;border:1px solid var(--lilas,#C9A5FF);border-radius:30px;padding:6px 14px 6px 6px;background:var(--pedra2,#1C1430);color:var(--creme,#F6EEDC);font:inherit;cursor:pointer;box-shadow:0 5px 20px #0006}
.mem-guide-button svg{width:42px;height:42px}.mem-admin{padding:20px;border:1px solid #C9A5FF55;border-radius:18px;margin:20px 0}
.mem-admin fieldset{border:0;padding:0;margin:0;min-width:0}.mem-admin legend{font-weight:700;margin-bottom:16px}
.mem-admin label{display:block;margin:16px 0 8px}.mem-admin p{line-height:1.5}
.mem-admin .mem-check{display:flex;align-items:flex-start;gap:12px}.mem-check input{width:22px;min-width:22px;min-height:22px;height:22px;margin-top:2px;accent-color:var(--verde,#7CFC4A)}
.mem-preview{display:block;max-width:100%;max-height:340px;object-fit:contain;margin:16px auto;border-radius:12px}
.mem-admin-row{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #C9A5FF44;padding:16px 0}.mem-admin-row>div{min-width:0}.mem-admin-row button{flex-shrink:0}
#memNotice:empty,#memAdminNotice:empty,#memPrepared:empty,#memLightNotice:empty,#memGuideNotice:empty{display:none}
.mem-guide-button[hidden],.mem-guide-slot[hidden],.mem-guide-panel[hidden],.mem-admin-disclosure[hidden],#memAdminAccess[hidden],.mem-preview[hidden],.mem-admin[hidden],#memMore[hidden],.mem-photo-open img[hidden],.mem-dialog:not([open]){display:none!important}
@media(max-width:479px){.mem-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:520px){.mem-admin{padding:14px}.mem-admin-row{align-items:stretch;flex-direction:column}.mem-dialog{padding:14px}.mem-guide-button{right:10px}.mem-toolbar{gap:8px}}
@media(prefers-reduced-motion:reduce){.mem-section{animation:none!important}.mem-section *,.mem-dialog *,.mem-guide-button{scroll-behavior:auto!important;transition:none!important}}
