*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9f9f9;color:#333}:focus{outline:2px solid #3498db;outline-offset:2px}button,input,select,textarea{font-family:inherit;font-size:100%;line-height:1.15}button{cursor:pointer}ul,ol{list-style:none}a{color:#3498db;text-decoration:none}a:hover{text-decoration:underline}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}img{max-width:100%;height:auto}.text-center{text-align:center}.hidden{display:none}.flex{display:flex}.flex-column{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}:root{--primary-color-light: #000000;--primary-light-light: #333333;--primary-dark-light: #000000;--success-color-light: #000000;--warning-color-light: #000000;--danger-color-light: #000000;--background-color-light: #ffffff;--sidebar-bg-light: #ffffff;--card-bg-light: #ffffff;--text-primary-light: #000000;--text-secondary-light: #333333;--text-light-light: #666666;--border-color-light: #e9ecef;--primary-color-dark: #ffffff;--primary-light-dark: #cccccc;--primary-dark-dark: #f0f0f0;--success-color-dark: #ffffff;--warning-color-dark: #ffffff;--danger-color-dark: #ffffff;--background-color-dark: #121212;--sidebar-bg-dark: #191919;--card-bg-dark: #1e1e1e;--text-primary-dark: #ffffff;--text-secondary-dark: #cccccc;--text-light-dark: #999999;--border-color-dark: #333333;--primary-color: var(--primary-color-light);--primary-light: var(--primary-light-light);--primary-dark: var(--primary-dark-light);--success-color: var(--success-color-light);--warning-color: var(--warning-color-light);--danger-color: var(--danger-color-light);--background-color: var(--background-color-light);--sidebar-bg: var(--sidebar-bg-light);--card-bg: var(--card-bg-light);--text-primary: var(--text-primary-light);--text-secondary: var(--text-secondary-light);--text-light: var(--text-light-light);--border-color: var(--border-color-light);--border-radius: 8px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .05);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--font-family: "Inter", "Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif}.dark-mode{--primary-color: var(--primary-color-dark);--primary-light: var(--primary-light-dark);--primary-dark: var(--primary-dark-dark);--success-color: var(--success-color-dark);--warning-color: var(--warning-color-dark);--danger-color: var(--danger-color-dark);--background-color: var(--background-color-dark);--sidebar-bg: var(--sidebar-bg-dark);--card-bg: var(--card-bg-dark);--text-primary: var(--text-primary-dark);--text-secondary: var(--text-secondary-dark);--text-light: var(--text-light-dark);--border-color: var(--border-color-dark);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3)}*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s ease,color .3s ease,border-color .3s ease}body{font-family:var(--font-family);background-color:var(--background-color);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh;transition:grid-template-columns .3s ease}.app.collapsed{grid-template-columns:80px 1fr}.sidebar{background-color:var(--sidebar-bg);border-right:1px solid var(--border-color);display:flex;flex-direction:column;padding:20px 0;box-shadow:var(--shadow-sm);position:fixed;width:250px;height:100vh;z-index:10;transition:width .3s ease,background-color .3s ease;overflow-x:hidden}.dark-mode .sidebar{background-color:#191919;border-right-color:#333}.app.collapsed .sidebar{width:80px}.sidebar-header{padding:0 20px 20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.dark-mode .sidebar-header{border-bottom-color:#333}.logo-container{width:120px;height:40px;position:relative;display:flex;align-items:center;justify-content:flex-start}.logo{max-width:100%;height:auto;display:block}.dark-mode-logo,.dark-mode .light-mode-logo{display:none}.dark-mode .dark-mode-logo{display:block}.app.collapsed .logo-container{width:0;overflow:hidden;opacity:0}.sidebar-controls{display:flex;gap:10px}.toggle-sidebar,.toggle-theme{background:none;border:none;cursor:pointer;padding:8px;color:var(--text-primary);display:flex;align-items:center;justify-content:center;border-radius:4px;width:32px;height:32px;transition:background-color .2s}.toggle-sidebar:hover,.toggle-theme:hover{background-color:#0000000d}.dark-mode .toggle-sidebar:hover,.dark-mode .toggle-theme:hover{background-color:#ffffff1a}.toggle-theme svg{width:18px;height:18px;stroke:currentColor}.toggle-sidebar svg{width:20px;height:20px}.sidebar-nav{flex:1;padding:20px 0}.nav-list{list-style:none}.nav-item{display:flex;align-items:center;padding:12px 20px;cursor:pointer;transition:all .15s ease;border-radius:0;margin:0;position:relative;font-size:.9rem}.nav-item:hover,.dark-mode .nav-item:hover{background-color:#ffffff0d}.nav-item.active{background-color:#121212;font-weight:500;color:var(--primary-color);border-left:3px solid white}.nav-item.active:before{content:none}.dark-mode .nav-item.active{background-color:#121212;color:#fff;border-left:3px solid white}.nav-icon{margin-right:12px;font-size:1rem;min-width:24px;text-align:center;opacity:.8}.nav-item.active .nav-icon{opacity:1}.app.collapsed .nav-label{display:none}.sidebar-footer{padding:20px 0;border-top:1px solid var(--border-color)}.dark-mode .sidebar-footer{border-top-color:#333}.logout-button{display:flex;align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:12px 20px;width:100%;text-align:left;font-size:1rem}.app.collapsed .logout-button span:last-child{display:none}.logout-button:hover{background-color:#ffffff0d}.logout-button.active{background-color:#121212;color:#fff;border-left:3px solid white;font-weight:500}.dark-mode .logout-button.active{background-color:#121212;color:#fff}.main-content{grid-column:2;padding:30px 20px;background-color:var(--background-color);margin-left:250px;transition:margin-left .3s ease,background-color .3s ease;display:flex;justify-content:center}.app.collapsed .main-content{margin-left:80px;padding:30px 30px 30px 20px}.content-container{width:100%;max-width:1300px;padding:0}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:35px;padding:0;width:100%}.header-content{padding-left:0}.page-title{font-size:2.5rem;font-weight:800;color:var(--text-primary);margin-bottom:5px;letter-spacing:-.03em;text-align:center}.page-subtitle{color:var(--text-light);font-size:1.05rem;font-weight:400;padding-left:0;text-align:center}@media (min-width: 768px){.page-title,.page-subtitle{text-align:left}}.header-actions{display:flex;gap:15px;align-items:center;padding-right:0}.search-container{position:relative}.search-input{padding:12px 15px 12px 45px;border:1px solid var(--border-color);border-radius:50px;font-size:.95rem;width:280px;background-color:var(--card-bg);color:var(--text-primary)}.search-input::placeholder{color:var(--text-light)}.search-icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--text-light)}.add-guest-btn{background-color:var(--background-color);color:var(--text-primary);border:1px solid var(--text-primary);padding:12px 25px;border-radius:50px;cursor:pointer;display:flex;align-items:center;gap:8px;font-weight:500;box-shadow:var(--shadow-sm)}.add-guest-btn:hover{background-color:#f0f0f0}.dark-mode .add-guest-btn{background-color:var(--sidebar-bg-dark);color:var(--text-primary-dark);border:1px solid var(--text-primary-dark)}.dark-mode .add-guest-btn:hover{background-color:#2a2a2a}.add-icon{font-weight:700}.stats-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:30px;padding-left:0}.stat-card{background-color:var(--card-bg);border-radius:var(--border-radius);padding:25px;display:flex;align-items:center;box-shadow:var(--shadow-sm);border:1px solid var(--border-color)}.stat-icon{margin-right:15px;font-size:1.5rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:8px;background-color:#0000000d;color:var(--text-primary)}.dark-mode .stat-icon{background-color:#ffffff0d}.stat-content{flex:1}.stat-label{color:var(--text-light);font-size:.9rem;font-weight:500;margin-bottom:8px;text-transform:uppercase;letter-spacing:.05em}.stat-value{color:var(--text-primary);font-size:2.5rem;font-weight:800;margin-bottom:5px;letter-spacing:-.03em}.progress-bar{width:100%;height:6px;background-color:#0000000d;border-radius:3px;overflow:hidden}.dark-mode .progress-bar{background-color:#ffffff0d}.progress{height:100%;background-color:var(--primary-color)}.guest-list-section{background-color:var(--card-bg);border-radius:var(--border-radius);padding:30px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);margin-left:0}.section-title{color:var(--text-primary);font-size:1.5rem;margin-bottom:25px;font-weight:700;letter-spacing:-.02em}.guest-table{display:flex;flex-direction:column;gap:15px}.guest-row{display:flex;align-items:center;padding:20px;border-radius:8px;background-color:var(--background-color);border:1px solid var(--border-color);transition:transform .2s}.guest-row:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.guest-avatar{width:45px;height:45px;background-color:var(--primary-light);color:var(--card-bg);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:600;margin-right:20px;font-size:1.2rem}.dark-mode .guest-avatar{color:var(--sidebar-bg-dark)}.guest-details{flex:1}.guest-name{font-size:1.2rem;font-weight:600;margin-bottom:5px}.guest-email{color:var(--text-light);font-size:.85rem}.guest-actions{display:flex;gap:12px;align-items:center}.confirm-btn{background-color:transparent;color:var(--primary-color);border:1px solid var(--primary-color);padding:8px 15px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500}.confirm-btn:hover{background-color:var(--primary-color);color:var(--background-color)}.dark-mode .confirm-btn:hover{color:var(--sidebar-bg-dark)}.confirmed-indicator{background-color:var(--primary-color);color:var(--background-color);border:none;padding:8px 15px;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500}.dark-mode .confirmed-indicator{color:var(--sidebar-bg-dark)}.edit-btn,.delete-btn{border:none;background:none;cursor:pointer;opacity:.7;transition:opacity .2s;color:var(--text-primary)}.edit-btn:hover,.delete-btn:hover{opacity:1}.modal{border:none;border-radius:var(--border-radius);box-shadow:var(--shadow-md);padding:0;width:500px;max-width:90vw;background-color:var(--card-bg);color:var(--text-primary);margin:auto;position:fixed;top:50%;left:calc(50% + 125px);transform:translate(-50%,-50%);animation:modalFadeIn .2s ease-out forwards;z-index:1000}.app.collapsed .modal{left:calc(50% + 40px)}@media (max-width: 768px){.modal,.app.collapsed .modal{left:50%}}@keyframes modalFadeIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.modal::backdrop{background-color:#00000080;animation:backdropFadeIn .2s ease-out forwards}@keyframes backdropFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{padding:0;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid var(--border-color)}.modal-header h2{color:var(--text-primary);font-size:1.3rem;font-weight:600;letter-spacing:-.01em;margin:0}.close-modal{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-light);display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;padding:0;transition:background-color .2s}.close-modal:hover{color:var(--danger-color);background-color:#0000000d}.dark-mode .close-modal:hover{background-color:#ffffff0d}.modal .guest-form{box-shadow:none;margin-bottom:0;padding:25px;background:none}.modal .guest-form h2{display:none}.modal .form-group{margin-bottom:20px}.modal .form-group label{color:var(--text-secondary);font-size:.85rem;margin-bottom:6px;font-weight:500;display:block}.modal .form-group input{border-radius:8px;border:1px solid var(--border-color);padding:10px 12px;width:100%;font-size:1rem;background-color:var(--background-color);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.modal .form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #0000000d}.dark-mode .modal .form-group input:focus{box-shadow:0 0 0 2px #ffffff0d}.modal .error-message{color:var(--danger-color);font-size:.8rem;margin-top:5px;display:flex;align-items:center;gap:5px}.modal .guest-form button{background-color:var(--primary-color);color:var(--background-color);border:none;padding:12px 20px;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;width:100%;margin-top:15px;transition:background-color .2s,transform .1s}.dark-mode .modal .guest-form button{color:var(--sidebar-bg-dark)}.modal .guest-form button:hover{background-color:var(--primary-light)}.modal .guest-form button:active{transform:translateY(1px)}.empty-message{text-align:center;color:var(--text-light);padding:30px 0;font-size:1rem}@media (max-width: 1024px){.stats-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.app{grid-template-columns:1fr}.sidebar{display:none}.main-content{grid-column:1;margin-left:0}.app.collapsed .main-content{margin-left:0}.content-header{flex-direction:column;align-items:flex-start;gap:15px}.header-actions{width:100%;flex-direction:column}.search-input{width:100%}.add-guest-btn{width:100%;justify-content:center}.stats-summary{grid-template-columns:1fr}}.theme-toggle-floating{position:fixed;bottom:30px;right:30px;width:45px;height:45px;border-radius:50%;background-color:var(--primary-color);color:var(--background-color);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 10px #0003;z-index:100;border:none;transition:transform .2s,background-color .3s}.dark-mode .theme-toggle-floating{background-color:#fff;color:#121212}.theme-toggle-floating:hover{transform:translateY(-3px)}.theme-toggle-floating svg{width:20px;height:20px;stroke:currentColor}.menu-toggle-floating{position:fixed;top:20px;left:20px;width:40px;height:40px;border-radius:8px;background-color:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:100;border:none;transition:transform .2s;padding:0}.menu-toggle-floating:hover{transform:translateY(-2px)}.menu-toggle-floating .menu-icon{width:28px;height:28px;object-fit:contain}.toast-notification{position:fixed;bottom:30px;right:30px;background-color:var(--primary-color);color:#fff;padding:15px 25px;border-radius:8px;box-shadow:0 4px 10px #0003;z-index:1100;animation:toastFadeIn .3s ease-out forwards;font-weight:500}.dark-mode .toast-notification{color:var(--sidebar-bg-dark);box-shadow:0 4px 10px #0006}@keyframes toastFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.under-construction-page{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 20px;text-align:center;min-height:400px;background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);margin-top:10px}.construction-icon{margin-bottom:20px;color:var(--primary-color);animation:bounce 2s ease infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-20px)}60%{transform:translateY(-10px)}}.construction-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:15px;letter-spacing:-.02em}.construction-message{color:var(--text-secondary);font-size:1.1rem;max-width:500px;line-height:1.6}.highlight{color:var(--primary-color);font-weight:600}.logout-page{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 20px;text-align:center;min-height:400px;background-color:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);margin-top:10px}.logout-icon{margin-bottom:20px;color:var(--primary-color);animation:wave 2s ease infinite}@keyframes wave{0%{transform:rotate(0)}25%{transform:rotate(10deg)}50%{transform:rotate(0)}75%{transform:rotate(-10deg)}to{transform:rotate(0)}}.logout-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:15px;letter-spacing:-.02em}.logout-message{color:var(--primary-color);font-size:1.4rem;max-width:500px;line-height:1.6;font-weight:600;letter-spacing:.01em;margin-top:10px}.logout-button.active{color:var(--primary-color);font-weight:500}
