@import "https://fonts.googleapis.com/css2?family=Roboto:wght@100;300;400;500;700;900&display=swap";@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}.swal-popup{background:#fff;border-radius:8px;padding:1.25rem;font-family:Roboto,sans-serif;box-shadow:0 5px 20px #00000026}.swal-title{color:#22919c;margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.swal-html-container{color:#54595f;margin:.75rem 0;font-size:.9rem;line-height:1.4}.swal-actions{justify-content:center;gap:.75rem;margin-top:1.25rem;display:flex}.swal-confirm-button,.swal-cancel-button,.swal-deny-button{cursor:pointer;border:none;border-radius:6px;min-width:100px;padding:.5rem 1rem;font-family:Roboto,sans-serif;font-size:.9rem;font-weight:500;transition:all .2s}.swal-confirm-button{color:#fff;background:#22919c}.swal-confirm-button:hover{background:#157975;transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}.swal-confirm-button:active{transform:translateY(0)}.swal-cancel-button,.swal-deny-button{color:#54595f;background:#f3f4f6}.swal-cancel-button:hover,.swal-deny-button:hover{background:#e5e7eb;transform:translateY(-2px)}.swal-cancel-button:active,.swal-deny-button:active{transform:translateY(0)}.swal-icon{width:48px;height:48px;margin:0 auto .75rem}.swal-icon.swal-icon--success{color:#10b981;border-color:#10b981}.swal-icon.swal-icon--success .swal-icon__line{background:#10b981}.swal-icon.swal-icon--error{color:#ef4444;border-color:#ef4444}.swal-icon.swal-icon--warning{color:#f59e0b;border-color:#f59e0b}.swal-icon.swal-icon--info,.swal-icon.swal-icon--question{color:#22919c;border-color:#22919c}.dark .swal-popup{background:#1f2937;box-shadow:0 10px 40px #00000080}.dark .swal-title{color:#f3f4f6}.dark .swal-html-container{color:#d1d5db}.dark .swal-cancel-button,.dark .swal-deny-button{color:#f3f4f6;background:#374151}.dark .swal-cancel-button:hover,.dark .swal-deny-button:hover{background:#4b5563}.swal-popup{animation:.3s ease-out slideIn}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=640px){.swal-popup{width:90vw;padding:1rem}.swal-title{font-size:1.1rem}.swal-actions{flex-direction:column;gap:.5rem}.swal-confirm-button,.swal-cancel-button,.swal-deny-button{width:100%;min-width:auto}}.visible{visibility:visible}.container{width:100%}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}:root{--color-primary:#22919c;--color-success:#10b981;--color-warning:#ffc107;--color-danger:#dc3545;--color-error:#dc3545;--color-info:#0ea5e9;--color-gray:#64748b;--color-text:#64748b;--color-secondary:#54595f}body{margin:0;font-family:Roboto,sans-serif}.dark{--color-primary:#2aa8b5;--color-secondary:#6b7280;--color-text:#9ca3af;--color-accent:#1a9087}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.toast{z-index:1000;opacity:0;border-radius:12px;align-items:center;gap:12px;min-width:320px;max-width:480px;padding:16px 20px;font-family:Roboto,sans-serif;transition:all .3s cubic-bezier(.68,-.55,.265,1.55);display:flex;position:fixed;top:20px;right:20px;transform:translate(100%);box-shadow:0 4px 20px #00000026}.toast-show{opacity:1;transform:translate(0)}.toast-hide{opacity:0;transform:translate(100%)}.toast-success{background:var(--color-primary);color:#fff}.toast-error{background:var(--color-error);color:#fff}.toast-warning{background:var(--color-warning);color:#fff}.toast-info{background:var(--color-info);color:#fff}.toast-icon{color:#fff;background:#fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-weight:600;display:flex}.toast-content{flex:1}.toast-message{margin:0;font-size:14px;font-weight:500;line-height:1.4}.toast-close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;transition:background .2s;display:flex}.toast-close:hover{background:#ffffff4d}@media (width<=640px){.toast{min-width:auto;max-width:none;left:10px;right:10px}}.toast-container{z-index:1000;flex-direction:column;gap:10px;display:flex;position:fixed;top:20px;right:20px}@media (width<=640px){.toast-container{left:10px;right:10px}}.dark .toast{box-shadow:0 4px 20px #0006}.sidebar{background-color:var(--color-primary);color:#fff;z-index:100;flex-direction:column;width:250px;height:100vh;transition:width .3s;display:flex;position:fixed;top:0;left:0}.sidebar.collapsed{width:70px}.sidebar-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:1.5rem 1rem;display:flex}.sidebar-logo{white-space:nowrap;margin:0;font-size:1.5rem;font-weight:700;overflow:hidden}.sidebar-toggle{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s;display:none}.sidebar-toggle:hover{background:#fff3}@media (width<=768px){.sidebar-toggle{display:flex}}.wedding-info{background:#ffffff0d;border-bottom:1px solid #ffffff1a;margin-bottom:.5rem;padding:1rem}.wedding-info-sidebar{padding:1rem}.wedding-info-header{text-align:left;align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.wedding-info-header svg{flex-shrink:0;font-size:1.25rem}.wedding-info-title{word-break:break-word;overflow-wrap:break-word;text-align:left;font-size:.9rem;font-weight:600;line-height:1.2}.wedding-info-slug{color:#fff9;word-break:break-word;overflow-wrap:break-word;margin-top:0;font-size:.75rem}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.sidebar-item{color:#fffc;border-radius:8px;align-items:center;margin:.25rem .5rem;padding:.875rem 1rem;text-decoration:none;transition:all .2s;display:flex}.sidebar-item:hover{color:#fff;background:#ffffff1a}.sidebar-item.active{color:#fff;background:#ffffff26;font-weight:500}.sidebar-icon{justify-content:center;align-items:center;min-width:32px;font-size:1.25rem;display:flex}.sidebar-label{white-space:nowrap;margin-left:.75rem}.sidebar-separator{border-top:1px solid #fff3;margin:1rem .5rem .5rem;padding-top:.5rem}.separator-label{text-transform:uppercase;color:#fff9;letter-spacing:.5px;margin-top:.5rem;font-size:.7rem;font-weight:600;display:block}.sidebar-section-title{text-transform:uppercase;color:#ffffff80;letter-spacing:.5px;margin-top:.5rem;padding:.75rem 1rem;font-size:.75rem;font-weight:600}.sidebar.collapsed .sidebar-label{display:none}.sidebar.collapsed .sidebar-toggle{margin:0 auto}.sidebar-back{font-weight:500;transition:all .3s;color:#fff!important;background:linear-gradient(135deg,#ffffff26 0%,#ffffff0d 100%)!important;border:1.5px solid #ffffff40!important;margin-top:auto!important}.sidebar-back:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003;background:linear-gradient(135deg,#ffffff40 0%,#ffffff26 100%)!important;border-color:#fff6!important}.sidebar-back:active{transform:translateY(0)}@media (width<=768px){.sidebar{z-index:1000;width:250px;height:100vh;transition:transform .3s;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.sidebar-label{display:block}.sidebar.collapsed{width:250px}.sidebar.collapsed .sidebar-label{display:block}.main-layout{position:relative}.main-layout:before{content:"";opacity:0;visibility:hidden;z-index:999;background:#00000080;transition:opacity .3s,visibility .3s;position:fixed;inset:0}.main-layout.sidebar-mobile-open:before{opacity:1;visibility:visible}}.dark .sidebar{background-color:#1f2937;border-right:1px solid #374151}.topbar{z-index:90;background:#fff;border-bottom:1px solid #e5e7eb;height:70px;transition:left .3s;position:fixed;top:0;left:250px;right:0}.topbar.sidebar-collapsed{left:70px}.topbar-content{justify-content:space-between;align-items:center;height:100%;padding:0 2rem;display:flex}.topbar-left{flex:1;align-items:center;gap:1rem;display:flex}.topbar-menu-btn{color:var(--color-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.5rem;font-size:1.5rem;transition:all .2s;display:none}.topbar-menu-btn:hover{color:var(--color-primary);background:#f3f4f6}.topbar-sidebar-toggle{color:var(--color-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin-right:.5rem;padding:.5rem;font-size:1.25rem;transition:all .2s;display:flex}.topbar-sidebar-toggle:hover{color:var(--color-primary);background:#f3f4f6}.topbar-title{color:var(--color-secondary);margin:0;font-size:1.5rem;font-weight:500}@media (width<=768px){.topbar-menu-btn{justify-content:center;align-items:center;display:flex}}.topbar-right{align-items:center;gap:1rem;display:flex}.topbar-icon-btn{color:var(--color-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex;position:relative}.topbar-icon-btn.logout-btn{color:#dc2626}.topbar-icon-btn.logout-btn:hover{color:#b91c1c;background:#dc26261a}.dark .topbar-icon-btn.logout-btn{color:#ef4444}.dark .topbar-icon-btn.logout-btn:hover{color:#f87171;background:#ef44441a}.topbar-icon-btn svg{width:20px;height:20px;color:inherit;stroke:currentColor}.topbar-icon-btn:hover{background:#e5e7eb}.notification-badge{color:#fff;background:#ef4444;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.75rem;font-weight:600;display:flex;position:absolute;top:-4px;right:-4px}.topbar-notifications{position:relative}.notifications-dropdown{z-index:1000;background:#fff;border-radius:12px;width:320px;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden;box-shadow:0 10px 25px #0000001a}.notifications-header{border-bottom:1px solid #e5e7eb;padding:1rem 1.25rem}.notifications-header h3{color:var(--color-secondary);margin:0;font-size:1rem;font-weight:600}.notifications-list{max-height:300px;overflow-y:auto}.notification-item{cursor:pointer;border-bottom:1px solid #f3f4f6;padding:1rem 1.25rem;transition:background .2s}.notification-message{color:var(--color-secondary);margin:0 0 .25rem;font-size:.875rem}.notification-time{color:var(--color-text);font-size:.75rem}.notification-item.unread{border-left:3px solid var(--color-primary);background:#f0f9fa}.notification-item{cursor:pointer;transition:background .2s}.notification-item:hover{background:#f3f4f6}.notification-footer{justify-content:space-between;align-items:center;margin-top:.5rem;display:flex}.delete-notification-btn{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;transition:color .2s}.delete-notification-btn:hover{color:#ef4444;background:#fee2e2}.mark-all-read-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500;transition:background .2s}.mark-all-read-btn:hover{background:#f0f9fa}.no-notifications{text-align:center;color:#9ca3af;padding:2rem;font-size:.875rem}.topbar-user{position:relative}.topbar-user .user-avatar-top{cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:.75rem;padding:.5rem;transition:background .2s;display:flex}.user-avatar:hover{background:#f3f4f6}.avatar-circle{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.125rem;font-weight:600;display:flex}.user-name{color:var(--color-secondary);font-size:.875rem;font-weight:500}.user-dropdown{z-index:1000;background:#fff;border-radius:12px;width:240px;position:absolute;top:calc(100% + .5rem);right:0;overflow:hidden;box-shadow:0 10px 25px #0000001a}.dropdown-header{padding:1rem 1.25rem}.dropdown-name{color:var(--color-secondary);margin:0 0 .25rem;font-size:.875rem;font-weight:600}.dropdown-email{color:var(--color-text);margin:0;font-size:.75rem}.dropdown-divider{background:#e5e7eb;height:1px}.dropdown-item{text-align:left;cursor:pointer;width:100%;color:var(--color-secondary);background:0 0;border:none;align-items:center;gap:.75rem;padding:.75rem 1.25rem;font-size:.875rem;transition:background .2s;display:flex}.dropdown-icon{width:18px;height:18px;color:var(--color-text);justify-content:center;align-items:center;display:flex}.logout-item{color:#ef4444}.logout-item:hover{background:#ef44441a}.logout-item .dropdown-icon{color:#ef4444}.dropdown-item:hover{background:#f9fafb}.dropdown-item.logout{color:#ef4444}@media (width<=768px){.topbar-content{padding:0 1rem}.topbar,.topbar.sidebar-collapsed{left:0}.user-name{display:none}.topbar-title{font-size:1.25rem;display:none}}.dark .topbar{background:#1f2937;border-bottom-color:#374151}.dark .topbar-title{color:#f3f4f6}.dark .topbar-icon-btn{color:#f3f4f6;background:#374151}.dark .topbar-icon-btn svg{color:#f3f4f6}.dark .topbar-icon-btn:hover{background:#4b5563}.dark .topbar-menu-btn{color:#f3f4f6}.dark .topbar-menu-btn:hover{color:var(--color-primary);background:#374151}.dark .topbar-sidebar-toggle{color:#f3f4f6}.dark .topbar-sidebar-toggle:hover{color:var(--color-primary);background:#374151}.dark .notifications-dropdown,.dark .user-dropdown{background:#1f2937;box-shadow:0 10px 25px #0000004d}.dark .notifications-header,.dark .dropdown-header,.dark .notification-item{border-bottom-color:#374151}.dark .notification-item:hover,.dark .dropdown-item:hover{background:#374151}.dark .notification-message,.dark .dropdown-name,.dark .dropdown-icon{color:#9ca3af}.dark .user-avatar:hover{background:#374151}.dark .avatar-circle{background:var(--color-primary);color:#fff}.dark .user-name{color:#f3f4f6}.main-layout{background:#f9fafb;min-height:100vh;display:flex;position:relative}.main-content{flex-direction:column;flex:1;margin-left:250px;transition:margin-left .3s;display:flex}.main-content.sidebar-collapsed{margin-left:70px}.content-area{flex:1;margin-top:70px;overflow:hidden auto}.main-layout:before{content:"";opacity:0;visibility:hidden;z-index:999;background:#00000080;transition:opacity .3s,visibility .3s;position:fixed;inset:0}.main-layout.sidebar-mobile-open:before{opacity:1;visibility:visible}@media (width<=768px){.main-content,.main-content.sidebar-collapsed{margin-left:0}}.dark .main-layout{background:#111827}.wedding-portal-layout{background:var(--bg-secondary);flex-direction:column;min-height:100vh;transition:background-color .3s;display:flex}.wedding-portal-header{color:#fff;box-shadow:0 2px 8px var(--shadow);z-index:100;background:linear-gradient(135deg,#22919c 0%,#1a7580 100%);padding:20px 0;transition:all .3s;position:sticky;top:0}.wedding-portal-header-content{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;padding:0 30px;display:flex}.wedding-info{text-align:left;align-items:center;gap:16px;display:flex}.wedding-icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.wedding-details{text-align:left}.wedding-details h1{color:#fff;margin:0 0 4px;font-size:20px;font-weight:600}.wedding-details p{opacity:.9;color:#fff;margin:0;font-size:14px}.wedding-date{color:#ffffffe6;align-items:center;gap:6px;display:flex;margin-top:4px!important;font-size:13px!important}.wedding-date svg{color:#fffc;flex-shrink:0}.header-actions{align-items:center;gap:12px;display:flex}.btn-theme{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff4d;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s;display:flex}.btn-theme:hover{background:#ffffff40;transform:scale(1.05);box-shadow:0 4px 12px #00000026}.btn-theme:active{transform:scale(.95)}.btn-logout{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff4d;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:500;transition:all .3s;display:flex}.btn-logout:hover{background:#ffffff40;box-shadow:0 4px 12px #00000026}.btn-logout:active{transform:scale(.98)}.wedding-portal-main{box-sizing:border-box;background:var(--bg-secondary);flex:1;width:100%;max-width:1400px;margin:0 auto;padding:30px;transition:background-color .3s}.wedding-portal-footer{text-align:center;background:#fff;border-top:1px solid #e0e0e0;padding:20px}.wedding-portal-footer p{color:#7a7a7a;margin:0;font-size:13px}@media (width<=1024px){.wedding-portal-header-content{padding:0 20px}.wedding-portal-main{padding:24px}}@media (width<=768px){.wedding-portal-header{padding:16px 0}.wedding-portal-header-content{flex-direction:column;gap:12px;padding:0 16px}.wedding-info{width:100%}.wedding-icon{width:40px;height:40px}.wedding-icon svg{width:18px;height:18px}.wedding-details h1{font-size:16px}.wedding-details p{font-size:12px}.wedding-date{font-size:11px!important}.wedding-date svg{width:14px;height:14px}.header-actions{justify-content:space-between;width:100%}.btn-theme{width:36px;height:36px}.btn-theme svg{width:18px;height:18px}.btn-logout{flex:1;justify-content:center;padding:8px 14px;font-size:13px}.btn-logout svg{width:18px;height:18px}.wedding-portal-main,.wedding-portal-footer{padding:16px}.wedding-portal-footer p{font-size:11px}}@media (width<=480px){.wedding-portal-header{padding:12px 0}.wedding-portal-header-content{gap:10px;padding:0 12px}.wedding-icon{width:36px;height:36px}.wedding-icon svg{width:16px;height:16px}.wedding-details h1{font-size:15px}.wedding-details p{font-size:11px}.wedding-date{font-size:10px!important}.btn-theme{width:32px;height:32px}.btn-theme svg{width:16px;height:16px}.btn-logout{padding:7px 12px;font-size:12px}.btn-logout svg{width:16px;height:16px}.wedding-portal-main,.wedding-portal-footer{padding:12px}.wedding-portal-footer p{font-size:10px}}.two-factor-verification{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.verification-card{background:#fff;border-radius:16px;width:100%;max-width:450px;padding:2.5rem;animation:.3s slideUp;box-shadow:0 20px 60px #0000004d}.verification-header{text-align:center;margin-bottom:2rem}.verification-icon{background:#22919c1a;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1rem;display:flex}.verification-icon svg{color:#22919c;width:32px;height:32px}.verification-header h2{color:#1a1a1a;margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.verification-header p{color:#666;margin:0;font-size:.95rem}.verification-form,.form-group{margin-bottom:1.5rem}.verification-input:disabled{cursor:not-allowed;background:#f3f4f6}.attempts-info{color:#666;margin:.5rem 0 0;font-size:.85rem}.verify-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22919c 0%,#1a6b73 100%);border:none;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.verify-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #22919c4d}.backup-link{color:#22919c;cursor:pointer;background:0 0;border:none;width:100%;margin-top:1rem;padding:.75rem;font-size:.9rem;font-weight:500;text-decoration:underline;transition:color .2s}.backup-link:hover:not(:disabled){color:#1a6b73}.backup-link:disabled{opacity:.6;cursor:not-allowed}.cancel-button{cursor:pointer;color:#666;background:#f3f4f6;border:none;border-radius:8px;width:100%;padding:.75rem;font-weight:500;transition:all .2s}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .verification-card{background:#1e1e2e;box-shadow:0 20px 60px #00000080}[data-theme=dark] .verification-header h2{color:#e5e5e5}[data-theme=dark] .verification-header p{color:#a0a0a0}[data-theme=dark] .verification-icon{background:#22919c33}[data-theme=dark] .verification-input:disabled{background:#3a3a4a}[data-theme=dark] .attempts-info{color:#a0a0a0}[data-theme=dark] .backup-link{color:#4fb3bf}[data-theme=dark] .backup-link:hover:not(:disabled){color:#22919c}@media (width<=768px){.two-factor-verification{padding:1rem}.verification-card{padding:2rem}.verification-header h2,.verification-input{font-size:1.25rem}}.login-container{background:var(--color-primary);justify-content:center;align-items:center;min-height:100vh;padding:0 2rem;display:flex;position:relative;overflow:hidden}.login-container:before{content:"";background:radial-gradient(circle,#ffffff1a 0%,#0000 70%);width:100%;height:100%;animation:20s linear infinite rotate;position:absolute;top:0;left:0}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-card{z-index:1;background:#fff;border-radius:20px;width:100%;max-width:440px;padding:2.5rem;position:relative;box-shadow:0 25px 50px #00000026}.login-header{text-align:center;margin-bottom:1.5rem}.login-logo{-o-object-fit:contain;object-fit:contain;height:100px;margin-bottom:.75rem}.login-header h1{color:var(--color-primary);margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.login-header p{color:var(--color-text);margin:0;font-size:.9rem;font-weight:400}.login-error{color:#dc2626;text-align:center;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;margin-bottom:1.25rem;padding:.875rem 1rem;font-size:.875rem;font-weight:500}.login-form{flex-direction:column;gap:1rem;display:flex}.login-form .form-group-login{margin-bottom:10px}.form-group label{color:var(--color-secondary);letter-spacing:.5px;font-size:.85rem;font-weight:600}.form-group input{background:#f9fafb;border:2px solid #e5e7eb;border-radius:10px;padding:.875rem 1rem;font-family:Roboto,sans-serif;font-size:1rem;transition:all .2s}.form-group input:focus{border-color:var(--color-primary);background:#fff;outline:none;box-shadow:0 0 0 3px #22919c1a}.form-group input::placeholder{color:#9ca3af;font-weight:400}.form-options{justify-content:flex-start;align-items:center;margin-top:.25rem;font-size:.85rem;display:flex}.login-forgot-password-container{text-align:center;background:0 0;height:auto;margin-top:1rem;padding:0}.checkbox-label{cursor:pointer;color:var(--color-secondary);-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-weight:500;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--color-primary);border-radius:4px}.forgot-link{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .2s;display:inline}.forgot-link:hover{color:var(--color-gray);text-decoration:underline}.login-button{background:var(--color-primary);color:#fff;cursor:pointer;letter-spacing:.5px;border:none;border-radius:10px;margin-top:.5rem;padding:1rem;font-family:Roboto,sans-serif;font-size:1rem;font-weight:600;transition:all .2s}.login-button:hover:not(:disabled){background:#1a7a84;transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{opacity:.6;cursor:not-allowed}.login-footer{text-align:center;color:var(--color-text);border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1.5rem;font-size:.85rem}.login-footer a{color:var(--color-primary);font-weight:600;text-decoration:none;transition:color .2s}.login-footer a:hover{color:var(--color-gray);text-decoration:underline}@media (width<=640px){.login-container{padding:1rem}.login-card{padding:2rem}.login-header h1{font-size:1.5rem}.login-logo{height:50px}}.dark .login-container{background:var(--color-primary)}.dark .login-card{background:#1f2937;box-shadow:0 25px 50px #0006}.dark .login-header h1{color:#f3f4f6}.dark .login-header p{color:#9ca3af}.dark .form-group label,.dark .checkbox-label{color:#e5e7eb}.dark .form-group input:focus{border-color:var(--color-primary);background:#1f2937;box-shadow:0 0 0 3px #22919c33}.dark .form-group input::placeholder{color:#6b7280}.dark .login-footer{color:#9ca3af;border-top-color:#374151}.dark .forgot-link{color:#60a5fa}.dark .forgot-link:hover{color:#93c5fd}.wedding-login-container{background:linear-gradient(135deg,#22919c 0%,#157975 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.wedding-login-card{background:#fff;border-radius:20px;width:100%;max-width:450px;padding:40px;animation:.5s fadeIn;box-shadow:0 20px 60px #0000004d}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.wedding-login-header{text-align:center;margin-bottom:40px}.wedding-logo{color:#fff;background:linear-gradient(135deg,#22919c,#157975);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:20px;display:inline-flex}.wedding-login-header h1{color:#2c3e50;margin:0 0 10px;font-size:28px;font-weight:600}.wedding-login-header p{color:#7a7a7a;margin:0;font-size:14px}.wedding-login-form{margin-bottom:30px}.error-message{color:#c33;background-color:#fee;border-left:4px solid #c33;border-radius:8px;margin-bottom:20px;padding:12px 16px;font-size:14px}.wedding-login-form .form-group{margin-bottom:24px}.wedding-login-form label{color:#2c3e50;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.wedding-login-form input{box-sizing:border-box;border:2px solid #e0e0e0;border-radius:10px;width:100%;padding:14px 16px;font-size:15px;transition:all .3s}.wedding-login-form input:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.wedding-login-form input:disabled{cursor:not-allowed;background-color:#f5f5f5}.btn-login{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22919c,#157975);border:none;border-radius:10px;width:100%;margin-top:10px;padding:16px;font-size:16px;font-weight:600;transition:all .3s}.btn-login:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #22919c4d}.btn-login:active:not(:disabled){transform:translateY(0)}.btn-login:disabled{opacity:.6;cursor:not-allowed}.wedding-login-footer{text-align:center;border-top:1px solid #e0e0e0;padding-top:20px}.wedding-login-footer p{color:#7a7a7a;margin:0;font-size:13px}@media (width<=768px){.wedding-login-card{padding:30px 20px}.wedding-login-header h1{font-size:24px}.wedding-logo{width:70px;height:70px}.wedding-logo svg{width:50px;height:50px}}.forgot-password-container{background:var(--color-primary);justify-content:center;align-items:center;min-height:100vh;padding:0 2rem;display:flex;position:relative;overflow:hidden}.forgot-password-container:before{content:"";background:radial-gradient(circle,#ffffff1a 0%,#0000 70%);width:100%;height:100%;animation:20s linear infinite rotate;position:absolute;top:0;left:0}.forgot-password-card{z-index:1;background:#fff;border-radius:16px;width:100%;max-width:450px;padding:3rem;position:relative;box-shadow:0 20px 60px #0000004d}.forgot-password-header{text-align:center;margin-bottom:2rem}.forgot-password-header .login-logo{-o-object-fit:contain;object-fit:contain;height:100px;margin-bottom:.75rem}.forgot-password-header h2{color:var(--color-secondary);margin:0 0 .75rem;font-size:1.8rem;font-weight:600}.forgot-password-header p{color:#666;margin:0;font-size:.95rem;line-height:1.6}.forgot-password-form,.form-group{margin-bottom:1.5rem}.form-group input{box-sizing:border-box;border:2px solid #e5e7eb;border-radius:8px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:all .2s}.form-group input::placeholder{color:#9ca3af}.forgot-password-button{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:.875rem;font-size:1rem;font-weight:600;transition:all .2s}.forgot-password-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #22919c66}.forgot-password-button:disabled{opacity:.6;cursor:not-allowed}.forgot-password-actions{text-align:center;margin-top:1.5rem}.back-link{color:var(--color-primary);font-size:.9rem;font-weight:500;text-decoration:none;transition:color .2s}.back-link:hover{color:#1a6b73;text-decoration:underline}@media (width<=768px){.forgot-password-container{padding:1rem}.forgot-password-card{padding:2rem}.forgot-password-header h2{font-size:1.5rem}.forgot-password-header .login-logo{width:60px}}[data-theme=dark] .forgot-password-container{background:linear-gradient(135deg,#1a4a4f 0%,#0f3d41 100%)}[data-theme=dark] .forgot-password-card{background:#1e1e2e;box-shadow:0 20px 60px #00000080}[data-theme=dark] .forgot-password-header h2{color:#e5e5e5}[data-theme=dark] .forgot-password-header p{color:#a0a0a0}[data-theme=dark] .form-group input:focus{border-color:var(--color-primary)}[data-theme=dark] .form-group input::placeholder{color:#6a6a7a}[data-theme=dark] .back-link{color:#4fb3bf}[data-theme=dark] .back-link:hover{color:var(--color-primary)}.rbc-btn{color:inherit;font:inherit;margin:0}button.rbc-btn{text-transform:none;appearance:button;cursor:pointer;overflow:visible}button[disabled].rbc-btn{cursor:not-allowed}button.rbc-input::-moz-focus-inner{border:0;padding:0}.rbc-calendar{box-sizing:border-box;flex-direction:column;align-items:stretch;height:100%;display:flex}.rbc-m-b-negative-3{margin-bottom:-3px}.rbc-h-full{height:100%}.rbc-calendar *,.rbc-calendar :before,.rbc-calendar :after{box-sizing:inherit}.rbc-abs-full,.rbc-row-bg{position:absolute;inset:0;overflow:hidden}.rbc-ellipsis,.rbc-show-more,.rbc-row-segment .rbc-event-content,.rbc-event-label{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.rbc-rtl{direction:rtl}.rbc-off-range{color:#999}.rbc-header{text-overflow:ellipsis;white-space:nowrap;text-align:center;vertical-align:middle;border-bottom:1px solid #ddd;flex:1 0;min-height:0;padding:0 3px;font-size:90%;font-weight:700;overflow:hidden}.rbc-header+.rbc-header{border-left:1px solid #ddd}.rbc-rtl .rbc-header+.rbc-header{border-left-width:0;border-right:1px solid #ddd}.rbc-header>a,.rbc-header>a:active,.rbc-header>a:visited{color:inherit;text-decoration:none}.rbc-button-link{color:inherit;cursor:pointer;-webkit-user-select:text;user-select:text;background:0 0;border:none;margin:0;padding:0}.rbc-row-content{-webkit-user-select:none;user-select:none;z-index:4;position:relative}.rbc-row-content-scrollable{flex-direction:column;height:100%;display:flex}.rbc-row-content-scrollable .rbc-row-content-scroll-container{-ms-overflow-style:none;scrollbar-width:none;-ms-overflow-style:none;scrollbar-width:none;height:100%;overflow-y:scroll}.rbc-row-content-scrollable .rbc-row-content-scroll-container::-webkit-scrollbar{display:none}.rbc-toolbar{flex-wrap:wrap;justify-content:center;align-items:center;margin-bottom:10px;font-size:16px;display:flex}.rbc-toolbar .rbc-toolbar-label{text-align:center;flex-grow:1;padding:0 10px}.rbc-toolbar button{color:#373a3c;text-align:center;vertical-align:middle;white-space:nowrap;background:0 0;border:1px solid #ccc;border-radius:4px;margin:0;padding:.375rem 1rem;line-height:normal;display:inline-block}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background-color:#e6e6e6;background-image:none;border-color:#adadad;box-shadow:inset 0 3px 5px #00000020}.rbc-toolbar button:active:hover,.rbc-toolbar button:active:focus,.rbc-toolbar button.rbc-active:hover,.rbc-toolbar button.rbc-active:focus{color:#373a3c;background-color:#d4d4d4;border-color:#8c8c8c}.rbc-toolbar button:focus{color:#373a3c;background-color:#e6e6e6;border-color:#adadad}.rbc-toolbar button:hover{color:#373a3c;cursor:pointer;background-color:#e6e6e6;border-color:#adadad}.rbc-btn-group{white-space:nowrap;display:inline-block}.rbc-btn-group>button:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.rbc-btn-group>button:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.rbc-rtl .rbc-btn-group>button:first-child:not(:last-child){border-radius:0 4px 4px 0}.rbc-rtl .rbc-btn-group>button:last-child:not(:first-child){border-radius:4px 0 0 4px}.rbc-btn-group>button:not(:first-child):not(:last-child){border-radius:0}.rbc-btn-group button+button{margin-left:-1px}.rbc-rtl .rbc-btn-group button+button{margin-left:0;margin-right:-1px}.rbc-btn-group+.rbc-btn-group,.rbc-btn-group+button{margin-left:10px}@media (width<=767px){.rbc-toolbar{flex-direction:column}}.rbc-event,.rbc-day-slot .rbc-background-event{box-sizing:border-box;box-shadow:none;color:#fff;cursor:pointer;text-align:left;background-color:#3174ad;border:none;border-radius:5px;width:100%;margin:0;padding:2px 5px}.rbc-slot-selecting .rbc-event,.rbc-slot-selecting .rbc-day-slot .rbc-background-event,.rbc-day-slot .rbc-slot-selecting .rbc-background-event{cursor:inherit;pointer-events:none}.rbc-event.rbc-selected,.rbc-day-slot .rbc-selected.rbc-background-event{background-color:#265985}.rbc-event:focus,.rbc-day-slot .rbc-background-event:focus{outline:5px auto #3b99fc}.rbc-event-label{font-size:80%}.rbc-event-overlaps{box-shadow:-1px 1px 5px #33333380}.rbc-event-continues-prior{border-top-left-radius:0;border-bottom-left-radius:0}.rbc-event-continues-after{border-top-right-radius:0;border-bottom-right-radius:0}.rbc-event-continues-earlier{border-top-left-radius:0;border-top-right-radius:0}.rbc-event-continues-later{border-bottom-right-radius:0;border-bottom-left-radius:0}.rbc-row{flex-direction:row;display:flex}.rbc-row-segment{padding:0 1px 1px}.rbc-selected-cell{background-color:#0000001a}.rbc-show-more{z-index:4;color:#3174ad;background-color:#ffffff4d;height:auto;font-size:85%;font-weight:700;line-height:normal}.rbc-show-more:hover,.rbc-show-more:focus{color:#265985}.rbc-month-view{-webkit-user-select:none;user-select:none;border:1px solid #ddd;flex-direction:column;flex:1 0 0;width:100%;height:100%;display:flex;position:relative}.rbc-month-header{flex-direction:row;display:flex}.rbc-month-row{flex-direction:column;flex:1 0 0;height:100%;display:flex;position:relative;overflow:hidden}.rbc-month-row+.rbc-month-row{border-top:1px solid #ddd}.rbc-date-cell{text-align:right;flex:1 1 0;min-width:0;padding-right:5px}.rbc-date-cell.rbc-now{font-weight:700}.rbc-date-cell>a,.rbc-date-cell>a:active,.rbc-date-cell>a:visited{color:inherit;text-decoration:none}.rbc-row-bg{flex-direction:row;flex:1 0 0;display:flex;right:1px;overflow:hidden}.rbc-day-bg{flex:1 0}.rbc-day-bg+.rbc-day-bg{border-left:1px solid #ddd}.rbc-rtl .rbc-day-bg+.rbc-day-bg{border-left-width:0;border-right:1px solid #ddd}.rbc-overlay{z-index:5;background-color:#fff;border:1px solid #e5e5e5;padding:10px;position:absolute;box-shadow:0 5px 15px #00000040}.rbc-overlay>*+*{margin-top:1px}.rbc-overlay-header{border-bottom:1px solid #e5e5e5;margin:-10px -10px 5px;padding:2px 10px}.rbc-agenda-view{flex-direction:column;flex:1 0 0;display:flex;overflow:auto}.rbc-agenda-view table.rbc-agenda-table{border-spacing:0;border-collapse:collapse;border:1px solid #ddd;width:100%}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td{vertical-align:top;padding:5px 10px}.rbc-agenda-view table.rbc-agenda-table .rbc-agenda-time-cell{text-transform:lowercase;padding-left:15px;padding-right:15px}.rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left:1px solid #ddd}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table tbody>tr>td+td{border-left-width:0;border-right:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table tbody>tr+tr{border-top:1px solid #ddd}.rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:left;border-bottom:1px solid #ddd;padding:3px 5px}.rbc-rtl .rbc-agenda-view table.rbc-agenda-table thead>tr>th{text-align:right}.rbc-agenda-time-cell{text-transform:lowercase}.rbc-agenda-time-cell .rbc-continues-after:after{content:" »"}.rbc-agenda-time-cell .rbc-continues-prior:before{content:"« "}.rbc-agenda-date-cell,.rbc-agenda-time-cell{white-space:nowrap}.rbc-agenda-event-cell{width:100%}.rbc-time-column{flex-direction:column;min-height:100%;display:flex}.rbc-time-column .rbc-timeslot-group{flex:1}.rbc-timeslot-group{border-bottom:1px solid #ddd;flex-flow:column;min-height:40px;display:flex}.rbc-time-gutter,.rbc-header-gutter{flex:none}.rbc-label{padding:0 5px}.rbc-day-slot{position:relative}.rbc-day-slot .rbc-events-container{margin-right:10px;position:absolute;inset:0}.rbc-day-slot .rbc-events-container.rbc-rtl{left:10px;right:0}.rbc-day-slot .rbc-event,.rbc-day-slot .rbc-background-event{border:1px solid #265985;flex-flow:column wrap;align-items:flex-start;min-height:20px;max-height:100%;display:flex;position:absolute;overflow:hidden}.rbc-day-slot .rbc-background-event{opacity:.75}.rbc-day-slot .rbc-event-label{flex:none;width:auto;padding-right:5px}.rbc-day-slot .rbc-event-content{word-wrap:break-word;flex:1 1 0;width:100%;height:100%;min-height:1em;line-height:1}.rbc-day-slot .rbc-time-slot{border-top:1px solid #f7f7f7}.rbc-time-view-resources .rbc-time-gutter,.rbc-time-view-resources .rbc-time-header-gutter{z-index:10;background-color:#fff;border-right:1px solid #ddd;margin-right:-1px;position:sticky;left:0}.rbc-time-view-resources .rbc-time-header{overflow:hidden}.rbc-time-view-resources .rbc-time-header-content{flex:1 0 0;min-width:auto}.rbc-time-view-resources .rbc-time-header-cell-single-day{display:none}.rbc-time-view-resources .rbc-day-slot{min-width:140px}.rbc-time-view-resources .rbc-header,.rbc-time-view-resources .rbc-day-bg{flex:1 1 0;flex-basis:0 px;width:140px}.rbc-time-header-content+.rbc-time-header-content{margin-left:-1px}.rbc-time-slot{flex:1 0 0}.rbc-time-slot.rbc-now{font-weight:700}.rbc-day-header{text-align:center}.rbc-slot-selection{z-index:10;color:#fff;background-color:#00000080;width:100%;padding:3px;font-size:75%;position:absolute}.rbc-slot-selecting{cursor:move}.rbc-time-view{border:1px solid #ddd;flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.rbc-time-view .rbc-time-gutter{white-space:nowrap;text-align:right}.rbc-time-view .rbc-allday-cell{box-sizing:content-box;width:100%;height:100%;position:relative}.rbc-time-view .rbc-allday-cell+.rbc-allday-cell{border-left:1px solid #ddd}.rbc-time-view .rbc-allday-events{z-index:4;position:relative}.rbc-time-view .rbc-row{box-sizing:border-box;min-height:20px}.rbc-time-header{flex-direction:row;flex:none;display:flex}.rbc-time-header.rbc-overflowing{border-right:1px solid #ddd}.rbc-rtl .rbc-time-header.rbc-overflowing{border-left:1px solid #ddd;border-right-width:0}.rbc-time-header>.rbc-row:first-child,.rbc-time-header>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd}.rbc-time-header-cell-single-day{display:none}.rbc-time-header-content{border-left:1px solid #ddd;flex-direction:column;flex:1;min-width:0;display:flex}.rbc-rtl .rbc-time-header-content{border-left-width:0;border-right:1px solid #ddd}.rbc-time-header-content>.rbc-row.rbc-row-resource{border-bottom:1px solid #ddd;flex-shrink:0}.rbc-time-content{border-top:2px solid #ddd;flex:1 0;align-items:flex-start;width:100%;display:flex;position:relative;overflow-y:auto}.rbc-time-content>.rbc-time-gutter{flex:none}.rbc-time-content>*+*>*{border-left:1px solid #ddd}.rbc-rtl .rbc-time-content>*+*>*{border-left-width:0;border-right:1px solid #ddd}.rbc-time-content>.rbc-day-slot{-webkit-user-select:none;user-select:none;width:100%}.rbc-current-time-indicator{z-index:3;pointer-events:none;background-color:#74ad31;height:1px;position:absolute;left:0;right:0}.rbc-resource-grouping.rbc-time-header-content{flex-direction:column;display:flex}.rbc-resource-grouping .rbc-row .rbc-header{width:141px}.dashboard{padding:1.5rem}.dashboard-welcome{margin-bottom:2rem}.dashboard-welcome h2{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.dashboard-welcome p{color:var(--color-text);margin:0}.dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.stat-icon{background:#22919c1a;border-radius:12px;justify-content:center;align-items:center;width:60px;height:60px;font-size:2rem;display:flex}.stat-primary .stat-icon{background:#22919c1a}.stat-accent .stat-icon{background:#1579751a}.stat-secondary .stat-icon{background:#54595f1a}.stat-warning .stat-icon{background:#f59e0b1a}.stat-content{flex:1}.stat-label{color:var(--color-text);margin:0 0 .25rem;font-size:.875rem}.stat-value{color:var(--color-secondary);margin:0;font-size:1.75rem;font-weight:700}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:1.5rem;display:grid}.dashboard-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.card-title{color:var(--color-secondary);margin:0 0 1.5rem;font-size:1.25rem;font-weight:600}.activity-list{flex-direction:column;gap:1rem;display:flex}.activity-item{background:#f9fafb;border-radius:8px;align-items:center;gap:1rem;padding:1rem;transition:background .2s;display:flex}.activity-item:hover{background:#f3f4f6}.activity-icon{background:#fff;border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;display:flex}.activity-content{flex:1}.activity-text{color:var(--color-secondary);margin:0 0 .25rem;font-size:.875rem;font-weight:500}.activity-time{color:var(--color-text);font-size:.75rem}.tasks-list{flex-direction:column;gap:.75rem;display:flex}.task-item{background:#f9fafb;border-radius:8px;align-items:center;gap:.75rem;padding:1rem;transition:background .2s;display:flex}.task-item:hover{background:#f3f4f6}.task-item input[type=checkbox]{cursor:pointer;width:20px;height:20px;accent-color:var(--color-primary)}.task-item label{cursor:pointer;color:var(--color-secondary);flex:1;font-size:.875rem}@media (width<=768px){.dashboard{padding:1rem}.dashboard-stats,.dashboard-grid{grid-template-columns:1fr}}.dark .dashboard-welcome h2{color:#f3f4f6}.dark .stat-card,.dark .dashboard-card{background:#1f2937;box-shadow:0 1px 3px #0000004d}.dark .stat-value,.dark .card-title{color:#f3f4f6}.dark .activity-item,.dark .task-item{background:#374151}.dark .activity-item:hover,.dark .task-item:hover{background:#4b5563}.dark .activity-icon{background:#1f2937}.dark .activity-text,.dark .task-item label{color:#f3f4f6}.dashboard-calendar-section{margin-top:2rem}.calendar-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.card-header{margin-bottom:1.5rem}.card-subtitle{color:var(--color-text);margin:.5rem 0 0;font-size:.875rem}.calendar-container{background:#fff;border-radius:8px;padding:1rem}.rbc-calendar{font-family:inherit}.rbc-header{color:var(--color-secondary);border-bottom:2px solid #e5e7eb;padding:.75rem .5rem;font-weight:600}.rbc-today{background-color:#22919c0d}.rbc-event{padding:2px 5px;font-size:.875rem;font-weight:500}.rbc-event:focus{outline:2px solid var(--color-primary)}.rbc-toolbar{flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:1rem 0}.rbc-toolbar button{color:var(--color-secondary);background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:.5rem 1rem;font-weight:500;transition:all .2s}.rbc-toolbar button:hover{border-color:var(--color-primary);background:#f9fafb}.rbc-toolbar button:active,.rbc-toolbar button.rbc-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.rbc-month-view{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.rbc-day-bg{border-left:1px solid #e5e7eb}.rbc-off-range-bg{background:#f9fafb}.rbc-date-cell{text-align:right;padding:.5rem}.rbc-show-more{color:var(--color-primary);background-color:#22919c1a;border-radius:4px;padding:2px 5px;font-size:.75rem;font-weight:600}.dark .calendar-card,.dark .calendar-container{background:#1f2937}.dark .rbc-header{color:#f3f4f6;border-bottom-color:#374151}.dark .rbc-today{background-color:#22919c26}.dark .rbc-toolbar button{color:#f3f4f6;background:#374151;border-color:#4b5563}.dark .rbc-toolbar button:hover{border-color:var(--color-primary);background:#4b5563}.dark .rbc-toolbar button:active,.dark .rbc-toolbar button.rbc-active{background:var(--color-primary);color:#fff}.dark .rbc-month-view{border-color:#374151}.dark .rbc-day-bg{border-left-color:#374151}.dark .rbc-off-range-bg{background:#111827}.dark .rbc-date-cell,.dark .card-subtitle{color:#d1d5db}@media (width<=768px){.calendar-container{padding:.5rem}.rbc-toolbar{flex-direction:column;align-items:stretch}.rbc-toolbar-label{text-align:center;margin:.5rem 0}}.users-container{max-width:100%;padding:1rem;overflow-x:hidden}.users-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.users-header h2{color:var(--color-secondary);margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.users-header p{color:var(--color-text);margin:0;font-size:.9rem}.btn-primary{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;flex-shrink:0;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:Roboto,sans-serif;font-size:.9rem;font-weight:500;transition:background .2s,transform .1s;display:flex}.btn-primary:hover{background:var(--color-accent);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.users-filters{width:100%;margin-bottom:1rem}.search-box{width:100%;max-width:100%;position:relative}.users-filters .search-icon{color:var(--color-text);background:0 0;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.users-filters .search-input{border:1px solid #e5e7eb;border-radius:6px;width:100%;padding:.5rem .75rem .5rem 2.25rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.users-table-wrapper{background:#fff;border-radius:8px;overflow:auto hidden;box-shadow:0 1px 2px #0000000d}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.users-table th{text-align:left;color:var(--color-secondary);text-transform:uppercase;letter-spacing:.3px;padding:.75rem 1rem;font-size:.8rem;font-weight:600}.users-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .2s}.users-table tbody tr.user-row{cursor:pointer}.users-table tbody tr.user-row:hover{background:#f0f9fa}.users-table td{color:var(--color-secondary);padding:.75rem 1rem;font-size:.9rem}.user-name{align-items:center;gap:.5rem;font-weight:500;display:flex}.user-avatar{background:var(--color-primary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:600;display:flex}.modal-close{color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;transition:background .2s;display:flex}.user-form{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.modal-content.view-modal{max-width:450px}.user-details{flex-direction:column;gap:1.5rem;padding:1.25rem;display:flex}.detail-section{flex-direction:column;gap:.5rem;display:flex}.detail-section label{color:var(--color-text);text-transform:uppercase;letter-spacing:.3px;font-size:.8rem;font-weight:600}.detail-value{color:var(--color-secondary);margin:0;font-size:.95rem;font-weight:500}.user-avatar-large{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto;font-size:2rem;font-weight:600;display:flex}@media (width<=768px){.users-container{box-sizing:border-box;width:100%;padding:.75rem}.users-header{flex-direction:column;gap:.75rem;width:100%}.users-header h2{width:100%;font-size:1.25rem}.users-header>div:first-child{width:100%}.btn-primary{justify-content:center;width:100%;padding:.5rem .75rem;font-size:.85rem}.users-filters,.search-box{width:100%}.users-table-wrapper{-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.users-table{min-width:450px;font-size:.75rem}.users-table th,.users-table td{white-space:nowrap;padding:.4rem .5rem}.users-table th:last-child,.users-table td:last-child{z-index:10;background:#fff;padding:.4rem .3rem;position:sticky;right:0}.users-table thead th:last-child{background:#f9fafb}.user-name{text-overflow:ellipsis;gap:.25rem;max-width:150px;overflow:hidden}.user-avatar{flex-shrink:0;width:24px;height:24px;font-size:.7rem}.btn-icon-small{width:24px;height:24px;font-size:.7rem}.actions{gap:.1rem}.modal-content{width:95%;max-width:95%}.user-form,.modal-header{padding:.75rem}.modal-header h3{font-size:1rem}.user-details{gap:1rem;padding:.75rem}.user-avatar-large{width:50px;height:50px;font-size:1.25rem}.detail-section label{font-size:.7rem}.detail-value{word-break:break-word;font-size:.85rem}}@media (width<=480px){.users-container{padding:.5rem}.users-header h2{font-size:1.1rem}.users-header p{font-size:.8rem}.btn-primary{padding:.4rem .6rem;font-size:.8rem}.search-input{padding:.4rem .6rem .4rem 2rem;font-size:.8rem}.users-table{min-width:400px;font-size:.7rem}.users-table th,.users-table td{padding:.3rem .4rem}.user-name{max-width:100px}.user-avatar{width:20px;height:20px;font-size:.65rem}.btn-icon-small{width:20px;height:20px}.modal-content{width:98%;max-width:98%}.user-details{padding:.5rem}.user-avatar-large{width:40px;height:40px;font-size:1rem}}.dark .users-header h2{color:#f3f4f6}.dark .users-table-wrapper{background:#1f2937;box-shadow:0 1px 3px #0000004d}.dark .users-table thead{background:#374151;border-bottom-color:#4b5563}.dark .users-table th{color:#f3f4f6}.dark .users-table tbody tr{border-bottom-color:#374151}.dark .users-table tbody tr:hover{background:#374151}.dark .users-table td{color:#f3f4f6}.dark .search-input{color:#f3f4f6;background:#374151;border-color:#4b5563}.dark .search-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.dark .modal-content{background:#1f2937;box-shadow:0 20px 60px #00000080}.dark .modal-header h3,.dark .form-group label{color:#f3f4f6}.dark .form-group input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa1a}.dark .detail-section label{color:#9ca3af}.dark .detail-value{color:#f3f4f6}.dark .users-table tbody tr.user-row:hover{background:#374151}@media (width<=768px){.dark .users-table th:last-child,.dark .users-table td:last-child{background:#1f2937}.dark .users-table thead th:last-child{background:#374151}}.accommodations-container{padding:1.5rem}.accommodations-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.accommodations-header h2{color:var(--color-secondary);margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.accommodations-header p{color:var(--color-text);margin:0;font-size:.9rem}.accommodations-filters{align-items:stretch;gap:1rem;margin-bottom:1.5rem;display:flex}.accommodations-filters .search-icon{color:var(--color-text);pointer-events:none;background:0 0;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.accommodations-filters .search-input{box-sizing:border-box;border:1px solid #e5e7eb;border-radius:6px;width:100%;height:100%;padding:.5rem .75rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.accommodations-grid{flex-direction:column;gap:1.5rem;display:flex}.accommodation-card{background:#fff;border-radius:8px;padding:1.25rem;transition:box-shadow .2s;box-shadow:0 1px 3px #0000001a}.accommodation-card:hover{box-shadow:0 4px 12px #00000026}.type-badge{text-transform:uppercase;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;display:inline-block}.type-badge.hotel{color:#1e40af;background:#dbeafe}.type-badge.villa{color:#065f46;background:#d1fae5}.card-address{color:var(--color-text);margin-bottom:1rem;font-size:.85rem}.rooms-section{border-top:1px solid #f3f4f6;margin-top:1rem;padding-top:1rem}.rooms-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.rooms-toggle{cursor:pointer;color:var(--color-secondary);background:0 0;border:none;align-items:center;gap:.5rem;padding:0;transition:color .2s;display:flex}.rooms-toggle:hover{color:var(--color-primary)}.rooms-toggle h4{color:inherit;margin:0;font-size:.95rem;font-weight:600}.toggle-icon{justify-content:center;align-items:center;width:20px;height:20px;font-size:.8rem;transition:transform .2s;display:flex}.btn-secondary{color:var(--color-secondary);cursor:pointer;background:#f3f4f6;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.35rem .75rem;font-family:Roboto,sans-serif;font-size:.85rem;font-weight:500;transition:background .2s;display:flex}.rooms-header h4{color:var(--color-secondary);margin:0;font-size:.95rem;font-weight:600}.rooms-table-wrapper{background:#fff;border:1px solid #e5e7eb;border-radius:6px;overflow-x:auto}.rooms-table{border-collapse:collapse;width:100%;font-size:.9rem}.rooms-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.rooms-table th{text-align:left;color:var(--color-secondary);text-transform:uppercase;letter-spacing:.3px;padding:.75rem 1rem;font-size:.85rem;font-weight:600}.rooms-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .2s}.rooms-table tbody tr:hover{background:#f0f9fa}.rooms-table td{color:var(--color-secondary);vertical-align:middle;padding:.75rem 1rem}.rooms-table .room-name{font-weight:600}.rooms-table .editable-cell{padding:.5rem}.rooms-table .editable-cell input{border:1px solid #e5e7eb;border-radius:4px;width:100%;min-width:100px;padding:.5rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.rooms-table .editable-cell input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #22919c1a}.rooms-table .actions{gap:.25rem;display:flex}.table-actions{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:.5rem;padding:1rem;display:flex}.room-item{background:#f9fafb;border-radius:6px;justify-content:space-between;align-items:flex-start;padding:.75rem;display:flex}.room-info strong{color:var(--color-secondary);margin-bottom:.25rem;font-size:.95rem;font-weight:600}.room-location,.room-beds,.room-capacity,.room-cost{color:var(--color-text);align-items:center;gap:.25rem;font-size:.85rem;display:flex}.room-location svg,.room-beds svg,.room-capacity svg,.room-cost svg{width:14px;height:14px;color:inherit;stroke:currentColor}.room-actions{gap:.25rem;display:flex}.btn-icon-tiny{width:28px;height:28px;color:var(--color-secondary);cursor:pointer;background:#fff;border:none;border-radius:4px;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex}.btn-icon-tiny:hover{background:#e5e7eb}.btn-icon-tiny.btn-danger:hover{color:#dc2626;background:#fee2e2}.no-rooms{color:var(--color-text);text-align:center;padding:1rem;font-size:.85rem;font-style:italic}.modal-large{max-width:600px}.accommodation-form,.room-form{flex-direction:column;gap:1rem;padding:1.25rem;display:flex}.form-group textarea{resize:vertical;border:1px solid #e5e7eb;border-radius:6px;padding:.5rem .75rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.form-group textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #22919c1a}.form-group select{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:.5rem .75rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.form-group select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #22919c1a}.bed-configuration{background:#f9fafb;border-radius:6px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;padding:1rem;display:grid}.bed-type-item{flex-direction:column;gap:.5rem;display:flex}.bed-type-item label{color:var(--color-secondary);font-size:.85rem;font-weight:500}.bed-type-item input{border:1px solid #e5e7eb;border-radius:6px;padding:.5rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s}.bed-type-item input:focus{border-color:var(--color-primary);outline:none}.dark .accommodation-card{background:#1f2937;box-shadow:0 1px 3px #0000004d}.dark .accommodation-card:hover{box-shadow:0 4px 12px #00000080}.dark .card-header h3,.dark .rooms-header h4,.dark .room-info strong{color:#f3f4f6}.dark .card-description,.dark .card-address,.dark .room-location,.dark .room-beds,.dark .room-capacity,.dark .room-cost,.dark .no-rooms{color:#d1d5db}.dark .rooms-section{border-top-color:#374151}.dark .room-item{background:#374151}.dark .btn-icon-tiny{color:#f3f4f6;background:#374151}.dark .btn-icon-tiny:hover{background:#4b5563}.dark .filter-select,.dark .form-group select,.dark .form-group textarea,.dark .bed-type-item input{color:#f3f4f6;background:#374151;border-color:#4b5563}.dark .bed-configuration{background:#374151}.dark .bed-type-item label,.dark .form-group-checkbox label{color:#f3f4f6}@media (width<=768px){.accommodations-container{padding:1rem}.accommodations-header{flex-direction:column;gap:1rem}.accommodations-grid,.form-row,.bed-configuration{grid-template-columns:1fr}}.rates-list{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:1.25rem;padding:1rem;display:flex}.rate-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex-direction:column;gap:.75rem;padding:1.25rem;display:flex;box-shadow:0 1px 2px #0000000d}.rate-info{flex-direction:column;gap:.5rem;display:flex}.rate-info label{color:var(--color-secondary);margin:0;font-size:1.05rem;font-weight:600}.rate-description{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.rate-item input{border:1px solid #e5e7eb;border-radius:6px;width:100%;max-width:200px;padding:.7rem .8rem;font-size:1rem;font-weight:500}@media (width<=768px){.rooms-table th,.rooms-table td{padding:.5rem .75rem;font-size:.8rem}.rooms-table .editable-cell input{min-width:80px}}.map-modal{background:#fff;border-radius:8px;flex-direction:column;width:800px;max-width:90vw;max-height:90vh;display:flex;overflow:hidden}.map-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.map-modal-header h3{color:var(--color-secondary);margin:0}.map-modal-content{background:#f9fafb;flex:1;justify-content:center;align-items:center;padding:1rem;display:flex;overflow:auto}.map-image{-o-object-fit:contain;object-fit:contain;border-radius:4px;max-width:100%;max-height:70vh}.map-iframe{border:none;border-radius:4px;width:100%;height:70vh}.map-modal-footer{background:#fff;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:.5rem;padding:1rem 1.5rem;display:flex}.map-modal-footer a{text-decoration:none}.rates-container{background:var(--bg-primary);min-height:100vh;padding:2rem;font-family:Roboto,sans-serif}.rates-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.rates-header-info h1{color:var(--color-secondary);margin:0;font-size:2rem;font-weight:600}.rates-header-info p{color:var(--text-secondary);margin:.5rem 0 0;font-size:.95rem}.btn-primary{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:flex}.btn-primary svg{width:18px;height:18px}.rates-filters{flex-wrap:wrap;align-items:stretch;gap:1rem;margin-bottom:1.5rem;display:flex}.search-box{flex:1;min-width:200px;max-width:400px;position:relative}.search-box svg{color:var(--text-secondary);pointer-events:none;width:18px;height:18px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.search-box input{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:8px;padding:.75rem 1rem .75rem 2.5rem;font-size:.95rem;transition:border-color .2s}.search-box input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #228b8b1a}.filter-select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;box-sizing:border-box;border-radius:8px;min-width:200px;max-width:300px;padding:.75rem 1rem;font-size:.95rem;transition:border-color .2s}.filter-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #228b8b1a}.rates-table-container{background:#fff;border-radius:8px;overflow:auto hidden;box-shadow:0 1px 2px #0000000d}.rates-table{border-collapse:collapse;width:100%}.rates-table thead{background:#f9fafb;border-bottom:1px solid #e5e7eb}.rates-table th{text-align:left;color:var(--color-secondary);text-transform:uppercase;letter-spacing:.3px;padding:.5rem .75rem;font-size:.8rem;font-weight:600}.rates-table tbody tr{border-bottom:1px solid #f3f4f6;transition:background .2s}.rates-table tbody tr:hover{background:#f0f9fa}.rates-table td{color:var(--color-secondary);padding:.5rem .75rem;font-size:.9rem}.rate-name{color:var(--color-secondary);font-weight:600}.rate-description{color:var(--text-secondary);white-space:normal;max-width:300px;font-size:.9rem}.badge{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:3px;padding:.15rem .4rem;font-size:.7rem;font-weight:500;display:inline-block}.badge-primary{color:var(--color-primary);background:#22919c26}.badge-secondary{color:#4caf50;background:#4caf5026}.badge-unique{color:var(--color-primary);background:#22919c26}.badge-additional{color:#4caf50;background:#4caf5026}.status-badge{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:3px;padding:.15rem .4rem;font-size:.7rem;font-weight:500;display:inline-block}.actions{gap:.25rem;display:flex}.btn-icon-small.delete:hover{color:#dc2626;background:#fee2e2}.empty-state{text-align:center;color:var(--text-secondary);padding:3rem 2rem}.empty-icon{opacity:.5;margin-bottom:1rem;font-size:3rem}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-header h2{color:var(--text-primary);margin:0;font-size:1.5rem}.btn-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:color .2s;display:flex}.btn-close:hover{color:var(--text-primary)}.btn-close svg{width:24px;height:24px}.modal-form{padding:1.5rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=number],.form-group textarea,.form-group select{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:8px;padding:.75rem;font-family:Roboto,sans-serif;font-size:.95rem;transition:border-color .2s}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group input[type=number]:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #228b8b1a}.form-group.checkbox{align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex;flex-direction:row!important}.form-group.checkbox input[type=checkbox]{display:none}.switch input{display:none}.slider{cursor:pointer;background-color:#ccc;border-radius:26px;transition:all .4s;position:absolute;inset:0}input:focus+.slider{box-shadow:0 0 1px var(--color-primary)}.modal-actions{border-top:1px solid var(--border-color);justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;display:flex}.rates-loading{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.loading-spinner{border:4px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.dark .rates-container{background:#0f172a}.dark .rates-header-info h1{color:#f1f5f9}.dark .rates-header-info p{color:#94a3b8}.dark .search-box input,.dark .filter-select{color:#f3f4f6;background:#1f2937;border-color:#4b5563}.dark .search-box input:focus,.dark .filter-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #228b8b33}.dark .rates-table-container{background:#1e293b;border-color:#334155}.dark .rates-table thead{background:#374151;border-bottom-color:#4b5563}.dark .rates-table th{color:#f1f5f9}.dark .rates-table tbody tr{border-bottom-color:#374151}.dark .rates-table tbody tr:hover{background:#374151}.dark .rates-table td{color:#f1f5f9}.dark .rate-name{color:#06b6d4}.dark .rate-description{color:#94a3b8}.dark .modal-content{background:#1e293b;border-color:#334155}.dark .form-group input[type=text],.dark .form-group input[type=email],.dark .form-group input[type=number],.dark .form-group textarea,.dark .form-group select{color:#f3f4f6;background:#0f172a;border-color:#4b5563}.dark .form-group input[type=text]:focus,.dark .form-group input[type=email]:focus,.dark .form-group input[type=number]:focus,.dark .form-group textarea:focus,.dark .form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #228b8b33}.dark .btn-secondary{color:#f1f5f9;background:#374151;border-color:#4b5563}.dark .empty-state{color:#94a3b8}.dark .empty-state h3{color:#f1f5f9}@media (width<=768px){.rates-container{padding:.75rem}.rates-header{flex-direction:column;align-items:flex-start;gap:1rem}.rates-header-info h1{font-size:1.5rem}.rates-header-info p{font-size:.85rem}.btn-primary{justify-content:center;width:100%}.rates-filters{flex-direction:column;gap:.75rem}.search-box{max-width:100%}.filter-select{width:100%;min-width:unset}.rates-table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.rates-table{min-width:550px;font-size:.85rem}.rates-table th,.rates-table td{padding:.75rem .5rem}.rate-description{max-width:200px}.actions-cell{gap:.25rem}.btn-icon{width:32px;height:32px}.btn-icon svg{width:16px;height:16px}.modal-content{max-width:90vw}.modal-header{padding:1rem}.modal-header h2{font-size:1.3rem}.modal-form{padding:1rem}.form-group{margin-bottom:1rem}.modal-actions{flex-direction:column;gap:.75rem}.btn-primary,.btn-secondary{width:100%}}@media (width<=480px){.rates-container{padding:.5rem}.rates-header-info h1{font-size:1.25rem}.rates-header-info p{font-size:.8rem}.rates-table{min-width:480px;font-size:.8rem}.rates-table th,.rates-table td{padding:.6rem .4rem}.rate-name{font-size:.9rem}.rate-description{max-width:150px;font-size:.8rem}.badge,.status-badge{padding:.25rem .5rem;font-size:.7rem}.btn-icon{width:28px;height:28px;padding:.3rem}.btn-icon svg{width:14px;height:14px}.modal-header h2{font-size:1.1rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=number],.form-group textarea,.form-group select{padding:.6rem;font-size:.9rem}.form-group label{font-size:.9rem}}.pdf-link{color:var(--color-primary);align-items:center;gap:.25rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-flex}.pdf-link:hover{color:var(--color-secondary);text-decoration:underline}.no-pdf{color:var(--text-secondary);font-size:.85rem;font-style:italic}.file-link{color:var(--color-primary);margin-top:.5rem;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-block}.file-link:hover{text-decoration:underline}.form-group input[type=file]{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);cursor:pointer;border-radius:8px;padding:.5rem;font-size:.9rem}.form-group input[type=file]:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #228b8b1a}.weddings-container{padding:1.5rem}.weddings-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.weddings-header h2{color:var(--color-secondary);margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.weddings-header p{color:var(--color-text);margin:0;font-size:.9rem}.weddings-filters{align-items:stretch;gap:1rem;margin-bottom:1.5rem;display:flex}.search-box{flex:1;max-width:400px;position:relative}.weddings-filters .search-icon{color:var(--color-text);background:0 0;justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.weddings-filters .search-input{box-sizing:border-box;border:1px solid #e5e7eb;border-radius:6px;width:100%;height:100%;padding:.5rem .75rem .5rem 2.25rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.filter-select{cursor:pointer;box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:6px;min-width:150px;height:100%;padding:.5rem .75rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s}.filter-select:focus{border-color:var(--color-primary);outline:none}.view-mode-buttons{gap:.5rem;margin-left:auto;display:flex}.view-btn{cursor:pointer;width:40px;height:40px;color:var(--color-text);background:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:center;align-items:center;font-size:1.25rem;transition:all .2s;display:flex}.view-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#22919c0d}.view-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.weddings-list{flex-direction:column;gap:1.5rem;display:flex}.weddings-list .wedding-card{border:0;border-left:4px solid var(--color-primary);background:#fff;transition:box-shadow .2s;box-shadow:0 1px 3px #0000001a}.weddings-list .wedding-card:hover{box-shadow:0 4px 12px #00000026}.weddings-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.weddings-grid .wedding-card{background:#fff;border:0;border-radius:8px;flex-direction:column;padding:1rem;transition:box-shadow .2s;display:flex;box-shadow:0 1px 3px #0000001a}.wedding-card:hover{box-shadow:0 4px 12px #00000026}.weddings-grid .wedding-card{border-top:4px solid var(--color-primary)}.card-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.card-header h3{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.wedding-slug{color:var(--color-text);background:#f3f4f6;border-radius:4px;padding:.25rem .75rem;font-family:Courier New,monospace;font-size:.8rem;display:inline-block}.weddings-grid .card-actions{flex-wrap:wrap;gap:.5rem}.wedding-stats{background:#f9fafb;border-radius:6px;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:.75rem;display:flex}.stat-item{flex-direction:column;gap:.25rem;display:flex}.stat-label{text-transform:uppercase;color:var(--color-text);letter-spacing:.5px;font-size:.75rem;font-weight:600}.stat-value{color:var(--color-secondary);justify-content:center;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.stat-value-dashboard{justify-content:flex-start}.stat-value svg{width:16px;height:16px}.wedding-metrics{grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem;display:grid}.metric-item{background:#f9fafb;border-radius:6px;padding:.75rem}.metric-header{flex-direction:column;gap:.5rem;display:flex}.metric-label{text-transform:uppercase;color:var(--color-text);letter-spacing:.5px;align-items:center;gap:.5rem;font-size:.75rem;font-weight:600;display:flex}.metric-label svg{width:16px;height:16px}.metric-value{color:var(--color-secondary);font-size:1.5rem;font-weight:700}.progress-bar-container{margin-bottom:1rem}.progress-bar{background:#e5e7eb;border-radius:4px;width:100%;height:8px;margin-bottom:.5rem;overflow:hidden}.progress-text{text-align:center;margin-top:.25rem;font-weight:400;display:block;color:#6b7280!important;opacity:.6!important;font-size:.65rem!important}.card-description{color:var(--color-text);margin-bottom:1rem;font-size:.9rem;line-height:1.5}.wedding-dates{background:#f9fafb;border-radius:6px;flex-grow:1;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem;padding:1rem;display:grid}.weddings-grid .wedding-dates{grid-template-columns:1fr;gap:.75rem;margin-bottom:1rem;padding:.75rem}.date-item{flex-direction:column;gap:.5rem;display:flex}.date-label{text-transform:uppercase;color:var(--color-text);letter-spacing:.5px;font-size:.75rem;font-weight:600}.date-value{color:var(--color-secondary);align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.date-value svg{width:16px;height:16px}.date-value.upcoming{color:#059669}.date-value.past{color:#6b7280}.days-badge{color:#065f46;background:#d1fae5;border-radius:12px;margin-left:.5rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.wedding-status{gap:.5rem;display:flex}.status-badge{text-transform:uppercase;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;display:inline-block}.status-badge.active{color:#1e40af;background:#dbeafe}.status-badge.draft{color:#92400e;background:#fef3c7}.btn-icon-small.btn-danger:hover{color:#dc2626;background:#fee2e2}.btn-icon-small.btn-publish{color:#fff;background:#10b981}.btn-icon-small.btn-publish:hover{background:#059669}.btn-icon-small.btn-view{background:var(--color-primary);color:#fff}.btn-icon-small.btn-view:hover{background:#1a7a7a}.modal-content-bodas{max-width:800px!important}.switch{flex-shrink:0;order:1;width:50px;height:26px;display:inline-block;position:relative}.switch input{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute;top:0;left:0}.slider{cursor:pointer;pointer-events:none;background-color:#ccc;border-radius:26px;transition:all .4s;position:absolute;inset:0}.slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .4s;position:absolute;bottom:3px;left:3px}input:checked+.slider{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%)}input:checked+.slider:before{transform:translate(24px)}.form-group.checkbox{align-items:center;gap:.75rem;display:flex}.form-group.checkbox label:not(.switch){cursor:pointer;-webkit-user-select:none;user-select:none;order:2;margin:0;font-weight:500;margin-bottom:0!important;display:inline!important}.form-group input,.form-group textarea{border:1px solid #e5e7eb;border-radius:6px;padding:.5rem .75rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #22919c1a}.readonly-input{cursor:not-allowed;color:var(--color-text);background:#f9fafb!important}.readonly-input:focus{box-shadow:none!important;border-color:#e5e7eb!important;outline:none!important}.dark .readonly-input{color:#d1d5db!important;background:#374151!important}.form-group textarea{resize:vertical}.form-group small{color:var(--color-text);margin-top:-.25rem;font-size:.8rem}.form-group-checkbox{align-items:center;gap:.5rem;display:flex}.form-group-checkbox label{color:var(--color-secondary);cursor:pointer;align-items:center;gap:.5rem;margin:0;font-size:.9rem;display:flex}.form-group-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px}.modal-actions{border-top:1px solid #f3f4f6;justify-content:flex-end;gap:1rem;padding-top:1rem;display:flex}.btn-primary{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-family:Roboto,sans-serif;font-size:.9rem;font-weight:500;transition:background .2s;display:flex}.btn-secondary{color:var(--color-secondary);cursor:pointer;background:#f3f4f6;border:none;border-radius:6px;padding:.5rem 1rem;font-family:Roboto,sans-serif;font-size:.9rem;font-weight:500;transition:background .2s}.btn-icon{justify-content:center;align-items:center;width:18px;height:18px;display:flex}.btn-icon svg{width:18px;height:18px}.dark .wedding-card{background:#1f2937;box-shadow:0 1px 3px #0000004d}.dark .wedding-card:hover{box-shadow:0 4px 12px #00000080}.dark .card-header h3,.dark .weddings-header h2{color:#f3f4f6}.dark .card-description,.dark .weddings-header p,.dark .date-label{color:#d1d5db}.dark .wedding-slug{color:#f3f4f6;background:#374151}.dark .wedding-dates{background:#374151}.dark .date-value{color:#f3f4f6}.dark .filter-select,.dark .search-input{color:#f3f4f6;background:#374151;border-color:#4b5563}.dark .modal-header{border-bottom-color:#374151}.dark .modal-header h3{color:#f3f4f6}.dark .modal-close:hover{background:#374151}.dark .form-group input,.dark .form-group textarea{color:#f3f4f6;background:#374151;border-color:#4b5563}.dark .form-group small{color:#d1d5db}.dark .form-group-checkbox label{color:#f3f4f6}.dark .modal-actions{border-top-color:#374151}.dark .wedding-stats,.dark .metric-item{background:#374151}.dark .stat-label,.dark .metric-label{color:#d1d5db}.dark .stat-value,.dark .metric-value{color:#f3f4f6}.dark .progress-bar{background:#4b5563}@media (width<=1024px){.weddings-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.weddings-container{padding:1rem}.weddings-header{flex-direction:column;gap:1rem}.weddings-filters{flex-direction:column}.search-box{max-width:100%}.view-mode-buttons{width:100%;margin-left:0}.weddings-grid{grid-template-columns:1fr}.view-btn{flex:1}.form-row,.wedding-dates,.weddings-grid{grid-template-columns:1fr}.modal-content{width:95%}}@media (width<=480px){.weddings-filters{gap:.5rem}.view-mode-buttons{gap:.25rem}.view-btn{width:36px;height:36px;font-size:1.1rem}.card-header{flex-direction:column;gap:.5rem}.card-actions{width:100%}.weddings-grid .card-actions{gap:.25rem}}.wedding-dashboard{background:#f8fafc;width:100%;min-height:100vh;padding:0}.wd-wedding-card{background:#fff;border:none;border-bottom:1px solid #e2e8f0;border-radius:0;justify-content:space-between;align-items:center;margin-bottom:0;padding:2rem;display:flex;box-shadow:0 1px 3px #00000014}.wd-wedding-info{flex:1}.wd-wedding-name{color:#1e293b;margin:0;font-size:2rem;font-weight:700;line-height:1.2}.wd-wedding-subtitle{color:#64748b;margin:.5rem 0 0;font-size:.875rem;font-weight:400}.wd-countdown-section{flex-shrink:0;margin-left:2rem}.wd-kpis-section{margin-bottom:0;padding:2rem}.wd-section-title{color:#1e293b;margin:0 0 1.5rem;font-size:1.25rem;font-weight:600}.wd-kpis-row{grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:1.5rem;display:grid}.wd-kpis-row:last-child{margin-bottom:0}.wd-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:row;align-items:flex-start;gap:1rem;padding:1.5rem;transition:all .2s;display:flex;box-shadow:0 1px 3px #00000014}.wd-kpi-card.large{grid-column:span 2}.wd-kpi-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.wd-kpi-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.wd-kpi-icon svg{color:#fff;width:24px;height:24px}.wd-kpi-icon.total{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.wd-kpi-icon.paid{background:linear-gradient(135deg,#10b981,#059669)}.wd-kpi-icon.partial{background:linear-gradient(135deg,#f59e0b,#d97706)}.wd-kpi-icon.pending{background:linear-gradient(135deg,#ef4444,#dc2626)}.wd-kpi-icon.collected{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.wd-kpi-icon.goal{background:linear-gradient(135deg,#06b6d4,#0891b2)}.wd-kpi-content{flex:1;width:100%}.wd-kpi-number{color:#1e293b;margin:0;font-size:1.75rem;font-weight:700;line-height:1}.wd-kpi-card.large .wd-kpi-number{font-size:2rem}.wd-kpi-label{color:#64748b;margin:0;font-size:.875rem;font-weight:500}.wd-loading-state{color:#64748b;flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.wd-loading-spinner{border:4px solid #f1f5f9;border-top:4px solid var(--color-primary);border-radius:50%;width:48px;height:48px;margin-bottom:1rem;animation:1s linear infinite spin}.wd-header-left{flex:1}.wd-dashboard-title{color:#1e293b;margin:0 0 .5rem;font-size:2rem;font-weight:700;line-height:1.2}.wd-dashboard-subtitle{color:#64748b;margin:0;font-size:.95rem;font-weight:400}.wd-header-right{flex-shrink:0}.wd-countdown-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.wd-countdown-icon{color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.wd-countdown-icon svg{width:24px;height:24px}.wd-countdown-content{text-align:center}.wd-countdown-number{color:#1e293b;margin-bottom:.25rem;font-size:2rem;font-weight:700;line-height:1}.wd-countdown-label{color:#64748b;font-size:.875rem;font-weight:500}.wd-stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.wd-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:1rem;padding:1.5rem;transition:all .2s;display:flex;box-shadow:0 1px 3px #0000001a}.wd-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.wd-stat-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.wd-stat-icon svg{color:#fff;width:28px;height:28px}.wd-stat-icon.guests{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.wd-stat-icon.confirmed{background:linear-gradient(135deg,#10b981,#059669)}.wd-stat-icon.pending{background:linear-gradient(135deg,#f59e0b,#d97706)}.wd-stat-icon.rooms{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.wd-stat-content{flex:1}.wd-stat-number{color:#1e293b;margin-bottom:.25rem;font-size:2rem;font-weight:700;line-height:1}.wd-stat-label{color:#64748b;font-size:.875rem;font-weight:500}.wd-dashboard-content{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.wd-dashboard-column{flex-direction:column;gap:1.5rem;display:flex}.wd-dashboard-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.wd-card-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.wd-card-title{color:#1e293b;margin:0;font-size:1.125rem;font-weight:600}.wd-card-action{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.5rem;transition:all .2s}.wd-card-action:hover{color:#1e293b;background:#f8fafc}.wd-card-action svg{width:20px;height:20px}.wd-financial-stats{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.wd-financial-item{justify-content:space-between;align-items:center;display:flex}.wd-financial-label{color:#64748b;font-size:.875rem;font-weight:500}.wd-financial-value{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:1.125rem;font-weight:600}.wd-financial-value.total{color:#1e293b}.wd-financial-value.collected{color:#10b981}.wd-financial-value.pending{color:#f59e0b}.wd-progress-bar{background:#f1f5f9;border-radius:4px;width:100%;height:8px;margin-bottom:.75rem;overflow:hidden}.wd-progress-fill{background:linear-gradient(90deg,#3b82f6,#1d4ed8);border-radius:4px;height:100%;transition:width .3s}.wd-progress-text{color:#64748b;text-align:center;font-size:.875rem;font-weight:500}.wd-activity-list{flex-direction:column;gap:1rem;display:flex}.wd-activity-item{border-radius:8px;align-items:center;gap:1rem;padding:.75rem;transition:background .2s;display:flex}.wd-activity-item:hover{background:#f8fafc}.wd-activity-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.wd-activity-icon svg{color:#fff;width:20px;height:20px}.wd-activity-icon.payment{background:linear-gradient(135deg,#10b981,#059669)}.wd-activity-icon.guest{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.wd-activity-icon.room{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.wd-activity-content{flex:1}.wd-activity-title{color:#1e293b;margin-bottom:.25rem;font-size:.875rem;font-weight:600}.wd-activity-desc{color:#64748b;margin-bottom:.25rem;font-size:.813rem}.wd-activity-time{color:#94a3b8;font-size:.75rem}.wd-chart-container{justify-content:center;align-items:center;height:240px;display:flex}.wd-chart-placeholder{color:#94a3b8;flex-direction:column;align-items:center;gap:1rem;display:flex}.wd-chart-icon{background:#f1f5f9;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.wd-chart-icon svg{color:#64748b;width:32px;height:32px}.wd-chart-text{color:#64748b;font-size:.875rem;font-weight:500}.wd-quick-actions{flex-direction:column;gap:.75rem;display:flex}.wd-quick-action-btn{cursor:pointer;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:1rem;padding:1rem;transition:all .2s;display:flex}.wd-quick-action-btn:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translate(4px)}.wd-action-icon{background:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.wd-action-icon svg{color:#3b82f6;width:20px;height:20px}.wd-action-content{flex:1}.wd-action-title{color:#1e293b;margin-bottom:.25rem;font-size:.875rem;font-weight:600}.wd-action-desc{color:#64748b;font-size:.813rem}.dark .wedding-dashboard{background:#0f172a}.dark .wd-wedding-card{background:#1e293b;border-color:#334155}.dark .wd-wedding-name{color:#f1f5f9}.dark .wd-wedding-subtitle{color:#94a3b8}.dark .wd-section-title{color:#f1f5f9}.dark .wd-kpi-card{background:#1e293b;border-color:#334155}.dark .wd-kpi-number{color:#f1f5f9}.dark .wd-kpi-label{color:#94a3b8}.dark .wd-countdown-card,.dark .wd-stat-card,.dark .wd-dashboard-card{background:#1e293b;border-color:#334155}.dark .wd-countdown-number,.dark .wd-stat-number,.dark .wd-card-title,.dark .wd-activity-title,.dark .wd-action-title{color:#f1f5f9}.dark .wd-countdown-label,.dark .wd-stat-label,.dark .wd-financial-label,.dark .wd-activity-desc,.dark .wd-action-desc,.dark .wd-progress-text{color:#94a3b8}.dark .wd-progress-bar{background:#334155}.dark .wd-quick-action-btn{background:#1e293b;border-color:#334155}.dark .wd-quick-action-btn:hover{background:#334155;border-color:#475569}.dark .wd-action-icon{background:#0f172a}.dark .wd-activity-item:hover{background:#1e293b}@media (width<=1024px){.wd-dashboard-content{grid-template-columns:1fr}.wd-stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.wd-kpis-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.wd-kpi-card.large{grid-column:span 1}}@media (width<=768px){.wedding-dashboard{padding:1rem}.wd-wedding-card{text-align:center;flex-direction:column;gap:1.5rem}.wd-wedding-name{font-size:2rem}.wd-countdown-section{align-self:center}.wd-kpis-row{grid-template-columns:1fr}.wd-kpi-card.large{grid-column:span 1}.wd-dashboard-header{flex-direction:column;align-items:stretch;gap:1.5rem}.wd-header-right{align-self:center}.wd-stats-grid{grid-template-columns:1fr}.wd-dashboard-title{font-size:1.5rem}.wd-countdown-number{font-size:1.75rem}.wd-stat-number,.wd-kpi-number{font-size:1.5rem}.wd-kpi-card.large .wd-kpi-number{font-size:1.75rem}}.wedding-accommodations{padding:1.5rem}.form-group.hidden{display:none}.room-cost-breakdown{border-left:3px solid var(--color-primary);background:#f8f9fa;border-radius:4px;margin-top:.75rem;padding:.75rem;font-size:.85rem}.cost-line{border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:.4rem 0;display:flex}.cost-line:last-child{border-bottom:none}.cost-line.total{border-top:2px solid var(--color-primary);color:var(--color-secondary);margin-top:.4rem;padding-top:.6rem;font-weight:600}.cost-label{color:var(--color-text);font-size:.85rem}.cost-amount{color:var(--color-primary);text-align:right;min-width:80px;font-weight:600}.room-name{color:var(--color-secondary);font-size:1rem}.room-warning{color:#ff6b6b;background:#ff6b6b1a;border-radius:3px;padding:.2rem .5rem;font-size:.75rem;font-weight:500}.room-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.room-beds{flex-wrap:wrap;gap:.5rem;display:flex}.bed-type{color:var(--text-secondary);background:#f0f0f0;border-radius:3px;padding:.2rem .5rem;font-size:.8rem}.room-details{align-items:center;gap:.75rem;display:flex}.room-capacity,.room-location{color:var(--text-secondary);font-size:.8rem}.cost-summary{background:#f0fdf4;border:2px solid #22c55e;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.cost-summary-item{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.cost-label{color:var(--color-secondary);font-size:.95rem;font-weight:600}.cost-value{color:#22c55e;font-size:1.5rem;font-weight:700}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.summary-card{background:#fff;border-radius:8px;align-items:center;gap:1rem;padding:1.5rem;display:flex;box-shadow:0 1px 3px #0000001a}.summary-card.highlight{background:linear-gradient(135deg,#22919c,#54595f)!important}.summary-card.highlight .summary-value{color:#fff!important}.summary-card.highlight .summary-label{color:#ffffffe6!important}.summary-icon{width:56px;height:56px;color:var(--color-primary);background:#f3f4f6;border-radius:12px;justify-content:center;align-items:center;display:flex}.summary-card.highlight .summary-icon{background:#fff}.summary-icon svg{width:28px;height:28px}.summary-content{flex-direction:column;gap:.25rem;display:flex}.summary-value{color:var(--color-secondary);font-size:2rem;font-weight:700;line-height:1}.summary-label{color:var(--color-text);font-size:.85rem;font-weight:500}.assignments-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;display:grid}.assignment-card{background:#fff;border-radius:8px;padding:1.5rem;transition:transform .2s,box-shadow .2s;box-shadow:0 1px 3px #0000001a}.assignment-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.assignment-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;display:flex}.assignment-header h3{color:var(--color-secondary);margin:0 0 .25rem;font-size:1.1rem;font-weight:600}.assignment-type{color:var(--color-text);text-transform:capitalize;background:#f3f4f6;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.assignment-details{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.detail-item{align-items:center;gap:.75rem;display:flex}.detail-icon{width:36px;height:36px;color:var(--color-primary);background:#f3f4f6;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.detail-icon svg{width:18px;height:18px}.detail-item>div{flex-direction:column;gap:.125rem;display:flex}.detail-value.cost{color:var(--color-primary);font-size:1.25rem}.assignment-notes{color:var(--color-text);background:#f9fafb;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.9rem}.assignment-notes strong{color:var(--color-secondary)}.rooms-summary{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.rooms-summary h4{color:var(--color-secondary);margin:0 0 .75rem;font-size:.9rem;font-weight:600}.rooms-list{flex-direction:column;gap:.5rem;display:flex}.room-item{border-left:3px solid var(--color-primary);background:#f9fafb;border-radius:6px;justify-content:space-between;align-items:center;padding:.75rem;font-size:.85rem;display:flex}.room-info{flex-direction:column;flex:1;gap:.25rem;display:flex}.room-header{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.room-name{color:var(--color-secondary);font-size:.9rem;font-weight:600}.room-bed-type{color:var(--color-primary);background:#f0f9ff;border:1px solid #bfdbfe;border-radius:4px;padding:.2rem .5rem;font-size:.8rem;font-weight:500}.room-beds{flex-wrap:wrap;gap:.5rem;margin:.25rem 0;display:flex}.bed-type{color:var(--color-primary);background:#f0f9ff;border:1px solid #bfdbfe;border-radius:3px;padding:.2rem .4rem;font-size:.75rem;font-weight:500}.room-details{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.empty-icon{width:80px;height:80px;color:var(--color-primary);background:#f3f4f6;border-radius:50%;justify-content:center;align-items:center;margin-bottom:1.5rem;display:flex}.card-actions{gap:.5rem;display:flex}.btn-icon-small{width:32px;height:32px;color:var(--color-secondary);cursor:pointer;background:#f3f4f6;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex}.btn-icon-small:hover{background:#e5e7eb}.btn-icon-small.btn-danger{color:#dc2626}.btn-icon-small.btn-danger:hover{background:#fee2e2}.btn-icon-small svg{width:18px;height:18px}.dark .summary-card,.dark .assignment-card,.dark .empty-state{background:#1f2937}.dark .summary-card.highlight{background:linear-gradient(135deg,#1e3a8a,#1e40af)}.dark .summary-icon,.dark .detail-icon,.dark .assignment-type{background:#374151}.dark .summary-card.highlight .summary-icon{background:#fff3}.dark .summary-value,.dark .detail-value,.dark .assignment-header h3,.dark .rooms-summary h4,.dark .empty-state h3{color:#f3f4f6}.dark .assignment-notes,.dark .room-item{background:#374151}.dark .assignment-header,.dark .rooms-summary{border-color:#374151}.dark .btn-icon-small{color:#d1d5db;background:#374151}.dark .btn-icon-small:hover{background:#4b5563}.dark .empty-icon{background:#374151}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px #00000026}.modal-close{color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background .2s;display:flex}.modal-close:hover{background:#f3f4f6}.modal-close svg{width:20px;height:20px}.wedding-form{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.modal-actions{border-top:1px solid #f3f4f6;justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.form-group label{color:var(--color-secondary);font-weight:500}.form-group select,.form-group input,.form-group textarea{border:1px solid #e5e7eb;border-radius:6px;padding:.75rem;font-size:.95rem;transition:border-color .2s}.form-group select:focus,.form-group input:focus,.form-group textarea:focus{border-color:var(--color-primary);outline:none}.rooms-selector{flex-direction:column;gap:.75rem;display:flex}.room-checkbox{align-items:flex-start;gap:.75rem;display:flex}.room-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--color-primary);margin-top:.25rem}.room-label{cursor:pointer;border:1px solid #e5e7eb;border-radius:6px;flex:1;padding:.75rem;transition:all .2s}.room-checkbox input[type=checkbox]:checked+.room-label{border-color:var(--color-primary);background:#f0f9ff}.room-info strong{color:var(--color-secondary);font-size:.95rem}.room-capacity,.room-cost,.room-location{color:var(--color-text);font-size:.8rem}.room-location{color:#6b7280;font-style:italic}.dark .modal-content{background:#1f2937}.dark .modal-header{background:linear-gradient(135deg,#374151,#4b5563);border-color:#374151}.dark .modal-header h2{color:#f3f4f6}.dark .modal-close{color:#9ca3af}.dark .modal-close:hover{color:#f3f4f6;background:#ffffff1a}.dark .modal-body{background:#1f2937}.dark .modal-actions{background:#374151;border-color:#4b5563}.dark .modal-body .form-group label{color:#f3f4f6}.dark .modal-body .form-group select,.dark .modal-body .form-group input,.dark .modal-body .form-group textarea{color:#f3f4f6;background:#374151;border-color:#4b5563}.dark .modal-body .form-group select:focus,.dark .modal-body .form-group input:focus,.dark .modal-body .form-group textarea:focus{border-color:var(--color-primary)}.dark .btn-secondary{color:#f3f4f6;background:#374151}.dark .btn-secondary:hover{background:#4b5563}.dark .room-bed-type{color:#93c5fd;background:#1e3a8a;border-color:#1e40af}.label-with-action{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.label-with-action label{margin:0}.btn-rate-select{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:background .2s;display:flex}.btn-rate-select:hover{background:var(--color-secondary)}.btn-rate-select svg{width:16px;height:16px}.rate-modal{width:95%;max-width:700px}.rate-modal .modal-header{border-bottom:1px solid #e5e7eb;padding:1rem 1.25rem}.rate-modal .modal-header h3{margin:0;font-size:1.25rem;font-weight:700}.rate-modal .modal-body{max-height:70vh;padding:1rem;overflow-y:auto}.rates-list{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}.rate-item{cursor:pointer;background:#fff;border:2px solid #e5e7eb;border-radius:8px;flex-direction:column;padding:.9rem;transition:all .2s;display:flex;position:relative;overflow:hidden}.rate-item:before{content:"";background:0 0;height:3px;transition:background .2s;position:absolute;top:0;left:0;right:0}.rate-item:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #22919c1f}.rate-item:hover:before{background:var(--color-primary)}.rate-item.selected{background:#f0fdf4;border-color:#22c55e;box-shadow:0 2px 8px #22c55e26}.rate-item.selected:before{background:#22c55e}.rate-info{flex:1;margin-bottom:.5rem}.rate-info h4{color:var(--color-secondary);margin:0 0 .25rem;font-size:.95rem;font-weight:700;line-height:1.3}.rate-info p{color:var(--color-text);margin:0 0 .4rem;font-size:.8rem;line-height:1.3}.rate-type{background:linear-gradient(135deg, var(--color-primary), var(--color-secondary));color:#fff;letter-spacing:.3px;text-transform:uppercase;border-radius:4px;width:fit-content;padding:.3rem .6rem;font-size:.7rem;font-weight:600;display:inline-block}.rate-check{color:#fff;background:#22c55e;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;width:24px;height:24px;margin-top:.3rem;display:flex;box-shadow:0 1px 4px #22c55e4d}.rate-check svg{width:14px;height:14px}.rates-section{margin-bottom:1.5rem}.rates-section:last-child{margin-bottom:0}.section-title{color:var(--color-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 .75rem;font-size:.95rem;font-weight:600}.rate-modal .modal-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;display:flex}@media (width<=768px){.rate-modal{max-width:90vw}.rates-list{grid-template-columns:1fr}.rate-item{flex-direction:row;justify-content:space-between;align-items:flex-start}.rate-info{flex:1;margin-bottom:0}.rate-check{align-self:flex-start;margin-top:0;margin-left:.5rem}}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.dark .modal-body::-webkit-scrollbar-track{background:#374151}.dark .modal-body::-webkit-scrollbar-thumb{background:#6b7280}.dark .modal-body::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media (width<=768px){.wedding-accommodations{padding:1rem}.page-header{flex-direction:column;gap:1rem}.assignments-grid,.summary-cards{grid-template-columns:1fr}.modal-overlay{padding:1rem}.modal-content{width:100%;max-width:none;max-height:90vh}.modal-body{max-height:60vh}.modal-header,.modal-body,.modal-actions{padding:1rem}.form-row{grid-template-columns:1fr}}.gem-modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.gem-modal-content{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;animation:.3s ease-out slideUp;display:flex;box-shadow:0 20px 25px #00000026}.gem-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.gem-modal-title{color:#1f2937;margin:0;font-size:1.25rem;font-weight:600}.gem-modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem;transition:all .2s}.gem-modal-close:hover{color:#1f2937;background:#f3f4f6}.gem-modal-close svg{width:20px;height:20px}.gem-modal-tabs{border-bottom:1px solid #e5e7eb;padding:0 1.5rem;display:flex}.gem-tab-button{color:#6b7280;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:1rem 1.5rem;font-size:.875rem;font-weight:500;transition:all .2s}.gem-tab-button:hover{color:#374151;background:#f9fafb}.gem-tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.gem-modal-body{flex:1;padding:1.5rem;overflow-y:auto}.gem-tab-content{flex-direction:column;gap:1.5rem;display:flex}.gem-guest-type-indicator{text-align:right;margin-bottom:1.5rem}.gem-type-label{color:#6b7280;letter-spacing:.025em;text-transform:uppercase;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;font-weight:500;display:inline-block}.gem-form-group{flex-direction:column;gap:.5rem;display:flex}.gem-form-group label{color:#374151;font-size:.9rem;font-weight:600}.gem-form-group input,.gem-form-group textarea,.gem-form-select{color:#1f2937;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:.75rem;font-family:inherit;font-size:.95rem;transition:all .2s}.gem-form-group input:focus,.gem-form-group textarea:focus,.gem-form-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #228b8b1a}.gem-form-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.5rem}.gem-form-select option{color:#1f2937;background:#fff;padding:.5rem}.gem-form-group textarea{resize:vertical;min-height:100px}.gem-form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.gem-btn-primary{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.gem-btn-primary:hover:not(:disabled){box-shadow:none;background:#0d7a7a;transform:none}.gem-btn-primary:disabled{opacity:.6;cursor:not-allowed}.gem-btn-secondary{color:#374151;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.gem-btn-secondary:hover{background:#e5e7eb;border-color:#9ca3af}.gem-modal-footer{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.gem-payment-summary{background:#f9fafb;border-radius:8px;gap:1rem;margin-bottom:1.5rem;padding:1rem;display:grid}.gem-payment-row{justify-content:space-between;align-items:center;display:flex}.gem-payment-label{color:#6b7280;font-size:.9rem}.gem-payment-amount{color:#1f2937;font-size:1.1rem;font-weight:600}.gem-payment-amount.positive{color:#059669}.gem-payment-amount.negative{color:#dc2626}.gem-payment-total{border-top:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding-top:1rem;display:flex}.gem-payment-total .gem-payment-amount{font-size:1.25rem;font-weight:700}.gem-payment-form{flex-direction:column;gap:1rem;display:flex}.gem-payment-type-select{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.gem-payment-type-btn{cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:.5rem;font-size:.875rem;transition:all .2s}.gem-payment-type-btn:hover{background:#e5e7eb}.gem-payment-type-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.gem-payments-list{flex-direction:column;gap:.75rem;display:flex}.gem-payment-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;transition:all .2s;display:flex}.gem-payment-item:hover{border-color:var(--color-primary);background:#f9fafb}.gem-payment-info{flex-direction:column;gap:.25rem;display:flex}.gem-payment-type{color:var(--color-secondary);font-size:.9rem;font-weight:600}.gem-payment-date{color:#6b7280;font-size:.85rem}.gem-payment-reference{color:#9ca3af;font-size:.8rem;font-style:italic}.gem-payment-amount{color:#059669;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:1.1rem;font-weight:700}.gem-empty-state{text-align:center;color:#6b7280;padding:2rem}.gem-empty-state svg{color:#d1d5db;width:48px;height:48px;margin:0 auto 1rem}.gem-empty-state p{margin:0;font-size:.9rem}.dark .gem-modal-content{background:#1f2937;border-color:#374151}.dark .gem-modal-header{border-bottom-color:#374151}.dark .gem-modal-title{color:#f9fafb}.dark .gem-modal-close{color:#9ca3af}.dark .gem-modal-close:hover{color:#f9fafb;background:#374151}.dark .gem-modal-tabs{border-bottom-color:#374151}.dark .gem-tab-button{color:#9ca3af}.dark .gem-tab-button:hover{color:#d1d5db;background:#374151}.dark .gem-tab-button.active{color:var(--color-primary)}.dark .gem-type-label{color:#9ca3af;background:#374151;border-color:#4b5563}.dark .gem-form-group label{color:#d1d5db}.dark .gem-form-group input,.dark .gem-form-group textarea,.dark .gem-form-select{color:#f3f4f6;background:#374151;border-color:#4b5563}.dark .gem-form-group input:focus,.dark .gem-form-group textarea:focus,.dark .gem-form-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #228b8b33}.dark .gem-form-select{background-color:#374151;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23d1d5db' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.dark .gem-form-select option{color:#f3f4f6;background:#374151}.dark .gem-btn-secondary{color:#d1d5db;background:#374151;border-color:#4b5563}.dark .gem-btn-secondary:hover{background:#4b5563;border-color:#6b7280}.dark .gem-modal-footer{border-top-color:#374151}.dark .gem-payment-summary{background:#374151}.dark .gem-payment-label{color:#9ca3af}.dark .gem-payment-amount{color:#f9fafb}.dark .gem-payment-total{border-top-color:#4b5563}.dark .gem-payment-type-btn{color:#d1d5db;background:#374151;border-color:#4b5563}.dark .gem-payment-type-btn:hover{background:#4b5563}.dark .gem-payment-item{background:#1f2937;border-color:#374151}.dark .gem-payment-item:hover{border-color:var(--color-primary);background:#374151}.dark .gem-payment-type{color:#d1d5db}.dark .gem-payment-date{color:#9ca3af}.dark .gem-payment-reference{color:#6b7280}.dark .gem-empty-state{color:#9ca3af}.dark .gem-empty-state svg{color:#4b5563}@media (width<=768px){.gem-modal-content{border-radius:0;max-width:100%;max-height:100vh}.gem-form-row,.gem-payment-type-select{grid-template-columns:1fr}.gem-modal-footer{flex-direction:column}.gem-modal-footer button{width:100%}}.wg-guests{box-sizing:border-box;background:#f8f9fa;max-width:100%;min-height:100vh;padding:1.5rem;overflow-x:hidden}.wg-guests-header{margin-bottom:2rem}.wg-header-info h1{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.wg-header-info p{color:var(--color-text);margin:0;font-size:.95rem}.wg-controls-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.wg-controls-left{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.wg-controls-right{align-items:center;gap:1rem;display:flex}.wg-filters{align-items:stretch;gap:1rem;margin-bottom:1.5rem;display:flex}.wg-search-box{flex:1;max-width:400px;position:relative}.wg-search-box input{box-sizing:border-box;border:1px solid #e5e7eb;border-radius:6px;width:100%;height:100%;padding:.5rem .75rem .5rem 2.25rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.wg-search-box input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #228b8b1a}.wg-search-box .wg-search-icon{color:var(--color-text);justify-content:center;align-items:center;width:18px;height:18px;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.wg-filter-select{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;min-width:150px;padding:.75rem 1rem;font-size:.9rem;transition:all .2s}.wg-filter-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #228b8b1a}.wg-btn-icon{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:8px;justify-content:center;align-items:center;padding:.75rem;transition:all .2s;display:flex}.wg-btn-icon:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.wg-btn-icon svg{width:18px;height:18px}.wg-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.wg-guests-table{border-collapse:collapse;width:100%;font-size:.9rem}.wg-guests-table thead{background:#f8fafc;border-bottom:1px solid #e5e7eb}.wg-guests-table th{text-align:left;color:#374151;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e5e7eb;padding:1rem;font-size:.85rem;font-weight:600}.wg-guests-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background-color .2s}.wg-guests-table tbody tr:hover{background:#f8fafc}.wg-guests-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:5px 10px}.wg-guest-name{font-weight:500}.wg-dependent-badge{color:#1e40af;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;background:#dbeafe;border-radius:4px;flex-shrink:0;padding:.25rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.wg-dependent-guest-row{opacity:.85;background:#f0f9ff}.wg-dependent-guest-row:hover{background:#e0f2fe}.wg-accommodation-cell{flex-direction:column;gap:.35rem;line-height:1.4;display:flex}.wg-accommodation-name{color:#374151;font-weight:500}.wg-room-name{color:#6b7280;font-size:.85rem}.wg-amount-cell{color:#374151;text-align:right;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:600}.wg-status-badge{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.wg-status-pending{color:#991b1b;background:#fee2e2}.wg-status-partial{color:#92400e;background:#fef3c7}.wg-status-paid{color:#065f46;background:#d1fae5}.wg-status-no-required{color:#6b7280;background:#f3f4f6}.wg-notes-cell{color:#6b7280;word-wrap:break-word;overflow-wrap:break-word;max-width:200px;font-size:.85rem}.wg-actions-cell{gap:.5rem;display:flex}.wg-actions-cell .wg-btn-icon{background:#f8fafc;border:1px solid #e5e7eb;padding:.5rem}.wg-actions-cell .wg-btn-icon:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.wg-empty-state{text-align:center;color:#6b7280;padding:3rem}.wg-empty-state svg{color:#d1d5db;width:64px;height:64px;margin:0 auto 1rem}.wg-empty-state h3{color:#374151;margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.wg-empty-state p{color:#6b7280;margin:0;font-size:.9rem}.wg-loading{color:#6b7280;justify-content:center;align-items:center;padding:3rem;display:flex}.wg-loading-spinner{border:3px solid #f3f4f6;border-top:3px solid var(--color-primary);border-radius:50%;width:40px;height:40px;margin-right:1rem;animation:1s linear infinite spin}.dark .wedding-guests{background:#0f172a}.dark .wg-guests-header h1{color:#f1f5f9}.dark .wg-header-info p{color:#94a3b8}.dark .wg-search-box input,.dark .wg-filter-select{color:#f3f4f6;background:#1f2937;border-color:#4b5563}.dark .wg-search-box input:focus,.dark .wg-filter-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #228b8b33}.dark .wg-btn-icon{color:#9ca3af;background:#1f2937;border-color:#4b5563}.dark .wg-btn-icon:hover{color:#fff;background:#06b6d4;border-color:#06b6d4}.dark .wg-table-container{background:#1e293b;border-color:#334155}.dark .wg-guests-table thead{background:#374151;border-bottom-color:#4b5563}.dark .wg-guests-table th{color:#f1f5f9}.dark .wg-guests-table tbody tr{border-bottom-color:#374151}.dark .wg-guests-table tbody tr:hover{background:#374151}.dark .wg-guest-name{color:#f1f5f9}.dark .wg-dependent-badge{color:#93c5fd;background:#1e3a8a}.dark .wg-dependent-guest-row{opacity:.9;background:#0c2340}.dark .wg-dependent-guest-row:hover{background:#1e3a8a}.dark .wg-accommodation-name{color:#f1f5f9}.dark .wg-room-name{color:#94a3b8}.dark .wg-amount-cell{color:#f1f5f9}.dark .wg-status-pending{color:#fca5a5;background:#7f1d1d}.dark .wg-status-partial{color:#fcd34d;background:#78350f}.dark .wg-status-paid{color:#6ee7b7;background:#064e3b}.dark .wg-status-no-required{color:#9ca3af;background:#374151}.dark .wg-actions-cell .wg-btn-icon{color:#9ca3af;background:#374151;border-color:#4b5563}.dark .wg-actions-cell .wg-btn-icon:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.dark .wg-empty-state{color:#94a3b8}.dark .wg-empty-state h3{color:#f1f5f9}.dark .wg-empty-state svg{color:#4b5563}@media (width<=768px){.dark .wg-search-box input,.dark .wg-filter-select{color:#f3f4f6;background:#1f2937;border-color:#4b5563}.dark .wg-search-box input:focus,.dark .wg-filter-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #228b8b33}.dark .wg-table-container{background:#1e293b;border-color:#334155}.dark .wg-guests-table thead{background:#374151}.dark .wg-guests-table th{color:#f1f5f9}.dark .wg-guests-table tbody tr{border-bottom-color:#374151}.dark .wg-guests-table tbody tr:hover{background:#374151}}@media (width<=1200px){.wg-guests{padding:1.5rem}.wg-guests-table{min-width:800px}}@media (width<=768px){.wg-guests{max-width:100%;padding:.75rem;overflow-x:hidden}.wg-guests-header{margin-bottom:1rem}.wg-header-info h1{font-size:1.5rem}.wg-header-info p{font-size:.85rem}.wg-controls-bar{flex-direction:column;align-items:stretch;gap:.75rem}.wg-controls-left,.wg-controls-right{flex-direction:column;width:100%}.wg-search-box{width:100%;max-width:100%}.wg-search-box input{padding:.5rem .5rem .5rem 2rem;font-size:.85rem}.wg-filter-select{width:100%;padding:.6rem .75rem;font-size:.85rem}.wg-filters{flex-direction:column;gap:.75rem}.wg-table-container{-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.wg-guests-table{min-width:550px;font-size:.8rem}.wg-guests-table th,.wg-guests-table td{white-space:nowrap;padding:.6rem .4rem}.wg-guest-name{font-size:.8rem}.wg-accommodation-cell{gap:.2rem}.wg-accommodation-name{font-size:.75rem}.wg-room-name{font-size:.7rem}.wg-amount-cell{font-size:.8rem}.wg-dependent-badge{padding:.2rem .4rem;font-size:.65rem}.wg-status-badge{padding:.2rem .5rem;font-size:.7rem}.wg-actions-cell .wg-btn-icon{padding:.4rem}.wg-actions-cell .wg-btn-icon svg{width:16px;height:16px}.wg-empty-state{padding:2rem 1rem}.wg-empty-state h3{font-size:1.1rem}.wg-empty-state p{font-size:.85rem}}@media (width<=480px){.wg-guests{padding:.5rem}.wg-header-info h1{font-size:1.25rem}.wg-header-info p{font-size:.8rem}.wg-controls-bar{gap:.5rem}.wg-search-box input{padding:.4rem .4rem .4rem 1.75rem;font-size:.8rem}.wg-search-box .wg-search-icon{width:16px;height:16px}.wg-filter-select{padding:.5rem;font-size:.8rem}.wg-table-container{border-radius:6px}.wg-guests-table{min-width:480px;font-size:.75rem}.wg-guests-table th,.wg-guests-table td{padding:.4rem .3rem}.wg-guest-name{font-size:.75rem}.wg-accommodation-name{font-size:.7rem}.wg-room-name{font-size:.65rem}.wg-amount-cell{font-size:.75rem}.wg-dependent-badge{padding:.15rem .3rem;font-size:.6rem}.wg-status-badge{padding:.15rem .4rem;font-size:.65rem}.wg-actions-cell .wg-btn-icon{padding:.3rem}.wg-actions-cell .wg-btn-icon svg{width:14px;height:14px}.wg-empty-state{padding:1.5rem .75rem}.wg-empty-state svg{width:48px;height:48px}.wg-empty-state h3{font-size:1rem}.wg-empty-state p{font-size:.8rem}}.modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.guest-info{background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;padding:.75rem}.prompts-list{flex-direction:column;gap:.75rem;display:flex}.prompt-option{text-align:left;cursor:pointer;background:#f8fafc;border:2px solid #e5e7eb;border-radius:8px;padding:1rem;transition:all .2s}.prompt-option:hover{background:#f1f5f9;border-color:#22919c}.prompt-option.selected{background:#e0f2fe;border-color:#22919c}.prompt-option:disabled{opacity:.5;cursor:not-allowed}.prompt-option-title{color:#1e293b;margin-bottom:.25rem;font-weight:600}.prompt-option-category{color:#64748b;text-transform:capitalize;font-size:.875rem}.message-preview{white-space:pre-wrap;word-wrap:break-word;background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;min-height:100px;max-height:300px;margin-bottom:1rem;padding:1rem;font-family:Roboto,sans-serif;line-height:1.6;overflow-y:auto}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}.btn-secondary{color:#64748b;background:#fff;border:1px solid #e5e7eb}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.wg-dropdown-container{display:inline-block;position:relative}.wg-dropdown-trigger{cursor:pointer;color:#64748b;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.wg-dropdown-trigger:hover{color:#22919c;background:#f1f5f9}.wg-dropdown-menu{z-index:99999;background:#fff;border:1px solid #e5e7eb;border-radius:8px;min-width:250px;margin-top:.5rem;display:none;position:fixed;box-shadow:0 4px 12px #00000026}.wg-dropdown-header{color:#1e293b;border-bottom:1px solid #e5e7eb;padding:.75rem 1rem;font-size:.875rem;font-weight:600}.wg-dropdown-item{text-align:left;cursor:pointer;color:#475569;background:0 0;border:none;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;font-size:.875rem;transition:all .2s;display:flex}.wg-dropdown-item:hover{color:#22919c;background:#f8fafc}.wg-dropdown-item svg{width:16px;height:16px}.wg-dropdown-divider{background:#e5e7eb;height:1px;margin:.5rem 0}.wg-dropdown-section-title{color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;padding:.5rem 1rem;font-size:.75rem;font-weight:600}.wg-dropdown-empty{color:#94a3b8;text-align:center;padding:.75rem 1rem;font-size:.875rem}.text-gray-500{color:#64748b}.rooming-list{padding:1.5rem}.accommodation-tabs{border-bottom:2px solid #e5e7eb;gap:.5rem;margin-bottom:2rem;display:flex;overflow-x:auto}.tab{color:var(--color-text);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.tab:hover{color:var(--color-primary);background:#f9fafb}.tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab svg{width:20px;height:20px}.accommodation-section{margin-bottom:3rem}.accommodation-info{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.info-header{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.info-header h2{color:var(--color-secondary);align-items:center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:600;display:flex}.info-header svg{width:24px;height:24px}.info-content{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;display:grid}.info-label{color:var(--color-text);font-size:.85rem;font-weight:500}.room-section{background:#fff;border-radius:8px;margin-bottom:1.5rem;overflow:hidden;box-shadow:0 1px 3px #0000001a}.room-tab{cursor:pointer;border-bottom:1px solid #e5e7eb;padding:1rem 20px;transition:all .2s;position:relative}.room-tab:hover{border-bottom-color:var(--color-primary)}.room-tab.expanded{border-bottom-width:2px;border-bottom-color:var(--color-primary)}.room-tab-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.room-tab-info{flex:1;align-items:center;gap:1rem;display:flex}.room-tab-info h3{color:var(--color-secondary);margin:0;font-size:1rem;font-weight:600}.room-tab-info .room-capacity,.room-tab-info .room-counter{color:#6b7280;font-size:.85rem;font-weight:500}.room-tab-guests{flex:2;align-items:center;gap:.5rem;display:flex}.guest-names{color:var(--color-text);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.guest-names svg{width:16px;height:16px;color:var(--color-primary)}.no-guests{color:#9ca3af;align-items:center;gap:.5rem;font-size:.9rem;font-style:italic;display:flex}.no-guests svg{color:#9ca3af;width:16px;height:16px}.room-tab-toggle{background:0 0;border:1px solid #e5e7eb;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;transition:all .2s;display:flex}.room-tab-toggle svg{color:#6b7280;width:14px;height:14px;transition:transform .2s}.room-tab:hover .room-tab-toggle{border-color:var(--color-primary);background:#f9fafb}.room-tab:hover .room-tab-toggle svg{color:var(--color-primary)}.room-tab.expanded .room-tab-toggle{background:var(--color-primary);border-color:var(--color-primary)}.room-tab.expanded .room-tab-toggle svg{color:#fff;transform:rotate(180deg)}.room-content{border-top:1px solid #f3f4f6;padding:1.5rem}.room-header{border-bottom:2px solid #f3f4f6;align-items:center;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.room-header h3{color:var(--color-secondary);flex:1;margin:0;font-size:1.1rem;font-weight:600}.room-capacity{color:var(--color-text);font-size:.85rem}.room-counter{color:var(--color-primary);background:#f0f9ff;border-radius:20px;padding:.25rem .75rem;font-size:.9rem;font-weight:600}.guests-list{flex-direction:column;gap:1.5rem;display:flex}.guest-form{border-left:3px solid var(--color-primary);background:#f9fafb;border-radius:6px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.guest-header{justify-content:space-between;align-items:center;gap:1rem;display:flex}.guest-label{color:var(--color-secondary);white-space:nowrap;align-items:center;gap:.5rem;font-weight:600;display:flex}.guest-label svg{width:18px;height:18px}.guest-payment-options{align-items:center;gap:1.5rem;display:flex}.radio-option{cursor:pointer;color:var(--color-secondary);align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.radio-option input[type=radio]{cursor:pointer;width:18px;height:18px;accent-color:var(--color-primary)}.radio-option input[type=radio]:disabled{cursor:not-allowed;opacity:.5}.radio-option.disabled{opacity:.5;cursor:not-allowed}.radio-option.disabled input[type=radio]{cursor:not-allowed}.guest-fields{grid-template-columns:2fr 1.5fr 2fr 2fr;gap:.75rem;display:grid}.guest-fields input{border:1px solid #e5e7eb;border-radius:6px;padding:.75rem;font-size:.9rem;transition:border-color .2s}.guest-fields input:focus{border-color:var(--color-primary);outline:none}.guest-fields input::placeholder{color:#9ca3af}.guest-payment-responsible{align-items:center;display:flex}.payment-select{color:var(--color-secondary);cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:6px;min-width:160px;padding:.75rem;font-size:.9rem;transition:border-color .2s}.payment-select:focus{border-color:var(--color-primary);outline:none}.payment-select option{color:var(--color-secondary);padding:.5rem}.payment-select option:checked{background:var(--color-primary);color:#fff}.btn-save-guest{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500;transition:all .2s}.btn-save-guest:hover{background:#1a7a7a}.room-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;margin-top:1rem;padding-top:1rem;display:flex}.btn-save-room{background:var(--color-primary);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.btn-save-room:hover{background:#1a7a7a;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.guest-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;margin-top:.75rem;padding-top:.75rem;display:flex}.btn-delete-guest{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.btn-delete-guest:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 8px #ef44444d}.btn-delete-guest svg{width:16px;height:16px}.empty-state{background:#fff;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex;box-shadow:0 1px 3px #0000001a}.empty-icon{color:#d1d5db;width:64px;height:64px;margin-bottom:1rem}.empty-icon svg{width:100%;height:100%}.loading{color:var(--color-text);justify-content:center;align-items:center;padding:4rem;font-size:1.1rem;display:flex}@media (width<=1024px){.guest-fields{grid-template-columns:1fr 1fr}.guest-header{flex-direction:column;align-items:flex-start}.guest-payment-options{flex-wrap:wrap;width:100%}.room-tab-header{flex-direction:column;align-items:flex-start;gap:.75rem}.room-tab-guests{width:100%}}@media (width<=768px){.rooming-list{max-width:100%;padding:.75rem;overflow-x:hidden}.page-header{flex-direction:column;gap:1rem}.page-header h1{font-size:1.5rem}.page-subtitle{font-size:.85rem}.accommodation-tabs{-webkit-overflow-scrolling:touch;gap:.25rem;margin-bottom:1.5rem;overflow-x:auto}.tab{gap:.25rem;padding:.5rem .75rem;font-size:.8rem}.tab svg{width:16px;height:16px}.accommodation-info{margin-bottom:1rem;padding:1rem}.info-header h2{font-size:1.1rem}.info-content{grid-template-columns:1fr;gap:1rem}.info-label{font-size:.75rem}.info-value{font-size:1rem}.room-section{margin-bottom:1rem}.room-tab{padding:.75rem 1rem}.room-tab-header{flex-direction:column;align-items:flex-start;gap:.5rem}.room-tab-info{gap:.5rem;width:100%}.room-tab-info h3{font-size:.95rem}.room-tab-guests{flex-wrap:wrap;width:100%}.guest-names{font-size:.85rem}.room-content{padding:1rem}.room-header{flex-direction:column;align-items:flex-start;gap:.5rem}.room-header h3{font-size:1rem}.guest-form{gap:.75rem;padding:1rem}.guest-header{flex-direction:column;align-items:flex-start;gap:.5rem}.guest-label{font-size:.9rem}.guest-payment-options{flex-direction:column;gap:.75rem;width:100%}.radio-option{font-size:.85rem}.guest-fields{grid-template-columns:1fr;gap:.5rem}.guest-fields input{padding:.6rem;font-size:.85rem}.payment-select{min-width:100%;padding:.6rem;font-size:.85rem}.btn-save-guest{width:100%;padding:.6rem 1rem;font-size:.85rem}.btn-delete-guest{justify-content:center;width:100%;font-size:.8rem}.room-actions{flex-direction:column}.btn-save-room{width:100%;padding:.75rem 1.5rem;font-size:.95rem}.empty-state{padding:2rem 1rem}.empty-state h3{font-size:1.1rem}.empty-state p{font-size:.9rem}}@media (width<=480px){.rooming-list{padding:.5rem}.page-header h1{font-size:1.25rem}.accommodation-tabs{gap:.1rem}.tab{padding:.4rem .5rem;font-size:.75rem}.accommodation-info{padding:.75rem}.info-header h2{font-size:1rem}.info-label{font-size:.7rem}.info-value{font-size:.9rem}.room-tab{padding:.6rem .75rem}.room-tab-info h3{font-size:.9rem}.room-content,.guest-form{padding:.75rem}.guest-fields input,.payment-select{padding:.5rem;font-size:.8rem}.btn-save-guest{padding:.5rem .75rem;font-size:.8rem}.btn-save-room{padding:.6rem 1rem;font-size:.9rem}}.dark .accommodation-info{background:linear-gradient(135deg,#1e3a8a,#1e40af)}.dark .guest-form{background:#374151}.dark .guest-fields input{color:#f3f4f6;background:#1f2937;border-color:#4b5563}.dark .radio-option{color:#f3f4f6}.dark .radio-option input[type=radio]{accent-color:#06b6d4}.dark .room-section{background:#1f2937}.dark .room-tab{border-bottom-color:#374151}.dark .room-tab:hover,.dark .room-tab.expanded{border-bottom-color:#06b6d4}.dark .room-tab-info .room-capacity,.dark .room-tab-info .room-counter{color:#9ca3af}.dark .room-tab-toggle{background:0 0;border-color:#4b5563}.dark .room-tab-toggle svg{color:#9ca3af}.dark .room-tab:hover .room-tab-toggle{background:#374151;border-color:#06b6d4}.dark .room-tab:hover .room-tab-toggle svg{color:#06b6d4}.dark .room-tab.expanded .room-tab-toggle{background:#06b6d4;border-color:#06b6d4}.dark .room-tab.expanded .room-tab-toggle svg{color:#fff}.dark .room-content{border-top-color:#374151}.dark .guest-names{color:#d1d5db}.dark .no-guests,.dark .no-guests svg{color:#6b7280}.dark .empty-state{background:#1f2937}@media (width<=768px){.dark .accommodation-tabs{border-bottom-color:#374151}.dark .tab:hover{background:#374151}.dark .accommodation-info{background:linear-gradient(135deg,#1e3a8a,#1e40af)}.dark .guest-form{background:#374151}.dark .guest-fields input,.dark .payment-select{color:#f3f4f6;background:#1f2937;border-color:#4b5563}.dark .room-content{border-top-color:#374151}.dark .room-header{border-bottom-color:#374151}}.wedding-payments{background:#f8f9fa;min-height:100vh;padding:2rem;font-family:Roboto,sans-serif}.wp-header{margin-bottom:2.5rem}.wp-header-content{flex-direction:column;gap:.5rem;display:flex}.wp-title{color:var(--color-secondary);margin:0;font-size:2rem;font-weight:700}.wp-subtitle{color:var(--color-text);margin:0;font-size:.95rem}.wp-kpi-section{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2.5rem;display:grid}.wp-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:1.25rem;padding:1.75rem;transition:all .3s;display:flex;box-shadow:0 1px 3px #00000014}.wp-kpi-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001f}.wp-kpi-card.wp-kpi-primary{background:linear-gradient(135deg, var(--color-primary) 0%, #1a7380 100%);border:none}.wp-kpi-card.wp-kpi-primary .wp-kpi-icon,.wp-kpi-card.wp-kpi-primary .wp-kpi-label,.wp-kpi-card.wp-kpi-primary .wp-kpi-value{color:#fff}.wp-kpi-icon{width:56px;height:56px;color:var(--color-primary);background:#f0f9fa;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.wp-kpi-card.wp-kpi-primary .wp-kpi-icon{background:#fff3}.wp-kpi-icon svg{width:28px;height:28px}.wp-kpi-content{flex-direction:column;gap:.5rem;display:flex}.wp-kpi-value{color:var(--color-secondary);font-size:1.75rem;font-weight:700;line-height:1.2}.wp-kpi-label{color:var(--color-text);font-size:.85rem;font-weight:500}.wp-filters{background:#fff;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2.5rem;padding:1.75rem;display:grid;box-shadow:0 1px 3px #00000014}.wp-filter-group{flex-direction:column;gap:.5rem;display:flex}.wp-filter-label{color:var(--color-secondary);font-size:.9rem;font-weight:600}.wp-filter-input,.wp-filter-select{color:var(--color-text);background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem 1rem;font-family:Roboto,sans-serif;font-size:.9rem;transition:all .2s}.wp-filter-input:focus,.wp-filter-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #22919c1a}.empty-state{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin:2rem 0;padding:4rem 2rem}.empty-state h3{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.3rem;font-weight:600}.empty-state p{color:var(--color-text);margin:0;font-size:.95rem}.payments-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:2rem;overflow:hidden;box-shadow:0 1px 3px #00000014}.payments-table{border-collapse:collapse;width:100%}.payments-table thead{background:#f8fafc;border-bottom:2px solid #e2e8f0}.payments-table th{text-align:left;color:var(--color-secondary);text-transform:uppercase;letter-spacing:.05em;padding:.875rem 1rem;font-size:.8rem;font-weight:600}.payments-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background-color .2s}.payments-table tbody tr:hover{background:#f8fafc}.payments-table td{color:var(--color-text);vertical-align:middle;padding:.75rem 1rem;font-size:.85rem}.guest-cell{min-width:220px}.guest-info{flex-direction:column;gap:.25rem;display:flex}.guest-info strong{color:var(--color-secondary);font-size:.9rem;font-weight:600}.guest-info small{color:#64748b;font-size:.8rem}.room-cell{min-width:180px}.room-info{flex-direction:column;gap:.25rem;display:flex}.room-info strong{color:var(--color-secondary);font-size:.9rem;font-weight:600}.room-info small{color:#64748b;font-size:.8rem}.method-cell{min-width:140px}.payment-method{color:var(--color-primary);text-transform:capitalize;background:#f0f9fa;border-radius:6px;padding:.375rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}.amount-cell{min-width:140px}.amount{color:var(--color-primary);font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:1rem;font-weight:700}.date-cell{color:#64748b;min-width:160px;font-size:.85rem}.notes-cell{min-width:150px;max-width:250px}.notes{color:#64748b;white-space:nowrap;text-overflow:ellipsis;max-width:250px;font-size:.85rem;display:block;overflow:hidden}.payments-summary{background:#fff;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;padding:1.75rem;display:grid;box-shadow:0 1px 3px #00000014}.summary-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.summary-item .label{color:var(--color-text);font-size:.85rem;font-weight:500}.summary-item .value{color:var(--color-secondary);font-size:1.3rem;font-weight:700}.summary-item .value.highlight{color:var(--color-primary);font-size:1.5rem}.wp-loading-state{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.wp-loading-spinner{border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.wp-loading-state p{color:var(--text-secondary);font-size:.95rem}@media (width<=1024px){.wp-kpi-section{grid-template-columns:repeat(2,1fr)}.payments-table-container{overflow-x:auto}.payments-table{min-width:900px}}@media (width<=768px){.wedding-payments{padding:1rem}.wp-title{font-size:1.5rem}.wp-subtitle{font-size:.85rem}.wp-kpi-section{grid-template-columns:1fr;gap:1rem}.wp-kpi-card{gap:1rem;padding:1.25rem}.wp-kpi-icon{width:48px;height:48px}.wp-kpi-icon svg{width:24px;height:24px}.wp-kpi-value{font-size:1.5rem}.wp-kpi-label{font-size:.8rem}.wp-filters{grid-template-columns:1fr;gap:1rem;padding:1.25rem}.wp-filter-label{font-size:.85rem}.wp-filter-input,.wp-filter-select{padding:.6rem .75rem;font-size:.85rem}.payments-table-container{-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.payments-table{min-width:550px;font-size:.8rem}.payments-table th,.payments-table td{white-space:nowrap;padding:.6rem .4rem}.payments-table th{font-size:.75rem}.guest-cell{min-width:150px}.guest-info strong{font-size:.8rem}.guest-info small{font-size:.75rem}.room-cell{min-width:130px}.room-info strong{font-size:.8rem}.room-info small{font-size:.75rem}.method-cell{min-width:110px}.payment-method{font-size:.8rem}.amount-cell{min-width:110px}.amount{font-size:.9rem}.date-cell{min-width:130px;font-size:.8rem}.notes-cell{min-width:120px}.notes{font-size:.8rem}.payments-summary{grid-template-columns:1fr;gap:.75rem;padding:1rem}.summary-item{padding:.5rem 0}.summary-item .label{font-size:.9rem}.summary-item .value{font-size:1rem}.summary-item .value.highlight{font-size:1.1rem}.empty-state{margin:1rem 0;padding:2rem 1rem}.empty-icon{font-size:2.5rem}.empty-state h3{font-size:1.1rem}.empty-state p{font-size:.85rem}}@media (width<=480px){.wedding-payments{padding:.5rem}.page-header h1{font-size:1.25rem}.page-subtitle{font-size:.8rem}.summary-cards{gap:.75rem}.summary-card{gap:.5rem;padding:.75rem}.summary-icon,.summary-value{font-size:1.3rem}.summary-label{font-size:.75rem}.filters-section{gap:.5rem;padding:.75rem}.filter-group label{font-size:.8rem}.filter-input,.filter-select{padding:.5rem;font-size:.8rem}.payments-table-container{border-radius:6px}.payments-table{min-width:480px;font-size:.75rem}.payments-table th,.payments-table td{padding:.4rem .3rem}.payments-table th{font-size:.7rem}.guest-cell{min-width:130px}.guest-info strong{font-size:.75rem}.guest-info small{font-size:.7rem}.room-cell{min-width:110px}.room-info strong{font-size:.75rem}.room-info small{font-size:.7rem}.method-cell{min-width:100px}.payment-method{font-size:.75rem}.amount-cell{min-width:100px}.amount{font-size:.85rem}.date-cell{min-width:110px;font-size:.75rem}.notes-cell{min-width:100px}.notes{font-size:.75rem}.payments-summary{gap:.5rem;padding:.75rem}.summary-item{padding:.4rem 0}.summary-item .label{font-size:.85rem}.summary-item .value{font-size:.95rem}.summary-item .value.highlight{font-size:1rem}.empty-state{margin:.75rem 0;padding:1.5rem .75rem}.empty-icon{font-size:2rem}.empty-state h3{font-size:1rem}.empty-state p{font-size:.8rem}}@media (prefers-color-scheme:dark){.payment-type-badge{filter:brightness(.9)}}.wedding-reports{background:var(--bg-primary);min-height:100vh;padding:2rem;font-family:Roboto,sans-serif}.page-header h1{color:#22919c;margin:0;font-family:Roboto,sans-serif;font-size:2rem;font-weight:600}.page-subtitle{color:var(--text-secondary);margin:.5rem 0 0;font-size:.95rem}.report-section{background:var(--bg-secondary);border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 2px 8px #0000001a}.section-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.section-header h2,.section-header h3{color:#22919c;align-items:center;gap:.5rem;margin:0;font-size:1.3rem;font-weight:600;display:flex}.collection-goal-section{background:linear-gradient(135deg,#f5f5f5 0%,#fff 100%)}.collection-goal-card{flex-direction:column;gap:1.5rem;display:flex}.goal-amount{align-items:baseline;gap:.5rem;display:flex}.goal-amount .current{color:#4caf50;font-size:1.8rem;font-weight:700}.goal-amount .total{color:var(--text-secondary);font-size:1.2rem}.progress-bar-container{width:100%}.progress-bar{background:#e0e0e0;border-radius:6px;width:100%;height:12px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#4caf50 0%,#45a049 100%);height:100%;transition:width .3s}.goal-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;display:grid}.stat-item{text-align:center;background:#00000005;border-radius:8px;flex-direction:column;padding:1rem;display:flex}.stat-value{color:#22919c;font-size:1.5rem;font-weight:700}.stat-label{color:var(--text-secondary);margin-top:.25rem;font-size:.85rem}.charts-grid{grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem;display:grid}.charts-grid .report-section{margin-bottom:0}.occupancy-section{flex-direction:column;gap:2rem;display:flex}.occupancy-container{grid-template-columns:1fr 1fr;align-items:start;gap:2rem;display:grid}.occupancy-main{flex-direction:column;gap:1rem;display:flex}.occupancy-bar{background:#e0e0e0;border-radius:10px;width:100%;height:20px;overflow:hidden}.occupancy-fill{background:linear-gradient(90deg,#4caf50 0%,#45a049 100%);height:100%;transition:width .3s}.occupancy-text{flex-direction:column;gap:.5rem;display:flex}.occupancy-percentage{color:#22919c;font-size:1.8rem;font-weight:700}.occupancy-label{color:var(--text-secondary);font-size:.95rem}.occupancy-stats{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.occupancy-stat{text-align:center;background:#22919c0d;border-radius:8px;flex-direction:column;align-items:center;padding:1rem;display:flex}.stat-icon{margin-bottom:.5rem;font-size:1.5rem}.occupancy-stat .stat-value{color:#22919c;margin-bottom:.25rem;font-size:1.8rem}.occupancy-stat .stat-label{color:var(--text-secondary);font-size:.85rem}.payment-summary{border-top:1px solid var(--border-color);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;padding-top:1rem;display:grid}.summary-item{text-align:center;flex-direction:column;align-items:center;padding:1rem;display:flex}.summary-icon{color:#22919c;margin-bottom:.5rem;font-size:1.5rem}.summary-value{color:var(--text-primary);font-size:1.5rem;font-weight:700}.summary-label{color:var(--text-secondary);margin-top:.25rem;font-size:.85rem}.export-section{background:linear-gradient(135deg,#f5f5f5 0%,#fff 100%)}.export-container{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;display:grid}.export-card{border:1px solid var(--border-color);background:#fff;border-radius:8px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.export-card h4{color:#22919c;align-items:center;gap:.5rem;margin:0;font-size:1.1rem;display:flex}.export-card p{color:var(--text-secondary);margin:0;font-size:.9rem}.btn-export{color:#fff;cursor:pointer;background:linear-gradient(135deg,#4caf50 0%,#45a049 100%);border:none;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:transform .2s,box-shadow .2s;display:flex}.btn-export:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4caf504d}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:6px;padding:.75rem 1.5rem;font-weight:600;transition:background .2s}.schedule-info{flex-direction:column;gap:.75rem;display:flex}.schedule-item{justify-content:space-between;align-items:center;display:flex}.schedule-label{color:var(--text-primary);font-weight:500}.schedule-status{border-radius:12px;padding:.25rem .75rem;font-size:.8rem;font-weight:600}.schedule-status.active{color:#fff;background:#4caf50}.schedule-detail{color:var(--text-secondary);margin:0;font-size:.85rem}.financial-summary-section{background:linear-gradient(135deg,#f5f5f5 0%,#fff 100%)}.financial-table-container{overflow-x:auto}.financial-table{border-collapse:collapse;width:100%;font-size:.95rem}.financial-table thead{background:var(--bg-tertiary);border-bottom:2px solid var(--border-color)}.financial-table th{text-align:left;color:var(--text-primary);white-space:nowrap;padding:1rem;font-weight:600}.financial-table tbody tr{border-bottom:1px solid var(--border-color)}.financial-table tbody tr:hover{background:var(--bg-tertiary)}.financial-table td{color:var(--text-primary);padding:1rem}.concept-label{color:var(--text-primary);font-weight:600}.numeric{text-align:right;font-family:Courier New,monospace}.numeric.total{color:#22919c;font-weight:700}.highlight-row.positive{background:#4caf500d}.highlight-row.positive td{color:#4caf50;font-weight:600}.highlight-row.negative{background:#f443360d}.highlight-row.negative td{color:#f44336;font-weight:600}.no-data{text-align:center;color:var(--text-secondary);padding:2rem;font-size:.95rem}.wr-loading-state{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.wr-loading-spinner{border:4px solid var(--border-color);border-top-color:#22919c;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.wr-loading-state p{color:var(--text-secondary);font-size:.95rem}@media (width<=1024px){.charts-grid,.occupancy-container,.export-container{grid-template-columns:1fr}}@media (width<=768px){.wedding-reports{max-width:100%;padding:.75rem;overflow-x:hidden}.page-header{flex-direction:column;gap:1rem}.page-header h1{font-size:1.5rem}.page-subtitle{font-size:.85rem}.report-section{border-radius:8px;margin-bottom:1.5rem;padding:1rem}.section-header{flex-direction:column;gap:.5rem}.section-header h2,.section-header h3{font-size:1.1rem}.goal-amount .current{font-size:1.5rem}.goal-amount .total{font-size:1rem}.goal-stats{grid-template-columns:1fr;gap:.75rem}.stat-item{padding:.75rem}.stat-value{font-size:1.3rem}.stat-label{font-size:.8rem}.occupancy-percentage{font-size:1.5rem}.occupancy-label{font-size:.9rem}.occupancy-stats{grid-template-columns:1fr;gap:.75rem}.occupancy-stat{padding:.75rem}.occupancy-stat .stat-value{font-size:1.5rem}.occupancy-stat .stat-label{font-size:.8rem}.payment-summary{grid-template-columns:1fr;gap:.75rem;padding-top:.75rem}.summary-item{padding:.75rem}.summary-icon,.summary-value{font-size:1.3rem}.summary-label{font-size:.8rem}.export-container{grid-template-columns:1fr;gap:1rem}.export-card{padding:1rem}.export-card h4{font-size:1rem}.export-card p{font-size:.85rem}.btn-export{padding:.6rem 1rem;font-size:.9rem}.financial-table-container{-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.financial-table{min-width:550px;font-size:.8rem}.financial-table th,.financial-table td{white-space:nowrap;padding:.6rem .4rem}.concept-label,.numeric{font-size:.8rem}.numeric.total{font-size:.9rem}}@media (width<=480px){.wedding-reports{padding:.5rem}.page-header h1{font-size:1.25rem}.page-subtitle{font-size:.8rem}.report-section{margin-bottom:1rem;padding:.75rem}.section-header h2,.section-header h3{font-size:1rem}.goal-amount .current{font-size:1.3rem}.goal-amount .total{font-size:.9rem}.goal-stats{gap:.5rem}.stat-item{padding:.5rem}.stat-value{font-size:1.1rem}.stat-label{font-size:.75rem}.occupancy-percentage{font-size:1.3rem}.occupancy-stats{gap:.5rem}.occupancy-stat{padding:.5rem}.occupancy-stat .stat-value{font-size:1.3rem}.occupancy-stat .stat-label{font-size:.75rem}.payment-summary{gap:.5rem;padding-top:.5rem}.summary-item{padding:.5rem}.summary-icon{font-size:1.2rem}.summary-value{font-size:1.1rem}.summary-label{font-size:.75rem}.export-card{padding:.75rem}.export-card h4{font-size:.95rem}.export-card p{font-size:.8rem}.btn-export{padding:.5rem .75rem;font-size:.85rem}.financial-table{min-width:480px;font-size:.75rem}.financial-table th,.financial-table td{padding:.4rem .3rem}.concept-label,.numeric{font-size:.75rem}}.wedding-prompts{max-width:1200px;margin:0 auto;padding:2rem}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}.page-header h1{color:var(--color-primary);margin:0;font-size:2rem;font-weight:700}.page-subtitle{color:var(--text-secondary);margin:.5rem 0 0}.wp-loading-state{flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.wp-loading-spinner{border:3px solid #f3f3f3;border-top:3px solid var(--color-primary);border-radius:50%;width:40px;height:40px;margin-bottom:1rem;animation:1s linear infinite spin}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.empty-icon{color:var(--text-secondary);margin-bottom:1rem;font-size:4rem}.empty-state h3{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.5rem}.empty-state p{color:var(--text-secondary);margin:0 0 2rem}.prompts-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.prompt-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s;box-shadow:0 1px 3px #0000001a}.prompt-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.prompt-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.prompt-header h3{color:var(--color-secondary);flex:1;margin:0;font-size:1.25rem;font-weight:600}.prompt-actions{gap:.5rem;display:flex}.prompt-actions .btn{padding:.25rem .5rem;font-size:.875rem}.prompt-category{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.category-badge{text-transform:capitalize;border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.category-badge.general{color:#1976d2;background:#e3f2fd}.category-badge.invitacion{color:#c2185b;background:#fce4ec}.category-badge.agradecimiento{color:#2e7d32;background:#e8f5e8}.category-badge.recordatorio{color:#f57c00;background:#fff3e0}.category-badge.informacion{color:#7b1fa2;background:#f3e5f5}.status-active,.status-inactive{border-radius:20px;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.status-active{color:#2e7d32;background:#e8f5e8}.status-inactive{color:#c62828;background:#ffebee}.prompt-content{margin-top:1rem}.accordion-content{animation:.3s ease-out slideDown}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.prompt-message{white-space:pre-wrap;word-wrap:break-word;color:#374151;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;font-size:.875rem;line-height:1.6}.prompt-content p{color:var(--text-secondary);margin:0;line-height:1.6}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:12px;flex-direction:column;width:90%;max-width:800px;max-height:90vh;display:flex;overflow-y:auto}.modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-header h2{color:var(--color-secondary);margin:0;font-size:1.5rem;font-weight:600}.modal-body{padding:1.5rem}.form-group label{color:var(--color-secondary);margin-bottom:.5rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;width:100%;padding:.75rem;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);outline:none}.form-group textarea{resize:vertical;min-height:120px}.form-group input[type=checkbox]{width:auto;margin-right:.5rem}.variables-selector{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1rem;padding:1rem}.variables-help{color:var(--text-secondary);margin:0 0 .75rem;font-size:.875rem}.variables-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;display:grid}.variable-button{color:var(--color-secondary);cursor:pointer;text-align:left;background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:.5rem .75rem;font-size:.875rem;transition:all .2s}.variable-button:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary);transform:translateY(-1px)}.preview-box{white-space:pre-wrap;min-height:150px;color:var(--color-secondary);background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;font-size:.875rem;line-height:1.6}.modal-actions{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn-primary:hover{background:#1a7378}.btn-secondary:hover{background:#e5e7eb}.btn-danger:hover{background:#dc2626}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.tabs-navigation{border-bottom:2px solid #e5e7eb;gap:1rem;margin-bottom:2rem;padding-bottom:0;display:flex}.tab-button{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-weight:500;transition:all .2s;display:flex}.tab-button:hover{color:var(--color-primary);background:#22919c0d}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:#22919c0d}.tab-icon{font-size:1.25rem}.tab-label{font-size:1rem}.tab-content{min-height:400px}.tab-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.tab-header h2{color:var(--color-secondary);margin:0;font-size:1.5rem;font-weight:600}.tab-header p{color:var(--text-secondary);margin:.5rem 0 0}.radio-group{flex-direction:column;gap:.75rem;display:flex}.radio-option{cursor:pointer;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem;transition:background-color .2s;display:flex}.radio-option:hover{background-color:#f8fafc}.radio-option input[type=radio]{cursor:pointer}.rooms-selector{background:#f8fafc;border:1px solid #e5e7eb;border-radius:6px;flex-direction:column;gap:.5rem;max-height:200px;padding:.75rem;display:flex;overflow-y:auto}.room-checkbox{cursor:pointer;border-radius:4px;align-items:center;gap:.5rem;padding:.5rem;transition:background-color .2s;display:flex}.room-checkbox:hover{background-color:#e2e8f0}.room-checkbox input[type=checkbox]{cursor:pointer}.text-gray-500{color:#64748b;font-size:.875rem}.days-config{align-items:center;gap:.5rem;display:flex}.days-config select{flex:1}.days-input{border:1px solid #e5e7eb;border-radius:6px;width:100px;padding:.5rem;font-size:.875rem}.days-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.reminder-config{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.reminder-config-row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.reminder-label{color:#374151;font-size:.875rem;font-weight:500}.reminder-select{background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex:1;min-width:150px;padding:.5rem;font-size:.875rem}.reminder-select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}@media (width<=768px){.wedding-prompts{padding:1rem}.page-header{flex-direction:column;align-items:stretch;gap:1rem}.tabs-navigation{flex-wrap:wrap;gap:.5rem}.tab-button{padding:.75rem 1rem;font-size:.875rem}.tab-icon{font-size:1rem}.tab-header{flex-direction:column;align-items:stretch;gap:1rem}.prompts-grid{grid-template-columns:1fr}.modal{width:95%;margin:1rem}.modal-actions,.prompt-actions{flex-direction:column}}.gcc-overlay{z-index:10000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.gcc-card{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.gcc-header{color:#fff;background:#22919c;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.gcc-header-content{align-items:center;gap:1rem;display:flex}.gcc-avatar{color:#fff;background:#fff3;border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;font-size:1.5rem;font-weight:600;display:flex}.gcc-header-info h2{color:#fff;margin:0;font-size:1.25rem;font-weight:600}.gcc-status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:12px;margin-top:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-block}.gcc-status-badge.status-paid{color:#fff;background:#10b981}.gcc-status-badge.status-partial{color:#fff;background:#f59e0b}.gcc-status-badge.status-pending{color:#fff;background:#ef4444}.gcc-close{cursor:pointer;color:#fff;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.gcc-close:hover{background:#ffffff4d}.gcc-tabs{background:#f8fafc;border-bottom:1px solid #e5e7eb;display:flex}.gcc-tab{cursor:pointer;color:#64748b;background:0 0;border:none;border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.gcc-tab:hover{color:#374151;background:#f1f5f9}.gcc-tab.active{color:#22919c;background:#fff;border-bottom-color:#22919c}.gcc-content{flex:1;padding:1.5rem;overflow-y:auto}.gcc-section h3{color:#1e293b;margin:0 0 1rem;font-size:1.125rem;font-weight:600}.gcc-info-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.gcc-info-item{flex-direction:column;gap:.25rem;display:flex}.gcc-info-item-full{grid-column:1/-1}.gcc-info-item label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-size:.75rem;font-weight:600}.gcc-info-value{color:#374151;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.gcc-info-value svg{color:#64748b;width:16px;height:16px}.gcc-notes{white-space:pre-wrap;background:#f8fafc;border-left:3px solid #22919c;border-radius:8px;padding:.75rem}.gcc-payments-summary{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem;display:grid}.gcc-payment-card{text-align:center;background:#f8fafc;border-radius:8px;padding:1rem}.gcc-payment-card label{text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:block}.gcc-payment-amount{color:#1e293b;font-size:1.5rem;font-weight:700}.gcc-payment-total .gcc-payment-amount{color:#22919c}.gcc-payment-paid .gcc-payment-amount{color:#10b981}.gcc-payment-pending .gcc-payment-amount{color:#ef4444}.gcc-payment-progress{margin-bottom:1.5rem}.gcc-progress-bar{background:#e5e7eb;border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden}.gcc-progress-fill{background:#22919c;height:100%;transition:width .3s}.gcc-progress-text{color:#64748b;text-align:center;font-size:.875rem}.gcc-payment-info{background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;padding:1rem}.gcc-payment-info p{color:#92400e;margin:0;font-size:.875rem}.gcc-footer{background:#f8fafc;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.gcc-btn{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s}.gcc-btn-secondary{color:#64748b;background:#fff;border:1px solid #e5e7eb}.gcc-btn-secondary:hover{color:#374151;background:#f8fafc}@media (width<=768px){.gcc-card{max-height:95vh}.gcc-info-grid,.gcc-payments-summary{grid-template-columns:1fr}.gcc-tab{padding:.75rem .5rem;font-size:.75rem}}.wc-container{box-sizing:border-box;background:#f8f9fa;max-width:100%;min-height:100vh;padding:1.5rem;overflow-x:hidden}.wc-header{margin-bottom:2rem}.wc-header-content h1{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.wc-header-content p{color:var(--color-text);margin:0;font-size:.95rem}.wc-content{grid-template-columns:350px 1fr;gap:1.5rem;height:calc(100vh - 200px);display:grid}.wc-conversations-panel{background:#fff;border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 2px 8px #00000014}.wc-conversations-header{background:#f8fafc;border-bottom:1px solid #e5e7eb;padding:1.5rem}.wc-conversations-header h2{color:#1e293b;margin:0;font-size:1.1rem;font-weight:600}.wc-conversations-filters{border-bottom:1px solid #e5e7eb;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.wc-search-input,.wc-filter-select{border:1px solid #e5e7eb;border-radius:8px;padding:.75rem;font-size:.9rem;transition:all .2s}.wc-search-input:focus,.wc-filter-select:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.wc-conversations-list{flex:1;padding:0;overflow-y:auto}.wc-conversation-item{cursor:pointer;border-bottom:1px solid #f1f5f9;align-items:flex-start;gap:.75rem;padding:1rem;transition:all .2s;display:flex}.wc-conversation-item:hover{background:#f8fafc}.wc-conversation-item.active{background:#ecf8fa;border-left:3px solid #22919c;padding-left:calc(1rem - 3px)}.wc-conversation-avatar{color:#fff;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-weight:600;display:flex}.wc-conversation-info{flex:1;min-width:0}.wc-conversation-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}.wc-conversation-number{color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;overflow:hidden}.wc-conversation-preview{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;margin-top:.25rem;font-size:.85rem;overflow:hidden}.wc-conversation-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.5rem;display:flex}.wc-status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.wc-status-active{color:#166534;background:#ecfdf5}.wc-status-archived{color:#374151;background:#f3f4f6}.wc-status-blocked{color:#991b1b;background:#fef2f2}.wc-conversation-date{color:#94a3b8;font-size:.8rem}.wc-empty-state{color:#94a3b8;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.wc-empty-icon{opacity:.5;margin-bottom:1rem;font-size:2.5rem}.wc-empty-state p{margin:0;font-size:.95rem}.wc-messages-panel{background:#fff;border-radius:12px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 2px 8px #00000014}.wc-messages-header{background:#f8fafc;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.wc-messages-header-info h3{color:#1e293b;margin:0 0 .25rem;font-size:1.1rem;font-weight:600}.wc-messages-header-info p{color:#64748b;margin:0;font-size:.85rem}.wc-messages-header-actions{gap:.5rem;display:flex}.wc-header-btn{cursor:pointer;color:#fff;background:#22919c;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.wc-header-btn:hover{background:#1a7a82}.wc-prompts-toggle{background:#f8fafc;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;padding:.75rem 1rem}.wc-prompts-toggle-btn{color:#22919c;cursor:pointer;background:#fff;border:1px solid #22919c;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.wc-prompts-toggle-btn:hover{color:#1a7a82;background:#f0f9fa;border-color:#1a7a82}.wc-prompts-bar{background:#f8fafc;border-top:1px solid #e5e7eb;border-bottom:1px solid #e5e7eb;flex-direction:column;gap:.75rem;padding:1rem;display:flex}.wc-prompts-header{justify-content:space-between;align-items:center;display:flex}.wc-prompts-close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;align-items:center;padding:0;font-size:1.25rem;transition:color .2s;display:flex}.wc-prompts-close-btn:hover{color:#22919c}.wc-prompts-label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-size:.875rem;font-weight:600}.wc-prompts-buttons{flex-wrap:wrap;align-items:center;gap:.5rem;width:100%;display:flex}.wc-prompt-btn{color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.wc-prompt-btn:hover{color:#22919c;background:#f3f4f6;border-color:#22919c}.wc-prompt-btn:disabled{opacity:.5;cursor:not-allowed}.wc-prompt-initial{color:#fff;background:#22919c;border-color:#22919c;font-weight:600}.wc-prompt-initial:hover{color:#fff;background:#1a7a82;border-color:#1a7a82}.wc-prompts-more{position:relative}.wc-prompt-more-btn{align-items:center;gap:.25rem;display:flex}.wc-prompts-more-dropdown{z-index:100;background:#fff;border:1px solid #e5e7eb;border-radius:6px;min-width:200px;margin-top:.5rem;display:none;position:absolute;top:100%;left:0;box-shadow:0 4px 12px #00000026}.wc-prompts-more:hover .wc-prompts-more-dropdown{display:block}.wc-prompts-more-item{text-align:left;cursor:pointer;color:#374151;background:0 0;border:none;width:100%;padding:.75rem 1rem;font-size:.875rem;transition:all .2s;display:block}.wc-prompts-more-item:hover{color:#22919c;background:#f3f4f6}.wc-prompts-more-item:disabled{opacity:.5;cursor:not-allowed}.wc-prompts-info{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-left:auto;font-size:.75rem;font-weight:600}.wc-messages-list{flex-direction:column;flex:1;gap:1rem;padding:1.5rem;display:flex;overflow-y:auto}.wc-messages-empty{color:#94a3b8;text-align:center;justify-content:center;align-items:center;height:100%;display:flex}.wc-message{align-items:flex-end;gap:.5rem;display:flex}.wc-message.incoming{justify-content:flex-start}.wc-message.outgoing{justify-content:flex-end}.wc-message-content{word-wrap:break-word;border-radius:12px;max-width:70%;padding:.75rem 1rem}.wc-message.incoming .wc-message-content{color:#1e293b;background:#f1f5f9;border-bottom-left-radius:4px}.wc-message.outgoing .wc-message-content{color:#fff;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border-bottom-right-radius:4px}.wc-message-text{white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word;margin-bottom:.5rem;font-size:.95rem;line-height:1.4}.wc-message-time{opacity:.7;font-size:.75rem}.wc-message.incoming .wc-message-time{color:#64748b}.wc-message.outgoing .wc-message-time{color:#fffc}.wc-message-status{color:#64748b;margin-left:.5rem;font-size:.9rem}.wc-messages-input{border-top:1px solid #e5e7eb;align-items:flex-end;gap:.75rem;padding:1.5rem;display:flex}.wc-messages-input textarea{resize:none;border:1px solid #e5e7eb;border-radius:8px;flex:1;padding:.75rem;font-family:inherit;font-size:.95rem;transition:all .2s}.wc-messages-input textarea:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.wc-messages-input textarea:disabled{color:#94a3b8;background:#f8fafc}.wc-send-button{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.wc-send-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}.wc-send-button:disabled{opacity:.5;cursor:not-allowed}.wc-no-selection{color:#94a3b8;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;display:flex}.wc-no-selection-icon{opacity:.5;margin-bottom:1rem;font-size:3rem}.wc-no-selection p{margin:0;font-size:.95rem}.wc-loading{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.wc-spinner{border:4px solid #e5e7eb;border-top-color:#22919c;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.wc-loading p{color:#64748b;font-size:.95rem}@media (width<=1024px){.wc-content{grid-template-columns:300px 1fr}}@media (width<=768px){.wc-container{padding:1rem}.wc-content{grid-template-columns:1fr;height:auto}.wc-conversations-panel{max-height:300px}.wc-messages-panel{min-height:400px}.wc-message-content{max-width:85%}}.yc-container{box-sizing:border-box;background:#f8f9fa;max-width:100%;min-height:100vh;padding:1.5rem;overflow-x:hidden}.yc-header{margin-bottom:2rem}.yc-header-content h1{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.yc-header-content p{color:var(--color-text);margin:0;font-size:.95rem}.yc-content{grid-template-columns:1fr 1fr;gap:2rem;max-width:1200px;display:grid}.yc-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014}.yc-card-header{background:#f8fafc;border-bottom:1px solid #e5e7eb;padding:1.5rem}.yc-card-header h2{color:#1e293b;align-items:center;gap:.75rem;margin:0;font-size:1.25rem;font-weight:600;display:flex}.yc-form{padding:2rem}.yc-form-group{margin-bottom:1.5rem}.yc-form-group label{color:#1e293b;margin-bottom:.5rem;font-size:.95rem;font-weight:600;display:block}.yc-form-group input[type=text],.yc-form-group input[type=password],.yc-form-group input[type=tel]{box-sizing:border-box;border:1px solid #e5e7eb;border-radius:8px;width:100%;padding:.75rem;font-size:.95rem;transition:all .2s}.yc-form-group input[type=text]:focus,.yc-form-group input[type=password]:focus,.yc-form-group input[type=tel]:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.yc-form-group small{color:#64748b;margin-top:.5rem;font-size:.85rem;display:block}.yc-checkbox{align-items:center;display:flex}.yc-checkbox label{cursor:pointer;align-items:center;gap:.75rem;margin:0;font-weight:500;display:flex}.yc-checkbox input[type=checkbox]{cursor:pointer;accent-color:#22919c;width:18px;height:18px}.yc-form-actions{border-top:1px solid #e5e7eb;gap:1rem;margin-top:2rem;padding-top:1.5rem;display:flex}.yc-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.yc-btn-primary{color:#fff;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%)}.yc-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}.yc-btn-secondary{color:#64748b;background:#fff;border:1px solid #e5e7eb}.yc-btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.yc-btn:disabled{opacity:.5;cursor:not-allowed}.yc-test-result{border-radius:8px;align-items:flex-start;gap:1rem;margin-top:1.5rem;padding:1rem;display:flex}.yc-test-result.success{background:#ecfdf5;border:1px solid #86efac}.yc-test-result.error{background:#fef2f2;border:1px solid #fca5a5}.yc-test-icon{flex-shrink:0;font-size:1.5rem}.yc-test-result.success .yc-test-icon{color:#22c55e}.yc-test-result.error .yc-test-icon{color:#ef4444}.yc-test-content h3{margin:0 0 .25rem;font-size:1rem;font-weight:600}.yc-test-result.success .yc-test-content h3{color:#166534}.yc-test-result.error .yc-test-content h3{color:#991b1b}.yc-test-content p{margin:0;font-size:.9rem}.yc-test-result.success .yc-test-content p{color:#15803d}.yc-test-result.error .yc-test-content p{color:#7f1d1d}.yc-info-card{background:#fff;border-left:4px solid #22919c;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014}.yc-info-card h3{color:#1e293b;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.1rem;font-weight:600;display:flex}.yc-info-card ul{margin:0;padding:0;list-style:none}.yc-info-card li{color:#475569;border-bottom:1px solid #f1f5f9;padding:.75rem 0;font-size:.95rem;line-height:1.6}.yc-info-card li:last-child{border-bottom:none}.yc-info-card strong{color:#1e293b}.yc-info-card code{color:#22919c;background:#f1f5f9;border-radius:4px;padding:.25rem .5rem;font-family:Courier New,monospace;font-size:.85rem}.yc-loading{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.yc-spinner{border:4px solid #e5e7eb;border-top-color:#22919c;border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.yc-loading p{color:#64748b;font-size:.95rem}@media (width<=768px){.yc-container{padding:1rem}.yc-content{grid-template-columns:1fr;gap:1.5rem}.yc-form-actions{flex-direction:column}.yc-btn{justify-content:center;width:100%}.yc-header-content h1{font-size:1.5rem}}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-sizing:border-box;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-x:hidden}.dark .modal-overlay{background:#000000b3}.modal-content{background:var(--bg-primary);border:1px solid var(--border-color);box-sizing:border-box;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow:hidden auto;box-shadow:0 10px 40px #0000004d}.modal-header{border-bottom:1px solid var(--border-color);box-sizing:border-box;justify-content:space-between;align-items:center;width:100%;padding:20px 24px;display:flex}.modal-header h3{color:var(--text-primary);margin:0;font-size:18px;font-weight:600}.modal-close{cursor:pointer;color:var(--text-tertiary);background:0 0;border:none;padding:4px;transition:color .2s}.modal-close:hover{color:var(--text-primary)}.modal-body{box-sizing:border-box;width:100%;padding:24px}.room-info{background:var(--bg-secondary);border:1px solid var(--border-color);box-sizing:border-box;border-radius:8px;width:100%;margin-bottom:20px;padding:12px 16px}.room-info p{color:var(--text-secondary);margin:4px 0;font-size:14px}.room-info strong{color:var(--text-primary)}.error-message{color:#c33;background:#fee;border-left:4px solid #c33;border-radius:8px;margin-bottom:20px;padding:12px 16px;font-size:14px}.dark .error-message{color:#f8d7da;background:#dc354533;border-left-color:#dc3545}.form-group{box-sizing:border-box;width:100%;margin-bottom:20px}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);box-sizing:border-box;border-radius:6px;padding:10px 12px;font-family:inherit;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:var(--bg-secondary);cursor:not-allowed;opacity:.6}.form-help{color:var(--text-tertiary);margin-top:6px;font-size:12px;line-height:1.4;display:block}.modal-actions{border-top:1px solid var(--border-color);box-sizing:border-box;justify-content:flex-end;gap:12px;width:100%;margin-top:24px;padding-top:20px;display:flex}.btn-secondary,.btn-primary{cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.btn-secondary{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-primary{color:#fff;background:#22919c}.btn-primary:hover:not(:disabled){background:#1a7580}.btn-secondary:disabled,.btn-primary:disabled{opacity:.6;cursor:not-allowed}@media (width<=1024px){.modal-overlay{padding:16px}.modal-content{max-width:90%}}@media (width<=768px){.modal-overlay{align-items:flex-end;padding:0}.modal-content{border:none;border-top:1px solid var(--border-color);border-radius:16px 16px 0 0;width:100%;max-width:100%;max-height:90vh;margin:0}.modal-header{box-sizing:border-box;padding:16px}.modal-header h3{font-size:16px}.modal-body{box-sizing:border-box;padding:16px}.room-info{box-sizing:border-box;margin-bottom:16px;padding:10px 12px}.room-info p{font-size:13px}.form-group{box-sizing:border-box;margin-bottom:16px}.form-group label{font-size:13px}.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;padding:9px 11px;font-size:13px}.form-help{font-size:11px}.modal-actions{box-sizing:border-box;flex-direction:column-reverse;gap:10px;margin-top:20px;padding-top:16px}.btn-secondary,.btn-primary{box-sizing:border-box;width:100%;padding:11px 18px;font-size:13px}}@media (width<=480px){.modal-overlay{padding:12px}.modal-content{border-radius:12px;max-height:95vh}.modal-header{box-sizing:border-box;padding:14px}.modal-header h3{font-size:15px}.modal-body{box-sizing:border-box;padding:14px}.room-info{box-sizing:border-box;margin-bottom:14px;padding:9px 11px}.room-info p{font-size:12px}.form-group{box-sizing:border-box;margin-bottom:14px}.form-group label{margin-bottom:6px;font-size:12px}.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;padding:8px 10px;font-size:12px}.form-help{font-size:10px}.modal-actions{box-sizing:border-box;flex-direction:column-reverse;gap:8px;margin-top:16px;padding-top:14px}.btn-secondary,.btn-primary{box-sizing:border-box;width:100%;padding:10px 16px;font-size:12px}}:root{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#e9ecef;--text-primary:#212529;--text-secondary:#495057;--text-tertiary:#6c757d;--border-color:#dee2e6;--shadow:#00000014;--shadow-hover:#0000001f}.dark{--bg-primary:#1a1d23;--bg-secondary:#242830;--bg-tertiary:#2d323b;--text-primary:#e9ecef;--text-secondary:#adb5bd;--text-tertiary:#868e96;--border-color:#3d4450;--shadow:#0000004d;--shadow-hover:#0006}.wedding-portal-dashboard{background:var(--bg-secondary);width:100%;max-width:100%;min-height:100vh;padding:0;overflow-x:hidden}.loading-state{min-height:400px;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex}.spinner{border:4px solid var(--border-color);border-top-color:#22919c;border-radius:50%;width:50px;height:50px;animation:1s linear infinite spin}.kpis-card{background:var(--bg-primary);box-shadow:0 1px 3px var(--shadow);border-radius:8px;margin-bottom:24px;transition:box-shadow .2s;overflow:hidden}.kpis-header{border-bottom:1px solid var(--border-color);align-items:center;gap:10px;padding:16px 20px;display:flex}.kpis-header svg{color:var(--text-tertiary);flex-shrink:0}.kpis-header span{color:var(--text-secondary);font-size:14px;font-weight:600}.kpis-content{padding:24px 28px 28px}.kpis-description{color:var(--text-tertiary);margin-bottom:20px;font-size:13px;line-height:1.5}.kpi-sections-grid{grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px;display:grid}.kpi-section{margin-bottom:0}.kpi-row{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.kpi-label{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.kpi-value,.kpi-percentage{color:var(--text-secondary);font-size:14px;font-weight:600}.kpi-collected{color:var(--text-secondary);font-size:12px;font-weight:500}.kpi-goal{color:var(--text-tertiary);font-size:12px}.progress-bar-wrapper{margin-bottom:8px}.progress-bar{background:var(--bg-tertiary);border-radius:4px;height:8px;margin-bottom:8px;overflow:hidden}.progress-fill{background:#22919c;border-radius:4px;height:100%;transition:width .3s}.progress-fill.green{background:#28a745}.kpi-details{color:var(--text-tertiary);gap:16px;margin-top:8px;font-size:12px;display:flex}.status-badges{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:24px;display:grid}.badge{border-radius:6px;flex-direction:column;align-items:center;min-width:80px;padding:12px 16px;transition:transform .2s;display:flex}.badge:hover{transform:translateY(-2px)}.badge-paid{background:#d4edda}.dark .badge-paid{background:#28a74533;border:1px solid #28a7454d}.badge-advance{background:#fff3cd}.dark .badge-advance{background:#ffc10733;border:1px solid #ffc1074d}.badge-pending{background:#f8d7da}.dark .badge-pending{background:#dc354533;border:1px solid #dc35454d}.badge-number{font-size:36px;font-weight:700;line-height:1}.badge-paid .badge-number{color:#155724}.dark .badge-paid .badge-number{color:#4ade80}.badge-paid .badge-label{color:#155724}.dark .badge-paid .badge-label{color:#86efac}.badge-advance .badge-number{color:#856404}.dark .badge-advance .badge-number{color:#fbbf24}.badge-advance .badge-label{color:#856404}.dark .badge-advance .badge-label{color:#fcd34d}.badge-pending .badge-number{color:#721c24}.dark .badge-pending .badge-number{color:#f87171}.badge-pending .badge-label{color:#721c24}.dark .badge-pending .badge-label{color:#fca5a5}.warning-note{background:var(--bg-primary);box-shadow:0 1px 3px var(--shadow);border-left:4px solid #ffc107;border-radius:4px;align-items:flex-start;gap:12px;margin-bottom:24px;padding:16px;display:flex}.dark .warning-note{background:#ffc1071a}.warning-note svg{color:#ffc107;flex-shrink:0;margin-top:2px}.warning-note p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.5}.dark .warning-note p strong{color:#ffc107}.warning-note strong{font-weight:600}.rooming-list-section{margin-top:32px}.rooming-list-section h2{color:var(--text-primary);margin:0 0 20px;font-size:18px;font-weight:600}.accommodation-block{margin-bottom:32px}.accommodation-name{color:var(--text-secondary);border-bottom:2px solid var(--border-color);margin:0 0 16px;padding-bottom:8px;font-size:16px;font-weight:600}.accommodation-map{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;margin-top:24px;padding:20px}.map-title{color:var(--text-secondary);margin:0 0 16px;font-size:14px;font-weight:600}.map-image{border-radius:6px;width:100%;height:auto;display:block}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}.room-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:16px;transition:all .2s}.room-card:hover{box-shadow:0 2px 8px var(--shadow-hover);border-color:var(--text-tertiary)}.room-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;padding-bottom:12px;display:flex}.room-header-left{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.room-name{color:var(--text-primary);word-break:break-word;font-size:14px;font-weight:700}.room-status-badge{white-space:nowrap;border-radius:6px;flex-shrink:0;padding:4px 10px;font-size:10px;font-weight:700;display:inline-block}.room-status-success{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.dark .room-status-success{color:#28a745;background:#28a74533;border:1px solid #28a74566}.room-status-warning{color:#856404;background:#fff3cd;border:1px solid #ffeaa7}.dark .room-status-warning{color:#ffc107;background:#ffc10733;border:1px solid #ffc10766}.room-status-danger{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.dark .room-status-danger{color:#dc3545;background:#dc354533;border:1px solid #dc354566}.room-status-gray{color:#383d41;background:#e2e3e5;border:1px solid #d6d8db}.dark .room-status-gray{color:#adb5bd;background:#6c757d33;border:1px solid #6c757d66}.room-capacity{color:var(--text-tertiary);background:var(--bg-secondary);white-space:nowrap;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:600}.room-details{margin-bottom:12px}.room-details p{color:var(--text-tertiary);margin:4px 0;font-size:13px}.room-cost{color:#22919c;font-weight:600}.room-guests-list{flex-direction:column;gap:8px;margin-top:12px;display:flex}.guest-slot{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;justify-content:space-between;align-items:center;padding:10px 12px;transition:all .2s;display:flex}.guest-slot:hover{background:var(--bg-tertiary)}.guest-info{flex:1;align-items:center;gap:10px;display:flex}.guest-info svg{color:#22919c;flex-shrink:0}.guest-details{flex-direction:flex-start;gap:4px;display:flex}.guest-name{color:var(--text-primary);font-size:14px;font-weight:500}.guest-badge{color:#22919c;background:#d1ecf1;border-radius:4px;width:fit-content;padding:2px 8px;font-size:11px;display:inline-block}.guest-actions{border:0;flex-shrink:0;gap:6px;margin:0;padding:0;display:flex}.btn-edit-guest,.btn-delete-guest{cursor:pointer;color:var(--text-tertiary);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.btn-edit-guest:hover{background:var(--bg-tertiary);color:#22919c}.btn-delete-guest:hover{color:#dc3545;background:#dc35451a}.guest-status-paid{border-left:4px solid #28a745!important}.guest-status-partial{border-left:4px solid #ffc107!important}.guest-status-pending{border-left:4px solid #dc3545!important}.guest-status-no_required{border-left:4px solid #6c757d!important}.btn-add-guest{background:var(--bg-primary);color:#22919c;cursor:pointer;border:1px dashed #22919c;border-radius:6px;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 12px;font-size:13px;font-weight:500;transition:all .2s;display:flex}.btn-add-guest:hover{background:#22919c1a;border-style:solid}.btn-add-guest svg{flex-shrink:0}.no-data{text-align:center;background:var(--bg-secondary);border:2px dashed var(--border-color);border-radius:8px;padding:40px 20px}.no-data p{color:var(--text-tertiary);margin:0;font-size:14px}.welcome-section{text-align:center;background:#fff;border-radius:16px;margin-bottom:30px;padding:40px;box-shadow:0 2px 8px #00000014}.welcome-section h2{color:#2c3e50;margin:0 0 12px;font-size:32px;font-weight:600}.welcome-section p{color:#7a7a7a;margin:0;font-size:16px}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px;display:grid}.stat-card{background:#fff;border-radius:12px;align-items:center;gap:16px;padding:24px;transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 2px 8px #00000014}.stat-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #0000001f}.stat-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.stat-icon.rooms{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.stat-icon.assigned{color:#fff;background:linear-gradient(135deg,#22919c 0%,#157975 100%)}.stat-icon.available{color:#fff;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%)}.stat-icon.guests{color:#fff;background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}.stat-content h3{color:#2c3e50;margin:0 0 4px;font-size:32px;font-weight:700}.stat-content p{color:#7a7a7a;margin:0;font-size:14px}.event-info-section{background:#fff;border-radius:12px;margin-bottom:30px;padding:30px;box-shadow:0 2px 8px #00000014}.event-info-section h3{color:#2c3e50;margin:0 0 20px;font-size:20px;font-weight:600}.event-info-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;display:grid}.info-item{flex-direction:column;gap:8px;display:flex}.info-label{color:#7a7a7a;text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:500}.info-value{color:#2c3e50;font-size:16px;font-weight:600}.action-section{justify-content:center;margin-top:40px;display:flex}.btn-primary-large{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22919c 0%,#157975 100%);border:none;border-radius:12px;align-items:center;gap:12px;padding:18px 40px;font-size:18px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 12px #22919c4d}.btn-primary-large:hover{transform:translateY(-3px);box-shadow:0 8px 20px #22919c66}.btn-primary-large:active{transform:translateY(-1px)}.wedding-info{background:0 0!important;border:0!important;margin-bottom:0!important;display:flex!important}.btn-logout{min-width:150px}.accommodation-name{margin-bottom:20px!important}.guest-info{flex-direction:row}.guest-details{background:0 0!important;margin-bottom:0!important;padding:.25rem!important}@media (width<=1024px){.kpis-content{padding:20px}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.room-header{flex-wrap:wrap;gap:8px}.room-status-badge{padding:3px 8px;font-size:9px}}@media (width<=768px){.wedding-portal-dashboard{padding:0}.kpis-card{border-radius:0;margin-bottom:16px}.kpis-header{padding:14px 16px}.kpis-header span{font-size:13px}.kpis-content{padding:16px}.kpis-description{margin-bottom:16px;font-size:12px}.kpi-sections-grid{grid-template-columns:1fr;gap:16px}.kpi-section{margin-bottom:0}.kpi-row{flex-direction:column;align-items:flex-start;gap:4px}.kpi-label{font-size:10px}.kpi-value,.kpi-percentage{font-size:13px}.kpi-collected,.kpi-goal{font-size:11px}.status-badges{grid-template-columns:1fr;gap:10px;margin-top:16px}.badge{flex-direction:row;justify-content:space-between;align-items:center;min-width:auto;padding:12px 16px}.badge-number{font-size:28px}.badge-label{font-size:13px}.warning-note{border-radius:0;margin-bottom:16px;padding:12px}.warning-note p{font-size:12px}.rooming-list-section{margin-top:20px}.rooming-list-section h2{margin-bottom:16px;font-size:16px}.accommodation-block{margin-bottom:20px}.accommodation-name{margin-bottom:12px;padding-bottom:6px;font-size:15px}.rooms-grid{grid-template-columns:1fr;gap:12px}.room-card{padding:14px}.room-header{flex-wrap:wrap;gap:6px;margin-bottom:10px;padding-bottom:10px}.room-name{font-size:13px}.room-status-badge{padding:2px 6px;font-size:8px}.room-capacity{padding:4px 8px;font-size:11px}.room-details p{font-size:12px}.room-guests-list{gap:6px;margin-top:10px}.guest-slot{padding:8px 10px}.guest-name{font-size:13px}.guest-badge{padding:2px 6px;font-size:10px}.btn-add-guest{padding:8px 10px;font-size:12px}.btn-edit-guest{padding:4px}.no-data{padding:30px 16px}.no-data p{font-size:13px}}@media (width<=480px){.kpis-header,.kpis-content{padding:12px}.kpis-description{font-size:11px}.status-badges{gap:8px}.badge{padding:10px 12px}.badge-number{font-size:24px}.badge-label{font-size:12px}.warning-note{padding:10px}.warning-note svg{width:16px;height:16px}.warning-note p{font-size:11px}.rooming-list-section h2{font-size:15px}.accommodation-name{font-size:14px}.room-card{padding:12px}.room-name{font-size:12px}.room-capacity{font-size:11px}.guest-name{font-size:12px}.btn-add-guest{font-size:11px}}.guest-search-container{width:100%}.guest-search-card{background:#fff;border-radius:16px;max-width:600px;margin:0 auto;padding:3rem 2rem;box-shadow:0 4px 16px #00000014}.search-icon-wrapper{justify-content:center;margin-bottom:1.5rem;display:flex}.search-icon{color:#fff;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;display:flex}.search-icon svg{width:40px;height:40px}.search-title{color:#1e293b;text-align:center;margin-bottom:.75rem;font-size:1.875rem;font-weight:700}.search-subtitle{color:#64748b;text-align:center;margin-bottom:2rem;font-size:1rem;line-height:1.6}.search-form{margin-bottom:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#334155;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.search-input{border:2px solid #e2e8f0;border-radius:8px;width:100%;padding:.875rem 1rem;font-family:inherit;font-size:1rem;transition:all .2s}.search-input:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.search-input:disabled{cursor:not-allowed;background:#f1f5f9}.search-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.search-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #22919c4d}.search-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.search-button-icon{stroke-width:2.5px;width:20px;height:20px}.search-help{background:#f8fafc;border-radius:8px;margin-top:1.5rem;padding:1rem}.help-text{color:#64748b;margin:.5rem 0;font-size:.875rem;line-height:1.5}.multiple-results{border-top:2px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.multiple-results h3{color:#1e293b;margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.multiple-results>p{color:#64748b;margin-bottom:1rem;font-size:.875rem}.results-list{flex-direction:column;gap:.75rem;display:flex}.result-item{cursor:pointer;background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;transition:all .2s;display:flex}.result-item:hover{background:#f1f5f9;border-color:#22919c;transform:translate(4px)}.result-info h4{color:#1e293b;margin-bottom:.25rem;font-size:1rem;font-weight:600}.result-info p{color:#64748b;margin:.125rem 0;font-size:.875rem}.result-accommodation{font-weight:500;color:#22919c!important}.result-arrow{color:#94a3b8;stroke-width:2px;flex-shrink:0;width:24px;height:24px}.confirmation-modal{text-align:center}.confirmation-icon{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 1.5rem;display:flex}.confirmation-icon svg{width:40px;height:40px}.confirmation-greeting{color:#22919c;margin-bottom:.75rem;font-size:1.5rem;font-weight:700}.confirmation-question{color:#475569;margin-bottom:1.5rem;font-size:1.125rem;line-height:1.6}.guest-details{text-align:left;background:#f8fafc;border-radius:8px;flex-direction:column;margin-bottom:2rem;padding:1.25rem}.guest-details p{color:#334155;margin:.5rem 0;font-size:.9375rem;line-height:1.6}.guest-details strong{color:#1e293b;font-weight:600}.confirmation-actions{flex-direction:column;gap:.75rem;display:flex}.confirm-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s}.confirm-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #10b9814d}.confirm-button:disabled{opacity:.6;cursor:not-allowed}.cancel-button{color:#64748b;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.cancel-button:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.test-examples{border-top:2px solid #e2e8f0;margin-top:2rem;padding-top:2rem}.examples-title{color:#64748b;text-align:center;margin-bottom:1rem;font-size:.875rem}.examples-list{flex-direction:column;gap:.5rem;display:flex}.example-button{color:#475569;cursor:pointer;text-align:left;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:.75rem;font-size:.875rem;transition:all .2s}.example-button:hover{background:#f1f5f9;border-color:#22919c}.example-button strong{color:#22919c;margin-bottom:.125rem;display:block}@media (width<=768px){.guest-search-card{padding:2rem 1.5rem}.search-title{font-size:1.5rem}.search-subtitle{font-size:.9375rem}}@media (width<=480px){.guest-search-card{border-radius:12px;padding:1.5rem 1rem}.search-icon{width:64px;height:64px}.search-icon svg{width:32px;height:32px}.search-title{font-size:1.25rem}.search-subtitle{font-size:.875rem}.confirmation-icon{width:64px;height:64px}.confirmation-icon svg{width:32px;height:32px}}[data-theme=dark] .guest-search-card{background:#1f2937;box-shadow:0 4px 16px #0000004d}[data-theme=dark] .search-title{color:#f3f4f6}[data-theme=dark] .search-subtitle{color:#9ca3af}[data-theme=dark] .search-input{color:#f3f4f6;background:#374151;border-color:#4b5563}[data-theme=dark] .search-input:focus{border-color:#4fb3bf;box-shadow:0 0 0 3px #4fb3bf1a}[data-theme=dark] .search-button{background:linear-gradient(135deg,#4fb3bf 0%,#22919c 100%)}[data-theme=dark] .search-help{background:#4fb3bf1a;border-color:#4fb3bf}[data-theme=dark] .help-text{color:#9ca3af}[data-theme=dark] .multiple-results{background:#4fb3bf1a;border-color:#4fb3bf}[data-theme=dark] .result-item{background:#374151;border-color:#4b5563}[data-theme=dark] .result-item:hover{background:#4b5563;border-color:#4fb3bf}[data-theme=dark] .confirmation-modal{background:#374151;border-color:#4b5563}[data-theme=dark] .confirmation-title{color:#f3f4f6}[data-theme=dark] .confirmation-question,[data-theme=dark] .guest-details{color:#9ca3af}[data-theme=dark] .confirm-button{background:linear-gradient(135deg,#4fb3bf 0%,#22919c 100%)}[data-theme=dark] .cancel-button{color:#9ca3af;background:#374151;border-color:#4b5563}.reservation-summary-container{width:100%}.reservation-card{background:#fff;border-radius:16px;max-width:700px;margin:0 auto;overflow:hidden;box-shadow:0 4px 16px #00000014}.reservation-header{background:#e8f4f2;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex;position:relative}.header-left{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.accommodation-icon{color:#22919c;background:#d1f2f0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:50px;height:50px;display:flex}.accommodation-icon svg{stroke-width:2px;width:30px;height:30px}.accommodation-info{flex:1;min-width:0;box-shadow:none!important;background:0 0!important;border:none!important;margin:0!important;padding:0!important}.accommodation-name{color:#1e293b;word-break:break-word;border:0;padding:0;font-size:1rem;font-weight:700;line-height:1.2;margin:0!important}.accommodation-details{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.125rem;display:flex}.accommodation-type,.room-name{color:#64748b;margin:0;font-size:.8125rem;font-weight:500}.status-badge{white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;border-radius:6px;flex-shrink:0;padding:.5rem 1rem;font-size:.75rem;font-weight:700}.status-success{color:#065f46;background:#d1fae5}.status-warning{color:#92400e;background:#fef3c7}.status-danger{color:#991b1b;background:#fee2e2}.status-gray{color:#475569;background:#f1f5f9}.status-badge.status-danger{color:#fff;background:#dc2626;margin:0}.status-badge.status-success{color:#fff;background:#10b981}.status-badge.status-warning{color:#fff;background:#f59e0b}.reservation-body{padding:30px 20px}.guest-info-section{text-align:center;box-sizing:border-box;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;width:100%;margin:0 0 20px;padding:1rem}.guest-info-section .section-title{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin:0 0 .5rem;font-size:.75rem;font-weight:500}.wedding-info-section,.payment-status-section{border-bottom:none;padding:1rem 0}.section-title{color:#64748b;text-transform:uppercase;letter-spacing:.05em;justify-content:center;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:.75rem;font-weight:500;display:flex}.section-icon{color:#22919c;stroke-width:2px;width:20px;height:20px}.guest-name{color:#475569;text-align:center;margin:0;font-size:1rem;font-weight:600}.wedding-info{box-sizing:border-box;grid-template-columns:1fr 1fr;gap:1rem;width:100%;margin-bottom:1rem;padding:0;display:grid}.wedding-card{text-align:center;background:#e8f4f2;border:1px solid #d1f2f0;border-radius:8px;padding:1rem}.info-item{flex-direction:column;align-items:center;gap:.5rem;display:flex}.wedding-card .info-icon{color:#22919c;stroke-width:2px;border:none;width:20px;height:20px;margin-bottom:.25rem;background:0 0!important}.info-content{flex-direction:column;align-items:center;gap:.25rem;display:flex}.info-label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;text-align:center;font-size:.75rem;font-weight:500}.info-value{color:#475569;text-align:center;font-size:.9rem;font-weight:500;line-height:1.3}.payment-status-section{box-sizing:border-box;width:100%;margin:0;padding:20px 0 0}.payment-amounts{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.amount-card{text-align:center;background:#f8fafc;border:2px solid #e2e8f0;border-radius:8px;padding:1rem}.amount-pending-card{background:#fef2f2;border-color:#fecaca}.amount-card .amount-label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem;font-weight:600;display:block}.amount-card .amount-value{color:#475569;font-size:1.25rem;font-weight:700;display:block}.amount-paid{color:#059669;font-weight:700}.amount-pending{color:#dc2626}.action-buttons{flex-direction:column;gap:.75rem;padding:2rem;display:flex;margin:0!important}.complete-payment-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.complete-payment-button:hover{transform:translateY(-2px);box-shadow:0 8px 16px #10b9814d}.whatsapp-button{color:#25d366;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:1rem;font-size:.9375rem;font-weight:600;transition:all .2s;display:flex}.whatsapp-button:hover{background:#f0fdf4;border-color:#25d366}.button-icon{width:20px;height:20px}.payment-history{background:#f8fafc;padding:1.5rem 2rem}.history-list{flex-direction:column;gap:.75rem;display:flex}.history-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.history-info{align-items:center;gap:1rem;display:flex}.history-amount{color:#059669;font-size:1rem;font-weight:700}.history-method{color:#64748b;text-transform:capitalize;font-size:.875rem}.history-date{color:#94a3b8;font-size:.875rem}@media (width<=768px){.reservation-header{flex-direction:column;align-items:flex-start;gap:1rem}.status-badge{align-self:flex-start}.info-row{grid-template-columns:1fr;gap:1rem}.payment-amounts{grid-template-columns:1fr}.guest-info-section,.wedding-info-section,.payment-status-section{padding:1.25rem 1.5rem}.action-buttons{padding:1.5rem}}@media (width<=480px){.reservation-header{padding:1.5rem}.accommodation-icon{width:56px;height:56px}.accommodation-icon svg{width:28px;height:28px}.accommodation-name{font-size:1.25rem}.guest-info-section,.wedding-info-section,.payment-status-section,.action-buttons{padding:1rem}.amount-value{font-size:1.125rem}.history-item{flex-direction:column;align-items:flex-start;gap:.5rem}}.terms-conditions{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;padding:1rem}.complete-payment-button:disabled{opacity:.6;cursor:not-allowed;background:#9ca3af}.card-payment-form{background:#fff;border-radius:16px;max-width:500px;margin:0 auto;padding:2rem;box-shadow:0 4px 16px #00000014}.form-header{text-align:center;margin-bottom:2rem}.form-header h3{color:#22919c;margin-bottom:1rem;font-size:1.5rem}.amount-display{background:linear-gradient(135deg,#f5f7fa 0%,#e8ecf1 100%);border-radius:12px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.amount-label{color:#7a7a7a;font-size:.875rem;font-weight:500}.amount-value{color:#22919c;font-size:2rem;font-weight:700}.card-form{flex-direction:column;gap:1.5rem;display:flex}.form-group label{color:#54595f;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;display:flex}.form-group input{border:2px solid #e8ecf1;border-radius:8px;padding:.875rem 1rem;font-family:Roboto,sans-serif;font-size:1rem;transition:all .2s}.form-group input:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.form-group input.error{border-color:#ef4444}.form-group input:disabled{cursor:not-allowed;opacity:.6;background:#f5f7fa}.error-message{color:#ef4444;margin-top:-.25rem;font-size:.75rem}.card-type{color:#22919c;text-transform:uppercase;margin-top:-.25rem;font-size:.75rem;font-weight:600}.expiry-group{grid-column:1}.expiry-inputs{align-items:center;gap:.5rem;display:flex}.expiry-inputs input{text-align:center;flex:1}.expiry-inputs .separator{color:#7a7a7a;font-size:1.25rem;font-weight:600}.cvv-group{grid-column:2}.cvv-group input{text-align:center;letter-spacing:.1em}.form-actions{gap:1rem;margin-top:1rem;display:flex}.cancel-button,.submit-button{cursor:pointer;border:none;border-radius:12px;flex:1;padding:1rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.cancel-button{color:#54595f;background:#f5f7fa}.cancel-button:hover:not(:disabled){background:#e8ecf1}.submit-button{color:#fff;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%)}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}.submit-button:disabled,.cancel-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.security-message{background:#22919c0d;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;margin-top:1rem;padding:1rem;display:flex}.security-message svg{color:#22919c;width:20px;height:20px}.security-message span{color:#54595f;font-size:.875rem}[data-theme=dark] .card-payment-form{background:#1f2937;box-shadow:0 4px 16px #0000004d}[data-theme=dark] .form-header h3{color:#4fb3bf}[data-theme=dark] .amount-display{background:linear-gradient(135deg,#374151 0%,#4b5563 100%)}[data-theme=dark] .amount-label{color:#9ca3af}[data-theme=dark] .amount-value{color:#4fb3bf}[data-theme=dark] .form-group label{color:#f3f4f6}[data-theme=dark] .form-group input{color:#f3f4f6;background:#374151;border-color:#4b5563}[data-theme=dark] .form-group input:focus{border-color:#4fb3bf;box-shadow:0 0 0 3px #4fb3bf1a}[data-theme=dark] .form-group input:disabled{background:#4b5563}[data-theme=dark] .cancel-button{color:#9ca3af;background:#374151}[data-theme=dark] .cancel-button:hover:not(:disabled){background:#4b5563}[data-theme=dark] .submit-button{background:linear-gradient(135deg,#4fb3bf 0%,#22919c 100%)}[data-theme=dark] .security-message{background:#4fb3bf1a}[data-theme=dark] .security-message svg{color:#4fb3bf}[data-theme=dark] .security-message span{color:#9ca3af}@media (width<=640px){.card-payment-form{padding:1.5rem}.form-header h3{font-size:1.25rem}.amount-value{font-size:1.5rem}.form-row{grid-template-columns:1fr}.expiry-group,.cvv-group{grid-column:1}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.payment-method-container{width:100%}.payment-method-card{background:#fff;border-radius:16px;max-width:700px;margin:0 auto;padding:2.5rem 2rem;box-shadow:0 4px 16px #00000014}.amount-to-pay{text-align:center;background:linear-gradient(135deg,#f0f9fa 0%,#e0f2f4 100%);border-radius:12px;margin-bottom:2rem;padding:1rem}.amount-label{color:#64748b;letter-spacing:.05em;margin-bottom:.5rem;font-size:.875rem;display:block}.amount-value{color:#10b981;margin:0;font-size:2.1rem;font-weight:700}.amount-note{color:#64748b;margin-top:.5rem;font-size:.875rem}.method-selection{margin-bottom:2rem}.selection-title{color:#1e293b;text-align:center;margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.selection-subtitle{color:#64748b;text-align:center;margin-bottom:2rem;font-size:1rem}.methods-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem;display:grid}.method-card{cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 1rem;transition:all .3s;display:flex;position:relative}.method-card:hover:not(.disabled){border-color:#22919c;transform:translateY(-4px);box-shadow:0 8px 16px #22919c26}.method-card.selected{background:#f0f9fa;border-color:#22919c;box-shadow:0 4px 12px #22919c33}.method-card.disabled{opacity:.5;cursor:not-allowed;background:#f8fafc}.method-icon{background:#f1f5f9;border-radius:12px;justify-content:center;align-items:center;width:64px;height:64px;transition:all .3s;display:flex}.method-card:hover:not(.disabled) .method-icon,.method-card.selected .method-icon{background:#fff;transform:scale(1.1)}.method-icon svg{width:32px;height:32px}.method-name{color:#1e293b;text-align:center;margin:0;font-size:1.125rem;font-weight:600}.method-description{color:#64748b;text-align:center;margin:0;font-size:.875rem;line-height:1.4}.coming-soon{color:#78350f;text-transform:uppercase;letter-spacing:.05em;background:#fbbf24;border-radius:4px;padding:.25rem .5rem;font-size:.625rem;font-weight:700;position:absolute;top:.5rem;right:.5rem}.continue-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border:none;border-radius:8px;width:100%;margin-bottom:1.5rem;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s}.continue-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #22919c4d}.continue-button:disabled{opacity:.6;cursor:not-allowed}.system-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;gap:.75rem;padding:1rem;display:flex}.note-icon{color:#3b82f6;stroke-width:2px;flex-shrink:0;width:24px;height:24px;margin-top:.125rem}.note-content{flex:1}.note-content strong{color:#1e40af;margin-bottom:.25rem;font-size:.875rem;display:block}.note-content p{color:#1e40af;margin:0;font-size:.875rem;line-height:1.5}.payment-options{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:1.5rem 0;padding:1.5rem}.option-toggle{margin-bottom:1rem}.toggle-label{cursor:pointer;color:#334155;align-items:center;gap:.75rem;font-size:.9375rem;font-weight:500;display:flex}.toggle-label input[type=checkbox]{cursor:pointer;accent-color:#22919c;width:18px;height:18px}.toggle-label span{-webkit-user-select:none;user-select:none}.partial-amount-display{background:#e8f4f2;border:1px solid #d1f2f0;border-radius:8px;justify-content:space-between;align-items:center;margin-top:1rem;padding:1rem;animation:.3s fadeIn;display:flex}.partial-amount-display .amount-label{color:#64748b;font-size:.875rem;font-weight:500}.partial-amount-display .amount-value{color:#22919c;font-size:1.25rem;font-weight:700}.transfer-info{animation:.3s fadeIn}.transfer-header{text-align:center;margin-bottom:2rem}.transfer-icon{color:#fff;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 1rem;display:flex}.transfer-icon svg{width:32px;height:32px}.transfer-header h3{color:#1e293b;margin:0;font-size:1.5rem;font-weight:700}.bank-details{background:#f8fafc;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.detail-item{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.detail-item:last-child{border-bottom:none}.detail-item.highlight{background:#fef3c7;border-bottom:none;border-radius:0 0 12px 12px;margin:.75rem -1.5rem -1.5rem;padding:1rem 1.5rem}.detail-item.highlight .detail-value{color:#92400e;font-size:1.25rem}.transfer-instructions{background:#eff6ff;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.transfer-instructions h4{color:#1e40af;margin:0 0 .75rem;font-size:1rem;font-weight:600}.transfer-instructions ol{margin:0;padding-left:1.25rem}.transfer-instructions li{color:#1e40af;margin-bottom:.5rem;font-size:.875rem;line-height:1.6}.transfer-instructions li:last-child{margin-bottom:0}.transfer-actions{flex-direction:column;gap:.75rem;display:flex}.confirm-transfer-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s}.confirm-transfer-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #10b9814d}.confirm-transfer-button:disabled{opacity:.6;cursor:not-allowed}.back-button{color:#64748b;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.back-button:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.back-button:disabled{opacity:.6;cursor:not-allowed}@media (width<=768px){.payment-method-card{padding:2rem 1.5rem}.amount-value{font-size:2rem}.methods-grid{grid-template-columns:1fr;gap:.75rem}.method-card{flex-direction:row;justify-content:flex-start;padding:1.25rem}.method-icon{width:56px;height:56px}.method-icon svg{width:28px;height:28px}.method-name,.method-description{text-align:left}}@media (width<=480px){.payment-method-card{padding:1.5rem 1rem}.amount-to-pay{padding:1.5rem}.amount-value{font-size:1.75rem}.selection-title{font-size:1.25rem}.transfer-icon{width:56px;height:56px}.transfer-icon svg{width:28px;height:28px}.transfer-header h3{font-size:1.25rem}.bank-details{padding:1rem}.detail-item{flex-direction:column;align-items:flex-start;gap:.25rem}.detail-value{text-align:left}}.terms-conditions{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:1.5rem 0;padding:1rem}.terms-checkbox{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:.75rem;display:flex}.terms-checkbox input[type=checkbox]{cursor:pointer;accent-color:#22919c;width:18px;height:18px;margin-top:2px}.checkbox-text{color:#475569;font-size:.9rem;line-height:1.5}.terms-link{color:#22919c;font-weight:600;text-decoration:none;transition:color .2s}.terms-link:hover{color:#1a6b73;text-decoration:underline}.confirmation-container{width:100%}.confirmation-card{text-align:center;background:#fff;border-radius:16px;max-width:600px;margin:0 auto;padding:3rem 2rem;box-shadow:0 4px 16px #00000014}.success-icon-wrapper{justify-content:center;margin-bottom:1.5rem;display:flex}.success-icon{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;animation:.5s scaleIn;display:flex}@keyframes scaleIn{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.confirmation-title{color:#1e293b;margin-bottom:.75rem;font-size:2rem;font-weight:700}.confirmation-subtitle{color:#475569;margin-bottom:2rem;font-size:1.125rem;line-height:1.6}.confirmation-subtitle strong{color:#22919c}.whatsapp-notification{background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%);border-radius:12px;justify-content:center;align-items:center;gap:.75rem;margin-bottom:2rem;padding:1rem;display:flex}.whatsapp-icon{color:#16a34a;flex-shrink:0;width:24px;height:24px}.whatsapp-notification p{color:#166534;margin:0;font-size:.9375rem;font-weight:600}.reservation-details{text-align:left;background:#f8fafc;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.detail-row.highlight{background:#fef3c7;border-bottom:none;border-radius:0 0 12px 12px;margin:.75rem -1.5rem -1.5rem;padding:1rem 1.5rem}.detail-value{color:#1e293b;text-align:right;font-size:1rem;font-weight:600}.total-amount{color:#10b981;font-size:1.25rem}.next-steps{text-align:left;background:#eff6ff;border-radius:12px;margin-bottom:2rem;padding:1.5rem}.next-steps-title{color:#1e40af;margin:0 0 1rem;font-size:1.125rem;font-weight:600}.steps-list{margin:0;padding-left:1.5rem}.steps-list li{color:#1e40af;margin-bottom:.5rem;font-size:.9375rem;line-height:1.8}.steps-list li:last-child{margin-bottom:0}.finish-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border:none;border-radius:8px;width:100%;margin-bottom:1.5rem;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s}.additional-info{border-top:1px solid #e2e8f0;padding-top:1.5rem}.info-text{color:#64748b;margin:0;font-size:.875rem;line-height:1.6}@media (width<=768px){.confirmation-card{padding:2rem 1.5rem}.confirmation-title{font-size:1.75rem}.confirmation-subtitle{font-size:1rem}.success-icon{width:80px;height:80px}.success-icon svg{width:40px;height:40px}}@media (width<=480px){.confirmation-card{padding:1.5rem 1rem}.confirmation-title{font-size:1.5rem}.confirmation-subtitle{font-size:.9375rem}.success-icon{width:72px;height:72px}.success-icon svg{width:36px;height:36px}.reservation-details{padding:1rem}.detail-row{flex-direction:column;align-items:flex-start;gap:.25rem}.detail-value{text-align:left}.next-steps{padding:1rem}.steps-list{padding-left:1.25rem}}.action-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;margin:2rem 0;display:flex}.pdf-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border:none;border-radius:12px;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.pdf-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6366f14d}.pdf-button svg{width:18px;height:18px}.finish-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%);border:none;border-radius:12px;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.finish-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}@media (width<=640px){.action-buttons{flex-direction:column;align-items:center}.pdf-button,.finish-button{justify-content:center;width:100%;max-width:300px}}.payment-header{background:0 0;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem 2rem;display:flex}.branding{align-items:center;gap:.75rem;display:flex}.brand-text h1{color:#22919c;text-transform:uppercase;letter-spacing:.03em;text-shadow:0 1px 2px #22919c1a;margin:0;font-family:Georgia,Times New Roman,serif;font-size:1.4rem;font-weight:600;line-height:1.2}.brand-hearts{align-items:center;gap:0;display:flex}.heart{color:#e91e63;width:24px;height:24px;animation:1.5s ease-in-out infinite heartbeat}.heart-left{animation-delay:0s}.heart-right{animation-delay:.3s}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.theme-toggle{align-items:center;display:flex}.theme-button{cursor:pointer;color:#22919c;background:#22919c1a;border:2px solid #22919c;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s;display:flex}.theme-button:hover{background:#22919c33;transform:scale(1.05)}.theme-button svg{width:20px;height:20px;transition:all .3s}.theme-button:hover svg{transform:rotate(15deg)}.logout-button{cursor:pointer;color:#dc2626;background:#dc26261a;border:2px solid #dc2626;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;margin-left:.5rem;transition:all .3s;display:flex}.logout-button:hover{background:#dc262633;transform:scale(1.05)}.logout-button svg{width:20px;height:20px;transition:all .3s}.logout-button:hover svg{transform:translate(2px)}[data-theme=dark] .brand-text h1{color:#4fb3bf;text-shadow:0 3px 6px #4fb3bf40}[data-theme=dark] .heart{color:#f06292}[data-theme=dark] .theme-button{color:#4fb3bf;background:#4fb3bf1a;border-color:#4fb3bf}[data-theme=dark] .theme-button:hover{background:#4fb3bf33}[data-theme=dark] .logout-button{color:#ef4444;background:#ef44441a;border-color:#ef4444}[data-theme=dark] .logout-button:hover{background:#ef444433}@media (width<=768px){.payment-header{margin-bottom:1.5rem;padding:1rem 1.5rem}.brand-text h1{letter-spacing:.02em;font-size:1.2rem}.heart{width:20px;height:20px}.theme-button{width:40px;height:40px}.theme-button svg{width:18px;height:18px}}@media (width<=480px){.payment-header{flex-direction:column;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem}.branding{order:2}.theme-toggle{order:1;align-self:flex-end}.brand-text h1{text-align:center;letter-spacing:.02em;font-size:1.1rem}.brand-hearts{justify-content:center}}.guest-payment-flow{background:linear-gradient(135deg,#f5f7fa 0%,#e8ecf1 100%);min-height:100vh;padding:2rem 1rem}.stepper-container{background:#fff;border-radius:12px;max-width:900px;margin:0 auto 3rem;padding:2rem;box-shadow:0 2px 8px #00000014}.stepper{justify-content:space-between;align-items:center;display:flex;position:relative}.stepper-item{flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.stepper-step{color:#64748b;z-index:2;background:#e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.125rem;font-weight:600;transition:all .3s;display:flex;position:relative}.stepper-step.active{color:#fff;background:#22919c;transform:scale(1.1);box-shadow:0 4px 12px #22919c4d}.stepper-step.completed{color:#fff;background:#10b981}.check-icon{stroke-width:3px;width:24px;height:24px}.stepper-label{color:#64748b;text-align:center;margin-top:.75rem;font-size:.875rem;font-weight:500;transition:all .3s}.stepper-label.active{color:#22919c;font-weight:600}.stepper-line{z-index:1;background:#e2e8f0;width:100%;height:3px;transition:all .3s;position:absolute;top:24px;left:50%}.stepper-line.completed{background:#10b981}.flow-content{max-width:700px;margin:0 auto}@media (width<=768px){.guest-payment-flow{padding:1rem .5rem}.stepper-container{margin-bottom:2rem;padding:1.5rem 1rem}.stepper-step{width:40px;height:40px;font-size:1rem}.stepper-label{margin-top:.5rem;font-size:.75rem}.stepper-line{top:20px}}[data-theme=dark] .guest-payment-flow{background:linear-gradient(135deg,#1a1a2e 0%,#16213e 100%)}[data-theme=dark] .stepper-container{background:#1f2937;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .stepper-step{color:#9ca3af;background:#374151;border-color:#4b5563}[data-theme=dark] .stepper-step.active{color:#fff;background:#22919c;border-color:#22919c}[data-theme=dark] .stepper-step.completed{color:#fff;background:#10b981;border-color:#10b981}[data-theme=dark] .stepper-label{color:#9ca3af}[data-theme=dark] .stepper-label.active{color:#4fb3bf}[data-theme=dark] .stepper-line{background:#4b5563}[data-theme=dark] .stepper-line.completed{background:#10b981}@media (width<=480px){.stepper-label{display:none}.stepper-step{width:36px;height:36px;font-size:.875rem}.stepper-line{top:18px}}.payment-result-container{background:linear-gradient(135deg,#f0f9fa 0%,#e0f2f4 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.payment-result-card{text-align:center;background:#fff;border-radius:16px;width:100%;max-width:500px;padding:3rem;box-shadow:0 10px 40px #0000001a}.loading-spinner{margin:2rem auto}.spinner{border:4px solid #e2e8f0;border-top-color:#22919c;border-radius:50%;width:60px;height:60px;margin:0 auto;animation:1s linear infinite spin}.result-icon{border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 1.5rem;display:flex}.success-icon{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%)}.success-icon svg{width:48px;height:48px}.error-icon{color:#fff;background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%)}.error-icon svg{width:48px;height:48px}.payment-result-card h2{color:#1e293b;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.success-message,.error-message{color:#64748b;margin:0 0 2rem;font-size:1rem}.payment-details{text-align:left;background:#f8fafc;border-radius:12px;margin:2rem 0;padding:1.5rem}.detail-row{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.detail-row:last-child{border-bottom:none}.detail-label{color:#64748b;font-size:.875rem;font-weight:500}.detail-value{color:#1e293b;font-size:1rem;font-weight:600}.detail-value.pending{color:#dc2626}.transaction-id{color:#64748b;font-family:monospace;font-size:.875rem}.status-badge{border-radius:6px;padding:.375rem .75rem;font-size:.875rem;font-weight:600}.status-badge.status-paid{color:#065f46;background:#d1fae5}.status-badge.status-partial{color:#92400e;background:#fef3c7}.status-badge.status-pending{color:#991b1b;background:#fee2e2}.success-actions{flex-direction:column;gap:.75rem;margin:2rem 0;display:flex}.action-button{cursor:pointer;border:none;border-radius:8px;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.action-button.primary{color:#fff;background:linear-gradient(135deg,#22919c 0%,#1a7380 100%)}.action-button.primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}.action-button.secondary{color:#22919c;background:#fff;border:2px solid #22919c}.action-button.secondary:hover{background:#f0f9fa}.action-button.pdf-button{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);justify-content:center;align-items:center;gap:.5rem;display:flex}.action-button.pdf-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6366f14d}.action-button.pdf-button:disabled{cursor:not-allowed;box-shadow:none;background:#94a3b8;transform:none}.action-button.pdf-button svg{width:18px;height:18px}.confirmation-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;align-items:flex-start;gap:.75rem;margin-top:2rem;padding:1rem;display:flex}.confirmation-note svg{color:#1e40af;flex-shrink:0;width:20px;height:20px;margin-top:2px}.confirmation-note p{color:#1e40af;text-align:left;margin:0;font-size:.875rem}@media (width<=640px){.payment-result-container{padding:1rem}.payment-result-card{padding:2rem 1.5rem}.payment-result-card h2{font-size:1.5rem}}.reports-container{padding:1.5rem}.reports-header{justify-content:space-between;align-items:flex-start;margin-bottom:2rem;display:flex}.reports-header h2{color:var(--color-secondary);margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.reports-header p{color:var(--color-text);margin:0;font-size:.9rem}.kpis-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.kpi-card{background:#fff;border-radius:8px;align-items:center;gap:1rem;padding:1.5rem;transition:box-shadow .2s;display:flex;box-shadow:0 1px 3px #0000001a}.kpi-card:hover{box-shadow:0 4px 12px #00000026}.kpi-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.kpi-icon svg{width:28px;height:28px;color:var(--color-secondary)}.kpi-content{flex-direction:column;gap:.25rem;display:flex}.kpi-label{color:var(--color-text);font-size:.85rem;font-weight:500}.kpi-value{color:var(--color-secondary);font-size:1.75rem;font-weight:700;line-height:1}.charts-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.chart-card{background:#fff;border-radius:8px;padding:1.5rem;transition:box-shadow .2s;box-shadow:0 1px 3px #0000001a}.chart-card:hover{box-shadow:0 4px 12px #00000026}.chart-card.large{grid-column:span 2}.chart-header{margin-bottom:1.5rem}.chart-header h3{color:var(--color-secondary);margin:0 0 .25rem;font-size:1.1rem;font-weight:600}.chart-header p{color:var(--color-text);margin:0;font-size:.85rem}.chart-center-text{text-align:center;pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.chart-center-value{color:var(--color-secondary);font-size:2rem;font-weight:700;display:block}.chart-center-label{color:var(--color-text);margin-top:.25rem;font-size:.85rem;display:block}.loading,.empty-state{text-align:center;color:var(--color-text);padding:3rem 1rem;font-size:1rem}.empty-state{background:#f9fafb;border-radius:8px}.dark .kpi-card,.dark .chart-card{background:#1f2937;box-shadow:0 1px 3px #0000004d}.dark .kpi-card:hover,.dark .chart-card:hover{box-shadow:0 4px 12px #00000080}.dark .reports-header h2,.dark .chart-header h3,.dark .kpi-value,.dark .chart-center-value{color:#f3f4f6}.dark .reports-header p,.dark .chart-header p,.dark .kpi-label,.dark .chart-center-label{color:#d1d5db}.dark .empty-state{color:#d1d5db;background:#374151}@media (width<=1024px){.charts-grid{grid-template-columns:1fr}.chart-card.large{grid-column:span 1}}@media (width<=768px){.reports-container{padding:1rem}.kpis-grid{grid-template-columns:1fr}.kpi-value,.chart-center-value{font-size:1.5rem}}.two-factor-auth{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.two-factor-header{border-bottom:1px solid #e5e7eb;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.two-factor-icon{background:#22919c1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.two-factor-icon svg{color:#22919c;width:24px;height:24px}.two-factor-header h3{color:#1a1a1a;margin:0 0 .25rem;font-size:1.25rem;font-weight:600}.two-factor-header p{color:#666;margin:0;font-size:.9rem}.two-factor-loading{text-align:center;color:#666;padding:2rem}.status-badge{border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;display:inline-flex}.status-badge svg{width:18px;height:18px}.status-badge.enabled{color:#16a34a;background:#22c55e1a}.status-badge.disabled{color:#dc2626;background:#ef44441a}.two-factor-enabled{animation:.3s slideIn}.two-factor-options{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.option-card{text-align:center;border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s}.option-card:hover{background:#22919c0d;border-color:#22919c}.option-icon{background:#22919c1a;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin:0 auto 1rem;display:flex}.option-icon svg{color:#22919c;width:24px;height:24px}.option-card h4{color:#1a1a1a;margin:0 0 .5rem;font-size:1rem;font-weight:600}.option-card p{color:#666;margin:0 0 1rem;font-size:.9rem}.option-button{color:#fff;cursor:pointer;background:#22919c;border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.option-button:hover:not(:disabled){background:#1a6b73;transform:translateY(-2px)}.option-buttons{flex-wrap:wrap;gap:.5rem;display:flex}.option-buttons .option-button{flex:1;min-width:120px}.option-button:disabled{opacity:.6;cursor:not-allowed}.two-factor-disabled{animation:.3s slideIn}.disabled-message{color:#666;margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.enable-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#22919c 0%,#1a6b73 100%);border:none;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600;transition:all .2s}.enable-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #22919c4d}.enable-button:disabled{opacity:.6;cursor:not-allowed}.setup-container{background:#f9fafb;border-radius:12px;padding:2rem}.setup-step{margin-bottom:2rem}.setup-step:last-child{margin-bottom:0}.setup-step h4{color:#1a1a1a;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.setup-step p{color:#666;margin:0 0 1rem;font-size:.9rem}.qr-code-container{background:#fff;border-radius:8px;justify-content:center;margin:1rem 0;padding:1.5rem;display:flex}.qr-code{width:200px;height:200px}.secret-label{font-weight:500;margin-top:1.5rem!important;margin-bottom:.5rem!important}.secret-code{letter-spacing:.1em;text-align:center;color:#22919c;word-break:break-all;background:#fff;border-radius:8px;padding:1rem;font-family:Courier New,monospace;font-size:1.1rem;font-weight:600}.verification-input{text-align:center;letter-spacing:.1em;box-sizing:border-box;border:2px solid #e5e7eb;border-radius:8px;width:100%;padding:.875rem;font-family:Courier New,monospace;font-size:1.5rem;transition:all .2s}.verification-input:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.verify-button{color:#fff;cursor:pointer;background:#22919c;border:none;border-radius:8px;width:100%;margin-top:1rem;padding:.875rem;font-weight:600;transition:all .2s}.verify-button:hover:not(:disabled){background:#1a6b73;transform:translateY(-2px)}.verify-button:disabled{opacity:.6;cursor:not-allowed}.backup-codes-container{background:#fef3c7;border:2px solid #fcd34d;border-radius:8px;margin-top:1.5rem;padding:1.5rem}.backup-codes-container h4{color:#92400e;margin-top:0}.backup-codes-container p{color:#b45309}.backup-codes-list{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem;margin:1rem 0;display:grid}.backup-code{text-align:center;color:#22919c;background:#fff;border:1px solid #fcd34d;border-radius:6px;padding:.75rem;font-family:Courier New,monospace;font-weight:600}.backup-actions{gap:1rem;margin:1rem 0;display:flex}.backup-button{cursor:pointer;color:#92400e;background:#fff;border:2px solid #fcd34d;border-radius:6px;flex:1;padding:.75rem;font-weight:600;transition:all .2s}.backup-button:hover{background:#fef3c7;transform:translateY(-2px)}.backup-warning{color:#92400e;margin:1rem 0 0;font-size:.85rem;font-weight:500}.two-factor-actions{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.password-input-group{margin-bottom:1rem}.password-input-group label{color:#333;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.password-input-group input{box-sizing:border-box;border:2px solid #e5e7eb;border-radius:8px;width:100%;padding:.875rem;font-size:1rem;transition:all .2s}.password-input-group input:focus{border-color:#22919c;outline:none;box-shadow:0 0 0 3px #22919c1a}.disable-button{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:8px;width:100%;padding:.875rem;font-weight:600;transition:all .2s}.disable-button:hover:not(:disabled){background:#dc2626;transform:translateY(-2px)}.disable-button:disabled{opacity:.6;cursor:not-allowed}[data-theme=dark] .two-factor-auth{background:#1e1e2e;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .two-factor-header{border-bottom-color:#3a3a4a}[data-theme=dark] .two-factor-header h3{color:#e5e5e5}[data-theme=dark] .two-factor-header p{color:#a0a0a0}[data-theme=dark] .two-factor-icon{background:#22919c33}[data-theme=dark] .option-card{background:#2a2a3a;border-color:#3a3a4a}[data-theme=dark] .option-card:hover{background:#22919c1a}[data-theme=dark] .option-card h4{color:#e5e5e5}[data-theme=dark] .option-card p,[data-theme=dark] .disabled-message{color:#a0a0a0}[data-theme=dark] .setup-container{background:#2a2a3a}[data-theme=dark] .setup-step h4{color:#e5e5e5}[data-theme=dark] .setup-step p{color:#a0a0a0}[data-theme=dark] .qr-code-container{background:#1e1e2e}[data-theme=dark] .secret-code{color:#4fb3bf;background:#2a2a3a}[data-theme=dark] .verification-input{color:#e5e5e5;background:#2a2a3a;border-color:#3a3a4a}[data-theme=dark] .verification-input:focus{border-color:#22919c}[data-theme=dark] .backup-codes-container{background:#22919c1a;border-color:#22919c}[data-theme=dark] .backup-codes-container h4,[data-theme=dark] .backup-codes-container p{color:#4fb3bf}[data-theme=dark] .backup-code{background:#2a2a3a;border-color:#22919c}[data-theme=dark] .backup-button{color:#4fb3bf;background:#2a2a3a;border-color:#22919c}[data-theme=dark] .backup-button:hover{background:#3a3a4a}[data-theme=dark] .backup-warning{color:#4fb3bf}[data-theme=dark] .two-factor-actions{border-top-color:#3a3a4a}[data-theme=dark] .password-input-group label{color:#e5e5e5}[data-theme=dark] .password-input-group input{color:#e5e5e5;background:#2a2a3a;border-color:#3a3a4a}[data-theme=dark] .password-input-group input:focus{border-color:#22919c}@media (width<=768px){.two-factor-auth{padding:1.5rem}.two-factor-header{flex-direction:column;gap:1rem}.two-factor-options{grid-template-columns:1fr}.setup-container{padding:1.5rem}.backup-codes-list{grid-template-columns:repeat(2,1fr)}.backup-actions{flex-direction:column}}.profile-container{max-width:1200px;margin:0 auto;padding:1.5rem}.profile-header{margin-bottom:2rem}.profile-header h2{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.profile-header p{color:var(--color-text);margin:0;font-size:.9rem}.profile-content{grid-template-columns:280px 1fr;gap:2rem;display:grid}.profile-tabs{flex-direction:column;gap:.5rem;display:flex}.tab-button{cursor:pointer;text-align:left;color:var(--color-secondary);background:#fff;border:2px solid #0000;border-radius:8px;align-items:center;gap:.75rem;padding:1rem 1.25rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.tab-button:hover{background:#f9fafb;border-color:#e5e7eb}.tab-button.active{border-color:var(--color-primary);color:var(--color-primary);background:#22919c1a}.tab-icon{justify-content:center;align-items:center;font-size:1.25rem;display:flex}.tab-label{flex:1}.profile-panel{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.panel-content{max-width:600px}.panel-header{border-bottom:2px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1.5rem}.panel-header h3{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.panel-header p{color:var(--color-text);margin:0;font-size:.875rem}.profile-form{flex-direction:column;gap:1.5rem;display:flex}.form-group input{color:var(--color-secondary);background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:.75rem 1rem;font-size:.9rem;transition:border-color .2s}.form-group input:focus{border-color:var(--color-primary);outline:none}.form-group input:disabled{cursor:not-allowed;background:#f9fafb}.form-actions{gap:1rem;padding-top:1rem;display:flex}.btn-primary{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.btn-primary:hover{background:var(--color-accent);transform:translateY(-1px);box-shadow:0 4px 12px #22919c4d}.btn-primary:disabled{cursor:not-allowed;box-shadow:none;background:#9ca3af;transform:none}.avatar-section{flex-direction:column;align-items:center;gap:2rem;padding:2rem 0;display:flex}.avatar-preview{border:4px solid #e5e7eb;border-radius:50%;width:200px;height:200px;overflow:hidden;box-shadow:0 4px 12px #0000001a}.avatar-preview img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.avatar-placeholder{color:#d1d5db;background:#f9fafb;justify-content:center;align-items:center;width:100%;height:100%;font-size:5rem;display:flex}.avatar-actions{flex-direction:column;align-items:center;gap:1rem;display:flex}.avatar-hint{color:var(--color-text);text-align:center;margin:0;font-size:.875rem}.twofa-section{flex-direction:column;gap:2rem;display:flex}.twofa-status{background:#f9fafb;border:2px solid #e5e7eb;border-radius:8px;gap:1.5rem;padding:1.5rem;display:flex}.status-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;font-size:2rem;display:flex}.status-icon.enabled{color:#22c55e;background:#22c55e1a}.status-icon.disabled{color:#9ca3af;background:#9ca3af1a}.status-content h4{color:var(--color-secondary);margin:0 0 .5rem;font-size:1rem;font-weight:600}.status-content p{color:var(--color-text);margin:0;font-size:.875rem}.twofa-info{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.info-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;gap:1rem;padding:1.25rem;transition:border-color .2s;display:flex}.info-card:hover{border-color:var(--color-primary)}.info-icon{width:40px;height:40px;color:var(--color-primary);background:#22919c1a;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;display:flex}.info-content h5{color:var(--color-secondary);margin:0 0 .25rem;font-size:.9rem;font-weight:600}.info-content p{color:var(--color-text);margin:0;font-size:.8rem}.twofa-actions{flex-direction:column;align-items:flex-start;gap:.75rem;display:flex}.twofa-note{color:var(--color-text);margin:0;font-size:.875rem;font-style:italic}.dark .profile-header h2,.dark .panel-header h3,.dark .status-content h4,.dark .info-content h5{color:#f3f4f6}.dark .tab-button{color:#d1d5db;background:#1f2937}.dark .tab-button:hover{background:#374151;border-color:#4b5563}.dark .tab-button.active{color:var(--color-primary);background:#22919c33}.dark .profile-panel{background:#1f2937;box-shadow:0 1px 3px #0000004d}.dark .panel-header{border-bottom-color:#374151}.dark .form-group label{color:#f3f4f6}.dark .form-group input{color:#f3f4f6;background:#374151;border-color:#4b5563}.dark .form-group input:disabled{background:#1f2937}.dark .avatar-preview{border-color:#4b5563}.dark .avatar-placeholder{color:#6b7280;background:#374151}.dark .twofa-status{background:#374151;border-color:#4b5563}.dark .info-card{background:#1f2937;border-color:#4b5563}@media (width<=768px){.profile-container{padding:1rem}.profile-content{grid-template-columns:1fr;gap:1.5rem}.profile-tabs{flex-direction:row;gap:.5rem;overflow-x:auto}.tab-button{text-align:center;flex-direction:column;min-width:100px;padding:.75rem 1rem}.tab-label{font-size:.75rem}.profile-panel{padding:1.5rem}.panel-content{max-width:100%}.avatar-preview{width:150px;height:150px}.twofa-info{grid-template-columns:1fr}}.settings-container{max-width:1000px;margin:0 auto;padding:2rem}.settings-header{margin-bottom:2rem}.settings-header h1{color:var(--color-secondary);margin:0 0 .5rem;font-size:2rem}.settings-header p{color:var(--color-text);margin:0;font-size:.95rem}.settings-tabs{border-bottom:1px solid #e5e7eb;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;display:flex}.tab-button{color:var(--color-text);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s;display:flex}.tab-button:hover:not(:disabled){color:var(--color-primary)}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-button:disabled{opacity:.5;cursor:not-allowed}.tab-icon{justify-content:center;align-items:center;width:20px;height:20px;font-size:1.2rem;display:flex}.tab-icon svg{stroke-width:2px;width:20px;height:20px}.settings-content{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.dark-mode .settings-content{background:var(--color-dark-card)}.settings-section{animation:.3s fadeIn}.section-header{margin-bottom:2rem}.section-header h2{color:var(--color-secondary);margin:0 0 .5rem;font-size:1.5rem}.section-header p{color:var(--color-text);margin:0;font-size:.95rem}.settings-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--color-secondary);font-size:.95rem;font-weight:600}.form-group input,.form-group select{border:1px solid #d1d5db;border-radius:8px;padding:.75rem;font-family:inherit;font-size:1rem;transition:all .3s}.dark-mode .form-group input,.dark-mode .form-group select{background:var(--color-dark-input);color:#fff;border-color:#4b5563}.form-group input:focus,.form-group select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #22919c1a}.form-group small{color:var(--color-text);font-size:.85rem}@media (width<=768px){.form-row{grid-template-columns:1fr}}.form-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.dark-mode .form-actions{border-top-color:#4b5563}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:#1a7a84;transform:translateY(-2px);box-shadow:0 4px 12px #22919c4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{color:var(--color-secondary);background:#f3f4f6}.dark-mode .btn-secondary{color:#fff;background:#4b5563}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.dark-mode .btn-secondary:hover:not(:disabled){background:#5a6b7a}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.info-box{border-left:4px solid var(--color-primary);background:#f0f9ff;border-radius:8px;margin-top:2rem;padding:1.5rem}.dark-mode .info-box{background:#22919c1a}.info-box ul{margin:0;padding-left:1.5rem;list-style:none}.info-box li{color:var(--color-text);margin:.5rem 0;padding-left:1.5rem;font-size:.9rem;position:relative}.info-box li:before{content:"✓";color:var(--color-primary);font-weight:700;position:absolute;left:0}.loading{text-align:center;color:var(--color-text);padding:2rem;font-size:1rem}.coming-soon{text-align:center;color:var(--color-text);padding:3rem 2rem}.coming-soon h2{color:var(--color-secondary);margin-bottom:1rem}.coming-soon p{color:var(--color-text);font-size:1.1rem}.payment-providers{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-bottom:2rem;display:grid}.dark-mode .provider-card{background:var(--color-dark-card);border-color:#4b5563}.provider-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #0000001a}.dark-mode .provider-card:hover{box-shadow:0 4px 12px #22919c33}.dark-mode .provider-header{border-bottom-color:#4b5563}.provider-badge{color:#065f46;background:#d1fae5;border-radius:20px;padding:.25rem .75rem;font-size:.8rem;font-weight:600}.provider-card .settings-form{gap:1rem;margin-bottom:1.5rem}.provider-card .form-group{gap:.35rem}.provider-card .form-group label{font-size:.9rem}.provider-card .form-group small{font-size:.8rem}.provider-info{border-left:3px solid var(--color-primary);background:#eff6ff;border-radius:6px;margin-top:1rem;padding:1rem}.dark-mode .provider-info{background:#22919c1a}.provider-card .btn-primary{width:100%;margin-top:.5rem}.ycloud-form{max-width:600px}.ycloud-form .form-group{margin-bottom:1.5rem}.ycloud-form .btn-primary{width:100%;margin-top:1rem}@media (width<=768px){.settings-container{padding:1rem}.settings-content{padding:1.5rem}.settings-tabs{gap:.5rem}.tab-button{padding:.75rem 1rem;font-size:.9rem}.form-actions{flex-direction:column;justify-content:stretch}.btn-primary,.btn-secondary{width:100%}.payment-providers{grid-template-columns:1fr}.provider-card{padding:1.5rem}}.ai-settings-container{padding:1.5rem}.ai-settings-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.ai-settings-header h1{color:var(--color-secondary);align-items:center;gap:.75rem;margin:0 0 .25rem;font-size:1.5rem;font-weight:600;display:flex}.ai-settings-header p{color:var(--color-text);margin:0;font-size:.9rem}.ai-settings-content{flex-direction:column;gap:2rem;display:flex}.ai-settings-section{border-left:4px solid var(--color-primary);background:#f8f9fa;border-radius:8px;padding:1.5rem}.ai-section-header{margin-bottom:1rem}.ai-section-header h2{color:var(--color-text);margin:0;font-size:1.1rem}.ai-form-group{flex-direction:column;gap:.5rem;display:flex}.ai-form-group label{color:var(--color-text);font-size:.95rem;font-weight:600}.ai-checkbox-label{cursor:pointer;align-items:center;gap:.75rem;font-weight:500;display:flex}.ai-checkbox-label input{cursor:pointer;width:20px;height:20px;accent-color:var(--color-primary)}.ai-input,.ai-select,.ai-textarea{border:1px solid #e5e7eb;border-radius:6px;padding:.75rem;font-family:inherit;font-size:.95rem;transition:all .2s}.ai-input:focus,.ai-select:focus,.ai-textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #22919c1a}.ai-input{padding:.75rem}.ai-select{cursor:pointer;background-color:#fff}.ai-textarea{resize:vertical;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9rem}.ai-slider{appearance:none;cursor:pointer;background:#e5e7eb;border-radius:3px;outline:none;width:100%;height:6px}.ai-slider::-webkit-slider-thumb{appearance:none;background:var(--color-primary);cursor:pointer;border-radius:50%;width:20px;height:20px;transition:all .2s}.ai-slider::-webkit-slider-thumb:hover{background:var(--color-primary-dark);transform:scale(1.1)}.ai-slider::-moz-range-thumb{background:var(--color-primary);cursor:pointer;border:none;border-radius:50%;width:20px;height:20px;transition:all .2s}.ai-slider::-moz-range-thumb:hover{background:var(--color-primary-dark);transform:scale(1.1)}.ai-value{color:var(--color-primary);font-size:1.1rem;font-weight:700}.ai-help-text{color:var(--color-text);margin:0;font-size:.85rem;line-height:1.5}.ai-settings-actions{border-top:1px solid #e5e7eb;gap:1rem;margin-top:2rem;padding-top:2rem;display:flex}.ai-btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.ai-btn-test{color:var(--color-primary);border:2px solid var(--color-primary);background:#fff}.ai-btn-test:hover:not(:disabled){background:var(--color-primary);color:#fff}.ai-btn-save{background:var(--color-primary);color:#fff;flex:1}.ai-btn-save:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:0 4px 12px #22919c4d}.ai-btn:disabled{opacity:.5;cursor:not-allowed}@media (width<=768px){.ai-settings-container{padding:1rem}.ai-settings-header h1{font-size:1.5rem}.ai-settings-actions{flex-direction:column}.ai-btn-save{flex:1}}.smtp-settings-container{padding:1.5rem}.smtp-settings-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.smtp-settings-header h1{color:var(--color-secondary);align-items:center;gap:.75rem;margin:0 0 .25rem;font-size:1.5rem;font-weight:600;display:flex}.smtp-settings-header p{color:var(--color-text);margin:0;font-size:.9rem}.smtp-settings-content{flex-direction:column;gap:2rem;display:flex}.smtp-settings-form{flex-direction:column;gap:1.5rem;display:flex}.smtp-settings-form .form-group{flex-direction:column;gap:.5rem;display:flex}.smtp-settings-form .form-group label{color:var(--color-text);font-size:.95rem;font-weight:600}.smtp-settings-form .form-group input,.smtp-settings-form .form-group select{border:1px solid #e5e7eb;border-radius:6px;padding:.75rem;font-family:inherit;font-size:.95rem;transition:all .2s}.smtp-settings-form .form-group input:focus,.smtp-settings-form .form-group select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #22919c1a}.smtp-settings-form .form-group small{color:var(--color-text);margin:0;font-size:.85rem}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-actions{border-top:1px solid #e5e7eb;gap:1rem;margin-top:1rem;padding-top:1rem;display:flex}.smtp-settings-form .btn-primary,.smtp-settings-form .btn-secondary{cursor:pointer;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s}.smtp-settings-form .btn-primary{background:var(--color-primary);color:#fff;flex:1}.smtp-settings-form .btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:0 4px 12px #22919c4d}.smtp-settings-form .btn-secondary{color:var(--color-primary);border:2px solid var(--color-primary);background:#fff}.smtp-settings-form .btn-secondary:hover:not(:disabled){background:var(--color-primary);color:#fff}.smtp-settings-form .btn-primary:disabled,.smtp-settings-form .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.loading{min-height:200px;color:var(--color-text);justify-content:center;align-items:center;font-size:1.1rem;display:flex}@media (width<=768px){.smtp-settings-container{padding:1rem}.smtp-settings-header h1{font-size:1.5rem}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}.smtp-settings-form .btn-primary{flex:1}}.payment-settings-container{padding:1.5rem}.payment-settings-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.payment-settings-header h1{color:var(--color-secondary);align-items:center;gap:.75rem;margin:0 0 .25rem;font-size:1.5rem;font-weight:600;display:flex}.payment-settings-header p{color:var(--color-text);margin:0;font-size:.9rem}.payment-settings-content{flex-direction:column;gap:2rem;display:flex}.payment-providers{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;display:grid}.provider-card{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.provider-card:hover{box-shadow:0 4px 12px #0000001a}.provider-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.provider-header h3{color:var(--color-text);margin:0;font-size:1.25rem}.provider-badge{background:var(--color-primary);color:#fff;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.payment-settings-form{flex-direction:column;gap:1rem;display:flex}.payment-settings-form .form-group{flex-direction:column;gap:.5rem;display:flex}.payment-settings-form .form-group label{color:var(--color-text);font-size:.9rem;font-weight:600}.payment-settings-form .form-group input,.payment-settings-form .form-group select{border:1px solid #e5e7eb;border-radius:6px;padding:.75rem;font-family:inherit;font-size:.9rem;transition:all .2s}.payment-settings-form .form-group input:focus,.payment-settings-form .form-group select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #22919c1a}.payment-settings-form .form-group small{color:var(--color-text);margin:0;font-size:.8rem}.payment-settings-form .btn-primary{cursor:pointer;background:var(--color-primary);color:#fff;border:none;border-radius:6px;margin-top:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .2s}.payment-settings-form .btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:0 4px 12px #22919c4d}.payment-settings-form .btn-primary:disabled{opacity:.5;cursor:not-allowed}.provider-info{border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1rem}.provider-info p{color:var(--color-text);margin:0;font-size:.85rem}.provider-info a{color:var(--color-primary);font-weight:500;text-decoration:none}.provider-info a:hover{text-decoration:underline}.info-box{border-left:4px solid var(--color-primary);background:#f8f9fa;border-radius:6px;padding:1.5rem}.info-box h3{color:var(--color-text);margin:0 0 1rem;font-size:1.1rem}.info-box ul{margin:0;padding-left:1.5rem}.info-box li{color:var(--color-text);margin-bottom:.5rem;line-height:1.5}.info-box li strong{color:var(--color-text)}.info-box a{color:var(--color-primary);font-weight:500;text-decoration:none}.info-box a:hover{text-decoration:underline}@media (width<=768px){.payment-settings-container{padding:1rem}.payment-settings-header h1{font-size:1.5rem}.payment-providers{grid-template-columns:1fr}}
