:root{--primary:#d8b4c0;--primary-dark:#b97c8a;--secondary:#f9f2f4;--accent:#c89eab;--text:#42373a;--background:#fef6f6;--gold:#d4af37;--gold-light:#e5cea3;--shadow:rgba(185,124,138,0.1)}*{box-sizing:border-box;margin:0;padding:0}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes heartbeat{0%{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.15)}60%{transform:scale(1)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{transform:scale(.9);opacity:0;visibility:hidden}to{transform:scale(1);opacity:1;visibility:visible}}h1,h2,h3,h4,h5,h6{font-family:var(--font-poppins);font-weight:600}body,h1,h2,h3,h4,h5,h6{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--background);color:var(--text);font-family:var(--font-lato);line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.flex{display:flex}.flex-col{flex-direction:column}.justify-center{justify-content:center}.items-center{align-items:center}.text-center{text-align:center}.hidden{display:none}.relative{position:relative}.absolute{position:absolute}.w-full{width:100%}.mx-auto{margin-left:auto;margin-right:auto}.wedding-button{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:white;font-weight:500;padding:.75rem 1.25rem;border-radius:.375rem;transition:all .3s ease;box-shadow:0 4px 6px var(--shadow);position:relative;overflow:hidden;border:none;outline:none;cursor:pointer}.wedding-button:hover{transform:translateY(-2px);box-shadow:0 7px 14px var(--shadow);background:linear-gradient(135deg,var(--primary-dark),var(--primary))}.wedding-button:active{transform:translateY(0);box-shadow:0 3px 5px var(--shadow)}.wedding-button:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:.5s;background-size:200% 100%}.wedding-button:hover:after{animation:shimmer 1.5s infinite}.reservar-button{background:transparent;position:relative;overflow:hidden;border:none;outline:none;cursor:pointer;border-radius:.375rem;margin-top:.5rem;transition:all .3s ease}.reservar-button:hover{background-color:rgba(216,180,192,.05)}.reservar-button:hover .heart-icon{fill:rgba(216,180,192,.1);animation:heartbeat 1.8s infinite}.heart-icon{transition:all .3s ease}.wedding-card{background-color:white;border:1px solid rgba(218,182,196,.2);border-radius:.75rem;box-shadow:0 10px 25px var(--shadow);overflow:hidden;transition:all .4s ease;height:100%;display:flex;flex-direction:column;position:relative}.wedding-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px var(--shadow)}.wedding-container{max-width:80rem;margin-left:auto;margin-right:auto;padding:2rem 1rem}@media (min-width:768px){.wedding-container{padding-top:4rem;padding-bottom:4rem}}.wedding-title{font-size:1.875rem;line-height:2.25rem;font-weight:500;color:var(--primary-dark);font-family:var(--font-playfair);letter-spacing:.025em}@media (min-width:768px){.wedding-title{font-size:2.25rem;line-height:2.5rem}}@media (min-width:1024px){.wedding-title{font-size:3rem;line-height:1.1}}.wedding-subtitle{font-size:1.25rem;line-height:1.75rem;color:rgba(185,124,138,.9);font-family:var(--font-playfair);letter-spacing:.015em}@media (min-width:768px){.wedding-subtitle{font-size:1.5rem;line-height:2rem}}.gold-accent{position:relative}.gold-accent:after{content:"";display:block;height:1px;width:80px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:1rem auto}.loading-shimmer{background:linear-gradient(90deg,var(--secondary) 0,#f0e0e4 50%,var(--secondary) 100%);background-size:200% 100%;animation:shimmer 2s infinite}.presents-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:2rem}@media (min-width:640px){.presents-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.presents-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1280px){.presents-grid{grid-template-columns:repeat(4,1fr)}}.elegant-header{position:relative;padding:8rem 0 4rem;background-color:var(--background);text-align:center;overflow:hidden}.header-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(248,232,232,.4),rgba(255,255,255,0))}.admin-link{display:inline-flex;align-items:center;position:absolute;top:1rem;right:1rem;padding:.5rem 1rem;background-color:rgba(255,255,255,.8);border-radius:.5rem;font-size:.875rem;color:var(--text);transition:all .3s ease;z-index:10;box-shadow:0 2px 10px rgba(0,0,0,.05)}.admin-link:hover{background-color:white;box-shadow:0 4px 12px rgba(0,0,0,.08)}.elegant-text{max-width:36rem;margin-left:auto;margin-right:auto;font-size:1.125rem;color:var(--text);opacity:.9}.elegant-divider{height:2px;background:linear-gradient(90deg,transparent,var(--gold-light),transparent);margin:1.5rem auto;width:7rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-10{margin-top:2.5rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-20{margin-top:5rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.ml-4{margin-left:1rem}.ml-5{margin-left:1.25rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mr-3{margin-right:.75rem}.mr-4{margin-right:1rem}.mr-5{margin-right:1.25rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.p-10{padding:2.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.flex-wrap{flex-wrap:wrap}.flex-nowrap{flex-wrap:nowrap}.flex-1{flex:1 1 0%}.flex-auto{flex:1 1 auto}.flex-initial{flex:0 1 auto}.flex-grow{flex-grow:1}.flex-shrink{flex-shrink:1}.flex-row{flex-direction:row}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.justify-evenly{justify-content:space-evenly}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.self-center{align-self:center}.self-start{align-self:flex-start}.self-end{align-self:flex-end}.text-primary{color:var(--primary)}.text-primary-dark{color:var(--primary-dark)}.text-accent{color:var(--accent)}.text-white{color:white}.text-black{color:black}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.text-gray-600{color:#4b5563}.text-gray-700{color:#374151}.text-gray-800{color:#1f2937}.text-red-500{color:#ef4444}.text-red-600{color:#dc2626}.text-red-700{color:#b91c1c}.bg-primary{background-color:var(--primary)}.bg-primary-dark{background-color:var(--primary-dark)}.bg-secondary{background-color:var(--secondary)}.bg-accent{background-color:var(--accent)}.bg-white{background-color:white}.bg-gray-50{background-color:#f9fafb}.bg-gray-100{background-color:#f3f4f6}.bg-red-50{background-color:#fef2f2}.bg-red-100{background-color:#fee2e2}.text-xs{font-size:.75rem}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.text-4xl{font-size:2.25rem}.text-5xl{font-size:3rem}.text-6xl{font-size:3.75rem}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.rounded-sm{border-radius:.125rem}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-full{border-radius:9999px}.border{border-width:1px}.border-2{border-width:2px}.border-t{border-top-width:1px}.border-r{border-right-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-dotted{border-style:dotted}.border-primary{border-color:var(--primary)}.border-gray-100{border-color:#f3f4f6}.border-gray-200{border-color:#e5e7eb}.border-gray-300{border-color:#d1d5db}.border-red-400{border-color:#f87171}.shadow-sm{box-shadow:0 1px 2px 0 rgba(0,0,0,.05)}.shadow{box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px 0 rgba(0,0,0,.06)}.shadow-md{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.shadow-lg{box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.shadow-xl{box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.w-auto{width:auto}.w-1\/2{width:50%}.w-1\/3{width:33.333333%}.w-2\/3{width:66.666667%}.w-1\/4{width:25%}.w-3\/4{width:75%}.w-1\/6{width:16.666667%}.w-screen{width:100vw}.h-auto{height:auto}.h-full{height:100%}.h-screen{height:100vh}.min-h-screen{min-height:100vh}.space-x-1>*+*{margin-left:.25rem}.space-x-2>*+*{margin-left:.5rem}.space-x-3>*+*{margin-left:.75rem}.space-x-4>*+*{margin-left:1rem}.space-y-1>*+*{margin-top:.25rem}.space-y-2>*+*{margin-top:.5rem}.space-y-3>*+*{margin-top:.75rem}.space-y-4>*+*{margin-top:1rem}.space-y-5>*+*{margin-top:1.25rem}.space-y-6>*+*{margin-top:1.5rem}[role=presentation]{display:none!important;opacity:0!important;pointer-events:none!important;visibility:hidden!important;z-index:-999!important;position:fixed!important;width:0!important;height:0!important;overflow:hidden!important}body.modal-open{padding-right:17px}[role=presentation] svg,svg[d*="M19.5 12c0-1.232-.046-2.453-.138-3.662a4.006 4.006 0 00-3.7-3.7 48.678"]{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}.page-transition-wrapper{min-height:100vh;position:relative;will-change:opacity,transform;opacity:1;transition:opacity .5s ease}body:not(.js-loaded) .page-transition-wrapper{opacity:1!important}body.js-loaded .page-transition-wrapper{opacity:0;animation:fadeIn .5s ease forwards}body.js-loaded .page-transition-wrapper.client-rendered{opacity:1}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.admin-title,.couple-names,.header h2,.login-title,.page-transition-wrapper h1,.presente-card h3{animation:fadeIn .35s ease-out forwards;animation-delay:.05s;will-change:opacity,transform}.description,.footer-message,.form-label,.page-transition-wrapper p,.presente-descricao,.subtitle,.wedding-date{animation:fadeIn .4s ease-out forwards;animation-delay:.1s;will-change:opacity,transform}.admin-button,.login-button,.page-transition-wrapper button,.primary-button,.reservar-button,.secondary-button{animation:scaleIn .35s ease-out forwards;animation-delay:.15s;will-change:opacity,transform}.admin-link,.back-link,.logout-button,.page-transition-wrapper a,.site-link{animation:fadeIn .3s ease-out forwards;animation-delay:.05s;will-change:opacity,transform}.admin-card,.content-card,.login-card,.modal-content,.page-transition-wrapper .card,.presente-card{animation:scaleIn .4s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:.1s;will-change:opacity,transform}.page-transition-wrapper .presents-grid>:nth-child(odd){animation:slideInLeft .45s ease-out forwards;animation-delay:calc(.05s + var(--animation-index, 0) * .05s);will-change:opacity,transform}.page-transition-wrapper .presents-grid>:nth-child(2n){animation:slideInRight .45s ease-out forwards;animation-delay:calc(.05s + var(--animation-index, 0) * .05s);will-change:opacity,transform}.form-input,.page-transition-wrapper input,.search-input{animation:fadeIn .35s ease-out forwards;animation-delay:.15s;will-change:opacity,transform}.admin-link:hover,.card-link:hover .presente-card,.logout-button:hover,.primary-button:hover,.reservar-button:hover,.site-link:hover{transform:translateY(-2px);transition:transform .2s ease}.admin-card,.login-card,.modal-content,.presente-card,a,button{transition:all .25s cubic-bezier(.4,0,.2,1)}@media (max-width:768px){.page-transition-wrapper{animation-duration:.2s}.page-transition-wrapper .card,.page-transition-wrapper .presente-card,.page-transition-wrapper a,.page-transition-wrapper button,.page-transition-wrapper h1,.page-transition-wrapper h2,.page-transition-wrapper input,.page-transition-wrapper p{animation-duration:.25s;animation-delay:.05s}.page-transition-wrapper .presents-grid>*{animation-duration:.3s}}.modal-overlay{animation:fadeIn .2s ease-out forwards}.modal-content{animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1) forwards}.card-wrapper{height:100%;display:flex;flex-direction:column}.card-wrapper .presente-card{height:100%;flex:1;display:flex;flex-direction:column}.animated-card:hover .presente-card{transform:translateY(-3px);box-shadow:0 15px 30px rgba(185,124,138,.12)}.presente-card{transform:translateY(0);transition:transform .3s ease,box-shadow .3s ease;will-change:transform,box-shadow}.animated-card.is-visible{transition-delay:var(--animation-delay,0s)!important}.page-transitioning-in{animation:pageTransitionIn .3s ease-out forwards}.page-transitioning-out{animation:pageTransitionOut .3s ease-out forwards}@keyframes pageTransitionIn{0%{opacity:0}to{opacity:1}}@keyframes pageTransitionOut{0%{opacity:1}to{opacity:.8}}body:not(.page-transitioning-in):not(.page-transitioning-out){animation:bodyFadeIn .5s ease-out forwards}@keyframes bodyFadeIn{0%{opacity:.8}to{opacity:1}}.loading-inline{display:flex;flex-direction:column;align-items:center;padding:2rem 1rem;justify-content:center;text-align:center;opacity:.9;animation:fadeIn .3s ease-out}.loading-inline p{font-size:1rem;color:var(--primary-dark);margin-top:1rem;animation:pulse 1.5s infinite}.loading-inline .loading-spinner{width:2.5rem;height:2.5rem;border-radius:50%;border:3px solid rgba(216,180,192,.3);border-top:3px solid var(--primary-dark);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#e0a2b0,#b97c8a);padding:1rem}.login-card{width:100%;max-width:400px;background-color:white;border-radius:16px;box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05);overflow:hidden;opacity:0;transform:translateY(10px);animation:fadeIn .3s ease-out forwards}.card-header{padding:1rem;border-bottom:1px solid #f0f0f0}.back-link{display:flex;align-items:center;color:#666;font-size:.875rem;text-decoration:none;transition:color .2s}.back-link:hover{color:#b97c8a}.back-link svg{margin-right:.5rem;width:1.25rem;height:1.25rem}.card-body{padding:2rem 1.5rem}.login-logo{background-color:#b97c8a;width:4rem;height:4rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;padding:.5rem;transform:scale(.95);opacity:0;visibility:hidden;animation:popIn .4s ease-out .1s forwards;animation-fill-mode:forwards}.login-title{color:#333;text-align:center;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;opacity:0;animation:fadeIn .4s ease-out .2s forwards}.error-message{background-color:#fef2f2;padding:.75rem;margin-bottom:1.5rem}.error-icon{background-color:#dc2626;color:white;width:1.25rem;height:1.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;margin-right:.75rem;font-size:.75rem}.login-form{display:flex;flex-direction:column;gap:1.25rem;opacity:0;animation:fadeIn .4s ease-out .3s forwards}.form-group{gap:.375rem}.form-label{color:#374151;font-size:.875rem}.form-input{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:all .2s}.form-input:focus{outline:none;border-color:#b97c8a;box-shadow:0 0 0 3px rgba(185,124,138,.1)}.password-input-container{position:relative;display:flex;align-items:center}.toggle-password{position:absolute;right:.75rem;top:0;bottom:0;margin:auto;background:none;border:none;color:#6b7280;cursor:pointer;z-index:10}.toggle-password:hover{color:#4b5563}.input-error{border-color:#dc2626}.error-text{color:#dc2626;font-size:.75rem;margin-top:.25rem}.login-button{display:flex;align-items:center;justify-content:center;background-color:#b97c8a;color:white;font-weight:500;padding:.75rem;border:none;border-radius:.375rem;margin-top:.5rem;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden}.login-button:hover:not(:disabled){background-color:#a76d7a}.login-button:disabled{opacity:.7!important;cursor:not-allowed!important;background-color:#c99ba6;pointer-events:none}.login-button:disabled:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:rgba(255,255,255,.15)}.spinner{margin-right:.5rem}@media (min-width:640px){.card-body{padding:2.5rem 2rem}.login-logo{width:5rem;height:5rem;margin-bottom:2rem}.login-title{font-size:1.75rem;margin-bottom:2rem}}.loading{padding:2rem;background-color:white;border-radius:16px;box-shadow:0 4px 10px rgba(0,0,0,.1);color:#b97c8a;font-weight:500}.admin-footer{background-color:white;padding:1rem;text-align:center;border-top:1px solid rgba(0,0,0,.05);margin-top:2rem}.footer-text{color:#6b7280;font-size:.875rem}.form-container{background-color:white;border-radius:.75rem;padding:1.5rem;box-shadow:0 4px 10px -3px rgba(0,0,0,.05);margin-bottom:2rem;width:100%}.form-grid{display:grid;grid-template-columns:1fr;gap:24px}@media (min-width:768px){.form-grid{grid-template-columns:1fr 1fr}}.form-fields{gap:20px}.form-fields,.form-group{display:flex;flex-direction:column}.form-label{font-size:14px;font-weight:500;color:#b97c8a;margin-bottom:6px}.required{color:#ff3b30}.form-input,.form-textarea{padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:all .3s}.form-textarea{resize:vertical;min-height:100px}.form-input:focus,.form-textarea:focus{outline:none;border-color:#e0a2b0;box-shadow:0 0 0 3px rgba(224,162,176,.2)}.input-error{border-color:#ff3b30!important;background-color:#fff5f5}.error-text{color:#ff3b30}.error-text,.help-text{font-size:12px;margin-top:4px;margin-bottom:0}.help-text{color:#777}.preview-container{display:flex;align-items:center;justify-content:center}.image-preview{width:100%;height:240px;overflow:hidden;border-radius:8px;border:1px solid #eee}.preview-image{width:100%;height:100%;object-fit:cover}.placeholder-preview{width:100%;height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f9f9f9;border:1px dashed #ddd;border-radius:8px;padding:20px}.placeholder-text{color:#888;font-size:14px;text-align:center;margin:0}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:32px}.cancel-button{padding:10px 16px;background-color:#f5f5f5;border:none;border-radius:8px;color:#666;font-weight:500;cursor:pointer;transition:all .3s}.cancel-button:hover{background-color:#eee}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.save-button{padding:10px 24px;background-color:#e0a2b0;color:white;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s}.save-button:hover{background-color:#b97c8a}.save-button:disabled{opacity:.7;cursor:not-allowed}.loading-indicator{display:flex;align-items:center;justify-content:center;gap:8px}.spinner{animation:spin 1s linear infinite}.reservation-status{display:flex;flex-direction:column;background-color:#f9fafb;padding:15px;border-radius:8px;margin-top:10px;margin-bottom:5px;border:1px solid #eaeaea}.status-badge{display:inline-flex;align-items:center;background-color:#fef9c3;color:#854d0e;font-size:12px;padding:4px 8px;border-radius:9999px;margin-bottom:8px;font-weight:500;width:fit-content}.status-info{color:#4b5563;font-size:14px;margin-bottom:10px}.reservation-action{margin-top:10px}.remove-reservation-btn{display:inline-flex;align-items:center;gap:6px;background-color:#fee2e2;color:#b91c1c;font-size:13px;padding:6px 12px;border-radius:6px;border:none;cursor:pointer;transition:all .2s}.remove-reservation-btn:hover{background-color:#fecaca}.success-message{background-color:#d1fae5;color:#065f46}.error-message,.success-message{padding:10px;border-radius:8px;margin-top:10px;font-size:14px;display:flex;align-items:center;gap:8px}.error-message{background-color:#fee2e2;color:#b91c1c}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:50;padding:1rem}.modal-content{background-color:white;border-radius:.75rem;padding:1.5rem;width:100%;max-width:28rem}.modal-title{font-size:1.25rem;color:#333;margin-bottom:.75rem}.modal-text{color:#4b5563;margin-bottom:1.5rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.cancel-button{background-color:white;color:#4b5563;border:1px solid #e5e7eb;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;transition:all .3s ease}.cancel-button:hover{background-color:#f9fafb;border-color:#d1d5db}.delete-button{background-color:#ef4444;color:white;border:none;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;transition:all .3s ease}.delete-button:hover{background-color:#dc2626}.confirm-button{background-color:#fb923c;color:white;border:none;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;transition:all .3s ease}.confirm-button:hover{background-color:#f97316}.page-transition-wrapper .presents-grid>*{animation-fill-mode:forwards;animation-iteration-count:1}.page-transition-wrapper .admin-card,.page-transition-wrapper .card-wrapper,.page-transition-wrapper .empty-message,.page-transition-wrapper .loading-inline,.page-transition-wrapper .presents-list .content-card,.page-transition-wrapper .presents-list .present-card-wrapper{animation-fill-mode:forwards;animation-iteration-count:1;will-change:auto}.admin-container{animation:none;opacity:1}.admin-loading-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#e0a2b0,#b97c8a);color:white;font-family:Poppins,sans-serif;font-size:1.125rem;text-align:center;padding:2rem}.admin-page-wrapper .header-actions,.admin-page-wrapper .logout-button,.admin-page-wrapper .site-link{animation:fadeIn .4s ease-out forwards;animation-iteration-count:1}.admin-page-wrapper .presents-list{opacity:0;animation:fadeIn .5s ease-out forwards;animation-iteration-count:1}.admin-page-wrapper .present-card-wrapper{animation:fadeIn .5s ease-out forwards;animation-delay:calc(.05s + var(--animation-index, 0) * .05s)}body.animations-completed .page-transition-wrapper.admin-page-wrapper .presents-list{opacity:1}.admin-page-wrapper .card-wrapper{animation:fadeIn .4s ease-out forwards;animation-delay:calc(.05s + var(--animation-index, 0) * .05s)}.admin-page-wrapper{animation-iteration-count:1;animation-fill-mode:forwards}@keyframes fadeInOnce{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInOnce{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.admin-page-wrapper .present-card-wrapper{opacity:0;transform:translateY(10px);animation:fadeInOnce .4s ease-out forwards;animation-delay:calc(.05s + var(--animation-index, 0) * .04s)}.admin-page-wrapper .header-actions button,.admin-page-wrapper .logout-button,.admin-page-wrapper .site-link{opacity:0;transform:translateY(5px);animation:fadeInOnce .35s ease-out forwards}.admin-page-wrapper .admin-title{opacity:0;animation:fadeInOnce .4s ease-out forwards}.admin-page-wrapper .content-card{opacity:0;transform:translateY(5px);animation:fadeInOnce .5s ease-out forwards}.admin-page-wrapper .card-header{opacity:0;animation:fadeInOnce .45s ease-out forwards}.admin-page-wrapper .presents-list{opacity:1}.admin-page-wrapper *,.admin-page-wrapper .presents-list>*{backface-visibility:hidden}.multiplas-config{margin-bottom:16px}.checkbox-group{display:flex;align-items:center;gap:8px;margin-bottom:6px}.form-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.checkbox-label{font-size:14px;color:var(--primary-dark);font-weight:500;cursor:pointer}.multiple-reservations{background-color:#f9f3f5;padding:12px;border-radius:8px;margin-bottom:16px}.reservation-summary{margin:0 0 8px;font-weight:500;color:var(--primary-dark)}.reservation-subtitle{font-size:14px;margin:0 0 6px;color:#666}.reservations{list-style:none;padding:0;margin:0;max-height:150px;overflow-y:auto}.reservation-item{padding:6px 8px;border-bottom:1px solid #eee;display:flex;flex-direction:column}.reservation-person{font-weight:500;color:var(--primary)}.reservation-email{font-size:12px;color:#777;margin-top:2px}body.modal-open{overflow:hidden;height:100vh;position:fixed;width:100%;inset:0}.reserva-modal-overlay{padding:0!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;overflow-y:auto!important}.reserva-modal-content{margin:3vh auto!important;max-width:95%!important;width:450px!important}