:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-slides-offset-before);scroll-margin-inline-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-horizontal>.swiper-wrapper>.swiper-slide:last-child{margin-inline-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-slides-offset-before);scroll-margin-block-start:var(--swiper-slides-offset-before)}.swiper-css-mode.swiper-vertical>.swiper-wrapper>.swiper-slide:last-child{margin-block-end:var(--swiper-slides-offset-after)}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size: 44px}.swiper-button-prev,.swiper-button-next{position:absolute;width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) svg{width:100%;height:100%;object-fit:contain;transform-origin:center;fill:currentColor;pointer-events:none}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset, 4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset, 50%);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset, 4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset, 4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset, 50%);right:auto;margin-left:calc(0px - (var(--swiper-navigation-size) / 2));margin-top:0}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset, 4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset, 4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.navbar{position:fixed;width:100%;top:0;z-index:1000;background:#f8f4ec;box-shadow:0 2px 10px #0000000d}.nav-container{max-width:1200px;margin:auto;padding:18px 20px;display:flex;justify-content:space-between;align-items:center}.logo{font-size:22px;font-weight:600;color:#0f3d2e;letter-spacing:2px}.nav-links{display:flex;gap:40px;list-style:none}.nav-links li{cursor:pointer;color:#0f3d2e;font-weight:500;position:relative;transition:color .3s ease}.nav-links li:after{content:"";position:absolute;left:0;bottom:-6px;width:0%;height:2px;background:#c6a75e;transition:width .3s ease}.nav-links li:hover:after{width:100%}.nav-links li:hover{color:#046a38}.hamburger{display:none;flex-direction:column;cursor:pointer;gap:6px}.hamburger span{width:25px;height:3px;background:#0f3d2e;transition:.3s}@media(max-width:900px){.nav-links{position:absolute;top:70px;right:0;width:100%;background:#f8f4ec;flex-direction:column;align-items:center;gap:30px;padding:40px 0;transform:translateY(-200%);transition:transform .4s ease}.nav-links.active{transform:translateY(0)}.hamburger{display:flex}}.mode-switch-wrapper{display:flex;align-items:center;gap:8px;cursor:pointer}.mode-switch{width:40px;height:20px;background:#ccc;border-radius:20px;position:relative;transition:background .3s ease}.switch-slider{width:16px;height:16px;background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:all .3s ease}.switch-slider.active{transform:translate(20px)}.mode-switch:has(.active){background:#333}.mode-label{font-size:13px}.hero{background-image:linear-gradient(#f8f4ecb3,#f8f4ecb3),url(/images/bg.png);background-size:cover;background-repeat:no-repeat;background-position:60% center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#0f3d2e;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:40px 20px}.hero-scroll{padding-top:100px}.hero-content{max-width:700px}.couple-names{font-family:Playfair Display,serif;font-size:3rem;letter-spacing:2px;margin-bottom:15px}.wedding-date{font-size:1.2rem;margin-bottom:25px;letter-spacing:1px}.divider{width:80px;height:2px;background:#c6a75e;margin:20px auto 30px}.countdown{display:flex;justify-content:center;gap:25px;margin-bottom:40px}.countdown div span{display:block;font-size:1.8rem;font-weight:700}.countdown div small{font-size:.75rem;letter-spacing:1px}.hero-btn{background:#046a38;color:#fff;padding:14px 40px;border:none;border-radius:50px;font-size:1rem;cursor:pointer;transition:.3s ease}.hero-btn:hover{background:#035a2f;transform:translateY(-2px)}.hero-title{font-size:18px;letter-spacing:4px;text-transform:uppercase;color:#c6a75e;margin-bottom:20px;font-weight:700}body{background:var(--bg-main);color:var(--text-dark);font-family:Inter,sans-serif;margin:0}.card{background:var(--bg-card);border-radius:18px;padding:25px;box-shadow:var(--shadow-soft);border:1px solid var(--border-light)}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-text)}.sidebar a{color:var(--sidebar-text);padding:12px 18px;display:block;border-radius:10px;transition:.2s ease}.sidebar a:hover{background:var(--sidebar-hover)}.sidebar a.active{background:var(--sidebar-active);color:var(--emerald-dark);font-weight:600}.sidebar{background:linear-gradient(180deg,#0f5132,#0b3d2e)}.sidebar-section-title{font-size:11px;letter-spacing:2px;text-transform:uppercase;opacity:.5;margin:24px 0 10px}.sidebar-item.active{background:#d4af3726;border-left:4px solid #d4af37;border-radius:10px}.sidebar-item:hover{background:#ffffff0d;transform:translate(4px);transition:.2s ease}.sidebar-title{font-family:Playfair Display,serif;font-size:20px;letter-spacing:1px}.sidebar{border-right:1px solid rgba(212,175,55,.3)}.primary-btn{background:var(--primary);color:var(--text-light);padding:12px 24px;border-radius:30px;border:none;cursor:pointer;transition:.2s ease}.primary-btn:hover{background:var(--primary-hover);transform:translateY(-2px)}.gold-btn{background:var(--gold-gradient);color:var(--emerald-dark);padding:12px 24px;border-radius:30px;border:none;font-weight:600;cursor:pointer;transition:.2s ease}.gold-btn:hover{opacity:.9;transform:translateY(-2px)}.modal-overlay{position:fixed;inset:0;background:#0f3d2eb3;display:flex;justify-content:center;align-items:center;z-index:999}.modal-content{background:var(--bg-card);border-radius:20px;padding:30px;width:95%;max-width:500px;box-shadow:var(--shadow-soft);animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.admin-container{display:flex;min-height:100vh;background-color:var(--ivory);overflow-x:hidden}.admin-topbar{display:none;position:fixed;top:0;width:100%;height:60px;background:var(--white);border-bottom:2px solid var(--gold);align-items:center;padding:0 1rem;z-index:1200}.admin-topbar h2{color:var(--emerald-dark);font-size:18px}.menu-btn{font-size:22px;background:none;border:none;cursor:pointer;margin-right:1rem;color:var(--emerald-dark)}.admin-sidebar{width:250px;background:linear-gradient(180deg,var(--emerald) 0%,var(--emerald-dark) 100%);color:var(--white);padding:30px 20px;display:flex;flex-direction:column;transition:width .35s cubic-bezier(.4,0,.2,1),padding .35s cubic-bezier(.4,0,.2,1),left .35s cubic-bezier(.4,0,.2,1)}.admin-logo{margin:0;font-size:20px;font-weight:700;letter-spacing:1px}.admin-sidebar nav{display:flex;flex-direction:column;gap:14px}.admin-sidebar a{color:var(--white);text-decoration:none;padding:10px 12px;border-radius:8px;transition:.25s ease;font-size:14px}.admin-sidebar a{transition:background .25s ease,transform .25s ease}.admin-sidebar a:hover{background-color:#ffffff1a;transform:translate(6px)}.admin-sidebar a.active{background-color:var(--gold);color:var(--emerald-dark);font-weight:700;transition:background .3s ease,color .3s ease}.admin-sidebar a.active{box-shadow:0 4px 12px #c6a75e66}.logout-btn{margin-top:auto;padding:10px;background-color:var(--gold);border:none;border-radius:8px;cursor:pointer;font-weight:700;color:var(--emerald-dark);transition:.2s}.logout-btn:hover{background-color:#b8954e}.admin-main{flex:1;padding:40px;overflow-y:auto;color:var(--emerald-dark)}.admin-table{width:100%;border-collapse:collapse;margin-top:20px;background:var(--white);border-radius:12px;overflow:hidden;box-shadow:0 6px 20px #0000000d}.admin-table th{background-color:var(--emerald);color:var(--white);padding:14px;text-align:left;font-weight:600}.admin-table td{padding:14px;border-bottom:1px solid #eee}.admin-table tr:hover{background-color:#fafafa}.card-grid{display:flex;gap:20px;flex-wrap:wrap;margin-top:20px}.table-card{background:var(--white);padding:20px;border-radius:16px;width:240px;box-shadow:0 8px 25px #0000000d;transition:.2s ease}.table-card:hover{transform:translateY(-4px)}.table-card h3{color:var(--emerald);margin-bottom:10px}.full{color:#b91c1c;font-weight:700}.available{color:var(--emerald);font-weight:700}.admin-btn{padding:10px 16px;background-color:var(--emerald);color:var(--white);border:none;border-radius:8px;cursor:pointer;margin-bottom:20px;transition:.2s ease}.admin-btn:hover{background-color:#03532b;transform:translateY(-2px) scale(1.02)}.gallery-grid{display:flex;gap:20px;flex-wrap:wrap}.gallery-item{background:var(--white);padding:12px;border-radius:16px;box-shadow:0 8px 20px #0000000d;text-align:center;transition:.2s ease}.gallery-item:hover{transform:translateY(-3px)}.gallery-item img{width:200px;border-radius:10px;margin-bottom:10px}.delete-btn{background-color:var(--gold);border:none;padding:8px 12px;border-radius:8px;cursor:pointer;color:var(--emerald-dark);font-weight:700;transition:.2s}.delete-btn:hover{background-color:#b8954e}@media(max-width:768px){.admin-topbar{display:flex}.admin-sidebar{position:fixed;top:0;left:0;height:100vh;width:250px;transform:translate(-100%);transition:transform .35s ease;z-index:1300}.admin-sidebar.open{transform:translate(0)}.admin-main{padding:80px 20px 20px;width:100%}.sidebar-overlay{position:fixed;inset:0;background:#0006;z-index:1200}.card-grid{flex-direction:column}.admin-table{display:block;overflow-x:auto}.gallery-grid{justify-content:center}}.admin-sidebar.collapsed{width:70px;padding:30px 10px;align-items:center}.admin-sidebar.collapsed .sidebar-top{flex-direction:column;gap:15px;justify-content:center;align-items:center}.admin-sidebar.collapsed .collapse-btn{margin:0}.admin-sidebar.collapsed .admin-logo{font-size:16px;text-align:center}.admin-sidebar.collapsed nav{align-items:center}.admin-sidebar.collapsed nav a{justify-content:center}.admin-sidebar.collapsed nav span{display:none}.admin-sidebar.collapsed .logout-btn{font-size:18px;padding:10px;width:100%}.admin-main{transition:margin .3s ease}.admin-main.expanded{margin-left:0}.sidebar-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:50px}.collapse-btn{width:32px;height:32px;background:var(--gold);color:var(--emerald-dark);border:none;border-radius:50%;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:.2s ease}.collapse-btn:hover{transform:scale(1.1)}.attendance-header{text-align:center;padding:30px 20px}.attendance-header h1{margin-bottom:20px;font-weight:600;font-size:28px}.attendance-stats{display:flex;justify-content:center;gap:40px;margin-bottom:20px}.stat-box{text-align:center}.stat-number{font-size:32px;font-weight:700}.stat-label{font-size:14px;color:#777}.attendance-status{display:flex;justify-content:center;gap:20px;font-size:14px}.coming{color:#2e7d32}.not-coming{color:#c62828}.waiting{color:#ed6c02}.accordion-item{border-bottom:1px solid #eee}.accordion-header{display:flex;justify-content:space-between;padding:14px 10px;cursor:pointer}.accordion-header:hover{background:#fafafa}.accordion-header .left small{display:block;color:#777;font-size:12px}.accordion-header .right{display:flex;align-items:center;gap:10px}.chevron{font-size:12px;color:#999}.accordion-body{padding:10px 15px 15px;background:#f9f9f9;font-size:14px}.detail-message{font-style:italic;margin-bottom:8px}.attendance-status{display:flex;justify-content:center;gap:15px;margin-top:15px}.summary-pill{border:none;background:#f3f3f3;padding:6px 12px;border-radius:20px;cursor:pointer;font-size:14px;transition:.2s ease}.summary-pill:hover{background:#e6e6e6}.summary-pill.active{background:#1e3a34;color:#fff}.nav-section{margin-top:24px;padding-top:12px;border-top:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;gap:6px}.nav-section:first-of-type{border-top:none;padding-top:0}.nav-section-title{font-size:10px;letter-spacing:1px;font-weight:600;opacity:.55;margin:6px 12px 4px}.nav-section a{padding-left:18px;display:flex;align-items:center;gap:10px;width:100%}.nav-children{padding:5%}.admin-sidebar a[href*=attendees]{font-weight:600}.admin-sidebar a[href*=attendees]:hover{background-color:#c6a75e40}.admin-sidebar a[href*=checkin].active{box-shadow:0 6px 18px #c6a75e8c}.admin-sidebar.collapsed .nav-section-title{display:none}.admin-sidebar.collapsed .nav-section{border-top:none;padding-top:0}.admin-sidebar a span{white-space:nowrap}.admin-sidebar a{line-height:1.2}.admin-sidebar a:first-letter{width:20px;display:inline-block;text-align:center}.nav-section-title{margin-bottom:6px}.tag-checkboxes{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.tag-option{font-size:13px}.tag-actions{margin-top:8px;display:flex;gap:8px}.tag-actions button{padding:4px 10px;font-size:13px;cursor:pointer}.tag-checkboxes{display:flex;flex-direction:column;gap:20px;margin-top:10px}.tag-category-group{background:#f9fafb;padding:14px;border-radius:10px;border:1px solid #e5e7eb}.tag-category-title{font-size:13px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;color:#6b7280}.tag-category-group label{display:inline-flex;align-items:center;gap:6px;margin:4px 12px 4px 0;padding:6px 10px;border-radius:20px;border:1px solid #e5e7eb;background:#fff;cursor:pointer;font-size:13px;transition:all .2s ease}.tag-category-group label:hover{background:#f3f4f6}.tag-category-group input[type=checkbox]{accent-color:#111827;cursor:pointer}.tag-actions{margin-top:15px;display:flex;gap:10px}.tag-actions button{padding:6px 14px;border-radius:6px;border:none;cursor:pointer}.tag-actions button:first-child{background:#111827;color:#fff}.tag-actions button:last-child{background:#e5e7eb}.custom-tag-add{display:flex;gap:8px;align-items:center}.custom-tag-add input{width:40%;max-width:300px}nav a,.nav-parent-link{display:flex;align-items:center;gap:10px;padding:12px 18px;text-decoration:none;color:#fff;border-radius:8px}nav a.active,.nav-parent-link.active{background:#c7a75a;color:#1b3d2f}.tag-edit-wrapper{display:flex;flex-direction:column;gap:12px}.custom-dropdown{position:relative;border:1px solid #e5e5e5;border-radius:10px;background:#fff;overflow:hidden;transition:all .2s ease}.dropdown-header{padding:10px 14px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-weight:500;font-size:14px}.dropdown-header:hover{background:#f7f7f7}.dropdown-count{font-size:12px;color:#777}.dropdown-menu{border-top:1px solid #eee;padding:10px;max-height:180px;overflow-y:auto;background:#fafafa}.dropdown-item{display:flex;align-items:center;gap:8px;padding:6px 4px;font-size:13px;cursor:pointer;border-radius:6px}.dropdown-item:hover{background:#f0f0f0}:root{--ivory: #F8F4EC;--emerald: #046A38;--emerald-dark: #0F3D2E;--gold: #C6A75E;--white: #ffffff}.spinner-wrapper{position:fixed;inset:0;background:var(--ivory);display:flex;align-items:center;justify-content:center;z-index:9999}.spinner-card{background:var(--white);padding:40px 50px;border-radius:18px;box-shadow:0 12px 35px #0000001a;text-align:center;border:1px solid rgba(198,167,94,.4)}.spinner{width:55px;height:55px;margin:0 auto 20px;border-radius:50%;border:5px solid rgba(4,106,56,.2);border-top:5px solid var(--emerald);animation:spin .9s linear infinite}.spinner-text{font-size:14px;color:var(--emerald-dark);letter-spacing:.4px}@keyframes spin{to{transform:rotate(360deg)}}:root{--ivory: #F8F4EC;--emerald: #046A38;--emerald-dark: #0F3D2E;--gold: #C6A75E;--gold-light: #E6C97A;--white: #FFFFFF;--bg-main: #F8F4EC;--bg-card: #FFFFFF;--bg-soft: #F3EFE6;--sidebar-bg: #0F3D2E;--sidebar-text: #F8F4EC;--sidebar-hover: #046A38;--sidebar-active: #C6A75E;--primary: #0F3D2E;--primary-hover: #046A38;--accent: #C6A75E;--accent-hover: #B8954C;--gold-gradient: linear-gradient(90deg, #C6A75E, #E6C97A);--text-dark: #1E1E1E;--text-muted: #6B6B6B;--text-light: #FFFFFF;--border-light: #E5DFD3;--shadow-soft: 0 10px 25px rgba(0, 0, 0, .05)}.guest-container{max-width:900px;margin:40px auto;padding:0 20px}.empty-text{text-align:center;color:var(--text-muted);font-size:14px}.guest-card{background:var(--bg-card);border-radius:16px;padding:22px;margin-bottom:18px;border:1px solid var(--border-light);box-shadow:var(--shadow-soft);transition:.25s ease}.guest-card:hover{transform:translateY(-4px)}.guest-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.guest-details{flex:1}.guest-name{margin:0;font-size:18px;font-weight:600;color:var(--text-dark);text-transform:capitalize}.guest-email{margin-top:4px;font-size:14px;color:var(--text-muted)}.guest-info{margin-top:12px;font-size:14px;display:flex;gap:20px;align-items:center;color:var(--text-dark)}.guest-status{padding:5px 14px;border-radius:999px;font-size:12px;font-weight:500}.status-pending{background:var(--bg-soft);color:var(--primary);border:1px solid var(--border-light)}.status-confirmed{background:var(--gold-gradient);color:var(--text-light)}.button-group{display:flex;gap:10px}.btn{padding:7px 16px;border-radius:10px;font-size:13px;cursor:pointer;border:none;font-weight:500;transition:.2s ease}.btn-edit{background:var(--primary);color:var(--text-light)}.btn-delete{background:transparent;color:var(--accent);border:1px solid var(--accent)}.guest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.modal-overlay{position:fixed;inset:0;background:#0f3d2e59;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal-card{background:var(--bg-card);padding:28px;border-radius:16px;width:100%;max-width:420px;box-shadow:var(--shadow-soft);border:1px solid var(--border-light);animation:fadeIn .2s ease-in-out}.modal-title{margin-bottom:18px;font-size:20px;font-weight:600;color:var(--primary);text-align:center}.modal-form{display:flex;flex-direction:column;gap:12px}.modal-form input,.modal-form select{padding:10px 12px;border-radius:8px;border:1px solid var(--border-light);background:var(--bg-soft);font-size:14px;color:var(--text-dark);outline:none;transition:.2s ease}.modal-form input:focus,.modal-form select:focus{border-color:var(--accent);background:var(--bg-card)}.qr-row{display:flex;gap:8px}.qr-row input{flex:1}.btn-primary{background:var(--gold-gradient);color:var(--text-dark);border:none;padding:10px;border-radius:10px;font-weight:600;cursor:pointer;transition:.25s ease}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-secondary{background:var(--primary);color:var(--text-light);border:none;padding:10px 14px;border-radius:8px;cursor:pointer;transition:.2s ease}.btn-secondary:hover{background:var(--primary-hover)}.btn-cancel{background:transparent;border:1px solid var(--border-light);padding:10px;border-radius:8px;cursor:pointer;color:var(--text-muted);transition:.2s ease}.btn-cancel:hover{background:var(--bg-soft)}@keyframes fadeIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media(max-width:480px){.modal-card{margin:16px;padding:20px}}:root{--bg-main: #F8F4EC;--bg-card: #FFFFFF;--bg-soft: #F7F5EF;--sidebar-bg: #0F3D2E;--sidebar-text: #F8F4EC;--sidebar-hover: #046A38;--sidebar-active: #C6A75E;--primary: #0F3D2E;--primary-hover: #046A38;--accent: #C6A75E;--accent-hover: #B8954C;--gold-gradient: linear-gradient(90deg, #C6A75E, #E6C97A);--text-dark: #1E1E1E;--text-muted: #6B6B6B;--text-light: #FFFFFF;--border-light: #E8E2D8;--shadow-soft: 0 12px 30px rgba(0, 0, 0, .06)}.admin-page{min-height:100vh;padding:32px 40px;background-color:var(--bg-main);font-family:Segoe UI,Arial,sans-serif;color:var(--text-dark)}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;flex-wrap:wrap;gap:16px}.admin-title{font-size:26px;font-weight:600;letter-spacing:.6px;color:var(--primary)}.guest-section{margin:0 auto;padding:30px 32px;background:var(--bg-card);border-radius:18px;border:1px solid var(--border-light);box-shadow:var(--shadow-soft);position:relative}.guest-section:before{content:"";position:absolute;top:0;left:0;height:4px;width:100%;background:var(--primary);border-radius:18px 18px 0 0}.guest-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.guest-section-header h2{margin:0;font-size:20px;font-weight:600;color:var(--text-dark)}.guest-count{background:var(--accent);color:var(--text-light);padding:6px 16px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.3px}.table-wrapper{background:var(--bg-card);border-radius:14px;border:1px solid var(--border-light);overflow:hidden}.table-wrapper table{width:100%;border-collapse:collapse}.table-wrapper thead{background-color:var(--bg-soft)}.table-wrapper th{text-align:left;padding:14px 16px;color:var(--text-dark);font-weight:600;font-size:13px;letter-spacing:.4px;border-bottom:1px solid var(--border-light)}.table-wrapper td{padding:14px 16px;font-size:14px;border-bottom:1px solid var(--border-light);color:var(--text-muted);transition:background .2s ease}.table-wrapper tr:hover td{background-color:var(--bg-soft)}.table-wrapper tr:last-child td{border-bottom:none}.status-badge{padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600}.status-confirmed{background:#0f3d2e1a;color:var(--primary)}.status-pending{background:#c6a75e33;color:var(--accent-hover)}.btn{padding:6px 14px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-edit{background:var(--primary);color:var(--text-light);border:none}.btn-edit:hover{background:var(--primary-hover)}.btn-delete{background:transparent;border:1px solid var(--accent);color:var(--accent)}.btn-delete:hover{background:var(--accent);color:var(--text-light)}@media(max-width:768px){.admin-page{padding:20px}.admin-title{font-size:20px}.admin-header{flex-direction:column;align-items:stretch}.add-btn{width:100%;text-align:center}.guest-section{padding:20px}}.delete-overlay{position:fixed;inset:0;background:#0f3d2e73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:999}.delete-modal{background:var(--bg-card);padding:28px;width:400px;border-radius:16px;box-shadow:var(--shadow-soft);border:1px solid var(--border-light);animation:fadeIn .25s ease-in-out}.delete-title{margin:0 0 12px;font-size:20px;font-weight:600;color:var(--primary)}.delete-text{font-size:14px;color:var(--text-muted);margin-bottom:22px;line-height:1.5}.delete-actions{display:flex;justify-content:flex-end;gap:12px}.btn-cancel{padding:9px 16px;border-radius:8px;border:1px solid var(--border-light);background:var(--bg-soft);color:var(--text-dark);font-weight:500;cursor:pointer;transition:all .2s ease}.btn-cancel:hover{background:var(--bg-main);border-color:var(--accent)}.btn-delete{padding:9px 18px;border-radius:8px;border:none;background:var(--gold-gradient);color:var(--primary);font-weight:600;cursor:pointer;transition:all .25s ease}.btn-delete:hover{transform:translateY(-2px);box-shadow:0 6px 18px #c6a75e66}.btn-delete:active{transform:translateY(0)}.btn-delete:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.icon-btn{border:none;background:transparent;cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.add-btn{background:var(--gold-gradient);color:var(--primary)}.add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #c6a75e66}.edit-btn{color:var(--primary)}.edit-btn:hover{background:var(--bg-soft)}.delete-btn{color:var(--accent)}.delete-btn:hover{background:#c6a75e26}.submit-btn{background:var(--gold-gradient);color:var(--primary)}.cancel-btn{background:var(--bg-soft);color:var(--text-muted)}*{margin:0;padding:0;box-sizing:border-box;scroll-behavior:smooth}html{scroll-behavior:smooth}html,body{margin:0;padding:0;height:100%}body{overflow-x:hidden}.scroll-page{height:100vh;overflow-y:auto}.swiper-button-next,.swiper-button-prev{top:10px!important;left:50%;transform:translate(-50%)!important}.admin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ivory);padding:20px}.admin-login-card{width:100%;max-width:380px;background:var(--white);padding:32px 28px;border-radius:20px;box-shadow:0 15px 35px #00000014;text-align:center}.admin-login-card h2{color:var(--emerald-dark);margin-bottom:20px}.admin-login-card input{width:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--gold);font-size:14px;margin-bottom:14px;outline:none}.admin-login-card input:focus{border-color:var(--emerald);box-shadow:0 0 0 2px #046a3826}.admin-login-card button{width:100%;padding:14px;border-radius:12px;border:none;background:var(--emerald);color:var(--white);font-weight:600;cursor:pointer;transition:.2s ease}.admin-login-card button:hover{background:#03532b;transform:translateY(-2px)}.admin-login-card button:disabled{opacity:.6;cursor:not-allowed}.error{color:#b91c1c;font-size:13px;margin-bottom:10px}.success-message{color:var(--emerald);font-size:14px}
