*,*:before,*:after{box-sizing:border-box}html,body,#root{min-height:100%;width:100%;margin:0;overscroll-behavior-y:none;overscroll-behavior-x:none}body{font-family:Nunito,sans-serif;background-color:#f7efeb;color:var(--wedding-text);-webkit-overflow-scrolling:touch}a{text-decoration:none}.site-shell{min-height:100vh;min-height:100dvh;position:relative;isolation:isolate;background-color:#f7efeb}.site-shell:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(#fff8f626,#f7efeb33),url(../sfondo-2.png);background-size:cover;background-position:center;background-repeat:no-repeat}.site-shell:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(circle at top left,rgba(217,178,111,.12),transparent 35%),radial-gradient(circle at bottom right,rgba(183,110,121,.12),transparent 35%)}.wedding-header{background:#fffaf8f5;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid rgba(183,110,121,.15);position:sticky;top:0;z-index:1000}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.header-brand{font-size:1.5rem;font-weight:800;color:var(--wedding-primary);letter-spacing:.5px}.header-nav-mobile{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.nav-link-custom{color:var(--wedding-text);font-weight:700;padding:.45rem .9rem;border-radius:999px;transition:.3s ease}.nav-link-custom:hover,.nav-link-custom.active{background-color:#b76e791f;color:var(--wedding-primary-dark)}.wedding-footer{background:#fffaf8f5;border-top:1px solid rgba(183,110,121,.15);color:var(--wedding-text);position:relative;z-index:2}@media(max-width:768px){.header-inner{flex-direction:column;align-items:stretch;gap:.75rem}.header-brand{width:100%;text-align:center}.header-nav-mobile{width:100%;display:flex;justify-content:space-between;align-items:center}.header-nav-mobile .nav-link-custom:first-child{margin-right:auto}.header-nav-mobile .nav-link-custom:last-child{margin-left:auto}}:root{--wedding-bg: #f8f1ef;--wedding-card: rgba(255, 255, 255, .9);--wedding-primary: #b76e79;--wedding-primary-dark: #9c5963;--wedding-gold: #d9b26f;--wedding-text: #5e4b4b;--wedding-light: #fffaf8}.heart-image-wrapper{display:flex;justify-content:center}.heart-image{width:min(260px,70vw);aspect-ratio:1 / 1;object-fit:cover;clip-path:path("M128 220 C90 180, 20 120, 20 70 C20 30, 55 10, 90 10 C115 10, 128 30, 128 50 C128 30, 140 10, 166 10 C200 10, 236 30, 236 70 C236 120, 166 180, 128 220 Z");box-shadow:0 12px 30px #b76e792e;border:5px solid rgba(255,255,255,.9);background-color:#fff}.btn-music{background:#ffffffeb;color:var(--wedding-primary-dark);border:1px solid rgba(183,110,121,.22);border-radius:999px;font-weight:800;padding:.75rem 1.4rem;transition:.3s ease;box-shadow:0 8px 22px #b76e791f}.btn-music:hover{background:#fff;color:var(--wedding-primary);transform:translateY(-1px)}.curtain-overlay{position:fixed;inset:0;z-index:99999;overflow:hidden}.curtain-overlay-start{cursor:pointer}.curtain-left,.curtain-right{position:absolute;top:0;width:50%;height:100%;background:linear-gradient(90deg,#781020f5,#91182cfa,#781020f5,#9b1e32fa,#781020f5)}.curtain-left{left:0;border-right:4px solid rgba(255,215,170,.35);box-shadow:inset -10px 0 25px #00000038}.curtain-right{right:0;border-left:4px solid rgba(255,215,170,.35);box-shadow:inset 10px 0 25px #00000038}.curtain-left-open{animation:openLeftCurtain 4.8s cubic-bezier(.22,1,.36,1) forwards}.curtain-right-open{animation:openRightCurtain 4.8s cubic-bezier(.22,1,.36,1) forwards}.curtain-center-light{position:absolute;top:0;left:50%;transform:translate(-50%);width:120px;height:100%;background:radial-gradient(ellipse at center,#fff0d238,#fff0d214,#fff0d200 70%);opacity:1}.curtain-light-open{animation:fadeCurtainLight 4.8s ease forwards}.curtain-message{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;pointer-events:none;text-align:center;padding:1rem}.curtain-message p{font-size:clamp(2rem,5vw,4rem);font-weight:800;margin:0 0 1rem;color:#fff;text-shadow:0 4px 16px rgba(0,0,0,.28)}.curtain-message .btn{pointer-events:none;box-shadow:0 10px 30px #00000038}@keyframes openLeftCurtain{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes openRightCurtain{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes fadeCurtainLight{0%{opacity:.9}to{opacity:0}}@media(max-width:768px){.curtain-message p{font-size:clamp(1.8rem,8vw,3rem)}}.invite-text{font-size:1.08rem;color:var(--wedding-text)}.wedding-input{border-radius:18px;padding:.9rem 1rem;border:1px solid rgba(183,110,121,.25);font-weight:700;color:var(--wedding-text)}.wedding-input:focus{border-color:var(--wedding-primary);box-shadow:0 0 0 .25rem #b76e7926}.btn-wedding{background:linear-gradient(135deg,var(--wedding-primary),var(--wedding-primary-dark));color:#fff;border:none;border-radius:999px;font-weight:800;padding:.8rem 1.6rem;transition:.3s ease}.btn-wedding:hover{background:linear-gradient(135deg,var(--wedding-primary-dark),var(--wedding-primary));color:#fff;transform:translateY(-1px)}.guest-row{background:#fffaf8f2;border:1px solid rgba(183,110,121,.12);border-radius:20px}.form-check-input:checked{background-color:var(--wedding-primary);border-color:var(--wedding-primary)}.custom-modal-backdrop{position:fixed;inset:0;background:#5e4b4b73;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:9999}.custom-modal-box{width:100%;max-width:460px;background:#fff;border-radius:26px;padding:2rem;box-shadow:0 25px 60px #0000002e;border-top:6px solid var(--wedding-primary)}.custom-modal-box h3{color:var(--wedding-primary);font-weight:900}.custom-modal-box p{color:var(--wedding-text);font-size:1.05rem;margin-bottom:0}.wedding-page{min-height:calc(100vh - 150px);display:flex;align-items:center;position:relative;overflow:hidden}.wedding-page:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(#fff8f626,#f7efeb33)}.wedding-page:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 5% 10%,rgba(217,178,111,.12),transparent 35%),radial-gradient(circle at 95% 90%,rgba(183,110,121,.12),transparent 35%)}.wedding-card{position:relative;z-index:1;background:var(--wedding-card);border-radius:28px;overflow:hidden}.wedding-card:before{content:"";display:block;height:6px;background:linear-gradient(90deg,var(--wedding-primary),var(--wedding-gold))}.small-title{text-transform:uppercase;letter-spacing:3px;font-size:.85rem;font-weight:800;color:var(--wedding-gold)}.couple-title{font-size:clamp(2.2rem,5vw,4rem);font-weight:900;color:var(--wedding-primary);margin-bottom:0}.homepage-feature-card{border:1px solid rgba(183,110,121,.12);border-radius:22px;background:#fffaf8f2;transition:.3s ease;box-shadow:0 10px 24px #b76e7914}.homepage-feature-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px #b76e7924}.homepage-feature-card .card-title{color:var(--wedding-primary);font-weight:800}.homepage-feature-card .card-text{color:var(--wedding-text);min-height:48px}.homepage-feature-card .btn-primary{background:linear-gradient(135deg,var(--wedding-primary),var(--wedding-primary-dark));border:none;border-radius:999px;font-weight:700;padding:.75rem 1.3rem}.homepage-feature-card .btn-primary:hover{background:linear-gradient(135deg,var(--wedding-primary-dark),var(--wedding-primary))}.feature-img{width:70px;height:70px;object-fit:contain;display:block;margin:0 auto;opacity:.9;transition:.3s ease}.homepage-feature-card:hover .feature-img{transform:scale(1.08);opacity:1}@media(max-width:768px){.wedding-page{align-items:flex-start}.couple-title{line-height:1.1}}.rullino-page{min-height:100vh;background:transparent;position:relative}.rullino-page:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(#fff8f626,#f7efeb33)}.rullino-page:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 10% 15%,rgba(217,178,111,.12),transparent 35%),radial-gradient(circle at 88% 85%,rgba(183,110,121,.12),transparent 35%)}.rullino-page>*{position:relative;z-index:1}.rullino-subtitle{max-width:700px;margin:0 auto;color:#6b5b5b;font-size:1.05rem;line-height:1.7}.rullino-shell-card{background:#ffffffd1;border:1px solid rgba(183,110,121,.14);border-radius:32px;padding:2.5rem;box-shadow:0 18px 42px #00000014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.rullino-shell-card .small-title,.rullino-shell-card .couple-title,.rullino-shell-card .rullino-subtitle{position:relative;z-index:1}.rullino-upload-box{background:#ffffffe0;border:1px solid rgba(183,110,121,.15);border-radius:24px;padding:2rem;box-shadow:0 15px 40px #00000014;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.rullino-label{display:block;font-weight:700;margin-bottom:.6rem;color:#8f5b64}.rullino-input,.rullino-textarea{border-radius:16px;border:1px solid rgba(183,110,121,.25);padding:.9rem 1rem;box-shadow:none}.rullino-input:focus,.rullino-textarea:focus{border-color:#b76e79;box-shadow:0 0 0 .2rem #b76e7926}.rullino-btn{background-color:#b76e79;color:#fff;border:none;border-radius:999px;padding:.75rem 1.3rem;font-weight:700;transition:all .25s ease}.rullino-btn:hover{background-color:#9c5963;color:#fff;transform:translateY(-2px)}.rullino-btn-outline{background-color:transparent;color:#b76e79;border:1px solid #b76e79;border-radius:999px;padding:.75rem 1.3rem;font-weight:700;transition:all .25s ease}.rullino-btn-outline:hover{background-color:#b76e7914;color:#9c5963;transform:translateY(-2px)}.rullino-empty{background:#ffffffd9;border:1px dashed rgba(183,110,121,.35);border-radius:20px;padding:2rem;color:#6e5b5b}.polaroid-preview{background:#fff;padding:14px 14px 26px;border-radius:8px;box-shadow:0 16px 28px #00000024;max-width:280px;margin:0 auto;transform:rotate(-2deg)}.polaroid-preview img{width:100%;aspect-ratio:1 / 1;object-fit:cover;display:block;border-radius:4px}.polaroid-caption-preview{margin:14px 0 0;font-family:Caveat,cursive;font-size:1.45rem;color:#5f4a4a;min-height:34px}.polaroid-card{position:relative;background:#fff;padding:14px 14px 26px;border-radius:8px;box-shadow:0 18px 30px #00000024;transition:transform .25s ease,box-shadow .25s ease;height:100%}.polaroid-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 22px 38px #0000002e}.polaroid-img{width:100%;aspect-ratio:1 / 1;object-fit:cover;display:block;border-radius:4px}.polaroid-caption{margin:14px 0 0;text-align:center;font-family:Caveat,cursive;font-size:1.5rem;color:#5e4b4b;line-height:1.3;word-break:break-word}.polaroid-delete{position:absolute;top:8px;right:8px;width:34px;height:34px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:1.3rem;line-height:1;cursor:pointer;z-index:2;transition:all .2s ease}.polaroid-delete:hover{background:#b76e79e6;transform:scale(1.08)}.polaroid-download{position:absolute;top:8px;left:8px;width:34px;height:34px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:1rem;line-height:1;cursor:pointer;z-index:2;transition:all .2s ease}.polaroid-download:hover{background:#b76e79e6;transform:scale(1.08)}.polaroid-rotate-1{transform:rotate(-3deg)}.polaroid-rotate-2{transform:rotate(2.5deg)}.polaroid-rotate-3{transform:rotate(-1.5deg)}.polaroid-rotate-4{transform:rotate(3deg)}.polaroid-rotate-1:hover,.polaroid-rotate-2:hover,.polaroid-rotate-3:hover,.polaroid-rotate-4:hover{transform:translateY(-6px) scale(1.02)}.small-title{text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;color:#b76e79;font-weight:700}@media(max-width:767px){.rullino-shell-card{padding:1.25rem;border-radius:24px}.rullino-upload-box{padding:1.3rem}.polaroid-caption{font-size:1.3rem}.polaroid-caption-preview{font-size:1.25rem}}.lightbox-overlay{position:fixed;inset:0;z-index:9999;background:#141010e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:2rem}.lightbox-content{position:relative;max-width:min(1100px,92vw);max-height:90vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.lightbox-image{display:block;max-width:100%;max-height:calc(90vh - 80px);width:auto;height:auto;object-fit:contain;border-radius:14px;box-shadow:0 20px 50px #00000059;background:#fff}.lightbox-caption{margin-top:1rem;text-align:center;font-family:Caveat,cursive;font-size:1.8rem;line-height:1.3;color:#fff7f4;max-width:90%;word-break:break-word}.lightbox-close{position:absolute;top:18px;right:22px;width:48px;height:48px;border:none;border-radius:50%;background:#ffffff24;color:#fff;font-size:2rem;line-height:1;cursor:pointer;z-index:10001;transition:all .2s ease}.lightbox-close:hover{background:#b76e79e6;transform:scale(1.06)}.lightbox-download{position:absolute;top:18px;right:78px;width:48px;height:48px;border:none;border-radius:50%;background:#ffffff24;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;z-index:10001;transition:all .2s ease}.lightbox-download:hover{background:#b76e79e6;transform:scale(1.06)}@media(max-width:767px){.lightbox-download{top:12px;right:62px;width:42px;height:42px;font-size:1.2rem}}.lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border:none;border-radius:50%;background:#ffffff24;color:#fff;font-size:2.5rem;line-height:1;cursor:pointer;z-index:10001;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.lightbox-arrow:hover{background:#b76e79e6;transform:translateY(-50%) scale(1.06)}.lightbox-arrow-left{left:22px}.lightbox-arrow-right{right:22px}@media(max-width:767px){.lightbox-overlay{padding:1rem .75rem}.lightbox-content{max-width:100%;max-height:92vh}.lightbox-image{max-height:calc(92vh - 110px);border-radius:12px}.lightbox-caption{margin-top:.85rem;font-size:1.45rem;max-width:95%}.lightbox-close{top:12px;right:12px;width:42px;height:42px;font-size:1.8rem}.lightbox-arrow{width:44px;height:44px;font-size:2rem}.lightbox-arrow-left{left:10px}.lightbox-arrow-right{right:10px}}.custom-modal-box{width:100%;max-width:460px;background:#fffffff5;border-radius:26px;padding:2rem;box-shadow:0 25px 60px #0000002e;border-top:6px solid #b76e79}.delete-modal-icon{width:72px;height:72px;margin:0 auto 1rem;border-radius:50%;background:linear-gradient(135deg,#b76e7924,#d9b26f2e);display:flex;align-items:center;justify-content:center;font-size:2rem}.delete-modal-img{width:100%;max-width:220px;aspect-ratio:1 / 1;object-fit:cover;display:block;margin:0 auto .85rem;border-radius:12px;box-shadow:0 10px 24px #0000001f}.delete-modal-caption{font-family:Caveat,cursive;font-size:1.5rem;color:#5e4b4b;line-height:1.3}.rullino-btn-danger{background:linear-gradient(135deg,#b94e5d,#a63d4f);color:#fff;border:none;border-radius:999px;padding:.75rem 1.3rem;font-weight:700;transition:all .25s ease}.rullino-btn-danger:hover{background:linear-gradient(135deg,#a63d4f,#8f3344);color:#fff;transform:translateY(-2px)}@media(max-width:767px){.custom-modal-box{padding:1.35rem;border-radius:22px}.delete-modal-img{max-width:180px}.delete-modal-caption{font-size:1.3rem}}.info-page{min-height:100vh;background:transparent;position:relative}.info-page:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(#fff8f626,#f7efeb33)}.info-card{background:#ffffffeb;border-radius:22px;padding:1.5rem;text-align:center;border:1px solid rgba(183,110,121,.15);box-shadow:0 15px 35px #00000014;transition:all .25s ease;height:100%}.info-image-wrapper{display:flex;justify-content:center}.info-image{border-radius:18px;max-height:350px;object-fit:cover;box-shadow:0 18px 40px #0000001f}.info-text{font-size:1.1rem;color:#5e4b4b;line-height:1.8}.info-btn{background-color:#b76e79;color:#fff;border-radius:999px;padding:.8rem 1.6rem;font-weight:700;transition:all .25s ease;border:none}.info-btn:hover{background-color:#9c5963;transform:translateY(-2px);color:#fff}.couple-title{font-size:clamp(2.2rem,5vw,3.5rem);color:#8f5b64;font-weight:700}@media(max-width:768px){.info-image{max-height:250px}.info-text{font-size:1rem}}.aggiornamenti-page{min-height:100vh;background:transparent;position:relative}.aggiornamenti-page:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(#fff8f626,#f7efeb33)}.aggiornamenti-page:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 10% 15%,rgba(217,178,111,.12),transparent 35%),radial-gradient(circle at 88% 85%,rgba(183,110,121,.12),transparent 35%)}.aggiornamenti-page>*{position:relative;z-index:1}.agg-shell-card{background:#ffffffd1;border:1px solid rgba(183,110,121,.14);border-radius:32px;padding:2.5rem;box-shadow:0 18px 42px #00000014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.couple-title{font-size:clamp(2.2rem,5vw,3.8rem);color:#8f5b64;font-weight:700}.agg-form-box{background:#ffffffe6;border:1px solid rgba(183,110,121,.15);border-radius:26px;padding:2rem;box-shadow:0 15px 35px #00000014;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.agg-label{display:block;font-weight:700;margin-bottom:.55rem;color:#8f5b64}.agg-input,.agg-textarea{border-radius:16px;border:1px solid rgba(183,110,121,.25);padding:.9rem 1rem;box-shadow:none}.agg-input:focus,.agg-textarea:focus{border-color:#b76e79;box-shadow:0 0 0 .2rem #b76e7926}.agg-check .form-check-input:checked{background-color:#b76e79;border-color:#b76e79}.agg-check label{color:#5e4b4b;font-weight:600}.agg-btn{background-color:#b76e79;color:#fff;border:none;border-radius:999px;padding:.78rem 1.4rem;font-weight:700;transition:all .25s ease}.agg-btn:hover{background-color:#9c5963;color:#fff;transform:translateY(-2px)}.agg-btn-outline{background:transparent;color:#b76e79;border:1px solid #b76e79;border-radius:999px;padding:.78rem 1.4rem;font-weight:700;transition:all .25s ease}.agg-btn-outline:hover{background:#b76e7914;color:#9c5963;transform:translateY(-2px)}.agg-empty{background:#ffffffd9;border:1px dashed rgba(183,110,121,.35);border-radius:20px;padding:2rem;color:#6e5b5b}.polaroid-preview{background:#fff;padding:14px 14px 20px;border-radius:8px;box-shadow:0 16px 28px #00000024;transform:rotate(-2deg);max-width:360px}.polaroid-preview img{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;border-radius:4px}.polaroid-preview-body{padding-top:14px}.polaroid-preview-body h4{margin-bottom:.5rem;color:#5e4b4b;font-size:1.2rem;font-weight:700}.polaroid-preview-body p{margin-bottom:.9rem;color:#6b5b5b;line-height:1.6}.preview-button{display:inline-block;background:#b76e79;color:#fff;padding:.55rem 1rem;border-radius:999px;font-size:.9rem;font-weight:700}.post-polaroid{position:relative;background:#fff;padding:14px 14px 22px;border-radius:8px;box-shadow:0 18px 30px #00000024;transition:transform .25s ease,box-shadow .25s ease;height:100%}.post-polaroid:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 22px 38px #0000002e}.post-image{width:100%;aspect-ratio:4 / 3;object-fit:cover;display:block;border-radius:4px}.post-no-image{width:100%;aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f9ece8,#f7e3df);border-radius:4px;color:#9a6c73;font-weight:700;text-align:center;padding:1rem}.post-body{padding-top:14px}.post-title{font-size:1.4rem;color:#8f5b64;margin-bottom:.75rem;font-weight:700}.post-text{color:#5f4c4c;line-height:1.65;margin-bottom:1rem;white-space:pre-line}.post-btn{background-color:#b76e79;color:#fff;border-radius:999px;padding:.7rem 1.2rem;font-weight:700;border:none}.post-btn:hover{background-color:#9c5963;color:#fff}.post-delete{position:absolute;top:8px;right:8px;width:34px;height:34px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:1.3rem;line-height:1;cursor:pointer;z-index:2;transition:all .2s ease}.post-delete:hover{background:#b76e79e6;transform:scale(1.08)}.rotate-1{transform:rotate(-2.5deg)}.rotate-2{transform:rotate(2deg)}.rotate-3{transform:rotate(-1.3deg)}.rotate-4{transform:rotate(2.8deg)}.rotate-1:hover,.rotate-2:hover,.rotate-3:hover,.rotate-4:hover{transform:translateY(-6px) scale(1.02)}@media(max-width:767px){.agg-shell-card{padding:1.25rem;border-radius:24px}.agg-form-box{padding:1.25rem}.post-title{font-size:1.2rem}.post-text{font-size:.96rem}}.tavoli-page{min-height:100vh;background:transparent;position:relative}.tavoli-page:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(#fff8f626,#f7efeb33)}.tavoli-page:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(circle at 12% 20%,rgba(217,178,111,.12),transparent 35%),radial-gradient(circle at 88% 80%,rgba(183,110,121,.12),transparent 35%)}.tavoli-page>*{position:relative;z-index:1}.tavoli-shell-card{background:#ffffffd1;border:1px solid rgba(183,110,121,.14);border-radius:32px;padding:2.5rem;box-shadow:0 18px 42px #00000014;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.small-title{text-transform:uppercase;letter-spacing:.2em;font-size:.8rem;color:#b76e79;font-weight:700}.couple-title{font-size:clamp(2.5rem,5vw,3.8rem);color:#8f5b64;font-weight:700}.tavoli-subtitle{max-width:700px;margin:0 auto;color:#6b5b5b;line-height:1.7}.tavolo-card{background:#ffffffeb;border-radius:22px;padding:1.5rem;text-align:center;border:1px solid rgba(183,110,121,.15);box-shadow:0 15px 35px #00000014;transition:all .25s ease;height:100%}.tavolo-card:hover{transform:translateY(-6px);box-shadow:0 20px 38px #0000001f}.tavolo-fiore-wrap{display:flex;justify-content:center;align-items:center;margin-bottom:1rem}.tavolo-fiore{width:78px;height:78px;object-fit:contain;opacity:.95;filter:drop-shadow(0 6px 12px rgba(0,0,0,.08));border-radius:15%;display:block}.tavolo-nome{font-size:1.6rem;color:#b76e79;margin-bottom:1rem;font-weight:700}.tavolo-lista{list-style:none;padding:0;margin:0}.tavolo-lista li{font-size:.95rem;padding:6px 0;color:#5e4b4b;border-bottom:1px dashed rgba(0,0,0,.05)}.tavolo-lista li:last-child{border-bottom:none}.tavolo-vuoto{margin:0;font-size:.95rem;color:#8d7a7a;font-style:italic;line-height:1.6}@media(max-width:768px){.tavoli-shell-card{padding:1.25rem;border-radius:24px}.tavolo-card{padding:1.2rem}.tavolo-fiore{width:68px;height:68px}}.aggiornamenti-subtitle{max-width:760px;margin:0 auto;color:#6b5b5b;line-height:1.7}button:disabled{opacity:.7;cursor:not-allowed}.custom-modal-backdrop{position:fixed;inset:0;background:#5e4b4b73;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:10002}.custom-modal-box{width:100%;max-width:500px;background:#fffffff5;border-radius:26px;padding:2rem;box-shadow:0 25px 60px #0000002e;border-top:6px solid #b76e79}.custom-modal-box h3{color:#8f5b64;font-weight:900}.custom-modal-box p{color:#5e4b4b;font-size:1.05rem;margin-bottom:0}.delete-modal-icon,.feedback-modal-icon{width:72px;height:72px;margin:0 auto 1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem}.delete-modal-icon{background:linear-gradient(135deg,#b76e7924,#d9b26f2e)}.feedback-modal-icon.feedback-success{background:linear-gradient(135deg,#68b0782e,#b76e791f);color:#4f8d5c;font-weight:900}.feedback-modal-icon.feedback-error{background:linear-gradient(135deg,#b94e5d29,#d9b26f29);color:#a63d4f;font-weight:900}.delete-modal-preview{background:#fffaf8f2;border:1px solid rgba(183,110,121,.12);border-radius:20px;padding:1rem}.delete-modal-img{width:100%;max-width:220px;aspect-ratio:1 / 1;object-fit:cover;display:block;margin:0 auto 1rem;border-radius:12px;box-shadow:0 10px 24px #0000001f}.delete-modal-no-img{width:100%;max-width:220px;aspect-ratio:1 / 1;margin:0 auto 1rem;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#b76e7914;color:#8f5b64;border:1px dashed rgba(183,110,121,.25);font-weight:700}.delete-modal-title{font-size:1.2rem;font-weight:800;color:#8f5b64;margin-bottom:.45rem}.delete-modal-text{color:#5e4b4b;line-height:1.6;white-space:pre-line}.feedback-modal-box p{line-height:1.7}.agg-btn-danger{background:linear-gradient(135deg,#b94e5d,#a63d4f);color:#fff;border:none;border-radius:999px;padding:.75rem 1.3rem;font-weight:700;transition:all .25s ease}.agg-btn-danger:hover{background:linear-gradient(135deg,#a63d4f,#8f3344);color:#fff;transform:translateY(-2px)}@media(max-width:767px){.custom-modal-box{padding:1.35rem;border-radius:22px}.delete-modal-img,.delete-modal-no-img{max-width:180px}.delete-modal-title{font-size:1.05rem}.delete-modal-text,.feedback-modal-box p{font-size:.95rem}.delete-modal-icon,.feedback-modal-icon{width:64px;height:64px;font-size:1.7rem}}.partecipanti-list{display:flex;flex-direction:column;gap:1rem}.partecipante-card{background:#fffaf8f5;border:1px solid rgba(183,110,121,.14);border-radius:22px;padding:1.25rem;box-shadow:0 12px 30px #b76e7914}.partecipante-card h4{color:var(--wedding-primary);font-weight:800}.partecipante-card p{color:var(--wedding-text)}.status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:145px;padding:.55rem 1rem;border-radius:999px;font-size:.92rem;font-weight:800}.status-confirmed{background:#6aa84f24;color:#3f7d2b;border:1px solid rgba(106,168,79,.25)}.status-pending{background:#b76e791f;color:var(--wedding-primary-dark);border:1px solid rgba(183,110,121,.2)}.confirmation-box{margin-top:1rem;padding:1rem;background:#fff;border-radius:18px;border:1px solid rgba(183,110,121,.12)}@media(max-width:768px){.status-badge{min-width:auto;width:100%}}
