*{box-sizing:border-box;margin:0;padding:0}:root{--app-font:"Google Sans"}@font-face{font-family:Google Sans;src:url(/fonts/google-sans/GoogleSans-Variable.ttf)format("truetype");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Google Sans;src:url(/fonts/google-sans/GoogleSans-VariableItalic.ttf)format("truetype");font-style:italic;font-weight:100 900;font-display:swap}html,body,button,input,select,textarea{font-family:var(--app-font)}body{background:#030303;min-width:320px}:root{--app-navy:#f5f7fb;--app-navy-soft:#d7dde5;--app-ink:#f8f8f8;--app-muted:#c6cdd5;--app-line:#e6ebf038;--app-panel:#080a0cd6;--app-panel-soft:#ffffff14;--app-danger:#ffd5d5;--app-success:#c8f5dd;--app-radius:12px;--app-shadow:0 24px 70px #0000008a, inset 0 1px 0 #ffffff29}#root{min-height:100vh}body{color:#f8f8f8}a{color:inherit}.invite-page{color:#f8f8f8;min-height:100vh;font-family:var(--app-font);background:radial-gradient(circle at 50% 6%,#ffffff1f,#0000 13%),linear-gradient(#00061924,#00031285),url(/fundo-estrelado.jpg) 50%/cover no-repeat;position:relative;overflow:hidden}.invite-page h1,.invite-page h2,.invite-page h3,.invite-page h4,.invite-page h5,.invite-page h6,.invite-page p,.invite-page span,.invite-page button,.invite-page a,.presents-page h1,.presents-page h2,.presents-page h3,.presents-page h4,.presents-page h5,.presents-page h6,.presents-page p,.presents-page span,.presents-page button,.presents-page a{font-family:inherit}.invite-page:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% 38%,#0000 0 32%,#0003 70%),linear-gradient(90deg,#00000059,#0000 16% 84%,#00000059);position:absolute;inset:0}.star-field{display:none}.invite-shell{z-index:3;grid-template-columns:minmax(280px,.95fr) minmax(320px,430px);align-items:center;gap:clamp(28px,6vw,72px);width:min(1080px,100% - 40px);min-height:100vh;margin:0 auto;padding:72px 0;display:grid;position:relative}.invite-admin-entry{z-index:4;color:#f5f7fb;background:radial-gradient(circle at 35% 28%,#ffffff2e,#0000 42%),linear-gradient(155deg,#ffffff24,#ffffff0a),#080a0ce0;border:1px solid #e6ebf042;border-radius:999px;justify-content:center;align-items:center;width:54px;height:54px;text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s;display:inline-flex;position:fixed;top:auto;bottom:22px;right:22px;box-shadow:0 18px 44px #0000006b,inset 0 1px #ffffff2e}.invite-admin-entry:hover{border-color:#ffffff8a;transform:translateY(-2px);box-shadow:0 22px 50px #00000080,inset 0 1px #ffffff38}.invite-admin-entry svg{fill:currentColor;width:24px;height:24px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.invite-shell.is-confirmed-layout{text-align:center;flex-direction:column;justify-content:flex-start;gap:clamp(10px,1.8vh,18px);width:min(1220px,100% - 72px);padding:clamp(28px,4vh,44px) 0 clamp(28px,4vh,42px);display:flex}.invite-hero{text-align:center;text-shadow:0 0 20px #ffffff40}.invite-hero h1{color:#f5f5f5;font-family:inherit;font-size:clamp(1.55rem,3.4vw,2.15rem);font-weight:700;line-height:1.1}.invite-crest{aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 0 12px #ffffff7a)drop-shadow(0 0 34px #b9ceff42);width:min(220px,72vw);margin:clamp(18px,3vh,30px) auto 0;display:block}.invite-message{color:#d8dde2;max-width:480px;margin:24px auto 0;font-family:inherit;font-size:clamp(1.02rem,2vw,1.28rem);font-weight:600;line-height:1.45}.confirmed-hero{margin-top:-6px}.is-confirmed-layout .invite-crest{width:clamp(165px,16vw,220px);margin-top:clamp(16px,2.8vh,28px)}.form,.success-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(155deg,#ffffff24,#ffffff0a),#080a0cd6;border:1px solid #e6ebf03d;border-radius:8px;box-shadow:0 24px 70px #000000a6,inset 0 1px #ffffff38}.form{position:relative}.form form{flex-direction:column;gap:13px;padding:clamp(24px,5vw,38px);display:flex}.form-heading{text-align:center;margin-bottom:8px}.form-heading span{color:#c9ced3;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;font-weight:600}.form label,.form p{color:#e8ebee;font-size:.95rem;font-weight:600}.form input[type=text],.form input[type=tel],.present-admin-form-card input{color:#fff;width:100%;min-height:52px;font:inherit;background:#ffffff14;border:1px solid #e6ebf047;border-radius:8px;outline:none;padding:0 16px;transition:border-color .18s,box-shadow .18s,background .18s}.form input::placeholder,.present-admin-form-card input::placeholder{color:#aeb6bd}.form input:focus,.present-admin-form-card input:focus{background:#ffffff1f;border-color:#fff;box-shadow:0 0 0 4px #ffffff1f,0 0 22px #fff3}.form input[readonly]{color:#d9dee3;cursor:default;background:#ffffff0a;border-color:#e6ebf02e}.form input[readonly]:focus{box-shadow:none;background:#ffffff0a;border-color:#e6ebf02e}.radio-group{grid-template-columns:1fr 1fr;gap:10px;margin-top:2px;display:grid}.radio-option{cursor:pointer;background:linear-gradient(#ffffff14,#ffffff08),#ffffff0a;border:1px solid #e6ebf033;border-radius:14px;justify-content:center;align-items:center;gap:10px;min-height:56px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s,filter .18s;display:flex;position:relative;overflow:hidden}.radio-option:hover{background:linear-gradient(#ffffff1c,#ffffff0d),#ffffff14;border-color:#ffffff6b;transform:translateY(-1px);box-shadow:0 14px 28px #0000002e}.radio-option:has(input:checked){color:#050505;background:radial-gradient(circle at 22% 20%,#ffffff4d,#0000 30%),linear-gradient(135deg,#f8f8f8,#c7cdd4 56%,#fff);border-color:#ffffffe6;box-shadow:0 0 0 3px #ffffff24,0 16px 32px #00000047}.radio-option input{opacity:0;pointer-events:none;position:absolute}.radio-option span{color:inherit;letter-spacing:.02em;align-items:center;gap:10px;font-size:.98rem;font-weight:800;display:inline-flex}.radio-option span:before{content:"";box-sizing:border-box;background:0 0;border:2px solid;border-radius:999px;width:16px;height:16px;transition:transform .18s,background .18s,box-shadow .18s}.radio-option:has(input:checked) span:before{background:currentColor;box-shadow:inset 0 0 0 4px #fffffff2}.radio-option:focus-within{outline:none;box-shadow:0 0 0 4px #ffffff24}.form button,.present-admin-form-card button,.admin-present-actions button{color:#050505;min-height:48px;font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff);border:0;border-radius:8px;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s;box-shadow:0 14px 35px #ffffff29}.form button{min-height:54px;margin-top:10px}.form button:hover,.present-admin-form-card button:hover,.admin-present-actions button:hover,.presence-update-button:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 18px 45px #ffffff3d}.form button:disabled,.present-admin-form-card button:disabled{cursor:wait;opacity:.7;transform:none}.form-error{background:#82141438;border:1px solid #ff919166;border-radius:8px;padding:11px 13px;line-height:1.5;color:#ffd5d5!important;font-size:.86rem!important;font-weight:500!important}.presence-check-modal{z-index:6;border-radius:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#03060ec7;justify-content:center;align-items:center;padding:18px;display:flex;position:absolute;inset:0}.presence-check-panel{text-align:center;background:radial-gradient(circle at top,#ffffff1f,#0000 42%),#080a0cf2;border:1px solid #e6ebf033;border-radius:18px;width:min(100%,360px);padding:22px 20px 18px;box-shadow:0 28px 70px #00000094,inset 0 1px #ffffff24}.presence-check-panel h3{color:#f5f5f5;margin:0 0 10px;font-family:inherit;font-size:clamp(1.08rem,2.4vw,1.35rem);line-height:1.2}.presence-check-field{margin-top:8px;display:block}.presence-check-field input{color:#fff;width:100%;min-height:48px;font:inherit;letter-spacing:.02em;text-align:center;background:#ffffff14;border:1px solid #e6ebf03d;border-radius:12px;padding:0 14px;font-weight:600}.presence-check-field input:focus{background:#ffffff1f;border-color:#fff;outline:none;box-shadow:0 0 0 4px #ffffff1f}.presence-check-actions{justify-content:center;margin-top:18px;display:flex}.presence-check-actions button{min-width:min(100%,220px);min-height:46px;margin-top:0}.presence-check-primary{border:0;color:#050505!important;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff)!important;box-shadow:0 14px 35px #ffffff29!important}.success-card{text-align:center;flex-direction:column;align-items:center;width:min(100%,720px);padding:clamp(18px,3.2vw,26px);display:flex}.is-confirmed-layout .success-card{width:100%;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;padding:0}.image-icon{box-shadow:none;background:0 0;border-radius:999px;display:block;position:relative;overflow:visible}.image-icon img{object-fit:cover;object-position:center;width:100%;height:100%;transform:scale(var(--icon-zoom,1));display:block}.success-icon{filter:drop-shadow(0 0 18px #ffffffdb);width:clamp(58px,6vw,82px);height:clamp(58px,6vw,82px);margin-bottom:8px}.success-card h2{color:#fff;text-shadow:0 2px #00000047,0 0 20px #ffffff4d;font-family:inherit;font-size:clamp(2.35rem,5vw,4rem);line-height:1.05}.success-card p{color:#f0f0f0;text-shadow:0 0 16px #0000008c;margin-top:12px;font-family:inherit;font-size:clamp(1rem,2vw,1.32rem);line-height:1.35}.confirmed-bottom-row{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#040a14b8;border:1px solid #ffffff12;border-radius:14px;grid-template-columns:minmax(420px,1.2fr) minmax(420px,1fr);gap:clamp(12px,1.4vw,18px);width:min(100%,1110px);margin-top:clamp(10px,2.5vh,26px);padding:clamp(10px,1vw,14px);display:grid;box-shadow:0 24px 70px #0000007a,inset 0 1px #ffffff14}.dress-code-card{background:#f7f8fa;border:1px solid #dbe0e4e6;border-radius:10px;width:100%;display:block;overflow:hidden;box-shadow:0 18px 42px #00000042,inset 0 0 0 1px #ffffffc7}.dress-code-image{aspect-ratio:5/4;object-fit:contain;width:100%;height:auto;display:block}.confirmation-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.confirmation-actions-cards{min-height:100%}.gift-link{color:#fff;text-align:center;background:radial-gradient(circle at 50% 8%,#ffffff1f,#0000 32%),linear-gradient(150deg,#122e52d1,#010f1ff5 54%,#000711fa);border:1px solid #f5f5f5db;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:100%;padding:34px 22px;text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 5px #ffffff0a,0 18px 42px #00000052}.gift-link:hover{border-color:#fff;transform:translateY(-3px);box-shadow:inset 0 0 0 5px #ffffff0f,0 24px 52px #00000070,0 0 24px #ffffff1f}.action-ornament{width:86px;height:22px;position:absolute;top:24px;left:50%;transform:translate(-50%)}.action-ornament:before,.action-ornament:after{content:"";background:linear-gradient(90deg,#0000,#ffffffd1);width:38px;height:1px;position:absolute;top:50%}.action-ornament:before{right:50%}.action-ornament:after{left:50%;transform:scaleX(-1)}.action-icon{filter:drop-shadow(0 8px 12px #00000052);width:clamp(94px,8vw,118px);height:clamp(94px,8vw,118px);margin-top:12px}.gift-link strong{text-wrap:balance;word-spacing:.04em;text-shadow:0 1px #0006;max-width:230px;font-family:inherit;font-size:clamp(1.65rem,2.6vw,2.25rem);line-height:1.16;display:block}.action-divider{background:linear-gradient(90deg,#0000,#ffffffb8,#0000);width:132px;height:1px;position:relative}.action-divider:after{content:"";background:#fff;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}.gift-link small{color:#f3f5f7;text-wrap:balance;word-spacing:.03em;max-width:230px;font-size:clamp(.95rem,1.6vw,1.22rem);line-height:1.45;display:block}.admin-login-page,.admin-loading-page,.admin-panel-page{min-height:100vh;color:var(--app-ink);font-family:var(--app-font);background:radial-gradient(circle at 50% 8%,#ffffff1f,#0000 18%),linear-gradient(#0006192e,#000312ad),url(/fundo-estrelado.jpg) 50%/cover no-repeat;padding:clamp(32px,6vw,72px) 20px;position:relative}.admin-panel-shell{width:min(1120px,100%);margin:0 auto}.admin-panel-header{border:1px solid var(--app-line);border-radius:var(--app-radius);background:linear-gradient(155deg, #ffffff24, #ffffff0a), var(--app-panel);box-shadow:var(--app-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px;padding:clamp(22px,4vw,30px);display:flex}.report-kicker,.admin-panel-header p{color:var(--app-muted);letter-spacing:.14em;text-transform:uppercase;margin-bottom:7px;font-size:.78rem;font-weight:600}.admin-panel-header h1{color:var(--app-navy);font-family:var(--app-font);font-size:clamp(2rem,5vw,3.2rem);line-height:1.05}.admin-panel-header p:last-child{color:var(--app-muted);margin-top:8px;line-height:1.6;display:block}.admin-logout-button{color:#050505;cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff);border:1px solid #ffffff3d;border-radius:8px;min-width:88px;padding:11px 18px;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s}.admin-logout-button:hover{background:linear-gradient(135deg,#fff,#c5ccd4 54%,#fff);transform:translateY(-1px);box-shadow:0 14px 35px #ffffff2e}.admin-login-page,.admin-loading-page{place-items:center;display:grid}.admin-loading-page p,.admin-login-card{border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-panel);width:min(460px,100%);box-shadow:var(--app-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.admin-loading-page p{color:var(--app-ink);text-align:center;padding:22px}.admin-login-card{padding:clamp(22px,4.5vw,34px);position:relative}.admin-login-card-header{align-items:center;gap:14px;margin-bottom:24px;display:flex}.admin-login-back-link{width:40px;height:40px;color:var(--app-ink);background:radial-gradient(circle at 35% 30%,#ffffff24,#0000 42%),#ffffff0f;border:1px solid #e6ebf03d;border-radius:999px;flex:none;justify-content:center;align-items:center;text-decoration:none;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:inline-flex}.admin-login-back-link:hover{background:radial-gradient(circle at 35% 30%,#fff3,#0000 42%),#ffffff1a;border-color:#ffffff80;transform:translateY(-1px);box-shadow:0 12px 30px #00000038}.admin-login-back-link svg{fill:currentColor;width:20px;height:20px}.admin-login-card h1{min-width:0;color:var(--app-navy);font-family:var(--app-font);text-wrap:balance;margin:0;padding-top:0;font-size:clamp(1.85rem,4.6vw,2.3rem);line-height:1}.admin-login-card form{gap:12px;display:grid}.admin-login-card label{color:var(--app-ink);font-size:.92rem;font-weight:700}.admin-login-card input{background:var(--app-panel-soft);width:100%;min-height:50px;color:var(--app-ink);font:inherit;border:1px solid #e6ebf047;border-radius:8px;padding:13px 14px}.admin-login-card input:focus{background:#ffffff1f;border-color:#fff;outline:none;box-shadow:0 0 0 4px #ffffff1f,0 0 22px #fff3}.admin-login-card button{color:#050505;cursor:pointer;min-height:48px;font:inherit;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff);border:0;border-radius:8px;margin-top:8px;padding:13px 18px;font-weight:700;transition:background .18s,transform .18s,box-shadow .18s}.admin-login-card button:hover{background:linear-gradient(135deg,#fff,#c5ccd4 54%,#fff);transform:translateY(-1px);box-shadow:0 14px 35px #ffffff2e}.admin-login-card button:disabled{cursor:wait;opacity:.7;transform:none}.admin-login-error{color:var(--app-danger);background:#82141438;border:1px solid #ff919166;border-radius:10px;padding:10px 12px;font-size:.92rem}@media (width<=767px){.admin-login-card{width:min(100%,430px)}.admin-login-card-header{align-items:flex-start}.admin-login-card h1{font-size:clamp(1.65rem,8.2vw,2.05rem);line-height:1.02}}.admin-panel-layout{grid-template-columns:minmax(240px,280px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.admin-panel-sidebar{border:1px solid var(--app-line);border-radius:var(--app-radius);background:linear-gradient(155deg, #ffffff1f, #ffffff08), var(--app-panel);box-shadow:var(--app-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);gap:12px;padding:18px;display:grid;position:sticky;top:20px}.admin-panel-sidebar button{width:100%;color:var(--app-ink);cursor:pointer;font:inherit;text-align:left;text-transform:none;box-shadow:none;background:#ffffff0d;border:1px solid #e6ebf024;border-radius:12px;gap:5px;padding:16px 15px;transition:transform .18s,border-color .18s,background .18s,box-shadow .18s;display:grid}.admin-panel-sidebar button:hover,.admin-panel-sidebar button.is-active{background:radial-gradient(circle at 20% 20%,#ffffff1f,#0000 34%),linear-gradient(155deg,#ffffff24,#ffffff0d);border-color:#ffffff6b;transform:translateY(-1px);box-shadow:0 16px 34px #00000038}.admin-panel-sidebar button span{letter-spacing:.02em;font-size:.95rem;font-weight:700}.admin-panel-sidebar button small{color:var(--app-muted);font-size:.8rem;line-height:1.4}.admin-panel-content{gap:18px;display:grid}.admin-list-search{padding:22px 22px 18px}.admin-list-search label{color:var(--app-ink);gap:7px;font-size:.88rem;font-weight:700;display:grid}.admin-list-search label span{color:var(--app-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.admin-list-search input{background:var(--app-panel-soft);width:100%;min-height:44px;color:var(--app-ink);font:inherit;border:1px solid #e6ebf047;border-radius:8px;padding:0 14px}.admin-list-search input:focus{background:#ffffff1f;border-color:#fff;outline:none;box-shadow:0 0 0 4px #ffffff1f,0 0 22px #fff3}.admin-section{gap:18px;display:grid}.admin-section-header{border:1px solid var(--app-line);border-radius:var(--app-radius);background:linear-gradient(155deg, #ffffff24, #ffffff0a), var(--app-panel);box-shadow:var(--app-shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:clamp(22px,4vw,30px)}.admin-section-header h2,.report-actions h3,.present-list-heading h3,.present-admin-card-heading h3{color:var(--app-navy);font-family:var(--app-font);font-size:clamp(1.7rem,4vw,2.4rem);line-height:1.1}.admin-section-header p:last-child{color:var(--app-muted);margin-top:8px;line-height:1.6;display:block}.report-totals{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px;display:grid}.report-totals article,.report-actions,.report-table-card,.report-message,.presents-feedback,.present-admin-form-card,.present-admin-list-card{border:1px solid var(--app-line);border-radius:var(--app-radius);background:var(--app-panel);box-shadow:var(--app-shadow)}.report-totals article{flex-direction:column;gap:8px;padding:22px;display:flex}.report-totals span{color:var(--app-muted);font-size:.88rem}.report-totals strong{color:var(--app-navy);font-family:var(--app-font);font-size:2.2rem}.report-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:24px;padding:20px 22px;display:grid}.report-actions h2{color:var(--app-navy);font-family:var(--app-font);font-size:1.35rem}.report-actions p{color:var(--app-muted);margin-top:4px;font-size:.9rem}.report-action-buttons{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.report-action-buttons button{color:#050505;min-height:44px;font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff);border:1px solid #ffffff3d;border-radius:8px;padding:0 16px;font-size:.82rem;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s;box-shadow:0 12px 28px #ffffff1f}.report-action-buttons button:hover{filter:none;background:linear-gradient(135deg,#fff,#c5ccd4 54%,#fff);transform:translateY(-2px);box-shadow:0 16px 36px #ffffff2e}.report-export-feedback{background:#755b1333;border:1px solid #ead8a875;border-radius:8px;grid-column:1/-1;padding:10px 12px;color:#ffe6a0!important;margin-top:0!important}.report-table-card{overflow:hidden}.report-table-heading,.present-list-heading,.present-admin-card-heading{border-bottom:1px solid var(--app-line);justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;display:flex}.report-table-heading h2,.present-list-heading h2,.present-admin-card-heading h2{color:var(--app-navy);font-family:var(--app-font);font-size:1.35rem}.report-table-heading span,.present-list-heading p,.present-admin-card-heading p{color:var(--app-muted);font-size:.82rem}.report-filters{border-bottom:1px solid var(--app-line);grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:14px;padding:18px 22px;display:grid}.report-filters label{color:var(--app-ink);gap:7px;font-size:.88rem;font-weight:700;display:grid}.report-filters label span{color:var(--app-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}.report-filters input{background:var(--app-panel-soft);width:100%;min-height:44px;color:var(--app-ink);font:inherit;border:1px solid #e6ebf047;border-radius:8px;padding:0 14px}.report-filters input::placeholder{color:#8a949e}.report-filters input:focus{background:#ffffff1f;border-color:#fff;outline:none;box-shadow:0 0 0 4px #ffffff1f,0 0 22px #fff3}.report-filter-group{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.report-filter-group button{min-height:40px;color:var(--app-ink);cursor:pointer;font:inherit;letter-spacing:.04em;text-transform:uppercase;background:#ffffff14;border:1px solid #fff3;border-radius:8px;padding:0 13px;font-size:.78rem;font-weight:700;transition:background .18s,color .18s,transform .18s}.report-filter-group button:hover,.report-filter-group button.is-active{color:#050505;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff)}.report-filter-group button:hover{transform:translateY(-1px)}.report-table-wrap{overflow-x:auto}.report-table-card table{border-collapse:collapse;text-align:left;width:100%}.report-table-card th,.report-table-card td{border-bottom:1px solid var(--app-line);white-space:nowrap;padding:15px 22px}.report-table-card th{background:var(--app-panel-soft);color:var(--app-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.76rem}.report-table-card td{font-size:.9rem}.presence-badge{text-align:center;border-radius:999px;min-width:48px;padding:5px 9px;font-size:.78rem;font-weight:600;display:inline-block}.is-confirmed{color:var(--app-success);background:#21844d33}.is-declined{color:var(--app-danger);background:#82141438}.report-message,.report-empty,.admin-list-empty{color:var(--app-muted);text-align:center;padding:28px}.report-error,.admin-notice.is-error{color:var(--app-danger);background:#82141438;border-color:#ff919166}.admin-heading-icon,.admin-present-placeholder{border-radius:8px;flex:none;width:52px;height:52px}.admin-heading-icon{box-shadow:none;filter:drop-shadow(0 0 12px #ffffff42);background:0 0;border-radius:0;overflow:visible}.admin-heading-icon img{object-fit:contain}.admin-present-placeholder{width:100%;height:100%}.present-list-heading a{color:#050505;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff);border-radius:8px;justify-content:center;align-items:center;min-height:42px;margin-top:28px;padding:0 16px;font-weight:700;text-decoration:none;transition:background .18s,transform .18s,box-shadow .18s;display:inline-flex}.present-list-heading a:hover{background:linear-gradient(135deg,#fff,#c5ccd4 54%,#fff);transform:translateY(-1px);box-shadow:0 12px 28px #ffffff29}.present-list-heading a{margin-top:0}.present-admin-form-card,.present-admin-list-card{margin-bottom:24px;overflow:hidden}.present-admin-form-card form{gap:14px;padding:22px;display:grid}.present-admin-form-card label{color:var(--app-ink);font-weight:700}.present-admin-form-card label span{color:var(--app-muted);font-weight:500}.present-admin-form-card input{background:var(--app-panel-soft);min-height:50px;color:var(--app-ink);box-shadow:none;border:1px solid #e6ebf047;border-radius:8px}.present-admin-form-card input:focus{background:#ffffff1f;border-color:#fff;box-shadow:0 0 0 4px #ffffff1f,0 0 22px #fff3}.present-admin-form-card input::placeholder{color:#8a949e}.present-form-actions,.admin-present-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.admin-present-order-controls{gap:6px;margin-right:4px;display:inline-flex}.present-admin-form-card button,.admin-present-actions button{color:#050505;min-height:44px;font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff);border:1px solid #ffffff3d;border-radius:8px;padding:0 16px;font-size:.82rem;font-weight:700;transition:background .18s,transform .18s,box-shadow .18s;box-shadow:0 12px 28px #ffffff1f}.admin-present-actions .button-order{letter-spacing:0;border-radius:999px;min-width:40px;min-height:40px;padding:0;font-size:.9rem}.admin-present-actions .button-order:disabled{cursor:not-allowed;opacity:.4;transform:none;box-shadow:0 8px 16px #ffffff0f}.present-admin-form-card button:hover,.admin-present-actions button:hover{background:linear-gradient(135deg,#fff,#c5ccd4 54%,#fff);transform:translateY(-1px);box-shadow:0 16px 34px #ffffff2e}.present-admin-form-card button:disabled{cursor:wait;opacity:.7;transform:none}.report-edit-card{z-index:30;width:min(420px,100vw - 48px);margin:0;position:fixed;bottom:24px;right:24px}.button-secondary{color:var(--app-ink)!important;box-shadow:none!important;background:#ffffff14!important;border-color:#ffffff3d!important}.button-danger{color:var(--app-danger)!important;box-shadow:none!important;background:#82141438!important;border-color:#ff919166!important}.admin-notice{border-radius:8px;padding:12px 14px}.admin-notice.is-success{color:var(--app-success);background:#21844d33;border:1px solid #5fda975c}.present-admin-list{display:grid}.present-admin-item{border-bottom:1px solid var(--app-line);cursor:grab;-webkit-user-select:none;user-select:none;grid-template-columns:70px 1fr auto;align-items:center;gap:16px;padding:16px 22px;display:grid}.present-admin-item-convidado{cursor:default;grid-template-columns:minmax(0,1fr) auto}.present-admin-item:last-child{border-bottom:0}.present-admin-item.is-dragging{opacity:.6;cursor:grabbing}.present-admin-item.is-drop-target{background:#ffffff0a;box-shadow:inset 0 0 0 1px #ffffff14}.admin-present-thumb{background:var(--app-panel-soft);border-radius:10px;place-items:center;width:70px;height:70px;display:grid;overflow:hidden}.present-admin-item-convidado .admin-present-thumb{display:none}.admin-present-thumb img{object-fit:cover;width:100%;height:100%}.admin-present-info h3,.admin-present-info h4{color:var(--app-navy);font-family:var(--app-font)}.admin-present-info p{color:var(--app-muted);font-size:.86rem}@media (width<=980px){.invite-shell,.invite-shell.is-confirmed-layout{width:min(100% - 32px,720px)}.invite-shell{grid-template-columns:1fr;padding:56px 0}.invite-admin-entry{bottom:16px;right:16px}.confirmed-bottom-row{grid-template-columns:1fr;width:min(100%,720px)}.confirmation-actions-cards{min-height:300px}.admin-panel-layout{grid-template-columns:1fr}.admin-panel-sidebar{position:static}.report-edit-card{width:100%;margin-top:18px;position:static}}@media (width<=680px){.invite-shell.is-confirmed-layout{gap:14px;padding:28px 0}.success-card h2{font-size:clamp(2rem,9vw,2.8rem)}.success-card p{font-size:.98rem}.is-confirmed-layout .invite-crest{width:142px}.confirmed-bottom-row{padding:8px}.confirmation-actions,.report-totals,.report-actions,.report-filters{grid-template-columns:1fr}.report-filter-group{justify-content:stretch}.report-filter-group button{flex:150px}.report-action-buttons{justify-content:stretch}.report-action-buttons button{flex:160px}.confirmation-actions-cards{min-height:0}.gift-link{min-height:260px;padding:34px 18px}.present-admin-item{grid-template-columns:58px 1fr}.admin-present-actions{grid-column:1/-1}.report-table-heading,.present-list-heading,.present-admin-card-heading{flex-direction:column;align-items:flex-start}.admin-list-search{padding:0 18px 16px}}.confirmed-page{min-height:100dvh;overflow:hidden auto}.confirmed-page .is-confirmed-layout{justify-content:center;gap:clamp(6px,1.1vh,12px);width:min(1040px,100% - clamp(32px,5vw,72px));min-height:100dvh;padding:clamp(14px,2vh,24px) 0}.confirmed-page .success-card{width:min(100%,760px)}.confirmed-page .success-icon{width:clamp(48px,5.6vh,68px);height:clamp(48px,5.6vh,68px);margin-bottom:clamp(4px,.8vh,8px)}.confirmed-page .success-card h2{font-size:clamp(1.9rem,3.6vw,2.85rem)}.confirmed-page .success-card p{margin-top:clamp(5px,.9vh,9px);font-size:clamp(.92rem,1.5vw,1.12rem)}.confirmed-page .confirmed-hero{margin-top:0}.confirmed-page .confirmed-hero h1{font-size:clamp(1.22rem,2vw,1.6rem)}.confirmed-page .is-confirmed-layout .invite-crest{width:clamp(118px,13vh,158px);max-width:220px;margin-top:clamp(6px,1vh,12px)}.confirmed-page .confirmed-bottom-row{grid-template-columns:minmax(375px,500px) repeat(2,minmax(170px,190px));justify-content:center;align-items:stretch;gap:clamp(8px,1vw,12px);width:min(100%,780px);margin-top:clamp(4px,.8vh,8px);padding:0;display:grid}.confirmed-page .confirmation-actions-cards{display:contents}.confirmed-page .dress-code-card{width:100%;max-width:500px}.confirmed-page .gift-link{gap:clamp(3px,.6vh,6px);width:100%;min-width:0;min-height:clamp(60px,26vh,104px);padding:clamp(12px,1.5vh,16px) clamp(10px,1vw,14px)}.confirmed-page .action-ornament{top:clamp(12px,1.6vh,18px)}.confirmed-page .action-icon{width:clamp(60px,8vh,76px);height:clamp(60px,8vh,76px);margin-top:0;margin-bottom:clamp(2px,.4vh,4px)}.confirmed-page .action-icon img{object-fit:contain}.confirmed-page .gift-link strong{letter-spacing:.01em;max-width:160px;min-height:2.32em;font-size:clamp(1rem,1.55vw,1.32rem);line-height:1.16}.confirmed-page .action-divider{width:min(112px,70%)}.confirmed-page .gift-link small{max-width:160px;min-height:4.08em;font-size:clamp(.7rem,1vw,.86rem);line-height:1.36}.declined-page{min-height:100dvh;color:var(--app-ink);background:radial-gradient(circle at 50% 8%,#ffffff1f,#0000 18%),linear-gradient(#0006192e,#000312ad),url(/fundo-estrelado.jpg) 50%/cover no-repeat;place-items:center;display:grid;overflow-y:auto}.declined-page:after{background:radial-gradient(circle at 50% 38%,#0000 0 32%,#0003 70%),linear-gradient(90deg,#00000059,#0000 16% 84%,#00000059)}.declined-shell{z-index:3;place-items:center;width:min(680px,100% - 40px);min-height:100dvh;padding:clamp(28px,6vw,56px) 0;display:grid;position:relative}.declined-card{border:1px solid var(--app-line);border-radius:var(--app-radius);background:linear-gradient(155deg, #ffffff24, #ffffff0a), var(--app-panel);width:100%;box-shadow:var(--app-shadow);text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);justify-items:center;gap:clamp(10px,2vw,16px);padding:clamp(28px,6vw,54px);display:grid}.declined-card h1{color:var(--app-navy);text-wrap:balance;font-family:inherit;font-size:clamp(2rem,6vw,3.4rem);line-height:1.08}.declined-card p{max-width:470px;color:var(--app-muted);text-wrap:balance;font-family:inherit;font-size:clamp(1rem,2.4vw,1.24rem);line-height:1.5}.declined-page .success-icon{filter:drop-shadow(0 0 18px #ffffffc2)}.declined-page .presence-update-button{color:#050505;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff);box-shadow:0 12px 28px #ffffff1f}.declined-page .presence-update-button:hover{background:linear-gradient(135deg,#fff,#c5ccd4 54%,#fff);box-shadow:0 16px 34px #ffffff2e}.presence-update-action{justify-content:center;width:100%;margin-top:clamp(8px,1.4vh,14px);display:flex}.presence-update-button{color:#050505;min-width:min(100%,260px);min-height:48px;font:inherit;letter-spacing:.04em;text-align:center;text-transform:uppercase;background:linear-gradient(135deg,#f7f7f7,#aeb5bc 54%,#fff);border-radius:8px;justify-content:center;align-items:center;padding:0 24px;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex;box-shadow:0 14px 35px #ffffff29}.presents-page{min-height:100vh;color:var(--app-ink);font-family:var(--app-font);background:radial-gradient(circle at 50% 8%,#ffffff1f,#0000 18%),linear-gradient(#0006192e,#000312ad),url(/fundo-estrelado.jpg) 50%/cover no-repeat;position:relative;overflow:hidden}.presents-page:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% 38%,#0000 0 32%,#0003 70%),linear-gradient(90deg,#00000059,#0000 16% 84%,#00000059);position:absolute;inset:0}.presents-shell{z-index:3;width:min(760px,100% - 18px);margin:0 auto;padding:clamp(18px,3.5vw,34px) 0 26px;position:relative}.presents-header{text-align:center;text-shadow:0 0 18px #ffffff1f;margin-bottom:12px}.presents-header p{color:#c6cdd5d6;letter-spacing:.22em;text-transform:uppercase;margin-bottom:7px;font-size:.64rem;font-weight:700}.presents-header h1{color:var(--app-navy);text-wrap:balance;font-family:inherit;font-size:clamp(1.35rem,3vw,2rem);line-height:1.04}.presents-feedback{border:1px solid var(--app-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--app-muted);text-align:center;background:#080a0cb3;border-radius:12px;margin-bottom:12px;padding:10px 13px;box-shadow:0 14px 28px #00000038}.presents-feedback.is-error{color:var(--app-danger);background:#82141438;border-color:#ff919166}.presents-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.present-item{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#ffffff0a,#ffffff05),#080a0cad;border:1px solid #ffffff1f;border-radius:14px;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:12px;min-height:64px;padding:10px 12px;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;overflow:hidden;box-shadow:0 12px 26px #0000002e}.present-item:hover{border-color:#ffffff38;transform:translateY(-2px);box-shadow:0 16px 30px #0000003d}.present-item-media{background:radial-gradient(circle at 30% 25%,#ffffff1f,#0000 44%),linear-gradient(160deg,#ffffff0d,#ffffff05),#ffffff08;border-radius:12px;flex-shrink:0;place-items:center;width:56px;height:56px;display:grid;overflow:hidden}.present-item img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.present-item h2{color:var(--app-navy);text-wrap:balance;margin:0;font-family:inherit;font-size:.96rem;line-height:1.14}.present-item-body{min-width:0}.present-item-text-only{grid-template-columns:1fr;min-height:64px;padding-left:14px;padding-right:14px}.present-item-text-only .present-item-body{align-items:center;display:flex}.back-to-invite{color:#050505;letter-spacing:.02em;text-transform:uppercase;background:radial-gradient(circle at 35% 30%,#ffffff29,#0000 42%),linear-gradient(135deg,#f7f7f7,#b5bcc4 54%,#fff);border:1px solid #ffffff2e;border-radius:999px;justify-content:center;align-items:center;min-height:34px;margin-top:12px;padding:0 13px;font-size:.74rem;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s;display:inline-flex;box-shadow:0 8px 18px #ffffff14,0 6px 18px #0000001a}.back-to-invite:hover{background:radial-gradient(circle at 35% 30%,#fff3,#0000 42%),linear-gradient(135deg,#fff,#cfd5dc 54%,#fff);border-color:#ffffff4d;transform:translateY(-1px);box-shadow:0 10px 22px #ffffff1f,0 8px 22px #00000024}@media (width<=767px){.presents-shell{width:min(100% - 14px,390px);padding:16px 0 22px}.presents-header{margin-bottom:10px}.presents-header h1{font-size:clamp(1.25rem,6.5vw,1.7rem)}.presents-list{gap:7px}.present-item{border-radius:12px;grid-template-columns:48px minmax(0,1fr);gap:10px;min-height:58px;padding:9px 10px}.present-item-media{border-radius:10px;width:48px;height:48px}.present-item-text-only{grid-template-columns:1fr;min-height:58px;padding-left:12px;padding-right:12px}.back-to-invite{width:100%;min-height:36px}}@media (width>=1024px){.confirmed-page{height:auto;overflow-y:auto}}@media (width>=768px) and (width<=1023px){.confirmed-page .is-confirmed-layout{justify-content:flex-start;width:min(780px,100% - 40px);padding:clamp(18px,3vh,28px) 0}.confirmed-page .success-card h2{font-size:clamp(2rem,5.8vw,3rem)}.confirmed-page .is-confirmed-layout .invite-crest{width:clamp(130px,18vw,170px)}.confirmed-page .confirmed-bottom-row{grid-template-columns:minmax(300px,350px) minmax(220px,1fr);width:min(100%,720px)}.confirmed-page .confirmation-actions-cards{grid-template-columns:1fr;gap:clamp(10px,1.5vh,14px);display:grid}.confirmed-page .gift-link{gap:7px;min-height:clamp(112px,15vh,136px);padding:14px 12px}.confirmed-page .action-ornament{display:none}.confirmed-page .action-icon{width:68px;height:68px;margin-top:0}.confirmed-page .gift-link strong{font-size:clamp(1rem,2.2vw,1.24rem)}.confirmed-page .gift-link small{font-size:.76rem}}@media (width<=767px){.report-header,.admin-panel-header{flex-direction:column;align-items:stretch}.admin-logout-button{width:100%}.admin-panel-sidebar{padding:14px}.admin-panel-sidebar button{padding:14px 13px}.confirmed-page{overflow-y:auto}.confirmed-page .is-confirmed-layout{justify-content:flex-start;gap:12px;width:min(100% - 24px,430px);min-height:100dvh;padding:24px 0}.confirmed-page .success-icon{width:54px;height:54px}.confirmed-page .success-card h2{font-size:clamp(1.85rem,9vw,2.5rem)}.confirmed-page .success-card p{max-width:320px;font-size:.9rem}.confirmed-page .confirmed-hero h1{font-size:clamp(1.2rem,6vw,1.55rem)}.confirmed-page .is-confirmed-layout .invite-crest{width:clamp(116px,34vw,146px);margin-top:8px}.confirmed-page .confirmed-bottom-row{grid-template-columns:1fr;gap:10px;width:100%;margin-top:4px;padding:8px}.confirmed-page .confirmation-actions-cards{grid-template-columns:1fr;gap:10px;display:grid}.confirmed-page .dress-code-card{max-width:100%}.confirmed-page .gift-link{gap:8px;min-height:132px;padding:18px 14px}.confirmed-page .action-ornament{display:none}.confirmed-page .action-icon{width:72px;height:72px;margin-top:0}.confirmed-page .gift-link strong{font-size:clamp(1.2rem,6vw,1.48rem)}.confirmed-page .gift-link small{font-size:.84rem}}
