:root{--primary-50:#f0f4ff;--primary-100:#e0edff;--primary-500:#667eea;--primary-600:#5a6fd8;--secondary-500:#764ba2;--secondary-600:#6b4190;--primary-color:var(--primary-500);--secondary-color:var(--secondary-500);--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--success-500:#22c55e;--success-600:#16a34a;--success-color:var(--success-500);--error-500:#ef4444;--error-600:#dc2626;--error-color:var(--error-500);--warning-500:#f59e0b;--warning-600:#d97706;--warning-color:var(--warning-500);--font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell",sans-serif;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-3xl:2rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--transition-fast:.15s ease-in-out;--transition-normal:.25s ease-in-out;--transition:all .2s ease-in-out}*,:before,:after{box-sizing:border-box}html,body{width:100%;min-height:100vh;margin:0;padding:0}body{font-family:var(--font-family);font-weight:var(--font-weight-normal);color:var(--gray-800);background-color:var(--gray-50);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}select{appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem 1rem;padding-right:2.5rem}select:focus{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e")}a{color:var(--primary-500);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--primary-600)}button{font-family:inherit}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.footer{color:#fff;background:linear-gradient(135deg,#2c3e50 0%,#34495e 100%);margin-top:auto;box-shadow:0 -4px 20px #00000026}.footer-container{max-width:1200px;margin:0 auto;padding:0}.footer-content{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;padding:3rem 2rem 2rem;display:grid}.footer-section{flex-direction:column;gap:1rem;display:flex}.footer-brand{flex-direction:column;gap:.75rem;display:flex}.footer-brand-name{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;text-shadow:none;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.8rem;font-weight:700}.footer-brand-text{color:#bdc3c7;max-width:280px;margin:0;font-size:.95rem;line-height:1.6}.footer-section-title{color:#ecf0f1;border-bottom:2px solid #667eea;margin:0 0 .5rem;padding-bottom:.5rem;font-size:1.2rem;font-weight:600;display:inline-block}.footer-links{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.footer-link{color:#bdc3c7;padding:.25rem 0;font-size:.95rem;text-decoration:none;transition:all .3s;display:inline-block;position:relative}.footer-link:before{content:"→";opacity:0;color:#667eea;transition:all .3s;position:absolute;left:-20px;transform:translate(-10px)}.footer-link:hover{color:#667eea;text-shadow:0 0 8px #667eea4d;transform:translate(15px)}.footer-link:hover:before{opacity:1;transform:translate(0)}.footer-contact{flex-direction:column;gap:.75rem;display:flex}.contact-item{align-items:center;gap:.75rem;font-size:.95rem;display:flex}.contact-icon{text-align:center;flex-shrink:0;width:24px;font-size:1.1rem}.contact-text{color:#bdc3c7;line-height:1.4}.footer-bottom{background:#0003;border-top:1px solid #34495e;padding:1.5rem 2rem}.footer-bottom-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-copyright{color:#95a5a6;margin:0;font-size:.9rem}.footer-social{align-items:center;gap:1rem;display:flex}.social-text{color:#95a5a6;font-size:.9rem}.social-links{gap:.5rem;display:flex}.social-link{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;text-decoration:none;transition:all .3s;display:inline-flex}.social-link:hover{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#0000;transform:translateY(-2px)scale(1.05);box-shadow:0 4px 15px #667eea66}@media (max-width:768px){.footer-content{grid-template-columns:1fr;gap:1.5rem;padding:2rem 1.5rem 1.5rem}.footer-bottom{padding:1.25rem 1.5rem}.footer-bottom-content{text-align:center;flex-direction:column;gap:.75rem}.footer-brand-name{font-size:1.6rem}.footer-section-title{font-size:1.1rem}.footer-link:hover{transform:translate(10px)}.social-links{justify-content:center}}@media (max-width:480px){.footer-content{gap:1.25rem;padding:1.5rem 1rem 1rem}.footer-bottom{padding:1rem}.footer-brand-text{max-width:100%}.footer-section-title{font-size:1rem}.contact-item{font-size:.9rem}.social-link{width:36px;height:36px;font-size:1.1rem}.footer-copyright,.social-text{font-size:.85rem}}.footer{animation:.5s ease-out slideInUp}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.global-header{z-index:1000;-webkit-backdrop-filter:blur(30px);background:#fffffffa;border-bottom:1px solid #0000000f;transition:all .3s cubic-bezier(.4,0,.2,1);position:sticky;top:0;overflow:visible;transform:translateZ(0);box-shadow:0 1px 3px #0000000a,0 4px 20px #0000000f,0 8px 30px #667eea0a}.global-header:before{content:"";background:linear-gradient(90deg,#0000,#667eea4d,#0000);height:1px;position:absolute;top:0;left:0;right:0}.global-header-container{box-sizing:border-box;grid-template-columns:auto 1fr auto;align-items:center;gap:2rem;width:100%;min-width:0;max-width:1400px;height:76px;margin:0 auto;padding:0 2rem;display:grid;overflow:visible}.global-header-brand{flex-shrink:0;min-width:0;overflow:hidden}.brand-link{border-radius:16px;align-items:center;gap:1rem;padding:.5rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.brand-link:hover{background:#667eea0a;transform:translateY(-1px)}.brand-logo{object-fit:cover;border-radius:14px;width:48px;height:48px;transition:transform .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000014,0 2px 8px #667eea1f}.brand-link:hover .brand-logo{transform:scale(1.05)rotate(2deg);box-shadow:0 6px 20px #0000001f,0 4px 12px #667eea33}.brand-text{flex-direction:column;gap:0;min-width:0;display:flex;overflow:hidden}.brand-title{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)60%,#9b59b6 100%);-webkit-text-fill-color:transparent;letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.625rem;font-weight:800;line-height:1.2;transition:all .3s;overflow:hidden}.brand-subtitle{color:#64748b;letter-spacing:.08em;text-transform:uppercase;opacity:.7;margin-top:-2px;font-size:.8rem;font-weight:600;transition:opacity .3s}.brand-link:hover .brand-subtitle{opacity:1;color:var(--primary-500)}.desktop-nav{justify-content:center;align-items:center;gap:.25rem;width:100%;min-width:0;display:flex}.nav-item{color:#475569;white-space:nowrap;border:1px solid #0000;border-radius:14px;flex-shrink:1;align-items:center;gap:.625rem;min-width:0;padding:.5rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.nav-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav-item:before{content:"";background:linear-gradient(90deg,#0000,#667eea14,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.nav-item:hover:before{left:100%}.nav-item:hover{color:var(--primary-500);background:linear-gradient(135deg,#667eea0d,#764ba20d);border-color:#667eea26;transform:translateY(-2px);box-shadow:0 4px 12px #667eea1f,0 8px 24px #667eea14}.nav-item.active{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;border-color:#ffffff1a;box-shadow:0 6px 20px #667eea59,0 2px 8px #667eea40,inset 0 1px #fff3}.nav-item.active:before{display:none}.nav-item.active:hover{color:#fff;transform:translateY(-2px)scale(1.02);box-shadow:0 8px 28px #667eea73,0 4px 16px #667eea59}.nav-icon{justify-content:center;align-items:center;font-size:1.1rem;transition:transform .3s;display:flex}.nav-item:hover .nav-icon{transform:scale(1.1)}.nav-item.active .nav-icon{transform:scale(1.05)}.nav-divider{background:linear-gradient(#0000,#cbd5e199,#0000);flex-shrink:0;width:1px;height:20px;margin:0 .5rem}.mobile-nav-divider{background:linear-gradient(90deg,#0000,#cbd5e166,#0000);height:1px;margin:1rem 0}.nav-dropdown{align-items:center;display:flex;position:relative}.dropdown-trigger{cursor:pointer;color:#475569;background:0 0;border:none;border-radius:14px;align-items:center;gap:.5rem;padding:.5rem;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.dropdown-trigger:hover{color:var(--primary-500);background:linear-gradient(135deg,#667eea0d,#764ba20d);transform:translateY(-2px)}.dropdown-trigger.active{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff}.dropdown-arrow{width:16px;height:16px;transition:transform .3s}.dropdown-arrow.open{transform:rotate(180deg)}.nav-dropdown-menu{opacity:0;visibility:hidden;z-index:1000;background:#fff;border:1px solid #cbd5e14d;border-radius:12px;min-width:220px;margin-top:.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;top:100%;left:0;overflow:hidden;transform:translateY(-10px)scale(.95);box-shadow:0 10px 40px #0000001a,0 4px 12px #667eea26}.nav-dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0)scale(1)}.nav-dropdown-item{color:#475569;border-bottom:1px solid #cbd5e133;align-items:center;gap:.75rem;padding:.875rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-dropdown-item:last-child{border-bottom:none}.nav-dropdown-item:hover{color:var(--primary-500);background:linear-gradient(135deg,#667eea14,#764ba214);transform:translate(4px)}.nav-dropdown-icon{justify-content:center;align-items:center;width:20px;font-size:1rem;display:flex}.nav-dropdown-label{font-size:.9rem}.mobile-nav-section-title{color:var(--primary-500);text-transform:uppercase;letter-spacing:.05em;text-align:center;background:#667eea0d;border-radius:8px;margin:0 1rem;padding:.5rem 1rem;font-size:.8rem;font-weight:700}.mobile-nav-item.policy-item{border-left:3px solid #667eea33;border-radius:8px;margin:0 .5rem}.mobile-nav-item.policy-item:hover{border-left-color:var(--primary-500);background:#667eea14}.mobile-nav-item.policy-item.active{border-left-color:var(--primary-500);color:var(--primary-500);background:linear-gradient(135deg,#667eea26,#764ba226)}.nav-label{letter-spacing:-.01em;font-size:.9rem}.global-header-actions{z-index:1001;flex-shrink:0;justify-content:flex-end;align-items:center;gap:1rem;display:flex;position:relative;overflow:visible}.mobile-menu-toggle{align-items:center;justify-content:content;cursor:pointer;background:#667eea0a;border:1px solid #667eea14;border-radius:12px;width:44px;height:44px;transition:all .3s cubic-bezier(.4,0,.2,1);display:contents}.mobile-menu-toggle:hover{background:#667eea14;border-color:#667eea26;transform:scale(1.05);box-shadow:0 4px 12px #667eea26}.hamburger{width:22px;height:18px;transition:all .6s cubic-bezier(.4,0,.2,1);position:relative;transform:rotate(0)}.hamburger span{background:linear-gradient(90deg,var(--primary-500),var(--secondary-500));opacity:1;border-radius:2px;width:100%;height:2.5px;transition:all .3s cubic-bezier(.4,0,.2,1);display:block;position:absolute;left:0;transform:rotate(0);box-shadow:0 1px 2px #0000001a}.hamburger span:first-child{transform-origin:0;top:0}.hamburger span:nth-child(2){transform-origin:0;top:8px}.hamburger span:nth-child(3){transform-origin:0;top:16px}.hamburger.open span:first-child{top:-1px;left:4px;transform:rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0;width:0%}.hamburger.open span:nth-child(3){top:17px;left:4px;transform:rotate(-45deg)}.profile-section{z-index:1000;position:relative;overflow:visible}.profile-trigger{cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#f8fafccc,#f1f5f9cc);border:1px solid #e2e8f099;border-radius:14px;align-items:center;gap:.875rem;padding:.625rem .75rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.profile-trigger:hover{background:linear-gradient(135deg,#f1f5f9e6,#e2e8f0e6);border-color:#667eea33;box-shadow:0 8px 25px #00000014,0 4px 12px #667eea14}.profile-avatar{object-fit:cover;border:2.5px solid #fff;border-radius:50%;width:40px;height:40px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 0 0 1px #667eea1a,0 4px 12px #0000001a}.profile-trigger:hover .profile-avatar{transform:scale(1.05);box-shadow:0 0 0 2px #667eea33,0 6px 20px #00000026}.profile-user-info{flex-direction:column;gap:0;min-width:0;display:none}.profile-name{color:#1e293b;white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.01em;max-width:140px;font-size:.9rem;font-weight:700;overflow:hidden}.profile-role{color:#64748b;text-transform:capitalize;letter-spacing:.02em;font-size:.75rem;font-weight:600}.dropdown-arrow{color:#64748b;flex-shrink:0;transition:all .3s cubic-bezier(.4,0,.2,1)}.dropdown-arrow.open{color:var(--primary-500);transform:rotate(180deg)}.profile-dropdown{opacity:0;visibility:hidden;z-index:1050;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);transform-origin:100% 0;pointer-events:none;will-change:opacity,transform;background:#fffffffa;border:1px solid #e2e8f0cc;border-radius:20px;width:300px;margin-top:4px;transition:opacity .25s,visibility .25s,transform .25s;position:absolute;top:calc(100% + 8px);right:0;transform:scale(.95);box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d,0 10px 20px #667eea1a}.profile-dropdown.show{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1)}.dropdown-header{background:linear-gradient(135deg,#f8fafccc,#f1f5f9cc);border-bottom:1px solid #f1f5f9cc;border-radius:20px 20px 0 0;align-items:center;gap:1rem;padding:1.5rem;display:flex}.dropdown-avatar img{object-fit:cover;border:3px solid #fff;border-radius:50%;width:52px;height:52px;box-shadow:0 0 0 1px #667eea1a,0 4px 12px #00000026}.dropdown-info{flex:1;min-width:0}.dropdown-name{color:#0f172a;letter-spacing:-.01em;margin-bottom:4px;font-size:.95rem;font-weight:700;display:block}.dropdown-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:500;display:block;overflow:hidden}.dropdown-divider{background:linear-gradient(90deg,#0000,#f1f5f9cc,#0000);height:1px;margin:.5rem 0}.dropdown-item{text-align:left;color:#475569;cursor:pointer;background:0 0;border:none;align-items:center;gap:1rem;width:100%;padding:1rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.dropdown-item:before{content:"";background:linear-gradient(90deg,#0000,#667eea0d,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.dropdown-item:hover:before{left:100%}.dropdown-item:hover{color:#334155;background:linear-gradient(135deg,#667eea0a,#764ba20a);transform:translate(4px)}.dropdown-item:first-of-type{border-radius:0}.dropdown-item:last-of-type{border-radius:0 0 20px 20px}.logout-item{color:#dc2626;border-top:1px solid #f1f5f9cc}.logout-item:hover{color:#dc2626;background:linear-gradient(135deg,#ef44440a,#dc26260a)}.dropdown-icon{flex-shrink:0;transition:transform .3s}.dropdown-item:hover .dropdown-icon{transform:scale(1.1)}.auth-actions{flex-shrink:0;align-items:center;gap:1rem;min-width:0;display:flex}.auth-btn{cursor:pointer;white-space:nowrap;letter-spacing:-.01em;border:none;border-radius:12px;padding:.75rem 1.5rem;font-size:.9rem;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.auth-btn:before{content:"";background:linear-gradient(90deg,#0000,#fff3,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.auth-btn:hover:before{left:100%}.signin-btn{color:#475569;background:#4755690a;border:1.5px solid #4755691f}.signin-btn:hover{color:#334155;background:#47556914;border-color:#47556933;transform:translateY(-2px);box-shadow:0 6px 20px #47556926}.signup-btn{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;border:1.5px solid #0000;box-shadow:0 6px 20px #667eea59,0 2px 8px #667eea40}.signup-btn:hover{background:linear-gradient(135deg,#5a6fd8 0%,#6b4190 100%);transform:translateY(-3px);box-shadow:0 12px 32px #667eea73,0 4px 16px #667eea59}.mobile-nav-overlay{-webkit-backdrop-filter:blur(4px);z-index:1100;opacity:0;visibility:hidden;background:#00000080;transition:all .3s;position:fixed;inset:0}.mobile-nav-overlay.open{opacity:1;visibility:visible}.mobile-nav{-webkit-backdrop-filter:blur(30px);z-index:1150;background:#fffffffa;border-left:1px solid #e2e8f099;width:100%;max-width:340px;height:calc(100vh - 68px);transition:right .4s cubic-bezier(.34,1.56,.64,1);position:fixed;top:68px;right:-100%;overflow-y:auto;box-shadow:-8px 0 32px #0000001f,-4px 0 16px #667eea14}@media (max-width:767px){.mobile-nav.open{right:0}}@media (min-width:768px){.mobile-nav{right:-100%!important}}.mobile-nav-content{flex-direction:column;height:100%;padding:0;display:flex}.mobile-nav-header{background:linear-gradient(135deg,#f8fafce6,#f1f5f9e6);border-bottom:1px solid #f1f5f9cc;padding:2rem}.mobile-user-info{align-items:center;gap:1rem;display:flex}.mobile-avatar{object-fit:cover;border:3px solid #fff;border-radius:50%;width:56px;height:56px;box-shadow:0 0 0 1px #667eea1a,0 6px 20px #00000026}.mobile-user-details{flex:1;min-width:0}.mobile-user-name{color:#0f172a;letter-spacing:-.01em;margin-bottom:4px;font-size:1.1rem;font-weight:700;display:block}.mobile-user-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:500;display:block;overflow:hidden}.mobile-nav-items{flex:1;padding:1.5rem}.mobile-nav-item{text-align:left;color:#475569;cursor:pointer;background:0 0;border:none;border-radius:16px;align-items:center;gap:1.25rem;width:100%;margin-bottom:.75rem;padding:1.25rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.mobile-nav-item:before{content:"";background:linear-gradient(90deg,#0000,#667eea14,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.mobile-nav-item:hover:before{left:100%}.mobile-nav-item:hover{color:#334155;background:linear-gradient(135deg,#667eea0f,#764ba20f);transform:translate(8px);box-shadow:0 4px 12px #667eea1a}.mobile-nav-item.active{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;box-shadow:0 6px 20px #667eea4d,0 2px 8px #667eea33}.mobile-nav-item.active:before{display:none}.mobile-nav-item.active:hover{color:#fff;transform:translate(8px)scale(1.02);box-shadow:0 8px 28px #667eea66,0 4px 16px #667eea4d}.mobile-nav-icon{flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:1.375rem;transition:transform .3s;display:flex}.mobile-nav-item:hover .mobile-nav-icon{transform:scale(1.1)}.mobile-nav-label{letter-spacing:-.01em;font-size:1rem}.mobile-nav-footer{background:linear-gradient(135deg,#f8fafce6,#f1f5f9e6);border-top:1px solid #f1f5f9cc;padding:1.5rem}.profile-item:hover{color:#0369a1;background:linear-gradient(135deg,#0ea5e90f,#3b82f60f);border-color:#0ea5e926}.logout-item{color:#dc2626}.logout-item:hover{color:#dc2626;background:linear-gradient(135deg,#ef44440f,#dc26260f);border-color:#ef444426}@media (max-width:768px){.global-header-container{box-sizing:border-box;grid-template-columns:auto auto;gap:1rem;width:100%;max-width:100vw;height:68px;padding:0 1.25rem;overflow:visible}.brand-logo{border-radius:12px;width:40px;height:40px}.brand-title{font-size:1.4rem}.desktop-nav{display:none}.brand-subtitle{font-size:.7rem}.mobile-nav{width:300px;height:calc(100vh - 68px);top:68px}.profile-user-info{display:none!important}.dropdown-arrow{display:none}.profile-avatar{width:36px;height:36px}.profile-dropdown{z-index:1100;will-change:opacity,transform;width:auto;max-width:calc(100vw - 2rem);position:fixed;top:70px;left:1rem;right:1rem;transform:scale(.95)}.profile-dropdown.show{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1)}.auth-btn{padding:.625rem 1.125rem;font-size:.85rem}.mobile-menu-toggle{width:40px;height:40px}.hamburger{width:20px;height:16px}.hamburger span{height:2px}.global-header{transform:translate(0,0);overflow:visible!important}.global-header-actions{isolation:isolate;overflow:visible!important}.profile-section{z-index:1002;position:relative;overflow:visible!important}.profile-trigger{-webkit-tap-highlight-color:transparent}.profile-dropdown{backface-visibility:hidden;isolation:isolate}}@media (min-width:768px){.mobile-menu-toggle{display:none}.mobile-nav{opacity:0;visibility:hidden;display:none;right:-100%!important}.mobile-nav-overlay{display:none;opacity:0!important;visibility:hidden!important}.profile-user-info{display:flex}}@media (min-width:1024px){.global-header-container{padding:0 2.5rem}.brand-link{gap:1.25rem}.profile-trigger{padding:.75rem 1rem}}@media (min-width:1280px){.global-header-container{padding:0 3rem}}@media (min-width:1536px){.global-header-container{max-width:1600px}}@media (prefers-color-scheme:dark){.global-header{background:#0f172afa;border-bottom-color:#ffffff0d;box-shadow:0 1px 3px #0000001f,0 4px 20px #00000026,0 8px 30px #667eea1a}.global-header:before{background:linear-gradient(90deg,#0000,#667eea66,#0000)}.brand-subtitle{color:#94a3b8}.nav-item{color:#e2e8f0}.nav-item:hover{color:#a78bfa;background:#667eea14}.nav-item.active{box-shadow:0 6px 20px #667eea66,0 2px 8px #667eea4d}.mobile-menu-toggle{background:#667eea14;border-color:#667eea26}.mobile-menu-toggle:hover{background:#667eea26}.hamburger span{background:linear-gradient(90deg,#94a3b8,#e2e8f0)}.profile-trigger{background:linear-gradient(135deg,#1e293bcc,#334155cc);border-color:#47556999}.profile-trigger:hover{background:linear-gradient(135deg,#334155e6,#475569e6);border-color:#667eea4d}.profile-name{color:#f1f5f9}.profile-role,.dropdown-arrow{color:#94a3b8}.dropdown-arrow.open{color:#a78bfa}.profile-dropdown{background:#0f172afa;border-color:#475569cc;box-shadow:0 25px 50px -12px #0006,0 0 0 1px #0000001a,0 10px 20px #667eea33}.dropdown-header{background:linear-gradient(135deg,#1e293be6,#334155e6);border-bottom-color:#475569cc}.dropdown-name{color:#f8fafc}.dropdown-email{color:#94a3b8}.dropdown-divider{background:linear-gradient(90deg,#0000,#475569cc,#0000)}.dropdown-item{color:#e2e8f0}.dropdown-item:hover{background:linear-gradient(135deg,#667eea14,#764ba214)}.signin-btn{color:#e2e8f0;background:#47556914;border-color:#47556933}.signin-btn:hover{color:#f1f5f9;background:#47556926;border-color:#4755694d}.mobile-nav{background:#0f172afa;border-left-color:#47556999;box-shadow:-8px 0 32px #0003,-4px 0 16px #667eea26}.mobile-nav-header{background:linear-gradient(135deg,#1e293be6,#334155e6);border-bottom-color:#475569cc}.mobile-user-name{color:#f8fafc}.mobile-user-email{color:#94a3b8}.mobile-nav-item{color:#e2e8f0}.mobile-nav-item:hover{color:#f1f5f9;background:linear-gradient(135deg,#667eea14,#764ba214)}.mobile-nav-footer{background:linear-gradient(135deg,#1e293be6,#334155e6);border-top-color:#475569cc}}.login-container{background:linear-gradient(135deg,var(--primary-color)0%,var(--secondary-color)100%);justify-content:center;align-items:center;min-height:calc(100vh - 76px);padding:calc(76px + 2rem) 2rem 2rem;display:flex}.login-card{border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);background:#fff;width:100%;max-width:480px;padding:1.5rem;animation:.3s ease-out slideUp;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;background:linear-gradient(135deg,var(--gray-50)0%,white 100%);padding:3rem 2rem 2rem}.login-logo{border-radius:var(--radius-xl);object-fit:cover;width:80px;height:80px;box-shadow:var(--shadow-md);border:4px solid #fff;margin-bottom:1.5rem}.login-header h1{color:var(--gray-800);background:linear-gradient(135deg,var(--primary-color)0%,var(--secondary-color)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 .75rem;font-size:1.875rem;font-weight:700}.login-subtitle{color:var(--gray-600);margin:0;font-size:1rem;line-height:1.5}.progress-indicator{background:var(--gray-50);border-bottom:1px solid var(--gray-200);justify-content:center;align-items:center;padding:2rem;display:flex}.progress-step{flex-direction:column;flex:1;align-items:center;gap:.5rem;display:flex}.step-number{background:var(--gray-200);width:36px;height:36px;color:var(--gray-500);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.progress-step.active .step-number{background:linear-gradient(135deg,var(--primary-color)0%,var(--secondary-color)100%);color:#fff;transform:scale(1.1)}.step-label{color:var(--gray-500);text-align:center;font-size:.75rem;font-weight:500}.progress-step.active .step-label{color:var(--gray-700);font-weight:600}.progress-line{background:var(--gray-200);border-radius:1px;flex:1;height:2px;margin:0 1rem}.form-content{padding:2rem}.auth-form{flex-direction:column;gap:1.5rem;display:flex}.form-field{flex-direction:column;gap:.5rem;display:flex}.field-label{color:var(--gray-700);letter-spacing:.025em;font-size:.875rem;font-weight:600}.field-input{border:2px solid var(--gray-200);border-radius:var(--radius-lg);width:100%;transition:var(--transition);background:var(--gray-50);color:var(--gray-800);padding:.875rem 1rem;font-size:1rem}.field-input:focus{border-color:var(--primary-color);color:var(--gray-800);background:#fff;outline:none;box-shadow:0 0 0 3px #667eea1a}.field-input:hover:not(:focus){border-color:var(--gray-300)}.otp-input{text-align:center;letter-spacing:.25em;font-family:monospace;font-size:1.125rem;font-weight:600}.field-hint{color:var(--gray-500);font-size:.75rem;line-height:1.4}.btn{border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition);border:none;outline:none;justify-content:center;align-items:center;gap:.5rem;min-height:48px;padding:.875rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative}.btn-secondary{color:var(--gray-700);border:2px solid var(--gray-200);background:#fff}.btn-secondary:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-300)}.btn-text{color:var(--primary-color);background:0 0;min-height:auto;padding:.5rem}.btn-text:hover:not(:disabled){border-radius:var(--radius-md);background:#667eea1a}.btn-full{width:100%}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.alert{border-radius:var(--radius-lg);align-items:flex-start;gap:.75rem;padding:1rem;font-size:.875rem;line-height:1.5;display:flex}.alert-icon{flex-shrink:0;font-size:1rem}.resend-section{text-align:center;padding:1rem 0}.resend-timer{color:var(--gray-500);margin:0;font-size:.875rem}.demo-info{border-radius:var(--radius-lg);background:linear-gradient(135deg,#fff7ed 0%,#fef3c7 100%);border:1px solid #fde68a;margin-top:1rem;padding:1rem}.demo-header{color:var(--warning-color);align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:flex}.demo-icon{font-size:1rem}.demo-content p{color:#92400e;margin:.25rem 0;font-size:.75rem}.login-footer{background:var(--gray-50);border-top:1px solid var(--gray-200);text-align:center;padding:2rem}.login-footer p{color:var(--gray-600);margin:0 0 1rem;font-size:.875rem}.link-button{color:var(--primary-color);cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;text-decoration:underline}.link-button:hover:not(:disabled){color:var(--secondary-color)}.terms-text{color:var(--gray-500);font-size:.75rem;line-height:1.4}.terms-link{color:var(--primary-color);text-decoration:none}.terms-link:hover{text-decoration:underline}@media (max-width:640px){.login-container{padding:1rem}.login-header{padding:2rem 1.5rem 1.5rem}.login-header h1{font-size:1.5rem}.form-content{padding:1.5rem}.progress-indicator{padding:1.5rem 1rem}.step-label{display:none}.login-footer{padding:1.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:high){.btn-primary{background:#000;border:2px solid #000}.field-input{border-width:3px}.alert{border-width:2px}}.otp-verification{text-align:center;padding:1rem 0}.otp-input-container{justify-content:center;gap:1rem;margin:1.5rem 0;display:flex}.otp-digit-input{text-align:center;border:2px solid var(--gray-300);border-radius:var(--radius-lg);width:3.5rem;height:3.5rem;color:var(--gray-800);background:#fff;outline:none;font-size:2rem;font-weight:600;transition:all .2s}.otp-digit-input:focus{border-color:var(--primary-color);transform:scale(1.05);box-shadow:0 0 0 3px #667eea1a}.otp-digit-input:disabled{background:var(--gray-100);cursor:not-allowed}.otp-digit-input:not(:placeholder-shown){border-color:var(--success-color);background:#10b9810d}.otp-status-message{border-radius:var(--radius-md);text-align:center;margin-top:.75rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500}.status-info{color:#1e40af;background:#3b82f61a;border:1px solid #3b82f633}.status-warning{color:#92400e;background:#f59e0b1a;border:1px solid #f59e0b33}.status-error{color:#dc2626;background:#ef44441a;border:1px solid #ef444433}.otp-instructions{background:var(--gray-50);border-radius:var(--radius-lg);text-align:left;margin:2rem 0;padding:1.5rem}@media (max-width:480px){.otp-digit-input{width:3rem;height:3rem;font-size:1.5rem}.otp-input-container{gap:.5rem}}.otp-input{text-align:center;letter-spacing:1rem;padding:1rem;font-size:2rem;font-weight:600}.resend-section{text-align:center;margin:1.5rem 0}.resend-section p{color:var(--gray-600);margin-bottom:1rem;font-size:.875rem}.max-attempts-text{color:var(--error-color);margin-bottom:1rem;font-weight:600}.magic-link-sent{text-align:center;padding:1rem 0}.sent-icon{margin-bottom:1rem;font-size:4rem;animation:.8s ease-in-out bounce}@keyframes bounce{0%,20%,53%,80%,to{transform:translateY(0)}40%,43%{transform:translateY(-8px)}70%{transform:translateY(-4px)}}.magic-link-sent h3{color:var(--gray-800);margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.magic-link-sent p{color:var(--gray-600);margin-bottom:1rem}.email-display{background:var(--gray-100);border:1px solid var(--gray-200);border-radius:var(--radius-lg);color:var(--primary-color);word-break:break-word;margin:1rem 0 2rem;padding:1rem;font-weight:600}.magic-link-instructions{background:var(--gray-50);border-radius:var(--radius-lg);text-align:left;margin:2rem 0;padding:1.5rem}.instruction-item{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.instruction-item:last-child{margin-bottom:0}.instruction-number{background:var(--primary-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;font-weight:600;display:flex}.instruction-text{color:var(--gray-700);font-weight:500}.magic-link-verification{text-align:center;padding:2rem 0}.verification-status{padding:2rem 0}.verification-status h3{color:var(--gray-800);margin:1rem 0 .5rem;font-size:1.5rem;font-weight:600}.verification-status p{color:var(--gray-600);margin-bottom:1.5rem}.loading-spinner.large{border-width:3px;width:3rem;height:3rem;margin:0 auto 1rem}.success-icon,.error-icon{margin-bottom:1rem;font-size:4rem}.verification-status.success h3{color:var(--success-color)}.verification-status.error h3{color:var(--error-color)}.verification-status.info{background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border:2px solid #0ea5e9}.verification-status.info h3{color:#0369a1}.verification-status.info .info-icon{margin-bottom:1rem;font-size:3rem}.error-actions,.signup-actions{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem;display:flex}@media (max-width:768px){.login-container{min-height:calc(100vh - 64px);padding:calc(64px + 1rem) 1rem 1rem}.login-card{max-width:100%;margin:.5rem;padding:1rem}}.signup-card{width:100%;max-width:800px}.signup-form{flex-direction:column;gap:2rem;display:flex}.form-section{background:var(--gray-50);border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.5rem}.form-section h3{color:var(--gray-800);border-bottom:2px solid var(--primary-color);margin:0 0 1.5rem;padding-bottom:.5rem;font-size:1.25rem;font-weight:600}.form-row{gap:1rem;margin-bottom:1rem;display:flex}.form-group{flex:1;min-width:0}.form-group input,.form-group select,.form-group textarea{border:2px solid var(--gray-200);border-radius:var(--radius-md);width:100%;transition:var(--transition);color:var(--gray-800);background:#fff;padding:.75rem;font-size:1rem}.form-group input::placeholder,.form-group textarea::placeholder,.field-input::placeholder{color:var(--gray-500);opacity:1}.form-group select option{color:var(--gray-800);background:#fff}.error-input{box-shadow:0 0 0 3px #ef44441a;border-color:var(--error-color)!important}.auth-container .error,.login-form .error,.signup-form .error{color:var(--error-color);align-items:center;gap:.5rem;margin-top:.5rem;font-size:.875rem;display:flex}.auth-container .error:before,.login-form .error:before,.signup-form .error:before{content:"⚠️";font-size:.75rem}.error-message{border:2px solid var(--error-color);border-radius:var(--radius-lg);background:#ef44441a;margin-bottom:1.5rem;padding:1rem;animation:.3s ease-out slideIn}.error-message .error-content{align-items:flex-start;gap:.75rem;display:flex}.error-message .error-icon{flex-shrink:0;font-size:1.25rem}.error-message .error-text{color:var(--error-color);flex:1;font-size:.9rem;line-height:1.4}.error-message .error-actions{justify-content:flex-end;gap:.75rem;margin-top:1rem;display:flex}.error-message .error-actions .btn{padding:.5rem 1rem;font-size:.875rem}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.success-input{box-shadow:0 0 0 3px #22c55e1a;border-color:var(--success-color)!important}.form-actions{background:var(--gray-50);border-radius:var(--radius-lg);justify-content:space-between;gap:1rem;margin-top:2rem;padding:1.5rem;display:flex}@media (max-width:768px){.signup-card{max-width:100%;margin:1rem}.form-row{flex-direction:column;gap:.5rem}.form-actions{flex-direction:column}.form-section{padding:1rem}}.checkbox-group{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.checkbox-group input[type=checkbox]{width:auto;accent-color:var(--primary-color);cursor:pointer;margin:0}.checkbox-label{color:var(--gray-700);cursor:pointer;font-size:.9rem;font-weight:400;margin-bottom:0!important}.disabled-input{background-color:var(--gray-100);opacity:.6;cursor:not-allowed}.helper-text{border-radius:4px;margin-top:.25rem;padding:.5rem;font-size:.8rem;line-height:1.3}.helper-text.success{color:#2e7d2e;background-color:#e8f5e8;border:1px solid #4caf50}.helper-text.info{color:#1976d2;background-color:#e3f2fd;border:1px solid #2196f3}.copy-info-checkbox{border-radius:var(--radius-md);background:#f8fafc;border:1px dashed #94a3b8;margin-bottom:1.5rem;padding:1rem;position:relative}.copy-info-checkbox:before{content:"💡";font-size:1rem;position:absolute;top:.5rem;right:.75rem}.checkbox-label{cursor:pointer;color:var(--gray-700);align-items:center;gap:.75rem;margin:0;font-size:.9rem;font-weight:500;display:flex}.checkbox-label input[type=checkbox]{opacity:0;width:0;height:0;position:absolute}.checkmark{border:2px solid var(--gray-300);width:20px;height:20px;transition:var(--transition);background-color:#fff;border-radius:4px;flex-shrink:0;position:relative}.checkbox-label input[type=checkbox]:checked+.checkmark{background-color:var(--primary-color);border-color:var(--primary-color)}.checkmark:after{content:"";display:none;position:absolute}.checkbox-label input[type=checkbox]:checked+.checkmark:after{display:block}.checkbox-label .checkmark:after{border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:10px;top:2px;left:6px;transform:rotate(45deg)}.checkbox-label:hover .checkmark{border-color:var(--primary-color)}.profile-image-upload{width:100%}.image-upload-container{align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.image-preview-section{border:2px dashed var(--gray-300);border-radius:var(--radius-lg);background-color:var(--gray-50);flex-shrink:0;justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative;overflow:hidden}.image-preview-wrapper{width:100%;height:100%;position:relative}.profile-image-preview{object-fit:cover;border-radius:calc(var(--radius-lg) - 2px);width:100%;height:100%}.remove-image-btn{background:var(--error-color);color:#fff;cursor:pointer;width:24px;height:24px;transition:var(--transition);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;position:absolute;top:-8px;right:-8px}.remove-image-btn:hover{background:#dc2626;transform:scale(1.1)}.remove-image-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.image-placeholder{text-align:center;color:var(--gray-500);flex-direction:column;justify-content:center;align-items:center;padding:1rem;display:flex}.placeholder-icon{margin-bottom:.5rem;font-size:2rem}.placeholder-text{font-size:.875rem;font-weight:500}.image-upload-actions{flex-direction:column;flex-grow:1;gap:.5rem;display:flex}.file-input{display:none}.file-input-label{background:var(--primary-color);color:#fff;border-radius:var(--radius-md);cursor:pointer;text-align:center;transition:var(--transition);border:none;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;display:inline-block}.file-input-label:hover{box-shadow:var(--shadow-md);background:#5a67d8;transform:translateY(-1px)}.file-input-label.uploading{background:var(--gray-500);cursor:not-allowed;box-shadow:none;transform:none}.file-input-label:disabled,.file-input-label.uploading:hover{background:var(--gray-500);cursor:not-allowed;transform:none}@media (max-width:768px){.image-upload-container{flex-direction:column;align-items:center}.image-preview-section{margin-bottom:1rem}.image-upload-actions{align-items:center;width:100%}.file-input-label{width:100%;max-width:200px}}.signup-profile-header{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);border-radius:var(--radius-xl);color:#fff;justify-content:space-between;align-items:flex-start;gap:2.5rem;margin-bottom:2rem;padding:2.5rem;display:flex;position:relative;overflow:hidden}.signup-profile-header:before{content:"";pointer-events:none;background:linear-gradient(45deg,#ffffff1a 0%,#ffffff0d 100%);position:absolute;inset:0}.signup-profile-avatar{flex-direction:column;flex-shrink:0;align-items:center;width:220px;height:220px;display:flex;position:relative}.avatar-container{width:200px;height:200px;transition:all var(--transition);border:4px solid #ffffff4d;border-radius:50%;margin-bottom:1.25rem;position:relative;overflow:hidden;box-shadow:0 8px 24px #0003}.avatar-container.clickable{cursor:pointer}.avatar-container.clickable:hover{border-color:#fff9;transform:scale(1.05);box-shadow:0 12px 32px #0000004d}.avatar-image{object-fit:cover;width:100%;height:100%;transition:opacity var(--transition)}.avatar-container.clickable:hover .avatar-image{opacity:.8}.avatar-placeholder{text-align:center;color:#ffffffe6;background:#fff3;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.avatar-placeholder .placeholder-icon{opacity:.8;margin-bottom:.5rem;font-size:4rem}.placeholder-text{opacity:.8;font-size:.85rem;font-weight:500;line-height:1.2}.avatar-remove-btn{color:#fff;cursor:pointer;width:40px;height:40px;transition:all var(--transition);z-index:10;background:#ef4444;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex;position:absolute;top:-8px;right:-8px;box-shadow:0 4px 12px #0000004d}.avatar-remove-btn:hover{background:#dc2626;transform:scale(1.1)}.signup-profile-info{z-index:1;flex:1}.signup-profile-info .header-content{margin-bottom:1rem}.signup-profile-info .header-logo{border-radius:var(--radius-xl);object-fit:cover;width:60px;height:60px;margin-bottom:1rem;box-shadow:0 4px 12px #00000026}.signup-profile-info h1,.signup-profile-info h2{text-shadow:0 2px 4px #0000001a;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.signup-profile-info p{opacity:.9;text-shadow:0 1px 2px #0000001a;margin:0 0 1rem;font-size:1rem}.user-info-display{border-radius:var(--radius-md);background:#ffffff26;border:1px solid #fff3;margin-top:1rem;padding:.75rem}.user-info-display h4{color:#fff;text-shadow:0 1px 2px #0000001a;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.user-info-display .user-details{flex-direction:column;gap:.25rem;display:flex}.user-info-display .user-detail{opacity:.9;color:#f8fafc;font-size:.9rem}.user-info-display .user-detail strong{margin-right:.5rem;font-weight:600}.profile-error{color:#fee2e2;border-radius:var(--radius-md);background:#ef44441a;border:1px solid #ef44444d;margin-top:.5rem;padding:.75rem;font-size:.875rem}@media (max-width:768px){.signup-profile-header{text-align:center;flex-direction:column;align-items:center;gap:2rem;padding:2rem}.signup-profile-avatar{order:-1;width:140px;height:140px}.avatar-container{width:120px;height:120px;margin-bottom:.75rem}.signup-profile-info .header-logo{width:50px;height:50px}.signup-profile-info h1,.signup-profile-info h2{font-size:1.5rem}.avatar-edit-btn{width:38px;height:38px;margin-right:.5rem;font-size:1.1rem}.avatar-remove-btn{width:30px;height:30px;font-size:1.2rem}.user-info-display{margin-top:.75rem;padding:.5rem}.user-info-display h4{font-size:1rem}.user-info-display .user-detail{font-size:.85rem}}.family-page{background:var(--gray-50);min-height:100vh;padding:2rem}.family-header{border-radius:var(--radius-xl);box-shadow:var(--shadow-md);text-align:center;background:#fff;margin-bottom:2rem;padding:2rem}.family-header h1{color:var(--gray-800);margin-bottom:.5rem;font-size:2rem;font-weight:700}.family-header p{color:var(--gray-600);margin-bottom:2rem;font-size:1rem}.add-member-btn{background:linear-gradient(135deg,var(--primary-color),var(--secondary-color));color:#fff;border-radius:var(--radius-lg);cursor:pointer;transition:var(--transition);box-shadow:var(--shadow-md);border:none;padding:.75rem 2rem;font-weight:600}.member-card{border-radius:var(--radius-xl);box-shadow:var(--shadow-md);transition:var(--transition);background:#fff;align-items:center;gap:1rem;padding:1.5rem;display:flex}.member-info h3{color:var(--gray-800);margin-bottom:.25rem;font-size:1.125rem;font-weight:600}.member-relationship{color:var(--primary-color);text-transform:capitalize;margin-bottom:.25rem;font-size:.875rem;font-weight:500}.member-email,.member-phone{color:var(--gray-600);margin-bottom:.125rem;font-size:.875rem}.member-actions{gap:.5rem;display:flex}.edit-btn{background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-300);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);padding:.5rem 1rem;font-size:.875rem;font-weight:500}.edit-btn:hover{background:var(--gray-200);border-color:var(--gray-400)}.no-members{text-align:center;border-radius:var(--radius-xl);box-shadow:var(--shadow-md);background:#fff;grid-column:1/-1;padding:3rem 2rem}.no-members p{color:var(--gray-600);margin-bottom:.5rem;font-size:1rem}.error-message{color:var(--error-color);border-radius:var(--radius-lg);text-align:center;background:#ef44441a;border:1px solid #ef44444d;margin-bottom:2rem;padding:1rem}@media (max-width:768px){.family-page{padding:1rem}.family-header{padding:1.5rem}.family-header h1{font-size:1.5rem}.family-list{grid-template-columns:1fr}.member-card{text-align:center;flex-direction:column;gap:1rem}.member-avatar{width:80px;height:80px}.member-info{text-align:center}}.family-page{max-width:1200px;margin:0 auto;padding:2rem}.family-header{border-bottom:2px solid var(--gray-200);justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.family-header h1{color:var(--gray-800);margin:0;font-size:2rem}.family-header p{color:var(--gray-600);margin:.5rem 0 0;font-size:1rem}.add-member-btn{background:linear-gradient(135deg,var(--primary-color)0%,var(--secondary-color)100%);color:#fff;border-radius:var(--radius-md);cursor:pointer;box-shadow:var(--shadow-md);transition:var(--transition);border:none;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:600;display:flex}.add-member-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.family-list{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.member-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:var(--transition);border:1px solid var(--gray-200);background:#fff;align-items:center;gap:1rem;padding:1.5rem;display:flex}.member-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.member-avatar{border:2px solid var(--gray-200);border-radius:50%;flex-shrink:0;width:60px;height:60px;overflow:hidden}.member-info{flex-grow:1}.member-info h3{color:var(--gray-800);margin:0 0 .25rem;font-size:1.1rem;font-weight:600}.member-relationship{color:var(--primary-color);text-transform:capitalize;margin:0 0 .5rem;font-size:.875rem;font-weight:500}.member-email,.member-phone{color:var(--gray-600);margin:.25rem 0;font-size:.875rem}.member-actions{flex-shrink:0}.edit-btn{background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-300);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition);padding:.5rem 1rem;font-size:.875rem}.edit-btn:hover{background:var(--gray-200);color:var(--gray-800)}.no-members{text-align:center;color:var(--gray-600);background:var(--gray-50);border-radius:var(--radius-lg);border:2px dashed var(--gray-300);grid-column:1/-1;padding:3rem 2rem}.no-members p{margin:.5rem 0;font-size:1rem}.error-message{background:var(--error-color);color:#fff;border-radius:var(--radius-md);text-align:center;margin-bottom:1rem;padding:1rem}.loading{text-align:center;color:var(--gray-600);padding:3rem;font-size:1.1rem}.helper-text.info{color:var(--primary-color);background-color:#667eea1a;border-color:#667eea4d}@media (max-width:768px){.family-page{padding:1rem}.family-header{flex-direction:column;align-items:flex-start;gap:1rem}.family-list{grid-template-columns:1fr}.member-card{padding:1rem}.member-avatar{width:50px;height:50px}}.cdp-wrapper{width:100%;margin-bottom:1.25rem;position:relative}.cdp-label{color:#374151;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.cdp-required{color:#e53e3e}.cdp-input-container{align-items:center;width:100%;display:flex;position:relative}.cdp-input{box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:8px;flex:1;align-items:center;min-height:48px;padding:.75rem 48px .75rem 1rem;transition:border-color .2s,box-shadow .2s;display:flex}.cdp-input:hover:not(.cdp-input-disabled){border-color:#9ca3af}.cdp-input-focused,.cdp-input:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.cdp-input-error{border-color:#e53e3e}.cdp-input-error:focus-within{box-shadow:0 0 0 3px #e53e3e26}.cdp-input-disabled{cursor:not-allowed;opacity:.6;background:#f3f4f6}.cdp-field{all:unset;text-align:center;color:#111827;box-sizing:border-box;min-width:0;padding:2px 4px;font-family:inherit;font-size:1rem;font-weight:500;line-height:1.5;display:inline-block}.cdp-field:focus{background:#667eea1a;border-radius:4px}.cdp-field::placeholder{color:#9ca3af;font-weight:400}.cdp-field:disabled{color:#9ca3af;cursor:not-allowed}.cdp-field-day,.cdp-field-month{width:28px}.cdp-field-year{width:48px}.cdp-sep{color:#9ca3af;-webkit-user-select:none;user-select:none;padding:0 2px;font-weight:400;line-height:1.5}.cdp-toggle-btn{cursor:pointer;color:#667eea;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:8px;transition:background-color .2s;display:flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.cdp-toggle-btn:hover:not(:disabled){background-color:#667eea1a}.cdp-toggle-btn:disabled{color:#9ca3af;cursor:not-allowed}.cdp-error-message{color:#e53e3e;margin-top:.375rem;font-size:.8rem}.cdp-overlay{z-index:9998;background:#0006;animation:.15s cdp-fade-in;position:fixed;inset:0}.cdp-dropdown{z-index:9999;transform-origin:0 0;background:#fff;border-radius:12px;min-width:320px;max-width:360px;animation:.2s cdp-scale-in;overflow:hidden;box-shadow:0 10px 40px #00000026,0 2px 10px #0000001a}.cdp-dropdown-mobile{flex-direction:column;animation:.3s cdp-slide-up;display:flex;border-radius:0!important;width:100%!important;max-width:none!important;height:100%!important;position:fixed!important;inset:0!important}.cdp-mobile-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.cdp-mobile-title{font-size:1.1rem;font-weight:600}.cdp-mobile-close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.2rem;transition:background .2s;display:flex}.cdp-mobile-close:hover{background:#ffffff4d}.cdp-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.cdp-dropdown-mobile .cdp-header{color:#111827;background:#f9fafb;border-bottom:1px solid #e5e7eb}.cdp-nav-btn{color:inherit;cursor:pointer;background:#ffffff26;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:background .2s,transform .15s;display:flex}.cdp-dropdown-mobile .cdp-nav-btn{color:#374151;background:#f3f4f6}.cdp-nav-btn:hover:not(:disabled){background:#ffffff40;transform:scale(1.05)}.cdp-dropdown-mobile .cdp-nav-btn:hover:not(:disabled){background:#e5e7eb}.cdp-nav-btn:disabled{opacity:.4;cursor:not-allowed}.cdp-month-year-btn{color:inherit;cursor:pointer;background:#ffffff26;border:none;border-radius:8px;flex-direction:column;align-items:center;gap:2px;padding:8px 20px;transition:background .2s;display:flex}.cdp-month-year-btn:hover{background:#ffffff40}.cdp-dropdown-mobile .cdp-month-year-btn{color:#111827;background:#f3f4f6}.cdp-dropdown-mobile .cdp-month-year-btn:hover{background:#e5e7eb}.cdp-year-range{cursor:default}.cdp-year-range:hover{background:#ffffff26}.cdp-month-label{font-size:1.05rem;font-weight:600}.cdp-year-label{opacity:.9;font-size:.8rem}.cdp-year-title{font-size:1.1rem;font-weight:600}.cdp-weekdays{background:#f9fafb;border-bottom:1px solid #e5e7eb;grid-template-columns:repeat(7,1fr);padding:12px 12px 8px;display:grid}.cdp-weekday{text-align:center;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.cdp-days{background:#fff;grid-template-columns:repeat(7,1fr);gap:4px;padding:12px;display:grid}.cdp-dropdown-mobile .cdp-days{flex:1;align-content:start;gap:6px;padding:16px}.cdp-day{aspect-ratio:1;color:#111827;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;min-width:38px;min-height:38px;font-size:.9rem;font-weight:500;transition:all .15s;display:flex}.cdp-dropdown-mobile .cdp-day{min-width:44px;min-height:44px;font-size:1rem}.cdp-day:hover:not(:disabled):not(.cdp-day-selected){background:#667eea1a}.cdp-day:focus{outline-offset:2px;outline:2px solid #667eea}.cdp-day-other{color:#d1d5db}.cdp-day-other:hover:not(:disabled):not(.cdp-day-selected){color:#9ca3af;background:#667eea0d}.cdp-day-disabled{color:#e5e7eb!important;cursor:not-allowed!important;background:0 0!important}.cdp-day-today:not(.cdp-day-selected){color:#667eea;border:2px solid #667eea;font-weight:600}.cdp-day-selected{font-weight:600;box-shadow:0 2px 8px #667eea66;color:#fff!important;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)!important}.cdp-months-grid{background:#fff;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px;display:grid}.cdp-month-item{color:#111827;cursor:pointer;background:#f9fafb;border:none;border-radius:8px;padding:14px 8px;font-size:.9rem;font-weight:500;transition:all .15s}.cdp-month-item:hover:not(:disabled){color:#667eea;background:#667eea1a}.cdp-month-item-selected{font-weight:600;color:#fff!important;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)!important}.cdp-month-item-disabled{color:#d1d5db!important;cursor:not-allowed!important;background:#f9fafb!important}.cdp-years-grid{background:#fff;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px;display:grid}.cdp-year-item{color:#111827;cursor:pointer;background:#f9fafb;border:none;border-radius:8px;padding:14px 8px;font-size:.9rem;font-weight:500;transition:all .15s}.cdp-year-item:hover:not(:disabled){color:#667eea;background:#667eea1a}.cdp-year-item-selected{font-weight:600;color:#fff!important;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)!important}.cdp-year-item-disabled{color:#d1d5db!important;cursor:not-allowed!important;background:#f9fafb!important}.cdp-range-info{color:#6b7280;text-align:center;background:#f3f4f6;border-top:1px solid #e5e7eb;padding:8px 16px;font-size:.75rem}.cdp-footer{background:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.cdp-dropdown-mobile .cdp-footer{flex-shrink:0;padding:16px 20px}.cdp-btn{cursor:pointer;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;transition:all .2s}.cdp-btn-back{color:#6b7280;background:#fff;border:1px solid #e5e7eb;margin-right:auto}.cdp-btn-back:hover{background:#f3f4f6;border-color:#d1d5db}.cdp-btn-clear{color:#6b7280;background:#fff;border:1px solid #e5e7eb}.cdp-btn-clear:hover{background:#f3f4f6;border-color:#d1d5db}.cdp-btn-today{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none}.cdp-btn-today:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea59}@keyframes cdp-fade-in{0%{opacity:0}to{opacity:1}}@keyframes cdp-scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes cdp-slide-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.cdp-input{min-height:46px;padding:.625rem 44px .625rem .875rem}.cdp-field{font-size:.95rem}.cdp-dropdown:not(.cdp-dropdown-mobile){min-width:300px}.cdp-day{min-width:36px;min-height:36px;font-size:.85rem}}@media (max-width:480px){.cdp-input{min-height:44px;padding:.5rem 40px .5rem .75rem}.cdp-field{padding:2px;font-size:.9rem}.cdp-field-day,.cdp-field-month{width:24px}.cdp-field-year{width:42px}.cdp-sep{padding:0 1px}.cdp-toggle-btn{padding:6px;right:4px}.cdp-toggle-btn svg{width:18px;height:18px}}@media (max-width:400px){.cdp-wrapper{margin-bottom:1rem}.cdp-label{margin-bottom:.375rem;font-size:.85rem}.cdp-mobile-header{padding:14px 16px}.cdp-mobile-title{font-size:1rem}.cdp-header{padding:10px 12px}.cdp-month-label{font-size:1rem}.cdp-nav-btn{width:32px;height:32px}.cdp-weekdays{padding:10px 10px 6px}.cdp-weekday{font-size:.7rem}.cdp-days{gap:4px;padding:10px}.cdp-dropdown-mobile .cdp-days{padding:12px}.cdp-day{min-width:40px;min-height:40px;font-size:.9rem}.cdp-footer{padding:10px 12px}.cdp-btn{padding:8px 12px;font-size:.8rem}.cdp-months-grid,.cdp-years-grid{gap:6px;padding:12px}.cdp-month-item,.cdp-year-item{padding:12px 6px;font-size:.85rem}}.camera-modal-overlay{z-index:10000;background:#000000d9;justify-content:center;align-items:center;width:100vw;height:100vh;margin:0;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.camera-modal{touch-action:pan-y;background:#fff;border-radius:1rem;flex-direction:column;width:90%;max-width:600px;max-height:80vh;margin:0;animation:.3s slideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 25px 50px #00000080}.camera-modal-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:1px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.camera-modal-header h3{margin:0;font-size:1.25rem;font-weight:600}.camera-close-btn{cursor:pointer;color:#fff;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:2rem;line-height:1;transition:background .2s;display:flex}.camera-close-btn:hover{background:#fff3}.camera-modal-body{flex-direction:column;flex:1;gap:1.5rem;padding:1.5rem;display:flex;overflow-y:auto}.camera-video{aspect-ratio:4/3;object-fit:cover;background:#000;border-radius:.75rem;width:100%;max-height:60vh}.camera-error{text-align:center;color:#dc2626;padding:2rem}.camera-error p{margin:0 0 1.5rem;font-size:1rem}.camera-controls{flex-wrap:wrap;flex-shrink:0;justify-content:center;gap:1rem;display:flex}.capture-btn{background:linear-gradient(135deg,#10b981 0%,#059669 100%);min-width:180px;padding:.875rem 1.5rem;font-size:1.05rem;box-shadow:0 4px 12px #10b9814d}.capture-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-success{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 4px 12px #10b9814d}.btn-success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.captured-preview{justify-content:center;width:100%;display:flex}.captured-preview img{object-fit:contain;border-radius:.75rem;width:100%}@media (max-width:768px){.camera-modal-overlay{padding:1rem}.camera-modal{width:90%;max-height:85vh}.camera-modal-header{padding:1rem 1.25rem}.camera-modal-header h3{font-size:1.1rem}.camera-modal-body{flex:1;gap:1rem;padding:1rem;overflow-y:auto}.camera-video{border-radius:.5rem;flex:1;min-height:300px;max-height:none}.camera-controls{flex-shrink:0}.capture-btn{min-width:150px;padding:.75rem 1.25rem;font-size:1rem}}@media (max-width:480px){.camera-modal-overlay{padding:.5rem}.camera-modal{width:90%;max-height:90vh}.camera-modal-header{padding:.875rem 1rem}.camera-modal-header h3{font-size:1rem}.camera-close-btn{width:28px;height:28px;font-size:1.75rem}.camera-modal-body{flex:1;gap:.875rem;padding:.875rem}.camera-video{flex:1;min-height:250px}.camera-controls{flex-direction:column;flex-shrink:0;gap:.75rem}.camera-controls button{width:100%;min-width:auto}.capture-btn{padding:.875rem 1rem}}.user-form-container{background:#f8fafc;min-height:calc(100vh - 70px);padding:2rem}@media (max-width:768px){.user-form-container{touch-action:pan-y;-webkit-overflow-scrolling:touch;overflow:visible}.user-form-container .user-form-card,.user-form-container .form-content,.user-form-container .signup-form,.form-section,.accordion-section,.section-content,.section-header,.form-row,.form-group{touch-action:pan-y;overflow:visible}}.user-form-card{background:#fff;border-radius:1.5rem;max-width:900px;margin:0 auto;overflow:visible;box-shadow:0 10px 25px #0000001a}.login-container.fullscreen .login-card.signup-card{background:#fff;border-radius:1.5rem;max-width:900px;padding:0;position:relative;overflow:visible;box-shadow:0 25px 50px -12px #00000040}.user-form-container .form-content,.login-container.fullscreen .login-card.signup-card .form-content{padding:0}.signup-profile-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:1.5rem 1.5rem 0 0;align-items:center;gap:2rem;min-height:200px;padding:2rem;display:flex;position:relative;overflow:hidden}.signup-profile-header:before{content:"";z-index:0;background:linear-gradient(45deg,#ffffff1a 0%,#ffffff0d 100%);position:absolute;inset:0}.signup-profile-info{z-index:1;flex:1;position:relative}.signup-profile-info .header-content{text-align:center;flex-direction:column;align-items:center;margin-bottom:1.5rem;display:flex}.signup-profile-info .header-logo{border:3px solid #fff3;border-radius:12px;width:60px;height:60px;margin-bottom:1rem;box-shadow:0 8px 25px #0003}.signup-profile-info h1{color:#fff;text-shadow:0 2px 4px #0000001a;margin:0 0 .5rem;font-size:1.75rem;font-weight:700}.signup-profile-info p{color:#ffffffe6;margin:0;font-size:1rem;line-height:1.5}.user-info-display{background:#ffffff1a;border:1px solid #fff3;border-radius:12px;margin-top:1rem;padding:1rem}.user-info-display h4{color:#fff;margin:0 0 .75rem;font-size:1rem;font-weight:600}.user-details{flex-direction:column;gap:.5rem;display:flex}.user-detail{color:#fffffff2;gap:.5rem;font-size:.9rem;display:flex}.user-detail strong{color:#fffc;min-width:50px}.signup-profile-avatar{z-index:1;flex-direction:column;align-items:center;gap:1rem;display:flex;position:relative}.avatar-container{cursor:pointer;background:linear-gradient(135deg,#ffffff26 0%,#ffffff0d 100%);border:3px solid #ffffff4d;border-radius:24px;justify-content:center;align-items:center;width:140px;height:140px;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000001a,inset 0 1px #fff3}@media (hover:hover){.avatar-container:hover{border-color:#ffffff80;transform:scale(1.08)rotateY(5deg);box-shadow:0 16px 40px #0003,inset 0 1px #ffffff4d,0 0 20px #ffffff1a}}.avatar-container:active{transition:transform .1s;transform:scale(1.02)}.avatar-container.clickable:focus-visible{outline-offset:4px;outline:2px solid #fffc}.avatar-image{object-fit:cover;border-radius:20px;width:100%;height:100%;transition:all .3s}.avatar-container:hover .avatar-image{filter:brightness(1.1)contrast(1.05)}.avatar-placeholder{color:#ffffffe6;text-align:center;background:linear-gradient(135deg,#ffffff1a 0%,#ffffff0d 100%);border-radius:20px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:1.5rem;display:flex;position:relative;overflow:hidden}.avatar-placeholder:before{content:"";background:radial-gradient(circle,#ffffff1a 0%,#ffffff0d 70%,#0000 100%);border-radius:50%;width:60px;height:60px;animation:2s infinite pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.placeholder-icon{filter:drop-shadow(0 2px 4px #0003);z-index:1;margin-bottom:.75rem;font-size:2.5rem;position:relative}.avatar-container:hover .placeholder-icon{animation:.6s bounce}.placeholder-text{text-shadow:0 1px 2px #0003;z-index:1;letter-spacing:.5px;font-size:.9rem;font-weight:600;line-height:1.3;position:relative}.avatar-container.uploading{cursor:wait;background:linear-gradient(135deg,#fff3 0%,#ffffff1a 100%);border-color:#fff9}.avatar-container.uploading:after{content:"";z-index:2;border:3px solid #ffffff4d;border-top-color:#ffffffe6;border-radius:50%;width:24px;height:24px;animation:1s linear infinite spin;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.avatar-placeholder.uploading{background:linear-gradient(135deg,#ffffff26 0%,#ffffff14 100%)}.avatar-placeholder.uploading .placeholder-icon{opacity:.5;animation:none}.avatar-placeholder.uploading .placeholder-text{opacity:.7}.avatar-container.upload-success{animation:.6s uploadSuccess}@keyframes uploadSuccess{0%{transform:scale(1);box-shadow:0 8px 32px #0000001a}50%{border-color:#22c55e99;transform:scale(1.05);box-shadow:0 16px 40px #22c55e4d}to{transform:scale(1);box-shadow:0 8px 32px #0000001a}}.avatar-container[aria-disabled=true]{cursor:not-allowed;opacity:.6;pointer-events:none}.avatar-container.drag-over{background:linear-gradient(135deg,#22c55e26 0%,#22c55e1a 100%);border-color:#22c55eb3;transform:scale(1.05);box-shadow:0 16px 40px #22c55e33,inset 0 1px #ffffff4d}.avatar-placeholder.drag-over{background:linear-gradient(135deg,#22c55e33 0%,#22c55e1a 100%)}.avatar-placeholder.drag-over .placeholder-icon{animation:.6s infinite dragBounce}@keyframes dragBounce{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-4px)scale(1.1)}}@media (max-width:768px){.avatar-container{width:120px;height:120px}.placeholder-icon{font-size:2.2rem}.placeholder-text{font-size:.85rem}.avatar-remove-btn{width:28px;height:28px;font-size:16px;top:-10px;right:-10px}}.avatar-remove-btn{color:#fff;cursor:pointer;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);border:3px solid #ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:-12px;right:-12px;box-shadow:0 4px 16px #ef444466,0 2px 8px #0003}.avatar-remove-btn:hover{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);transform:scale(1.15)rotate(90deg);box-shadow:0 6px 20px #ef444499,0 4px 12px #0000004d}.avatar-remove-btn:active{transition:transform .1s;transform:scale(1.05)rotate(90deg)}.avatar-remove-btn:focus-visible{outline-offset:2px;outline:2px solid #fffc}.profile-error{color:#fca5a5;text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:linear-gradient(135deg,#ef44441f 0%,#ef444414 100%);border:1px solid #ef44444d;border-radius:12px;margin-top:1.25rem;padding:1rem 1.25rem;font-size:.9rem;font-weight:500;position:relative;overflow:hidden;box-shadow:0 4px 12px #ef44441a}.profile-error:before{content:"";background:linear-gradient(90deg,#ef4444 0%,#f87171 100%);height:3px;position:absolute;top:0;left:0;right:0}.profile-error:after{content:"⚠️";font-size:1.1rem;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.user-form-container .signup-form,.login-container.fullscreen .signup-form{background:#fafafa;flex-direction:column;gap:2rem;padding:2rem;display:flex}.form-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:2rem;transition:all .3s;overflow:visible;box-shadow:0 4px 6px -1px #0000000d}@media (hover:hover){.form-section:hover{transform:translateY(-1px);box-shadow:0 10px 15px -3px #0000001a}}.form-section h3{color:#1f2937;border-bottom:3px solid #667eea;margin:0 0 1.5rem;padding-bottom:.75rem;font-size:1.375rem;font-weight:600;position:relative}.form-section h3:after{content:"";background:linear-gradient(90deg,#667eea,#764ba2);border-radius:2px;width:60px;height:3px;position:absolute;bottom:-3px;left:0}.form-group:last-child{margin-bottom:0}.form-group label{color:#374151;letter-spacing:.025em;margin-bottom:.75rem;font-size:.95rem;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{color:#1f2937;background:#fff;border:2px solid #d1d5db;border-radius:12px;width:100%;padding:.875rem 1rem;font-size:1rem;transition:all .3s;box-shadow:0 1px 3px #0000000d}@media (hover:hover){.form-group input:focus,.form-group select:focus,.form-group textarea:focus{transform:translateY(-1px)}}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#9ca3af}.error-input{border-color:#ef4444!important;box-shadow:0 0 0 4px #ef44441a!important}.user-form .error,.form-group .error{color:#ef4444;align-items:center;gap:.25rem;margin-top:.5rem;font-size:.875rem;font-weight:500;display:flex}.user-form .error:before,.form-group .error:before{content:"⚠️";font-size:.8rem}.helper-text{align-items:center;gap:.25rem;margin-top:.5rem;font-size:.875rem;font-weight:500;display:flex}.helper-text.success{color:#22c55e}.helper-text.success:before{content:"✅";font-size:.8rem}.helper-text.info{color:#3b82f6}.helper-text.info:before{content:"ℹ️";font-size:.8rem}.disabled-input{cursor:not-allowed;color:#6b7280!important;background-color:#f3f4f6!important;border-color:#d1d5db!important}.form-actions{background:#fff;border:1px solid #e5e7eb;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding:2rem;display:flex;box-shadow:0 4px 6px -1px #0000000d}.user-form-container .btn,.login-container.fullscreen .btn{cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;min-width:140px;padding:.875rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.user-form-container .btn-primary,.login-container.fullscreen .btn-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 4px 14px #667eea4d}@media (hover:hover){.user-form-container .btn-primary:hover,.login-container.fullscreen .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}}.user-form-container .btn-primary:active,.login-container.fullscreen .btn-primary:active{transform:translateY(0)}.user-form-container .btn-secondary,.login-container.fullscreen .btn-secondary{color:#374151;background:#fff;border:2px solid #d1d5db}@media (hover:hover){.user-form-container .btn-secondary:hover,.login-container.fullscreen .btn-secondary:hover{background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}}.user-form-container .btn:disabled,.login-container.fullscreen .btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}@media (max-width:768px){.user-form-container{min-height:calc(100vh - 70px);padding:1rem}.user-form-card{border-radius:1rem;box-shadow:0 4px 6px #0000001a}.login-container.fullscreen .login-card.signup-card{border-radius:1rem;max-width:100%;margin:.5rem}.signup-profile-header{text-align:center;flex-direction:column;gap:1.5rem;min-height:auto;padding:1.5rem}.signup-profile-info .header-content{align-items:center}.signup-profile-info .header-logo{width:50px;height:50px}.signup-profile-info h1{font-size:1.5rem}.avatar-container{width:100px;height:100px}.user-form-container .signup-form,.login-container.fullscreen .signup-form{gap:1.5rem;padding:1.5rem}.form-section{padding:1.5rem}.form-row{flex-direction:column;gap:0}.form-actions{flex-direction:column;gap:.75rem;padding:1.5rem}.user-form-container .btn,.login-container.fullscreen .btn{width:100%;min-width:auto}.user-info-display{margin-top:1rem}}@media (max-width:480px){.user-form-container,.login-container.fullscreen{padding:.5rem}.signup-profile-header,.user-form-container .signup-form,.login-container.fullscreen .signup-form,.form-section,.form-actions{padding:1rem}}@media (max-width:768px){.login-container.fullscreen{align-items:initial;justify-content:initial;height:auto;min-height:auto;padding-top:1rem;padding-bottom:2rem;display:block;overflow:visible}.login-container.fullscreen .login-card.signup-card{max-width:100%;margin:0 auto;overflow:visible}.login-container.fullscreen .form-content,.login-container.fullscreen .signup-form,.login-container.fullscreen .form-section,.login-container.fullscreen .section-content{touch-action:pan-y;overflow:visible}}.date-input-wrapper{position:relative}.date-input-wrapper input[type=date]{padding-right:3rem}.form-group select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem 1rem;padding-right:2.5rem!important}.form-group select:focus{background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e")}.custom-master-input-wrapper{align-items:center;gap:.5rem;width:100%;display:flex}.custom-master-input-wrapper input{flex:1;min-width:0}.custom-master-input-wrapper .cancel-custom-btn{color:#6b7280;cursor:pointer;background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;transition:all .2s;display:flex}.custom-master-input-wrapper .cancel-custom-btn:hover{color:#374151;background:#e5e7eb;border-color:#9ca3af}.custom-master-input-wrapper .cancel-custom-btn:focus{outline:none;box-shadow:0 0 0 2px #667eea33}.autocomplete-container{z-index:10000;width:100%;position:relative}.form-group-autocomplete-expanded{z-index:1000;position:relative;margin-bottom:200px!important}.autocomplete-dropdown{z-index:1001;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;max-height:200px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.autocomplete-item{cursor:pointer;border-bottom:1px solid #f3f4f6;flex-direction:column;gap:.25rem;padding:.75rem 1rem;transition:background-color .2s;display:flex}.autocomplete-item:hover{background-color:#f9fafb}.autocomplete-name{color:#374151;font-size:.875rem;font-weight:500}.autocomplete-email{color:#6b7280;font-size:.8rem}.profile-upload-group{width:100%}.profile-upload-container{flex-direction:column;gap:1rem;display:flex}.profile-upload-label{text-align:center;cursor:pointer;background:#f9fafb;border:2px dashed #d1d5db;border-radius:1rem;justify-content:center;align-items:center;min-height:200px;padding:2rem;transition:all .2s ease-in-out;display:flex}.profile-upload-label:hover{background:#f0f4ff;border-color:#667eea}.profile-upload-label.drag-over{background:#e0edff;border-color:#667eea;transform:scale(1.02)}.profile-upload-label.uploading{cursor:wait;background:#fffbeb;border-color:#f59e0b}.profile-upload-label.upload-success{border-style:solid;border-color:#22c55e}.profile-preview-container{width:150px;height:150px;margin:0 auto;position:relative}.profile-preview-image{object-fit:cover;border-radius:.75rem;width:100%;height:100%;box-shadow:0 4px 6px -1px #0000001a}.profile-overlay{opacity:0;color:#fff;background:#000000b3;border-radius:.75rem;justify-content:center;align-items:center;font-size:.875rem;font-weight:500;transition:opacity .2s ease-in-out;display:flex;position:absolute;inset:0}.profile-upload-label:hover .profile-overlay{opacity:1}.profile-placeholder{color:#6b7280;flex-direction:column;align-items:center;gap:.75rem;display:flex}.profile-placeholder .placeholder-icon{opacity:.6;font-size:2.5rem}.profile-placeholder .placeholder-text{color:#374151;font-size:1rem;font-weight:500}.profile-placeholder .placeholder-subtext{opacity:.8;font-size:.875rem}.profile-placeholder.uploading .placeholder-icon{animation:1.5s ease-in-out infinite pulse}.profile-placeholder.drag-over{color:#667eea}.profile-placeholder.drag-over .placeholder-text{color:#667eea;font-weight:600}.profile-remove-btn{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:.5rem;align-self:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;transition:all .2s ease-in-out}@media (hover:hover){.profile-remove-btn:hover{background:#dc2626;transform:translateY(-1px)}}.profile-remove-btn:disabled{cursor:not-allowed;background:#9ca3af;transform:none}.accordion-section{border:1px solid #e5e7eb;border-radius:.75rem;margin-bottom:1rem;transition:all .3s;overflow:hidden}.accordion-section.expanded{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.section-header{cursor:pointer;-webkit-user-select:none;user-select:none;background:#f8fafc;justify-content:space-between;align-items:center;padding:1rem 1.5rem;transition:background-color .2s;display:flex;position:relative}.section-header:hover{background:#f1f5f9}.accordion-section.expanded .section-header{background:#eff6ff;border-bottom:1px solid #e5e7eb}.section-header h3{color:#374151;flex-grow:1;margin:0;font-size:1.125rem;font-weight:600}.accordion-icon{color:#6b7280;text-align:center;width:24px;font-size:1.25rem;font-weight:700;transition:all .2s}.accordion-section.expanded .accordion-icon{color:#3b82f6;transform:scale(1.1)}.section-header.completed{background:#ecfdf5;border-bottom-color:#d1fae5}.section-header.completed h3,.section-header.completed .accordion-icon{color:#059669}.section-content{background:#fff;padding:1.5rem;animation:.3s ease-out slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.accordion-section.collapsed .section-content{display:none}.section-header:after{content:"";background:0 0;border-radius:50%;width:6px;height:6px;transition:all .2s;position:absolute;right:3rem}.section-header.completed:after{background:#10b981}.form-progress{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;margin:0 2rem 2rem;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.progress-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.progress-header h4{color:#374151;margin:0;font-size:1rem;font-weight:600}.progress-count{color:#6b7280;font-size:.875rem;font-weight:500}.progress-sections{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem;display:grid}.progress-section{cursor:pointer;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;flex-direction:column;align-items:center;padding:.75rem .5rem;transition:all .2s;display:flex}@media (hover:hover){.progress-section:hover{background:#f3f4f6;transform:translateY(-1px)}}.progress-section.active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.progress-section.completed{background:#ecfdf5;border-color:#10b981}.progress-section.completed.active{background:#d1fae5;border-color:#059669}.progress-indicator{color:#9ca3af;background:#fff;border:2px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-bottom:.5rem;font-size:.75rem;font-weight:700;transition:all .2s;display:flex}.progress-section.active .progress-indicator{color:#fff;background:#3b82f6;border-color:#3b82f6}.progress-section.completed .progress-indicator{color:#fff;background:#10b981;border-color:#10b981}.progress-label{color:#6b7280;text-align:center;font-size:.75rem;font-weight:500;line-height:1.2}.progress-section.active .progress-label{color:#3b82f6;font-weight:600}.progress-section.completed .progress-label{color:#059669;font-weight:600}@media (max-width:768px){.progress-sections{grid-template-columns:repeat(4,1fr);gap:.5rem}.progress-section{padding:.5rem .25rem}.progress-indicator{width:20px;height:20px;margin-bottom:.375rem;font-size:.625rem}.progress-label{font-size:.625rem}}@media (max-width:480px){.progress-sections{grid-template-columns:repeat(3,1fr)}.progress-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.profile-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;display:flex}.capture-live-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f59e0b 0%,#f97316 50%,#dc2626 100%);border:none;border-radius:2rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 15px #f59e0b66}.capture-live-btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}@media (hover:hover){.capture-live-btn:hover:not(:disabled):before{left:100%}.capture-live-btn:hover:not(:disabled){transform:translateY(-2px)scale(1.02);box-shadow:0 6px 25px #f59e0b80}}.capture-live-btn:active:not(:disabled){transform:translateY(0)scale(.98)}.capture-live-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;background:linear-gradient(135deg,#9ca3af 0%,#6b7280 100%)}.capture-icon{font-size:1.25rem;animation:2s ease-in-out infinite sparkle;display:inline-flex}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)rotate(0)}25%{opacity:.8;transform:scale(1.2)rotate(-10deg)}50%{opacity:1;transform:scale(1)rotate(10deg)}75%{opacity:.8;transform:scale(1.2)rotate(-10deg)}}.capture-live-btn:hover .capture-icon{animation:.6s ease-in-out infinite sparkle}.capture-text{letter-spacing:.02em;font-weight:600}.profile-remove-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ef4444 0%,#dc2626 50%,#b91c1c 100%);border:none;border-radius:2rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 15px #ef444466}.profile-remove-btn:before{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}@media (hover:hover){.profile-remove-btn:hover:not(:disabled):before{left:100%}.profile-remove-btn:hover:not(:disabled){transform:translateY(-2px)scale(1.02);box-shadow:0 6px 25px #ef444480}}.profile-remove-btn:active:not(:disabled){transform:translateY(0)scale(.98)}.profile-remove-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;background:linear-gradient(135deg,#9ca3af 0%,#6b7280 100%)}.remove-icon{font-size:1.1rem;display:inline-flex}.remove-text{letter-spacing:.02em;font-weight:600}.date-input-container{width:100%;position:relative}.date-help-text{color:#6c757d;opacity:0;margin-top:4px;padding-left:2px;font-size:.8rem;font-style:italic;transition:opacity .2s;display:block}.date-input-container.show-help .date-help-text{opacity:1}input[type=date]{appearance:none;cursor:text;width:100%;min-width:180px;padding-right:40px;font-size:16px;position:relative;color:inherit!important;background-color:#fff!important}input[type=date]:focus{cursor:text;outline:none;font-size:16px}input[type=date]::-webkit-datetime-edit{font-family:inherit;font-size:inherit;background-color:#0000;border-radius:3px;padding:2px 4px;transition:all .2s;color:inherit!important}input[type=date]::-webkit-datetime-edit-fields-wrapper{background-color:#0000;border-radius:4px;padding:2px;color:inherit!important}input[type=date]::-webkit-datetime-edit-year-field{cursor:pointer;text-align:center;background-color:#667eea0d;border:1px solid #667eea33;border-radius:4px;min-width:2.5em;margin:0 1px;padding:4px 8px;font-weight:500;transition:background-color .15s,border-color .15s;color:inherit!important}input[type=date]::-webkit-datetime-edit-month-field{cursor:pointer;text-align:center;background-color:#667eea0d;border:1px solid #667eea33;border-radius:4px;min-width:2.5em;margin:0 1px;padding:4px 8px;font-weight:500;transition:background-color .15s,border-color .15s;color:inherit!important}input[type=date]::-webkit-datetime-edit-day-field{cursor:pointer;text-align:center;background-color:#667eea0d;border:1px solid #667eea33;border-radius:4px;min-width:2.5em;margin:0 1px;padding:4px 8px;font-weight:500;transition:background-color .15s,border-color .15s;color:inherit!important}input[type=date]::-webkit-datetime-edit-year-field:hover{background-color:#667eea26;border-color:#667eea66}input[type=date]::-webkit-datetime-edit-month-field:hover{background-color:#667eea26;border-color:#667eea66}input[type=date]::-webkit-datetime-edit-day-field:hover{background-color:#667eea26;border-color:#667eea66}input[type=date]::-webkit-datetime-edit-year-field:focus{z-index:1;outline:none;font-weight:600;box-shadow:0 0 0 2px #667eea4d;background-color:var(--primary-500)!important;border-color:var(--primary-500)!important;color:#fff!important}input[type=date]::-webkit-datetime-edit-month-field:focus{z-index:1;outline:none;font-weight:600;box-shadow:0 0 0 2px #667eea4d;background-color:var(--primary-500)!important;border-color:var(--primary-500)!important;color:#fff!important}input[type=date]::-webkit-datetime-edit-day-field:focus{z-index:1;outline:none;font-weight:600;box-shadow:0 0 0 2px #667eea4d;background-color:var(--primary-500)!important;border-color:var(--primary-500)!important;color:#fff!important}input[type=date]:focus-within::-webkit-datetime-edit-year-field:focus{background-color:#5a67d8!important}input[type=date]:focus-within::-webkit-datetime-edit-month-field:focus{background-color:#5a67d8!important}input[type=date]:focus-within::-webkit-datetime-edit-day-field:focus{background-color:#5a67d8!important}input[type=date]:invalid::-webkit-datetime-edit-year-field{background-color:#6c757d14;border-color:#6c757d40;color:#6c757d!important}input[type=date]:invalid::-webkit-datetime-edit-month-field{background-color:#6c757d14;border-color:#6c757d40;color:#6c757d!important}input[type=date]:invalid::-webkit-datetime-edit-day-field{background-color:#6c757d14;border-color:#6c757d40;color:#6c757d!important}input[type=date]:invalid::-webkit-datetime-edit-year-field:hover{background-color:#667eea1a;border-color:#667eea4d;color:inherit!important}input[type=date]:invalid::-webkit-datetime-edit-month-field:hover{background-color:#667eea1a;border-color:#667eea4d;color:inherit!important}input[type=date]:invalid::-webkit-datetime-edit-day-field:hover{background-color:#667eea1a;border-color:#667eea4d;color:inherit!important}input[type=date]:invalid::-webkit-datetime-edit-year-field:focus{background-color:var(--primary-500)!important;border-color:var(--primary-500)!important;color:#fff!important}input[type=date]:invalid::-webkit-datetime-edit-month-field:focus{background-color:var(--primary-500)!important;border-color:var(--primary-500)!important;color:#fff!important}input[type=date]:invalid::-webkit-datetime-edit-day-field:focus{background-color:var(--primary-500)!important;border-color:var(--primary-500)!important;color:#fff!important}input[type=date]::-webkit-datetime-edit-text{background-color:#0000;padding:0 2px;font-weight:700;color:#6c757d!important}input[type=date]:invalid{color:#6c757d}input[type=date]:focus:invalid{color:inherit}input[type=date]:before{content:attr(placeholder);color:#6c757d;margin-right:.5em}input[type=date]:focus:before,input[type=date]:valid:before{display:none}.form-row .form-group input[type=date]{min-width:180px}@media (min-width:769px){.form-row .form-group,.form-row .form-group input[type=date]{min-width:200px}}.form-row:has(input[type=date]){grid-template-columns:minmax(200px,1fr) minmax(200px,1fr)}@media (max-width:768px){.form-row:has(input[type=date]){grid-template-columns:1fr}}input[type=date]::-webkit-calendar-picker-indicator{color:var(--primary-500);cursor:pointer;background:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23667eea' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E") 50%/20px 20px no-repeat;border-radius:4px;width:32px;height:32px;transition:all .2s;position:absolute;inset:4px 4px 4px auto}input[type=date]::-webkit-calendar-picker-indicator:hover{background-color:#667eea1a;border-radius:6px;transform:scale(1.05)}input[type=date]::-webkit-calendar-picker-indicator:active{background-color:#667eea33;transform:scale(.95)}input[type=date]::-webkit-datetime-edit{font-family:inherit;font-size:inherit;background-color:#0000;color:inherit!important}input[type=date]::-webkit-datetime-edit-fields-wrapper{background-color:#0000;color:inherit!important}input[type=date]::-webkit-datetime-edit-text{background-color:#0000;color:inherit!important}input[type=date]::-webkit-datetime-edit-month-field{background-color:#0000;color:inherit!important}input[type=date]::-webkit-datetime-edit-day-field{background-color:#0000;color:inherit!important}input[type=date]::-webkit-datetime-edit-year-field{background-color:#0000;color:inherit!important}input[type=date]::placeholder{color:#6c757d;opacity:1}input[type=date]:focus{outline:none}input[type=date]:focus::-webkit-datetime-edit{color:inherit!important}input[type=date]:focus::-webkit-datetime-edit-fields-wrapper{color:inherit!important}.section-modal-overlay{z-index:1000;box-sizing:border-box;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.embedded-modal{box-sizing:border-box;background:#fff;border-radius:12px;flex-direction:column;width:100%;display:flex}.embedded-modal .modal-header{border-bottom:2px solid #e5e7eb;padding:20px 24px}.embedded-modal .modal-content{padding:24px}.section-modal{box-sizing:border-box;background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:min(500px,100vw - 40px);max-height:90vh;animation:.3s ease-out slideIn;display:flex;overflow:hidden;box-shadow:0 10px 40px #0003}.section-modal.large{max-width:min(800px,100vw - 40px)}.section-modal.extra-large{max-width:min(900px,100vw - 40px)}.modal-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:2px solid #e5e7eb;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{color:#fff;align-items:center;gap:8px;margin:0;font-size:1.5rem;font-weight:600;display:flex}.close-btn{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:28px;line-height:1;transition:all .2s;display:flex}.close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.modal-content{flex:1;padding:24px;overflow-y:auto;margin-top:0!important}.error-close{color:#c33;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:auto;padding:0;font-size:20px;display:flex}.error-close:hover{background:#cc33331a}.form-group label{color:#374151;margin-bottom:6px;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{box-sizing:border-box;background:#fff;border:1px solid #d1d5db;border-radius:6px;width:100%;min-height:44px;padding:10px 12px;font-size:14px;transition:all .2s}.form-group select{appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem 1rem;padding-right:2.5rem!important}.form-group input.error,.form-group textarea.error,.form-group select.error{border-color:#dc2626}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{color:#6b7280;cursor:not-allowed;background-color:#f9fafb}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:20px;display:grid}.form-row:last-child{margin-bottom:0}.form-group input[type=number],.form-group input[type=text],.form-group input[type=date],.form-group input[type=tel],.form-group input[type=email],.form-group textarea,.form-group select{min-width:0}.field-error{color:#dc2626;margin-top:4px;font-size:12px}.pricing-section,.transportation-section,.hotels-section,.room-types-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:16px}.pricing-section h4,.transportation-section h4,.hotels-section h4,.room-types-section h4{color:#1e293b;margin:0 0 16px;font-size:16px;font-weight:600}.pricing-section:last-of-type,.transportation-section:last-of-type,.hotels-section:last-of-type,.room-types-section:last-of-type{margin-bottom:0}.add-item-form{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;padding:16px}.items-list{margin-top:16px}.items-list h5{color:#374151;margin:0 0 12px;font-size:14px;font-weight:600}.item-card,.hotel-card{background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px;display:flex}.item-info,.hotel-info{flex:1;font-size:14px}.room-types-list{background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px;margin-top:8px;padding:8px}.room-type-item{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:4px 0;font-size:12px;display:flex}.room-type-item:last-child{border-bottom:none}.room-type-actions{gap:8px;margin-top:12px;display:flex}.modal-footer{background:#f9fafb;border-top:2px solid #e5e7eb;justify-content:flex-end;gap:12px;padding:20px 24px;display:flex;box-shadow:0 -2px 4px #0000000d}.btn{cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-width:80px;min-height:44px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{color:#fff;background-color:#3b82f6;border-color:#3b82f6}.btn-primary:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}.btn-secondary{color:#6b7280;background-color:#fff;border-color:#d1d5db}.btn-secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.btn-xs{padding:4px 8px;font-size:11px}.btn-danger{color:#fff;background-color:#dc2626;border-color:#dc2626}.btn-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.btn-info{color:#fff;background-color:#0891b2;border-color:#0891b2}.btn-info:hover:not(:disabled){background-color:#0e7490;border-color:#0e7490}.loading-spinner{border:2px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;width:20px;height:20px;margin-right:8px;animation:1s linear infinite spin}.form-group input[type=checkbox]{width:auto;margin-right:8px}.form-group label input[type=checkbox]{margin-right:8px}@media (max-width:768px){.section-modal-overlay{padding:10px}.section-modal,.section-modal.large,.section-modal.extra-large{border-radius:12px;width:100%;max-width:100%;margin:0}.form-row{grid-template-columns:1fr;gap:12px}.modal-header{padding:16px 20px}.modal-header h3{font-size:18px}.modal-content{padding:20px}.pricing-section,.transportation-section,.hotels-section,.room-types-section{padding:12px}.modal-footer{flex-direction:column-reverse;padding:16px 20px}.modal-footer .btn{width:100%}.item-card,.hotel-card{flex-direction:column;align-items:stretch}.item-actions{flex-direction:row;width:100%;margin-top:8px}.item-actions .btn{flex:1}.room-type-actions{flex-direction:column}.form-group input,.form-group textarea,.form-group select{font-size:16px}}@media (max-width:480px){.section-modal-overlay{padding:5px}.section-modal,.section-modal.large,.section-modal.extra-large{border-radius:8px;width:100%;max-width:100%;max-height:95vh;margin:0}.modal-header{padding:12px 16px}.modal-header h3{font-size:16px}.modal-content{padding:16px}.pricing-section,.transportation-section,.hotels-section,.room-types-section{margin-bottom:16px;padding:10px}.add-item-form{padding:10px}.modal-footer{padding:12px 16px}.form-group label{font-size:14px}.form-group input,.form-group textarea,.form-group select{padding:8px 10px}.btn{padding:8px 16px;font-size:14px}.btn-sm{padding:5px 10px;font-size:12px}}.section{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px;overflow:hidden}.section h4{color:#374151;background:#f8fafc;border-bottom:1px solid #e2e8f0;align-items:center;gap:8px;margin:0;padding:12px 16px;font-size:16px;font-weight:600;display:flex}.section .form-row{border-bottom:1px solid #f3f4f6;padding:16px}.items-list{max-height:200px;overflow-y:auto}.list-item{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;padding:12px 16px;transition:background-color .2s;display:flex}.list-item:hover{background-color:#f9fafb}.list-item:last-child{border-bottom:none}.item-content{flex:1;margin-right:12px}.item-content p{color:#374151;margin:0;line-height:1.5}.item-content strong{color:#1f2937;font-weight:600}.item-actions{flex-shrink:0;gap:8px;display:flex}.btn.small{min-width:50px;padding:4px 8px;font-size:12px}.btn.btn-add{color:#fff;cursor:pointer;white-space:nowrap;background:#10b981;border:none;border-radius:6px;padding:8px 16px;font-weight:500;transition:background-color .2s}.btn.btn-add:hover:not(:disabled){background:#059669}.btn.btn-edit{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:4px;font-weight:500;transition:background-color .2s}.btn.btn-edit:hover:not(:disabled){background:#2563eb}.btn.btn-delete{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:4px;font-weight:500;transition:background-color .2s}.btn.btn-delete:hover:not(:disabled){background:#dc2626}.empty-state{text-align:center;color:#9ca3af;margin:0;padding:8px 16px;font-style:italic;font-size:14px!important}.form-group.flex-grow{flex:1}.section .form-row{align-items:flex-end;gap:12px;display:flex}.section .form-row .form-group{margin-bottom:0}.section .form-row .form-group:not(.flex-grow){min-width:150px}@media (max-width:768px){.section-modal-overlay{padding:10px}.section-modal,.section-modal.large,.section-modal.extra-large{border-radius:8px;max-width:100vw;max-height:95vh}.modal-header{padding:16px}.modal-header h3{font-size:18px}.modal-content,.embedded-modal .modal-header,.embedded-modal .modal-content{padding:16px}.form-group{margin-bottom:16px}.form-group input,.form-group textarea,.form-group select{font-size:16px}.form-row{grid-template-columns:1fr;gap:12px}.modal-footer{flex-direction:column-reverse;gap:8px;padding:12px 16px}.modal-footer .btn{width:100%}.pricing-section,.transportation-section,.hotels-section,.room-types-section{margin-bottom:16px;padding:12px}.pricing-section h4,.transportation-section h4,.hotels-section h4,.room-types-section h4{margin-bottom:12px;font-size:15px}.item-card,.hotel-card{flex-direction:column;align-items:stretch;padding:12px}.item-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.item-actions .btn{flex:1;min-width:80px}.section .form-row{flex-direction:column;align-items:stretch}.section .form-row .form-group{width:100%;margin-bottom:0}.section .form-row .btn{width:100%;margin-top:8px}.list-item{flex-direction:column;align-items:flex-start;gap:8px}.item-content{width:100%;margin-right:0}.item-actions{align-self:stretch;width:100%}.item-actions .btn{flex:1}.add-item-form{padding:12px}.room-types-list{padding:6px}}@media (max-width:480px){.section-modal-overlay{padding:5px}.modal-header{padding:12px}.modal-header h3{gap:6px;font-size:16px}.close-btn{width:24px;height:24px;font-size:20px}.modal-content,.embedded-modal .modal-header,.embedded-modal .modal-content{padding:12px}.form-group{margin-bottom:12px}.form-group label{font-size:14px}.pricing-section,.transportation-section,.hotels-section,.room-types-section{margin-bottom:12px;padding:10px}.section h4{padding:10px 12px;font-size:14px}.list-item{padding:10px 12px}.item-content p{font-size:14px}.empty-state{font-size:13px}.btn{padding:8px 14px;font-size:13px}.btn-small{padding:6px 10px;font-size:12px}.modal-footer{padding:10px 12px}.item-card,.hotel-card{padding:10px}.room-type-item{font-size:11px}}@media (min-width:769px) and (max-width:1024px){.section-modal.large{max-width:min(750px,100vw - 40px)}.section-modal.extra-large{max-width:min(850px,100vw - 40px)}.form-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}.info-display{background:#f9fafb;border-radius:8px;padding:20px}.info-display-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.info-display-header h4{color:#1f2937;margin:0;font-size:1.1rem}.info-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.info-item label{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.85rem;font-weight:600;display:block}.info-item p{color:#1f2937;margin:0;font-size:1rem;font-weight:500}.payment-gateways-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:20px;display:grid}.gateway-option-card{cursor:pointer;background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:16px;transition:all .2s}.gateway-option-card:hover:not(.view-mode){border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f626}.gateway-option-card.selected{background:#eff6ff;border-color:#3b82f6}.gateway-option-card.view-mode{cursor:default}.gateway-option-header{align-items:center;gap:12px;margin-bottom:12px;display:flex}.gateway-option-header input[type=checkbox]{cursor:pointer;accent-color:#3b82f6;width:20px;height:20px}.gateway-option-header h4{color:#1f2937;margin:0;font-size:1.1rem}.gateway-option-body .gateway-description{color:#6b7280;margin:0 0 12px;font-size:.9rem}.gateway-features-compact{flex-wrap:wrap;gap:8px;display:flex}.feature-badge{color:#4b5563;background:#f3f4f6;border-radius:12px;padding:4px 10px;font-size:.8rem;font-weight:500}.feature-badge.more{color:#3b82f6;background:#dbeafe}.info-message{color:#92400e;background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;margin-top:16px;padding:12px 16px;font-size:.9rem}@media (max-width:640px){.info-grid,.payment-gateways-grid{grid-template-columns:1fr}}.dh-modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.dh-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:1200px;max-height:90vh;animation:.3s ease-out dh-slideIn;display:flex;box-shadow:0 10px 40px #0003}@keyframes dh-slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.dh-modal-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:2px solid #e5e7eb;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.dh-modal-header h3{margin:0;font-size:1.5rem;font-weight:600}.dh-close-btn{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:28px;line-height:1;transition:all .2s;display:flex}.dh-close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.dh-modal-content{flex:1;padding:0;overflow-y:auto}.dh-error-message{color:#c33;background:#fee;border:1px solid #fcc;border-radius:8px;align-items:center;gap:8px;margin:16px 24px;padding:12px 16px;font-size:.95rem;display:flex}.dh-error-icon{font-size:1.2rem}.dh-error-close{color:#c33;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:auto;padding:0;font-size:20px;display:flex}.dh-error-close:hover{background:#cc33331a}.dh-yatra-settings-section{background:#f8f9fa;border:2px solid #e5e7eb;border-radius:12px;margin:20px 24px;padding:20px}.dh-settings-header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.dh-settings-header h4{color:#1f2937;margin:0 0 4px;font-size:1.1rem;font-weight:600}.dh-settings-subtitle{color:#6b7280;margin:0;font-size:.9rem}.dh-settings-actions{gap:8px;display:flex}.dh-settings-content{margin-top:16px}.dh-settings-display{background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;display:flex}.dh-settings-label{color:#4b5563;font-size:.95rem;font-weight:600}.dh-settings-value{color:#1f2937;font-size:.95rem}.dh-settings-value strong{color:#667eea;font-weight:600}.dh-settings-form{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.dh-form-row{margin-bottom:16px}.dh-form-row:last-child{margin-bottom:0}.dh-form-row label{color:#374151;margin-bottom:8px;font-size:.9rem;font-weight:600;display:block}.dh-form-row input[type=number]{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px 12px;font-size:.95rem;transition:all .2s}.dh-form-row input[type=number]:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.dh-checkbox-label{cursor:pointer;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;align-items:center;gap:10px;padding:10px 12px;transition:all .2s;display:flex}.dh-checkbox-label:hover{background:#f3f4f6;border-color:#d1d5db}.dh-checkbox-label span{color:#374151;font-size:.95rem}.dh-form-help{color:#6b7280;margin-top:6px;font-size:.85rem;font-style:italic;display:block}.dh-tabs-container{z-index:10;background:#f9fafb;border-bottom:2px solid #e5e7eb;padding:16px 24px 0;position:sticky;top:0;box-shadow:0 2px 4px #0000000d}.dh-tabs{scrollbar-width:thin;gap:8px;padding-bottom:0;display:flex;overflow:auto hidden}.dh-tabs::-webkit-scrollbar{height:4px}.dh-tabs::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:2px}.dh-tab{cursor:grab;color:#4b5563;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#fff;border:2px solid #e5e7eb;border-bottom:none;border-radius:8px 8px 0 0;align-items:center;gap:8px;margin-bottom:-2px;padding:10px 16px;font-weight:500;transition:all .2s;display:flex;position:relative}.dh-tab:active{cursor:grabbing}.dh-tab:hover{background:#f3f4f6;border-color:#d1d5db}.dh-tab.active{color:#667eea;background:#fff;border-color:#667eea;font-weight:600;box-shadow:0 -2px 8px #667eea1a}.dh-tab.dragging{opacity:.4;cursor:grabbing}.dh-tab.drag-over{background:#eef2ff;border-color:#667eea;transform:scale(1.05);box-shadow:0 0 0 3px #667eea33}.dh-tab-drag-handle{color:#9ca3af;cursor:grab;font-size:16px;line-height:1;transition:color .2s}.dh-tab:hover .dh-tab-drag-handle{color:#667eea}.dh-tab:active .dh-tab-drag-handle{cursor:grabbing}.dh-tab-order{color:#6b7280;background:#f3f4f6;border-radius:12px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 6px;font-size:.75rem;font-weight:600;display:inline-flex}.dh-tab.active .dh-tab-order{color:#667eea;background:#eef2ff}.dh-tab-name{flex:1}.dh-tab-add{color:#667eea;cursor:pointer;border-style:dashed}.dh-tab-add:hover{background:#eef2ff;border-color:#667eea}.dh-tab-edit{cursor:pointer;opacity:.6;background:0 0;border:none;padding:2px 4px;font-size:14px;line-height:1;transition:opacity .2s}.dh-tab:hover .dh-tab-edit{opacity:1}.dh-tab-edit:hover{opacity:1;transform:scale(1.2)}.dh-content{padding:24px}.dh-content-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.dh-content-header h4{color:#1f2937;margin:0 0 8px;font-size:1.5rem}.dh-destination-desc{color:#6b7280;margin:0;font-size:.95rem}.dh-content-actions{flex-shrink:0;gap:8px;display:flex}.dh-hotels-list{flex-direction:column;gap:20px;display:flex}.dh-hotel-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s}.dh-hotel-card:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #00000014}.dh-hotel-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.dh-hotel-header h5{color:#1f2937;margin:0 0 8px;font-size:1.25rem}.dh-hotel-address{color:#6b7280;margin:4px 0;font-size:.9rem}.dh-hotel-meta{color:#6b7280;flex-wrap:wrap;gap:12px;margin-top:8px;font-size:.85rem;display:flex}.dh-hotel-meta span,.dh-hotel-meta a{align-items:center;gap:4px;display:flex}.dh-hotel-meta a{color:#667eea;text-decoration:none}.dh-hotel-meta a:hover{text-decoration:underline}.dh-hotel-actions{flex-shrink:0;gap:8px;display:flex}.dh-rooms-list{border-top:1px solid #e5e7eb;margin-top:16px;padding-top:16px}.dh-rooms-list h6{color:#4b5563;margin:0 0 12px;font-size:1rem}.dh-rooms-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;display:grid}.dh-room-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex-direction:column;gap:8px;padding:12px;transition:all .2s;display:flex}.dh-room-card:hover{background:#f3f4f6;border-color:#d1d5db}.dh-room-info{flex:1}.dh-room-info strong{color:#1f2937;margin-bottom:4px;font-size:1rem;display:block}.dh-room-price{color:#fff;background:#667eea;border-radius:4px;margin-bottom:8px;padding:2px 8px;font-size:.9rem;font-weight:600;display:inline-block}.dh-room-details{color:#6b7280;flex-wrap:wrap;gap:8px;margin:8px 0;font-size:.85rem;display:flex}.dh-room-badge{color:#78350f;background:#fbbf24;border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:600}.dh-room-badge.dh-badge-warning{color:#fff;background:#f59e0b}.dh-room-amenities,.dh-room-dates{color:#6b7280;margin:4px 0;font-size:.85rem}.dh-room-actions{gap:6px;margin-top:8px;display:flex}.dh-empty-state{text-align:center;color:#9ca3af;padding:60px 20px}.dh-empty-icon{margin-bottom:16px;font-size:4rem;display:block}.dh-empty-state p{margin:0 0 20px;font-size:1.1rem}.dh-modal-footer{background:#f9fafb;border-top:2px solid #e5e7eb;border-radius:0 0 12px 12px;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.dh-form-modal-overlay{z-index:1100;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.dh-form-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:600px;max-height:90vh;animation:.3s ease-out dh-popIn;display:flex;box-shadow:0 20px 60px #0000004d}@keyframes dh-popIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.dh-form-header{background:#f9fafb;border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.dh-form-header h4{color:#1f2937;margin:0;font-size:1.25rem}.dh-form-content{flex:1;padding:24px;overflow-y:auto}.dh-form-group{margin-bottom:20px}.dh-form-group label{color:#374151;margin-bottom:6px;font-size:.95rem;font-weight:500;display:block}.dh-form-group input[type=text],.dh-form-group input[type=number],.dh-form-group input[type=url],.dh-form-group input[type=date],.dh-form-group textarea,.dh-form-group select{border:2px solid #e5e7eb;border-radius:6px;width:100%;padding:10px 12px;font-family:inherit;font-size:.95rem;transition:all .2s}.dh-form-group input:focus,.dh-form-group textarea:focus,.dh-form-group select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.dh-form-group textarea{resize:vertical;min-height:80px}.dh-form-row{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.dh-checkbox-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;display:flex}.dh-checkbox-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.dh-form-footer{background:#f9fafb;border-top:2px solid #e5e7eb;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.dh-btn{cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:10px 20px;font-size:.95rem;font-weight:500;transition:all .2s;display:inline-flex}.dh-btn:disabled{opacity:.5;cursor:not-allowed}.dh-btn-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.dh-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.dh-btn-secondary{color:#4b5563;background:#f3f4f6;border:2px solid #e5e7eb}.dh-btn-secondary:hover:not(:disabled){background:#e5e7eb}.dh-btn-danger{color:#fff;background:#ef4444}.dh-btn-danger:hover:not(:disabled){background:#dc2626;box-shadow:0 4px 12px #ef444466}.dh-btn-info{color:#fff;background:#10b981}.dh-btn-info:hover:not(:disabled){background:#059669;box-shadow:0 4px 12px #10b98166}.dh-btn-sm{padding:6px 12px;font-size:.85rem}.dh-btn-xs{padding:4px 8px;font-size:.8rem}@media (max-width:768px){.dh-modal-overlay{padding:10px}.dh-modal{border-radius:8px;max-width:100%;max-height:95vh}.dh-modal-header{border-radius:8px 8px 0 0;padding:16px}.dh-modal-header h3{font-size:1.25rem}.dh-close-btn{width:32px;height:32px;font-size:24px}.dh-modal-content{padding:0}.dh-error-message{margin:12px 16px;padding:10px 12px;font-size:.9rem}.dh-tabs-container{padding:12px 16px}.dh-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;gap:6px;overflow-x:auto}.dh-tab{white-space:nowrap;flex-shrink:0;padding:10px 14px;font-size:.9rem}.dh-content{padding:16px}.dh-content-header{flex-direction:column;gap:12px;margin-bottom:16px}.dh-content-actions{flex-direction:column;gap:8px;width:100%}.dh-content-actions .dh-btn{width:100%}.dh-hotel-header{flex-direction:column;align-items:flex-start;gap:10px;padding:12px}.dh-hotel-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}.dh-hotel-actions .dh-btn{flex:1;min-width:80px}.dh-rooms-grid{grid-template-columns:1fr;gap:12px}.dh-room-card{padding:12px}.dh-room-actions{justify-content:flex-start;width:100%}.dh-room-actions .dh-btn{flex:1}.dh-form-modal{border-radius:8px;max-width:100%;max-height:95vh;margin:10px}.dh-form-header{padding:14px 16px}.dh-form-header h4{font-size:1.1rem}.dh-form-content{padding:16px}.dh-form-row{grid-template-columns:1fr;gap:12px}.dh-form-footer{flex-direction:column-reverse;gap:8px;padding:12px 16px}.dh-form-footer .dh-btn{width:100%}.dh-modal-footer{padding:12px 16px}.dh-modal-footer .dh-btn{width:100%}.dh-empty-state{padding:30px 16px}.dh-empty-icon{font-size:2.5rem}}@media (max-width:480px){.dh-modal-overlay{padding:5px}.dh-modal{border-radius:6px;max-height:98vh}.dh-modal-header{border-radius:6px 6px 0 0;padding:12px}.dh-modal-header h3{font-size:1.1rem}.dh-close-btn{width:28px;height:28px;font-size:20px}.dh-tabs-container{padding:10px 12px}.dh-tab{padding:8px 12px;font-size:.85rem}.dh-content{padding:12px}.dh-content-header h4{font-size:1rem}.dh-btn{padding:8px 14px;font-size:.85rem}.dh-btn-small{padding:6px 10px;font-size:.75rem}.dh-hotel-card{padding:12px}.dh-hotel-name{font-size:.95rem}.dh-room-card{padding:10px}.dh-room-name{font-size:.9rem}.dh-room-price{font-size:.85rem}.dh-form-modal{border-radius:6px;margin:5px}.dh-form-header{padding:12px}.dh-form-header h4{font-size:1rem}.dh-form-content{padding:12px}.dh-form-group label{font-size:.9rem}.dh-form-group input,.dh-form-group textarea,.dh-form-group select{font-size:16px}.dh-empty-state{padding:25px 12px}.dh-empty-icon{font-size:2rem}.dh-empty-state p{font-size:.9rem}}@media (min-width:769px) and (max-width:1024px){.dh-modal{max-width:95%}.dh-rooms-grid{grid-template-columns:repeat(2,1fr)}.dh-form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (min-width:1400px){.dh-modal{max-width:1300px}.dh-rooms-grid{grid-template-columns:repeat(4,1fr)}}.dh-detail-modal{max-width:900px;max-height:85vh}.dh-detail-modal .dh-form-content{max-height:calc(85vh - 140px);overflow-y:auto}.dh-detail-description{color:#4b5563;background:#f9fafb;border-radius:8px;margin-bottom:20px;padding:12px 16px;font-size:.95rem;line-height:1.5}.dh-detail-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px;display:grid}.dh-stat-card{text-align:center;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border:1px solid #dee2e6;border-radius:10px;flex-direction:column;align-items:center;padding:16px;transition:transform .2s,box-shadow .2s;display:flex}.dh-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.dh-stat-label{color:#6c757d;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.8rem;font-weight:600}.dh-stat-value{color:#495057;font-size:1.8rem;font-weight:700}.dh-stat-value.dh-stat-success{color:#28a745}.dh-stat-value.dh-stat-danger{color:#dc3545}.dh-stat-value.dh-stat-warning{color:#ffc107}.dh-detail-section{margin-bottom:24px}.dh-detail-section h5{color:#343a40;border-bottom:2px solid #e9ecef;margin-bottom:16px;padding-bottom:8px;font-size:1.1rem;font-weight:600}.dh-detail-hotel{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px;padding:16px}.dh-detail-hotel-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.dh-detail-hotel-header h6{color:#1f2937;margin:0;font-size:1rem}.dh-detail-hotel-stats{color:#6b7280;gap:16px;font-size:.85rem;display:flex}.dh-detail-room-types{flex-direction:column;gap:8px;display:flex}.dh-detail-room-type{background:#f9fafb;border-radius:6px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:.9rem;display:flex}.dh-detail-room-type strong{color:#374151}.dh-detail-room-full{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:16px;padding:16px}.dh-detail-room-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.dh-detail-room-header h6{color:#1f2937;margin:0 0 8px;font-size:1.05rem}.dh-room-info-line{color:#6b7280;gap:16px;font-size:.85rem;display:flex}.dh-room-availability{text-align:right}.dh-avail-label{color:#374151;margin-bottom:4px;font-size:.9rem;font-weight:600;display:block}.dh-gender-dist{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:6px;align-items:center;gap:16px;margin-bottom:12px;padding:12px;font-size:.9rem;display:flex}.dh-gender-label{color:#1e40af;font-weight:600}.dh-gender-dist-full{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.dh-gender-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:8px;padding:12px;display:flex}.dh-gender-icon{font-size:1.5rem}.dh-gender-label{color:#374151;flex:1;font-weight:600}.dh-gender-count{color:#667eea;font-size:1.1rem;font-weight:700}.dh-bookings-list{margin-top:12px}.dh-bookings-list strong{color:#374151;margin-bottom:8px;font-size:.9rem;display:block}.dh-booking-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;grid-template-columns:2fr 2fr 1.5fr auto;align-items:center;gap:12px;margin-bottom:6px;padding:10px 12px;font-size:.85rem;display:grid}.dh-booking-name{color:#1f2937;font-weight:600}.dh-booking-dates{color:#6b7280}.dh-booking-qty{color:#374151;font-size:.8rem}.dh-booking-status{text-transform:uppercase;text-align:center;white-space:nowrap;border-radius:12px;padding:4px 10px;font-size:.75rem;font-weight:600}.dh-booking-status.dh-status-confirmed{color:#065f46;background:#d1fae5}.dh-booking-status.dh-status-hold{color:#92400e;background:#fef3c7}.dh-booking-status.dh-status-cancelled{color:#991b1b;background:#fee2e2}.dh-bookings-table{overflow-x:auto}.dh-bookings-table table{border-collapse:collapse;width:100%;font-size:.9rem}.dh-bookings-table thead{background:#f3f4f6}.dh-bookings-table th{text-align:left;color:#374151;border-bottom:2px solid #e5e7eb;padding:10px 12px;font-weight:600}.dh-bookings-table td{color:#4b5563;border-bottom:1px solid #f3f4f6;padding:10px 12px}.dh-bookings-table tbody tr:hover{background:#f9fafb}.dh-detail-room-info{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:20px;padding:16px}.dh-info-row{border-bottom:1px solid #e5e7eb;grid-template-columns:160px 1fr;gap:12px;padding:8px 0;font-size:.9rem;display:grid}.dh-info-row:last-child{border-bottom:none}.dh-info-label{color:#6b7280;font-weight:600}.dh-empty-message{text-align:center;color:#9ca3af;padding:32px;font-style:italic}@media (max-width:768px){.dh-detail-modal{max-width:100%;max-height:95vh}.dh-detail-stats{grid-template-columns:repeat(2,1fr)}.dh-stat-value{font-size:1.5rem}.dh-detail-hotel-header{flex-direction:column;gap:12px}.dh-detail-hotel-stats{flex-direction:column;gap:6px}.dh-booking-item{grid-template-columns:1fr;gap:6px}.dh-bookings-table{font-size:.8rem}.dh-bookings-table th,.dh-bookings-table td{padding:8px 6px}.dh-info-row{grid-template-columns:1fr;gap:4px}.dh-info-label{font-size:.8rem}.dh-gender-dist{flex-direction:column;align-items:flex-start;gap:8px}}.inner-modal-overlay{z-index:1100;box-sizing:border-box;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.inner-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:500px;max-height:90vh;animation:.2s ease-out slideIn;display:flex;overflow:hidden;box-shadow:0 10px 40px #0003}.inner-modal-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.inner-modal-header h3{color:#fff;margin:0;font-size:1.2rem;font-weight:600}.inner-modal-body{flex:1;padding:20px;overflow-y:auto}.inner-modal-footer{background:#f8f9fa;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:10px;padding:16px 20px;display:flex}.form-group input,.form-group textarea,.form-group select{box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px 12px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.btn-primary{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;padding:10px 20px;font-weight:500;transition:opacity .2s,transform .2s}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-primary:disabled{cursor:not-allowed;background:#ccc;transform:none}.btn-danger{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:6px;padding:10px 20px;font-weight:500;transition:background .2s}.btn-danger:disabled{cursor:not-allowed;background:#ccc}.btn-icon{cursor:pointer;background:#fff3;border:none;border-radius:4px;padding:6px 8px;font-size:14px;transition:background .2s}.btn-icon:hover{background:#ffffff4d}.error-message{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.error-message button{color:#dc2626;cursor:pointer;background:0 0;border:none;padding:0;font-size:18px;line-height:1}.success-message{color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin-bottom:16px;padding:12px 16px}.schedule-actions{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.yatra-info-summary{background:#f8f9fa;border-radius:8px;flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:16px;padding:12px 16px;font-size:14px;display:flex}.schedule-list{flex-direction:column;gap:12px;display:flex}.schedule-day-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.day-header{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:space-between;align-items:center;padding:14px 16px;transition:opacity .2s;display:flex}.day-header:hover{opacity:.95}.day-info{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.day-number{font-size:16px;font-weight:700}.day-date{opacity:.9;font-size:14px}.day-title{opacity:.85;font-size:14px;font-style:italic}.day-actions{align-items:center;gap:8px;display:flex}.activity-count{opacity:.85;margin-right:8px;font-size:13px}.expand-icon{margin-left:4px;font-size:12px}.day-content{background:#fafafa;padding:16px}.day-notes{background:#fff3cd;border-radius:6px;margin-bottom:16px;padding:10px 14px;font-size:14px}.activities-section{background:#fff;border:1px solid #eee;border-radius:8px;padding:16px}.activities-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.activities-header h4{color:#333;margin:0;font-size:15px}.no-activities{color:#888;text-align:center;padding:12px;font-style:italic}.activities-table{border-collapse:collapse;width:100%;font-size:14px}.activities-table th{text-align:left;color:#495057;background:#f8f9fa;border-bottom:2px solid #dee2e6;padding:10px 12px;font-weight:600}.activities-table td{vertical-align:top;border-bottom:1px solid #eee;padding:10px 12px}.activities-table tr:hover td{background:#f8f9fa}.time-cell{white-space:nowrap;color:#667eea;width:120px;font-weight:500}.activity-cell{min-width:150px}.remarks-cell{color:#666;font-size:13px}.actions-cell{white-space:nowrap;text-align:center;width:80px}.btn-icon-small{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 6px;font-size:14px;transition:background .2s}.btn-icon-small:hover{background:#eee}.btn-small{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:6px;padding:6px 12px;font-size:13px;transition:background .2s}.btn-small:hover{background:#5a6fd6}.bulk-upload-modal{width:95%;max-width:700px}.bulk-upload-info{color:#666;margin-bottom:12px;font-size:14px}.json-textarea{resize:vertical;background:#f8f9fa;border:1px solid #ddd;border-radius:6px;width:100%;padding:12px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.5}.bulk-upload-options{margin-top:12px}.checkbox-label{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.checkbox-label input{cursor:pointer;width:16px;height:16px}.upload-mode-toggle{background:#f3f4f6;border-radius:8px;gap:8px;margin-bottom:16px;padding:4px;display:flex}.mode-btn{cursor:pointer;color:#666;background:0 0;border:none;border-radius:6px;flex:1;padding:10px 16px;font-weight:500;transition:all .2s}.mode-btn.active{color:#667eea;background:#fff;box-shadow:0 2px 4px #0000001a}.mode-btn:hover:not(.active){background:#ffffff80}.csv-upload-section{background:#f8f9fa;border:2px dashed #d1d5db;border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.csv-file-input{background:#fff;border:1px solid #d1d5db;border-radius:6px;padding:12px}.csv-file-info{color:#2e7d32;background:#e8f5e9;border-radius:6px;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.btn-link{color:#667eea;cursor:pointer;text-align:left;background:0 0;border:none;padding:8px 0;font-size:14px;text-decoration:underline}.btn-warning{color:#fff;cursor:pointer;background:#f0ad4e;border:none;border-radius:6px;padding:10px 20px;font-weight:500;transition:background .2s}.btn-warning:disabled{cursor:not-allowed;background:#ccc}.empty-state p{margin:0;font-size:14px}@media (max-width:768px){.schedule-actions{flex-direction:column}.schedule-actions button{width:100%}.yatra-info-summary{flex-direction:column;align-items:flex-start;gap:8px}.day-header{flex-direction:column;align-items:flex-start;gap:10px}.day-info{flex-direction:column;align-items:flex-start;gap:4px}.day-actions{justify-content:flex-end;width:100%}.activities-table{display:block;overflow-x:auto}.activities-table th,.activities-table td{padding:8px}.time-cell{min-width:100px}.bulk-upload-modal{max-height:90vh}.json-textarea{font-size:11px}}.sponsorship-tabs{background:#fff;border-bottom:2px solid #e9ecef;gap:.5rem;padding:1rem 1.5rem 0;display:flex}.tab-btn{color:#6c757d;cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s;position:relative;bottom:-2px}.tab-btn.active{color:#667eea;background:linear-gradient(#fff 0%,#f8f9ff 100%);border-bottom-color:#667eea}.tab-actions{background:#f8f9fa;border-bottom:1px solid #dee2e6;flex-wrap:wrap;gap:.75rem;padding:1rem 1.5rem;display:flex}.letter-tab-content{padding:1.5rem}.letter-preview-sections{flex-direction:column;gap:1.5rem;display:flex}.letter-section{background:#fff;border:1px solid #dee2e6;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.section-label{color:#495057;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1rem;font-weight:600;display:flex}.letter-title-display{color:#212529;font-size:1.5rem;font-weight:700;line-height:1.4}.letter-content-display{transition:max-height .3s;position:relative;overflow:hidden}.letter-content-display.collapsed{max-height:150px;position:relative}.letter-content-display.collapsed:after{content:"";background:linear-gradient(#0000,#fff);height:50px;position:absolute;bottom:0;left:0;right:0}.letter-content-display.expanded{max-height:none}.letter-text{color:#495057;font-size:1rem;line-height:1.8}.show-more-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;width:100%;margin-top:1rem;padding:.75rem;font-size:.9rem;font-weight:600;transition:all .2s;display:block}.show-more-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.sponsorship-items-list{background:#fff;border:1px solid #dee2e6;border-radius:8px;margin-top:1rem;overflow:auto visible}.sponsorship-items-list::-webkit-scrollbar{height:8px}.sponsorship-items-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.sponsorship-items-list::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.sponsorship-items-list::-webkit-scrollbar-thumb:hover{background:#555}.items-table-wrapper{min-width:800px}.items-header{color:#fff;text-transform:uppercase;background:#667eea;border-bottom:2px solid #5568d3;grid-template-columns:50px 50px 2fr 120px 100px 100px 110px;align-items:center;gap:1rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600;display:grid}.items-header span{align-items:center;display:flex}.sponsorship-item-row{background:#fff;border-bottom:1px solid #e9ecef;grid-template-columns:50px 50px 2fr 120px 100px 100px 110px;align-items:center;gap:1rem;padding:1rem;transition:background-color .2s;display:grid}.sponsorship-item-row:last-child{border-bottom:none}.sponsorship-item-row:hover{background:#f8f9fa}.sponsorship-item-row.inactive{opacity:.55;background-color:#f8f9fa}.sponsorship-item-row.inactive:hover{opacity:.75}.sponsorship-item-row .col-order{color:#667eea;text-align:center;font-size:1rem;font-weight:600}.sponsorship-item-row .col-type{text-align:center;font-size:1.5rem}.sponsorship-item-row .col-title{color:#212529;font-size:.95rem;font-weight:600}.sponsorship-item-row .col-amount{color:#198754;text-align:right;font-size:.95rem;font-weight:600}.sponsorship-item-row .col-units{color:#495057;text-align:center;font-size:.9rem;font-weight:500}.status-badge{white-space:nowrap;border-radius:12px;justify-content:center;align-items:center;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.status-badge.active{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.status-badge.inactive{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.col-actions{flex-wrap:nowrap;justify-content:center;gap:.5rem;display:flex}.btn-icon{cursor:pointer;border:1px solid #dee2e6;border-radius:6px;justify-content:center;align-items:center;padding:.4rem .6rem;font-size:1rem;transition:all .2s;display:inline-flex}.btn-icon.edit{color:#0d6efd}.btn-icon.edit:hover{color:#fff;background:#0d6efd;border-color:#0d6efd}.btn-icon.delete{color:#dc3545}.btn-icon.delete:hover{color:#fff;background:#dc3545;border-color:#dc3545}.modal-header .header-actions{flex-wrap:wrap;gap:.5rem;display:flex}.letter-preview{background:linear-gradient(135deg,var(--primary-50,#f0f4ff)0%,#e0edff 100%);border:1px solid var(--primary-100,#e0edff);border-radius:12px;margin-bottom:1.5rem;padding:1.25rem}.letter-preview-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.letter-preview-header h4{color:var(--primary-600,#5a6fd8);margin:0;font-size:1rem}.letter-title{color:var(--secondary-500,#764ba2);margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.form-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.form-modal{background:#fff;border-radius:16px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.form-modal.letter-form-modal,.form-modal.bulk-upload-modal{max-width:700px}.form-header{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border-bottom:1px solid #eee;border-radius:16px 16px 0 0;justify-content:space-between;align-items:center;padding:1.25rem;display:flex}.form-header h4{color:#212529;margin:0;font-size:1.1rem}.close-btn{color:#6c757d;cursor:pointer;background:0 0;border:none;padding:0;font-size:1.5rem;line-height:1;transition:color .2s}.close-btn:hover{color:#dc3545}.form-body{padding:1.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #ced4da;border-radius:8px;width:100%;padding:.75rem;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-group .help-text{color:#6c757d;margin-top:.35rem;font-size:.8rem;display:block}.checkbox-group label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.form-footer{background:#f8f9fa;border-top:1px solid #eee;border-radius:0 0 16px 16px;justify-content:flex-end;gap:.75rem;padding:1.25rem;display:flex}.btn-primary{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.6rem 1.25rem;font-weight:600;transition:all .2s;box-shadow:0 4px 6px -1px #0000001a}.btn-primary:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 10px 15px -3px #0000001a}.btn-primary:disabled{cursor:not-allowed;box-shadow:none;background:#ccc;transform:none}.btn-secondary{color:#495057;cursor:pointer;background:#e9ecef;border:none;border-radius:8px;padding:.6rem 1.25rem;font-weight:600;transition:all .2s}.btn-danger{background:var(--error-500,#ef4444);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.6rem 1.25rem;font-weight:600;transition:all .2s}.btn-danger:hover{background:var(--error-600,#dc2626)}.btn-warning{background:var(--warning-500,#f59e0b);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.6rem 1.25rem;font-weight:600;transition:all .2s}.btn-warning:hover{background:var(--warning-600,#d97706)}.btn-warning:disabled{opacity:.6;cursor:not-allowed}.btn-link{color:var(--primary-500,#667eea);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.btn-link:hover{color:var(--primary-600,#5a6fd8)}.upload-mode-tabs{gap:.5rem;margin-bottom:1.25rem;display:flex}.mode-tab{cursor:pointer;background:#fff;border:2px solid #dee2e6;border-radius:8px;flex:1;padding:.75rem;font-weight:600;transition:all .2s}.mode-tab:hover{border-color:var(--primary-500,#667eea)}.mode-tab.active{border-color:var(--primary-500,#667eea);background:linear-gradient(135deg,var(--primary-50,#f0f4ff)0%,#e0edff 100%);color:var(--primary-600,#5a6fd8)}.csv-upload-section{margin-bottom:1rem}.csv-instructions{background:#e3f2fd;border-radius:8px;margin-bottom:1rem;padding:1rem}.csv-instructions p{color:#1565c0;margin:0 0 .5rem;font-size:.9rem}.file-upload-area{background:#f8f9fa;border:2px dashed #ced4da;border-radius:8px;align-items:center;gap:1rem;padding:1rem;display:flex}.btn-file-upload{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.btn-file-upload:hover{opacity:.9}.selected-file{color:#198754;font-weight:500}.json-upload-section{margin-bottom:1rem}.json-instructions{background:#e8f5e9;border-radius:8px;margin-bottom:1rem;padding:1rem}.json-instructions p{color:#2e7d32;margin:0;font-size:.9rem}.json-instructions code{background:#0000001a;border-radius:4px;padding:.2rem .4rem}.json-input{resize:vertical;border:1px solid #ced4da;border-radius:8px;width:100%;padding:1rem;font-family:monospace;font-size:.85rem}.upload-options{margin-top:1rem}.warning-text{color:#856404;background:#fff3cd;border-radius:8px;margin:0;padding:.75rem;font-size:.85rem}.empty-state{text-align:center;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border-radius:12px;margin:1rem 0;padding:3rem 2rem}.empty-state h4{color:#495057;margin:0 0 .5rem}.empty-actions{justify-content:center;gap:1rem;display:flex}.error-message,.success-message{border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem;display:flex}.error-message{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.success-message{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.close-message-btn{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;margin-left:auto;font-size:1.25rem}.close-message-btn:hover{opacity:1}.loading-state{text-align:center;color:#6c757d;padding:2rem}@media (max-width:768px){.sponsorship-items-list{border-radius:6px}.items-table-wrapper{min-width:750px}.items-header,.sponsorship-item-row{padding:.75rem}.form-row{grid-template-columns:1fr}.form-modal{border-radius:0;max-width:100%;max-height:100vh;margin:0}.form-header{border-radius:0}.form-footer{border-radius:0;flex-wrap:wrap}.modal-header .header-actions{flex-direction:column;width:100%;margin-top:1rem}.modal-header .header-actions button{width:100%}.upload-mode-tabs{flex-direction:column}.file-upload-area{text-align:center;flex-direction:column}.empty-actions{flex-direction:column}.empty-actions button{width:100%}.tab-actions{flex-wrap:wrap}.tab-actions button{flex:auto;min-width:140px}}.yatra-select-row{background:#fff;border-radius:10px;align-items:center;gap:16px;margin-bottom:24px;padding:18px 24px;display:flex;box-shadow:0 2px 12px #00000012}.yatra-select-row label{color:#4a5568;margin-right:8px;font-size:1.1rem;font-weight:500}.yatra-select-dropdown{appearance:none;color:#2c3e50;cursor:pointer;background:linear-gradient(135deg,#e0eafc 0%,#cfdef3 100%);border:1px solid #b3b3b3;border-radius:8px;outline:none;min-width:220px;padding:10px 36px 10px 14px;font-size:1rem;font-weight:500;transition:border-color .2s;box-shadow:0 2px 8px #0000000d}.yatra-select-dropdown:focus{border-color:#667eea}.yatra-select-dropdown option{color:#2c3e50;background:#fff;font-size:1rem}.yatra-tabs{background:#fff;border-radius:12px;flex-wrap:wrap;gap:8px;margin-bottom:24px;padding:12px;display:flex;overflow-x:auto;box-shadow:0 2px 12px #00000012}.tab-button{cursor:pointer;color:#4a5568;white-space:nowrap;background:0 0;border:none;border-radius:8px;flex-shrink:0;padding:12px 20px;font-size:.95rem;font-weight:500;transition:all .2s}.tab-button:hover:not(:disabled){color:#667eea;background:#f7fafc}.tab-button.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 2px 8px #667eea4d}.tab-button:disabled{opacity:.4;cursor:not-allowed}.tab-content{min-height:400px}.tab-panel{background:#fff;border-radius:12px;padding:0;overflow:visible;box-shadow:0 2px 12px #00000012}.tab-panel .section-modal,.tab-panel .dh-modal{box-shadow:none;max-width:none;max-height:none}.tab-panel .modal-content{width:100%;max-height:none;overflow:visible}@media (max-width:768px){.yatra-tabs{gap:6px;padding:8px}.tab-button{padding:10px 16px;font-size:.9rem}.tab-panel{padding:0}}@media (max-width:600px){.yatra-select-row{flex-direction:column;align-items:stretch;gap:10px;padding:12px 8px}.yatra-select-dropdown{min-width:100%;padding:10px 14px;font-size:.98rem}}.yatras-page{background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);min-height:100vh;padding:20px}.yatras-header{background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;padding:30px;display:flex;box-shadow:0 4px 20px #0000001a}.header-content h1{color:#2c3e50;margin:0 0 8px;font-size:2.2rem;font-weight:700}.header-content p{margin:0;font-size:1.1rem;font-weight:300}.create-yatra-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:10px;align-items:center;gap:8px;padding:14px 24px;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.create-yatra-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.btn-icon{font-size:1.2rem;font-weight:700}.success-message,.error-message{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:16px 20px;font-weight:500;animation:.3s ease-out slideInDown;display:flex}.error-message{color:#721c24;background-color:#f8d7da;border-color:#f1aeb5}.success-icon,.error-icon{flex-shrink:0;font-size:1.2rem}.close-message-btn{cursor:pointer;color:inherit;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:1.5rem;transition:background-color .2s;display:flex}.close-message-btn:hover{background-color:#0000001a}.yatras-container{box-sizing:border-box;width:100%;max-width:1200px;margin:0 auto;padding:0 20px}.empty-state{text-align:center;background:#fff;border-radius:12px;max-width:500px;margin:80px auto;padding:60px 40px;box-shadow:0 4px 20px #0000001a}.empty-state h3{color:#2c3e50;margin:0 0 12px;font-size:1.5rem;font-weight:600}.empty-state p{color:#6c757d;margin:0 0 30px;font-size:1.1rem}.create-first-yatra-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#28a745 0%,#20c997 100%);border:none;border-radius:10px;padding:14px 28px;font-size:1rem;font-weight:600;transition:all .3s}.create-first-yatra-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #28a7454d}.yatras-grid{flex-direction:column;gap:24px;width:100%;max-width:100%;animation:.5s ease-out fadeInUp;display:flex}.yatra-card{box-sizing:border-box;word-wrap:break-word;background:#fff;border:1px solid #0000;border-radius:12px;width:100%;padding:24px;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000001a}.yatra-card:hover{border-color:#667eea;transform:translateY(-4px);box-shadow:0 8px 30px #00000026}.yatra-card-header{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px;display:flex}.yatra-name{color:#2c3e50;flex:1;margin:0;font-size:1.3rem;font-weight:700;line-height:1.3}.yatra-status{flex-shrink:0}.status-upcoming,.status-ongoing,.status-completed{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:6px 12px;font-size:.75rem;font-weight:600}.status-upcoming{color:#1976d2;background-color:#e3f2fd}.status-ongoing{color:#f57c00;background-color:#fff3e0}.status-completed{color:#388e3c;background-color:#e8f5e8}.yatra-card-content{margin-bottom:20px}.yatra-dates{background-color:#f8f9fa;border-radius:8px;margin-bottom:16px;padding:16px}.date-item{justify-content:space-between;margin-bottom:8px;display:flex}.date-item:last-child{margin-bottom:0}.date-label{color:#6c757d;font-weight:500}.date-value{color:#2c3e50;font-weight:600}.yatra-pricing{background-color:#f0f8ff;border-radius:8px;margin-bottom:16px;padding:16px}.price-item{justify-content:space-between;margin-bottom:8px;display:flex}.price-item:last-child{margin-bottom:0}.price-label{color:#6c757d;font-weight:500}.price-value{color:#28a745;font-weight:700}.yatra-description{background-color:#fafbfc;border-radius:8px;margin-bottom:16px;padding:16px}.yatra-description p{color:#2c3e50;margin:0 0 8px;line-height:1.5}.more-info{color:#667eea;font-size:.875rem;font-weight:500}.yatra-stats{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.stat-item{color:#6c757d;background-color:#f8f9fa;border-radius:16px;align-items:center;gap:6px;padding:6px 12px;font-size:.875rem;font-weight:500;display:flex}.yatra-card-actions{border-top:1px solid #e9ecef;flex-direction:column;gap:12px;min-width:0;padding-top:20px;display:flex;overflow:hidden}.edit-actions{flex-wrap:wrap;gap:8px;min-width:0;display:flex;overflow:hidden}.action-buttons-row{flex-wrap:wrap;justify-content:flex-end;gap:12px;display:flex}.edit-btn,.delete-btn,.set-default-btn,.publish-btn,.unpublish-btn{cursor:pointer;border:none;border-radius:8px;flex-shrink:0;min-width:0;padding:10px 16px;font-size:.9rem;font-weight:500;transition:all .2s}.edit-btn.small{white-space:nowrap;text-overflow:ellipsis;padding:8px 12px;font-size:.8rem;overflow:hidden}.edit-btn{color:#fff;background-color:#17a2b8}.edit-btn:hover{background-color:#138496;transform:translateY(-1px)}.set-default-btn{color:#fff;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);padding:10px 18px}.set-default-btn:hover{background:linear-gradient(135deg,#f5576c 0%,#f093fb 100%);transform:translateY(-1px);box-shadow:0 4px 12px #f5576c4d}.publish-btn{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);padding:10px 18px}.publish-btn:hover{background:linear-gradient(135deg,#059669 0%,#10b981 100%);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.unpublish-btn{color:#fff;background:linear-gradient(135deg,#f97316 0%,#ea580c 100%);padding:10px 18px}.unpublish-btn:hover{background:linear-gradient(135deg,#ea580c 0%,#f97316 100%);transform:translateY(-1px);box-shadow:0 4px 12px #f973164d}.delete-btn{color:#fff;background-color:#dc3545}.delete-btn:hover{background-color:#c82333;transform:translateY(-1px)}.default-badge{color:#fff;vertical-align:middle;background:linear-gradient(135deg,gold 0%,orange 100%);border-radius:12px;margin-left:12px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-block;box-shadow:0 2px 8px #ffd7004d}@media (max-width:768px){.yatras-page{padding:10px}.yatras-container{padding:0 10px}.yatras-header{text-align:center;flex-direction:column;align-items:stretch;gap:16px;padding:20px}.header-content h1{font-size:1.8rem}.header-content p{font-size:1rem}.create-yatra-btn{justify-content:center;width:100%;margin-top:0}.yatra-selection-section{flex-direction:column;gap:10px;padding:12px 16px}.yatra-select-label{font-size:1rem}.yatra-select{width:100%;font-size:.95rem}.yatra-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:6px;padding:8px;overflow-x:auto}.tab-button{white-space:nowrap;flex-shrink:0;padding:10px 14px;font-size:.85rem}.tab-content{min-height:300px}.tab-panel{padding:0}.yatras-grid{gap:16px}.yatra-card{padding:16px}.yatra-card-header{flex-direction:column;align-items:flex-start;gap:12px}.yatra-name{font-size:1.2rem}.yatra-dates,.yatra-pricing{flex-direction:column;gap:8px}.yatra-stats{flex-wrap:wrap;justify-content:flex-start;gap:10px}.stat-item{font-size:.85rem}.yatra-card-actions{flex-direction:column;align-items:stretch;gap:12px}.action-buttons-row{flex-direction:column;gap:8px}.action-buttons-row .set-default-btn,.action-buttons-row .publish-btn,.action-buttons-row .unpublish-btn,.action-buttons-row .delete-btn{width:100%}.success-message,.error-message{padding:10px 12px;font-size:.9rem}}@media (max-width:480px){.yatras-page{padding:5px}.yatras-header{padding:15px}.header-content h1{font-size:1.5rem}.header-content p{font-size:.95rem}.create-yatra-btn{padding:12px 20px;font-size:.95rem}.yatra-selection-section{padding:10px 12px}.yatra-select-label{font-size:.9rem}.yatra-tabs{gap:4px;padding:6px}.tab-button{padding:8px 12px;font-size:.8rem}.yatra-card{padding:14px}.yatra-name{font-size:1.1rem}.status-upcoming,.status-ongoing,.status-completed{padding:4px 8px;font-size:.75rem}.default-badge{padding:3px 8px;font-size:.7rem}.date-label,.price-label{font-size:.85rem}.date-value,.price-value{font-size:.9rem}.stat-item{font-size:.8rem}.set-default-btn,.publish-btn,.unpublish-btn,.delete-btn{padding:10px 16px;font-size:.9rem}.empty-state{margin:30px auto;padding:30px 16px}.empty-icon{font-size:2.5rem}.empty-state h3{font-size:1.2rem}.empty-state p{font-size:.9rem}.create-first-yatra-btn{padding:12px 24px;font-size:.95rem}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.create-yatra-btn:focus,.create-first-yatra-btn:focus,.edit-btn:focus,.delete-btn:focus,.close-message-btn:focus{outline-offset:2px;outline:2px solid #667eea}@media print{.yatras-page{background:#fff;padding:0}.yatra-card-actions,.create-yatra-btn,.success-message,.error-message{display:none}.yatra-card{box-shadow:none;break-inside:avoid;border:1px solid #ddd;margin-bottom:20px}}@media (prefers-contrast:high){.yatra-card{border:2px solid #333}.status-upcoming,.status-ongoing,.status-completed{border:1px solid}}@media (prefers-reduced-motion:reduce){.yatra-card,.create-yatra-btn,.edit-btn,.delete-btn,.create-first-yatra-btn{transition:none}.yatra-card:hover{transform:none}.loading-spinner{border:4px solid #667eea;animation:none}.yatras-grid,.success-message,.error-message{animation:none}}.member-view-overlay{z-index:10500!important}.member-view-modal{z-index:10501;width:90%;max-width:800px;position:relative}.member-view-modal .modal-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.member-view-modal .modal-header h3{color:#fff;margin:0;font-size:1.5rem;font-weight:600}.member-view-modal .modal-close-btn{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex}.member-view-modal .modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.member-details-table{background:#f9fafb;max-height:600px;padding:20px;overflow-y:auto}.detail-value{color:#1f2937;width:60%;padding:14px 20px;font-size:.95rem;font-weight:500}.status-badge.not_registered{color:#6b7280;background:#f3f4f6}.status-badge.registered{color:#065f46;background:#d1fae5}.status-badge.cancelled{color:#991b1b;background:#fee2e2}.status-badge.confirmed{color:#1e40af;background:#dbeafe}@media (max-width:1024px){.member-view-modal{width:90%;max-width:700px}}@media (max-width:768px){.member-view-modal{width:95%;max-width:95%}.member-view-modal .modal-header{padding:1rem 1.5rem}.member-view-modal .modal-header h3{font-size:1.25rem}.member-details-table{max-height:500px;padding:12px}.detail-label,.detail-value{width:100%;padding:10px 16px;display:block}.detail-label{color:#4b5563;padding-bottom:4px;font-size:.875rem;font-weight:700}.detail-value{padding-top:0;padding-bottom:12px;font-size:.9rem}}@media (max-width:480px){.member-view-modal{width:100%;max-width:100%;margin:0}.member-view-modal .modal-header{padding:.875rem 1rem}.member-view-modal .modal-header h3{font-size:1.1rem}.member-view-modal .modal-close-btn{width:36px;height:36px}.member-details-table{max-height:70vh;padding:8px}.detail-label,.detail-value{padding:8px 12px}.detail-label{font-size:.8rem}.detail-value{font-size:.85rem}.status-badge{padding:6px 14px;font-size:12px}}.member-card-compact{background:#fff;border:1px solid #e0e0e0;border-radius:8px;align-items:center;margin-bottom:12px;padding:16px;transition:all .2s;display:flex}.member-main-info{flex-direction:column;flex:1;min-width:0}.member-name{color:#333;text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;font-size:16px;font-weight:600;overflow:hidden}.member-email{color:#666;text-overflow:ellipsis;white-space:nowrap;margin:0 0 8px;font-size:14px;overflow:hidden}.badge{border-radius:12px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.badge.status[data-status=REGISTERED],.badge.status[data-status=registered]{color:#2e7d32;background:#e8f5e9}.badge.status[data-status=CANCELLED],.badge.status[data-status=cancelled]{color:#c62828;background:#ffebee}.member-card-middle{flex:1;min-width:0;padding:0 16px}.travel-icon{flex-shrink:0;font-size:16px}.travel-label{color:#666;flex-shrink:0;min-width:80px}.travel-value{color:#333;text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.action-btn-compact:hover{transform:translateY(-2px);box-shadow:0 2px 4px #0000001a}.action-btn-compact:active{transform:translateY(0)}.action-btn-compact:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width:1024px) and (min-width:769px){.member-card-compact{padding:12px}.member-card-middle{padding:0 12px}.travel-row{font-size:13px}.travel-label{min-width:70px}.action-btn-compact{width:34px;height:34px}}@media (max-width:768px){.member-card-compact{flex-direction:column;align-items:stretch;gap:16px}.member-card-left{width:100%}.member-card-middle{width:100%;padding:0}.member-card-right{width:100%}.member-actions-compact{justify-content:flex-end}.travel-label{min-width:70px}}.member-form-container{background:#fff;border-radius:12px;width:100%;max-width:100%;margin:0 auto;overflow:hidden;box-shadow:0 4px 20px #0000001a}.member-form-header{background:#f8f9fa;border-bottom:1px solid #e9ecef;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.member-form-header h3{color:#333;margin:0;font-size:1.25rem;font-weight:600}.close-btn{cursor:pointer;color:#6c757d;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;transition:all .3s;display:flex}.close-btn:hover{color:#333;background:#e9ecef}.modal-close-btn{cursor:pointer;color:#fffc;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:.5rem;transition:all .3s;display:flex}.modal-close-btn:hover{color:#fff;background:#ffffff1a;transform:scale(1.1)}.member-form{background:#fff;padding:0}.form-grid{gap:1.5rem;max-height:70vh;padding-right:.5rem;display:grid;overflow-y:auto}.form-section{background:linear-gradient(135deg,#f8f9fa 0%,#fff 100%);border:1px solid #e9ecef;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem;transition:all .2s;position:relative;overflow:hidden;box-shadow:0 2px 4px #00000005}.form-section:before{content:"";opacity:0;background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);height:3px;transition:opacity .2s;position:absolute;top:0;left:0;right:0}.form-section:hover{border-color:#667eea4d;transform:translateY(-1px);box-shadow:0 4px 12px #0000000f}.form-section:hover:before{opacity:1}.form-section:focus-within{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.form-section:focus-within:before{opacity:1}.form-section h4{color:#374151;border-bottom:2px solid #667eea;align-items:center;gap:.5rem;margin:0 0 1.5rem;padding-bottom:.75rem;font-size:1.1rem;font-weight:600;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.form-group input,.form-group select{box-sizing:border-box;z-index:1;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;padding:12px 16px;font-size:.95rem;transition:all .2s;position:relative}.form-group select{background-image:inherit!important;background-position:inherit!important;background-repeat:inherit!important;background-size:inherit!important;padding-right:inherit!important}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px #3b82f61a}.form-group input.error,.form-group select.error{border-color:#dc2626;box-shadow:0 0 0 3px #dc26261a}.form-group input:disabled,.form-group select:disabled{color:#6b7280;cursor:not-allowed;opacity:.7;background:#f9fafb}.error-text{color:#dc2626;align-items:center;gap:.25rem;margin-top:.4rem;font-size:.8rem;font-weight:500;display:flex}.checkbox-group{cursor:pointer;border-radius:6px;align-items:center;gap:.75rem;padding:.5rem;transition:background-color .2s;display:flex;margin-bottom:0!important;font-weight:400!important}.checkbox-group:hover{background-color:#f8f9fa}.checkbox-group input[type=checkbox]{cursor:pointer;accent-color:#667eea;width:auto;margin:0}.checkbox-label{color:#374151;cursor:pointer;font-size:.9rem}.form-actions{background:linear-gradient(135deg,#f8f9fa 0%,#fff 100%);border-top:1px solid #e5e7eb;border-radius:0 0 12px 12px;justify-content:space-between;align-items:center;margin:2rem -2rem -2rem;padding:1.5rem 2rem;display:flex}.form-actions-left,.form-actions-right{gap:1rem;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-container{background:#fff;border-radius:16px;flex-direction:column;max-width:90vw;max-height:90vh;animation:.3s ease-out slideUp;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003,0 0 0 1px #ffffff1a}.family-member-selector{width:100%;max-width:100%}.modal-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:none;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.modal-header h3{color:#fff;margin:0;font-size:1.25rem;font-weight:600}.modal-content{background:#fff;flex:1;margin-top:5rem;padding:2rem;overflow-y:auto}.large-modal{max-width:900px;max-height:90vh;padding-top:5rem}.loading-state,.error-state,.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:200px;display:flex}.empty-state-icon{opacity:.6;margin-bottom:1rem;font-size:3rem}.selection-info{background:#e3f2fd;border-left:4px solid #2196f3;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.selection-info p{color:#1565c0;margin:0}.selection-info .selection-hint{color:#5c6bc0;background:#ffffff80;border-radius:6px;margin-top:.75rem;padding:.5rem .75rem;font-size:.9rem}.selection-count{font-weight:600;margin-top:.5rem!important}.family-members-list{gap:1rem;display:grid}.family-members-grid{grid-template-columns:1fr;gap:1rem;margin-top:1rem;display:grid}.member-card-wrapper{position:relative}.family-member-card{background:#fff;border:2px solid #e9ecef;border-radius:12px;flex-direction:row;align-items:center;height:auto;padding:0;transition:all .3s;display:flex;overflow:hidden;box-shadow:0 2px 4px #0000000d}.family-member-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea26}.family-member-card.editing{background:#667eea0d;border-color:#667eea;flex-direction:column;box-shadow:0 4px 16px #667eea33}.member-card-header{background:0 0;flex:1;align-items:center;gap:1rem;min-width:0;padding:1rem;display:flex}.member-card-body{flex:1;min-width:0;padding:1rem}.member-card-actions{background:0 0;border-top:none;flex-shrink:0;justify-content:center;align-items:center;padding:1rem;display:flex}.add-member-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#667eea;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;min-width:fit-content;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.add-member-btn:hover{background:#5a67d8;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.add-member-btn:active{transform:translateY(0);box-shadow:0 2px 6px #667eea33}.add-member-btn .btn-icon{color:#fff;font-size:.9rem;font-weight:700}.add-member-btn .btn-text{color:#fff;font-size:.9rem}.editing-indicator{color:#667eea;justify-content:center;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.editing-icon{font-size:1rem}.member-avatar{border:3px solid #fff;border-radius:50%;flex-shrink:0;width:50px;height:50px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.member-name{color:#333;margin:0 0 .25rem;font-size:1rem;font-weight:700;line-height:1.3}.member-initiated-name{color:#667eea;margin:0;font-size:.85rem;font-style:italic;font-weight:500;line-height:1.2}.member-details{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}.member-detail{color:#6c757d;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.85rem;display:flex}.detail-text{word-break:break-word;flex:1}@media (max-width:768px){.family-members-grid{grid-template-columns:1fr;gap:.75rem}.family-member-card{flex-direction:column;align-items:stretch}.member-card-header{text-align:center;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);justify-content:center;padding:.75rem}.member-card-body{padding:0 .75rem .75rem}.member-card-actions{background:#f8f9fa;border-top:1px solid #e9ecef;padding:.5rem .75rem}.member-avatar{width:45px;height:45px}.member-name{font-size:.95rem}.add-member-btn{width:100%;padding:.45rem .75rem;font-size:.85rem}.add-member-btn .btn-icon{font-size:.8rem}.add-member-btn .btn-text{display:inline}}@media (max-width:480px){.family-members-grid{grid-template-columns:1fr;gap:.4rem}.family-member-card{border-radius:8px;flex-direction:column}.member-card-header{text-align:left;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);flex-direction:row;gap:.5rem;padding:.4rem .5rem}.member-card-body{padding:0 .5rem .4rem}.member-card-actions{background:#f8f9fa;border-top:1px solid #e9ecef;padding:.4rem .5rem}.member-avatar{width:36px;height:36px}.member-name{margin-bottom:.125rem;font-size:.9rem}.member-initiated-name{font-size:.75rem}.member-details{gap:.3rem}.member-detail{padding:.125rem 0;font-size:.8rem}.add-member-btn{padding:.375rem .625rem;font-size:.8rem}.add-member-btn .btn-text{display:inline}.add-member-btn .btn-icon{margin-right:.5rem;font-size:.75rem}.add-member-btn:after{content:""}}.family-member-item{cursor:pointer;background:#fff;border:2px solid #e9ecef;border-radius:8px;flex-direction:row;align-items:flex-start;gap:1rem;padding:1rem;transition:all .3s;display:flex}.family-member-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.family-member-item.selected{background:#667eea0d;border-color:#667eea}.member-checkbox{flex-shrink:0;justify-content:center;align-items:center;display:flex}.member-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.member-avatar{border-radius:50%;flex-shrink:0;width:40px;height:40px;overflow:hidden}.member-main-info{flex:1;align-items:center;gap:1rem;min-width:0;display:flex}.member-info{flex:1;min-width:0}.editing-profile{width:100%}.editing-profile .form-group{margin-bottom:1rem}.editing-profile .form-group label{color:#495057;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.editing-profile .form-group input{box-sizing:border-box;background:#fff;border:1px solid #ced4da;border-radius:6px;width:100%;padding:.75rem;font-size:.95rem;transition:border-color .3s,box-shadow .3s}.editing-profile .form-group input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea1a}.editing-profile .form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.editing-actions{gap:.5rem;margin-top:1rem;display:flex}.member-initiated-name{color:#667eea;margin:0 0 .25rem;font-size:.8rem;font-style:italic;line-height:1.2}.member-details{flex-direction:column;flex-shrink:0;justify-content:center;align-items:flex-end;gap:.25rem;display:flex}.member-detail{color:#6c757d;text-align:right;align-items:center;gap:.25rem;font-size:.8rem;display:flex}.detail-icon{text-align:center;width:12px;font-size:.7rem}.selection-indicator{flex-shrink:0;justify-content:center;align-items:center;min-width:24px;display:flex}.member-actions-inline{flex-direction:column;gap:.5rem;display:flex}.add-new-member{margin-top:1rem}.member-yatra-details{background:#f0f4ff;border:1px solid #c7d2fe;border-radius:8px;margin-top:.5rem;margin-left:4rem;padding:1rem}.member-yatra-details h5{color:#4338ca;margin:0 0 1rem;font-size:.95rem;font-weight:600}.yatra-details-summary{flex-direction:column;gap:1rem;display:flex}.details-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.detail-item{flex-direction:column;gap:.25rem;display:flex}.detail-item .detail-label{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;font-weight:500}.detail-item .detail-value{color:#374151;font-size:.9rem;font-weight:500}.step-btn.small{align-self:flex-start;padding:.5rem 1rem;font-size:.875rem}.yatra-form .form-group{margin-bottom:1rem}.yatra-form .form-group label{color:#495057;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.yatra-form .form-group input,.yatra-form .form-group select{box-sizing:border-box;background:#fff;border:1px solid #ced4da;border-radius:6px;width:100%;padding:.75rem;font-size:.95rem;transition:border-color .3s,box-shadow .3s}.yatra-form .form-group select{background-image:inherit!important;background-position:inherit!important;background-repeat:inherit!important;background-size:inherit!important;padding-right:inherit!important}.yatra-form .form-group input:focus,.yatra-form .form-group select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea1a}.yatra-form .form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.family-member-selector .modal-content .user-form-container{max-height:70vh;padding:0;overflow-y:auto}.family-member-selector .modal-content .form-section{margin-bottom:1.5rem}.family-member-selector .form-actions{background:#fff;border-top:1px solid #e9ecef;margin-top:1rem;padding-top:1rem;position:sticky;bottom:0}.modal-actions{background:#f8f9fa;border-top:1px solid #e9ecef;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;display:flex}.inline-form-actions{border-top:1px solid #e9ecef;justify-content:space-between;gap:1rem;margin-top:1.5rem;padding:1.5rem 0;display:flex}.step-btn.danger{color:#fff;background:#dc3545;border:1px solid #dc3545}.step-btn.danger:hover:not(:disabled){background:#c82333;border-color:#bd2130;transform:translateY(-1px)}@media (max-width:768px){.modal-container{border-radius:12px;max-width:calc(100vw - 1rem);max-height:calc(100vh - 1rem);margin:.5rem}.modal-header{padding:1rem 1.5rem}.modal-header h3{font-size:1.1rem}.modal-content{padding:1.5rem}.form-grid{gap:1rem}.form-section{padding:1rem}.form-row{grid-template-columns:1fr;gap:1rem}.form-actions{flex-direction:column;gap:1rem;margin-top:1.5rem;margin-left:-1.5rem;margin-right:-1.5rem;padding:1rem 1.5rem}.form-actions-left,.form-actions-right{justify-content:center;width:100%}.large-modal{max-width:calc(100vw - 1rem)}.family-member-item{flex-direction:column;align-items:stretch;gap:.5rem;padding:.5rem}.member-main-info{gap:.5rem}.member-avatar{width:32px;height:32px}.member-details{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:.25rem}.member-detail{font-size:.75rem}.family-member-selector{width:100%}.member-yatra-details{margin-top:1rem;margin-left:0}.yatra-form .form-row{grid-template-columns:1fr}.selection-indicator{min-width:auto}.member-actions-inline{flex-direction:row;justify-content:center}}@media (max-width:600px){.family-member-item{flex-direction:column;align-items:stretch;gap:.5rem;padding:.625rem}.member-name{font-size:.9rem}.member-details{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:.25rem}.member-detail{max-width:calc(100% - 1rem);font-size:.75rem}}@media (max-width:480px){.modal-overlay{padding:.5rem}.form-section{padding:1rem}.member-detail{font-size:.8rem}.selection-info{padding:.75rem}}.selected-editor{border-top:1px solid #e9ecef;margin-top:2rem;padding-top:2rem}.selected-editor h4{color:#333;margin-bottom:1.5rem;font-size:1.1rem}.selected-cards{gap:1.5rem;display:grid}.selected-card{background:#f8f9fa;border:1px solid #e9ecef;border-left:4px solid #667eea;border-radius:12px;padding:1.5rem}.selected-card-header{border-bottom:1px solid #dee2e6;margin-bottom:1rem;padding-bottom:.75rem}.selected-card-header h5{color:#333;margin:0;font-size:1.1rem;font-weight:600}.selected-card-body .form-group{margin-bottom:1rem}.selected-card-body .form-group label{color:#495057;margin-bottom:.5rem;font-size:.9rem;font-weight:500;display:block}.selected-card-body .form-group input,.selected-card-body .form-group select{box-sizing:border-box;background:#fff;border:1px solid #ced4da;border-radius:6px;width:100%;padding:.75rem;font-size:.95rem;transition:border-color .3s,box-shadow .3s}.selected-card-body .form-group select{background-image:inherit!important;background-position:inherit!important;background-repeat:inherit!important;background-size:inherit!important;padding-right:inherit!important}.selected-card-body .form-group input:focus,.selected-card-body .form-group select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea1a}.selected-card-body .form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.selected-card-actions{border-top:1px solid #dee2e6;justify-content:flex-end;margin-top:1rem;padding-top:1rem;display:flex}.member-details-table{background:#fff;padding:1.5rem 2rem}.details-table{border-collapse:collapse;table-layout:fixed;background:#fff;border-radius:8px;width:100%;font-size:.95rem;overflow:hidden;box-shadow:0 1px 3px #0000001a}.details-table tbody tr{border-bottom:1px solid #e9ecef}.details-table td[colspan="2"]{background:0 0;border-bottom:2px solid #dee2e6;padding:.5rem}.details-table .section-header{text-align:center;text-transform:uppercase;letter-spacing:.5px;border-radius:4px;width:100%;margin:0;padding:1rem 1.5rem;font-size:1rem;font-weight:600;display:block;color:#fff!important;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)!important}.detail-label{color:#495057;vertical-align:top;background:#f8f9fa;width:35%;padding:.875rem 1.5rem;font-weight:500}.detail-value{color:#212529;word-wrap:break-word;width:65%;padding:.875rem 1.5rem}.status-badge.registered{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.status-badge.cancelled{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.status-badge.confirmed{color:#0c5460;background:#d1ecf1;border:1px solid #bee5eb}.status-badge.pending{color:#856404;background:#fff3cd;border:1px solid #ffeaa7}.status-badge.not-registered{color:#6c757d;background:#f8f9fa;border:1px solid #dee2e6}@media (max-width:768px){.member-details-table{padding:1rem}.details-table .section-header{padding:.75rem 1rem;font-size:.9rem}.detail-label,.detail-value{padding:.75rem 1rem}.detail-label{width:40%;font-size:.9rem}.detail-value{font-size:.9rem}}@media (max-width:480px){.details-table{font-size:.85rem}.details-table .section-header{padding:.5rem .75rem;font-size:.85rem}.detail-label,.detail-value{padding:.5rem .75rem}.detail-label{width:45%}.status-badge{padding:.2rem .5rem;font-size:.7rem}}.readonly-section{background:#f8f9fa;border-radius:8px;margin:.5rem 0;padding:1rem}.readonly-field{flex-direction:column;margin-bottom:.75rem;display:flex}.readonly-field:last-child{margin-bottom:0}.readonly-field label{color:#555;margin-bottom:.25rem;font-size:.875rem;font-weight:500}.readonly-value{color:#333;border-bottom:1px solid #e9ecef;padding:.5rem 0;font-size:.95rem}.readonly-row{gap:1rem;margin-bottom:.75rem;display:flex}.readonly-row .readonly-field{flex:1;margin-bottom:0}@media (max-width:768px){.readonly-row{flex-direction:column;gap:.5rem}}.accordion-form-container{z-index:10;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:1rem;padding:.25rem;position:relative;overflow:visible}.accordion-form-container .member-form{box-shadow:none;background:0 0;border-radius:0;margin:0;overflow:visible}.accordion-form-container .form-section{background:#fff;border:1px solid #e9ecef;border-radius:6px;margin-bottom:1rem;padding:1.25rem;position:relative;overflow:visible}.accordion-form-container .form-section:last-child{margin-bottom:0}@media (max-width:768px){.accordion-form-container,.accordion-form-container .form-section{position:static;overflow:visible}.form-group select{z-index:100;position:relative}.full-page-content,.inline-form-content,.form-content{overflow:visible!important}}.accordion-form-container .form-section h4{color:#495057;border-bottom:1px solid #e9ecef;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.1rem}.accordion-form-container .form-actions{background:#fff;border:1px solid #e9ecef;border-radius:6px;margin-top:1rem;margin-bottom:0;padding:1.25rem}@media (max-width:768px){.accordion-form-container{padding:.1rem}.accordion-form-container .form-section{padding:1rem}}.compact-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:1rem}.compact-section h4{color:#495057;margin-bottom:1rem;font-size:1rem}.compact-form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.compact-form-grid .form-group{margin-bottom:0}.compact-form-grid label{color:#555;margin-bottom:.25rem;font-size:.875rem;font-weight:500;display:block}.compact-form-grid input,.compact-form-grid select{box-sizing:border-box;background:#fff;border:1px solid #ced4da;border-radius:4px;width:100%;padding:.5rem;font-size:.875rem}.compact-form-grid select{background-image:inherit!important;background-position:inherit!important;background-repeat:inherit!important;background-size:inherit!important;padding-right:inherit!important}.compact-form-grid input:focus,.compact-form-grid select:focus{border-color:#007bff;outline:0;box-shadow:0 0 0 .2rem #007bff40}@media (max-width:768px){.compact-form-grid{grid-template-columns:1fr;gap:.5rem}}.compact-member-form{background:#fff;border:1px solid #e9ecef;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.compact-member-form h4{color:#495057;border-bottom:1px solid #e9ecef;margin:0 0 1.25rem;padding-bottom:.75rem;font-size:1.1rem;font-weight:600}.compact-form{margin:0}.compact-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.compact-grid .form-group{margin:0}.compact-grid label{color:#555;margin-bottom:.375rem;font-size:.875rem;font-weight:500;display:block}.compact-grid input,.compact-grid select{box-sizing:border-box;background:#fff;border:1px solid #ced4da;border-radius:4px;width:100%;padding:.625rem;font-size:.875rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.compact-grid select{background-image:inherit!important;background-position:inherit!important;background-repeat:inherit!important;background-size:inherit!important;padding-right:inherit!important}.compact-grid input:focus,.compact-grid select:focus{border-color:#007bff;outline:0;box-shadow:0 0 0 .2rem #007bff40}.compact-actions{border-top:1px solid #e9ecef;justify-content:flex-end;gap:.75rem;padding-top:1rem;display:flex}.btn-secondary,.btn-primary{cursor:pointer;text-align:center;border:1px solid;border-radius:4px;min-width:80px;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:all .15s ease-in-out}.btn-secondary{color:#6c757d;background:#fff;border-color:#6c757d}.btn-secondary:hover{color:#fff;background:#6c757d}.btn-primary{color:#fff;background:#007bff;border-color:#007bff}.btn-primary:hover{background:#0056b3;border-color:#004085}.btn-primary:disabled,.btn-secondary:disabled{opacity:.65;cursor:not-allowed}@media (max-width:768px){.compact-grid{grid-template-columns:1fr;gap:.75rem}.compact-member-form{padding:1rem}.compact-actions{flex-direction:column-reverse;gap:.5rem}.btn-secondary,.btn-primary{width:100%}}.compact-section{background:#fff;border:1px solid #e9ecef;border-radius:8px;margin:1rem 0;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.compact-section h4{color:#333;border-bottom:1px solid #e9ecef;margin:0 0 1.5rem;padding-bottom:.5rem;font-size:1.1rem;font-weight:600}.compact-section .member-form{margin:0;padding:0}.compact-section .form-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.compact-section .form-group{margin-bottom:0}.compact-section .form-actions{border-top:1px solid #e9ecef;margin-top:1.5rem;padding-top:1rem}.compact-section .form-actions-right{justify-content:flex-end;gap:.75rem}@media (max-width:768px){.compact-section{padding:1rem}.compact-section .form-row{grid-template-columns:1fr;gap:.75rem}.compact-section .form-actions-right{flex-direction:column-reverse;align-items:stretch}.compact-section .step-btn{width:100%}}.compact-form{padding:0}.compact-form .form-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.compact-form .form-group{margin-bottom:0}.compact-form label{color:#333;margin-bottom:.5rem;font-weight:500;display:block}.compact-form select,.compact-form input{border:1px solid #ced4da;border-radius:4px;width:100%;padding:.5rem;font-size:.875rem;transition:border-color .15s ease-in-out}.compact-form select:focus,.compact-form input:focus{border-color:#007bff;outline:0;box-shadow:0 0 0 .2rem #007bff40}.auto-save-indicator{background-color:#e3f2fd;border:1px solid #bbdefb;border-radius:4px;justify-content:center;align-items:center;margin-top:1rem;padding:.5rem;display:flex}.auto-save-indicator span{color:#1976d2;font-size:.875rem;font-weight:500}.compact-form .readonly-value{color:#495057;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;padding:.5rem;font-size:.875rem;line-height:1.5}.age-source{color:#6c757d;margin-top:.25rem;font-size:.75rem;font-style:italic;display:block}@media (max-width:768px){.compact-form .form-row{grid-template-columns:1fr;gap:.75rem}.age-source{font-size:.7rem}}.members-step{width:100%;max-width:100%;margin:0 auto;padding:0}.members-container{width:100%;margin-top:.75rem}@media (max-width:768px){.members-step{padding:0}.members-container{margin-top:.5rem}}.member-actions-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:1rem;padding:1.25rem;box-shadow:0 2px 8px #0000000d}.member-actions-description{margin-bottom:1rem}.member-actions-description .actions-intro{color:#374151;margin-bottom:.5rem;font-size:.95rem;font-weight:500}.member-actions-description .actions-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.member-actions-description .actions-list li{color:#6b7280;padding-left:1.25rem;font-size:.85rem;line-height:1.4;position:relative}.member-actions-description .actions-list li:before{content:"•";color:#667eea;font-weight:700;position:absolute;left:.5rem}.member-actions-description .actions-list li strong{color:#374151}.member-actions{flex-wrap:wrap;gap:.75rem;margin-bottom:0;display:flex}@media (max-width:768px){.member-actions-section{margin-bottom:.75rem;padding:1rem}.member-actions-description .actions-intro{font-size:.9rem}.member-actions-description .actions-list li{font-size:.8rem}.member-actions{gap:.5rem;flex-direction:column!important}.member-actions .step-btn{width:100%}}.user-form-info{background:#e8f5e9;border-left:4px solid #4caf50;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.user-form-info p{color:#2e7d32;margin:0;font-size:.95rem}.member-actions .step-btn{cursor:pointer;border:2px solid;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:all .3s;display:flex}.member-actions .step-btn span{font-size:1.2rem}.step-btn.primary{color:#fff;background:#667eea;border-color:#667eea}.step-btn.primary:hover{background:#5a67d8;border-color:#5a67d8;transform:translateY(-1px)}.step-btn.secondary{color:#374151;background:#fff;border-color:#d1d5db}.step-btn.secondary:hover{background:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.step-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.form-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;margin-bottom:2rem;overflow:hidden;box-shadow:0 2px 8px #0000001a}.form-header{background:#fff;border-bottom:1px solid #e9ecef;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.form-header h4{color:#374151;margin:0;font-size:1.1rem;font-weight:600}.close-form-btn{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:1.2rem;transition:all .2s}.close-form-btn:hover{color:#374151;background:#e5e7eb}.form-content{background:#fff;padding:0}@media (max-width:768px){.form-container{border-radius:8px;margin-bottom:1.5rem}.form-header{padding:.75rem 1rem}.form-header h4{font-size:1rem}}.member-counter{box-sizing:border-box;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;width:100%;margin-bottom:1.5rem;padding:1.5rem;display:flex;box-shadow:0 2px 8px #0000001a}.member-navigation{align-items:center;gap:1rem;display:flex}.nav-btn{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem .75rem;font-size:1.2rem;transition:all .3s;display:flex}.nav-btn:disabled{cursor:not-allowed;opacity:.5;background:#ccc}.nav-btn:not(:disabled):hover{background:#5a67d8;transform:translateY(-1px)}.members-list{flex-direction:column;gap:.75rem;display:flex}.member-counter{margin-bottom:1.5rem}.member-counter h4{color:#374151;margin:0;font-size:1.2rem}.member-card-compact{background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:1rem;padding:1rem;transition:all .2s;display:flex;box-shadow:0 1px 3px #0000001a}.member-card-compact:hover{border-color:#d1d5db;box-shadow:0 4px 6px #0000001a}.member-card-left{flex:1;align-items:center;gap:.75rem;min-width:0;display:flex}.member-avatar-small{border-radius:50%;flex-shrink:0;width:40px;height:40px;position:relative;overflow:hidden}.member-avatar-small .avatar-image{object-fit:cover;width:100%;height:100%}.member-avatar-small .avatar-placeholder{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;width:100%;height:100%;font-size:1rem;font-weight:600;display:flex}.member-main-info{flex:1;min-width:0}.member-main-info .member-name{color:#374151;white-space:nowrap;text-overflow:ellipsis;margin:0 0 .25rem;font-size:1rem;font-weight:600;overflow:hidden}.member-main-info .member-email{color:#6b7280;white-space:nowrap;text-overflow:ellipsis;margin:0 0 .5rem;font-size:.85rem;overflow:hidden}.member-badges{flex-wrap:wrap;gap:.5rem;display:flex}.badge{border-radius:12px;padding:.125rem .5rem;font-size:.75rem;font-weight:500}.badge.gender{color:#374151;background:#f3f4f6}.badge.status{color:#92400e;background:#fef3c7}.badge.status[data-status=REGISTERED]{color:#065f46;background:#d1fae5}.badge.status[data-status=CANCELLED]{color:#991b1b;background:#fee2e2}.member-card-middle{flex:1.2;min-width:0}.travel-info-compact{flex-direction:column;gap:.375rem;display:flex}.travel-row{align-items:center;gap:.5rem;font-size:.8rem;display:flex}.travel-icon{text-align:center;flex-shrink:0;width:16px}.travel-label{color:#6b7280;flex-shrink:0;min-width:70px;font-weight:500}.travel-value{color:#374151;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.member-card-right{flex-shrink:0}.member-actions-compact{gap:.5rem;display:flex}.action-btn-compact{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;transition:all .2s;display:flex}.action-btn-compact.edit:hover{background:#f9fafb;border-color:#9ca3af}.action-btn-compact.delete:hover{background:#fef2f2;border-color:#f87171}.action-btn-compact:disabled{opacity:.5;cursor:not-allowed}@media (max-width:1024px) and (min-width:769px){.member-card-compact{gap:.875rem;padding:.875rem}.member-card-middle{flex:1}.travel-row{font-size:.75rem}.travel-label{min-width:65px}.action-btn-compact{width:30px;height:30px;font-size:.85rem}}@media (max-width:768px){.member-card-compact{flex-direction:column;align-items:stretch;gap:.75rem;padding:.75rem}.member-card-left{justify-content:flex-start}.member-card-middle{flex:none}.travel-info-compact{gap:.25rem}.travel-row{font-size:.75rem}.travel-label{min-width:60px}.member-card-right{align-self:flex-end}.member-actions-compact{justify-content:flex-end}}@media (min-width:768px){.members-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}}.member-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;transition:all .2s;overflow:hidden;box-shadow:0 2px 4px #0000000d}.member-info{padding:1.5rem}.member-avatar{border-radius:50%;width:60px;height:60px;margin-bottom:1rem;position:relative;overflow:hidden}.avatar-image{object-fit:cover;width:100%;height:100%}.member-details h5{color:#374151;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.member-meta{flex-wrap:wrap;gap:1rem;margin-bottom:1rem;display:flex}.member-gender,.member-status{border-radius:20px;padding:.25rem .75rem;font-size:.8rem;font-weight:500}.member-gender{color:#374151;background:#f3f4f6}.member-status{color:#92400e;background:#fef3c7}.member-status[data-status=REGISTERED]{color:#065f46;background:#d1fae5}.member-status[data-status=CANCELLED]{color:#991b1b;background:#fee2e2}.member-travel-info{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.travel-item{color:#6b7280;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.member-actions{justify-content:flex-start;gap:.5rem;margin-top:1rem;display:flex}.action-btn,.btn-edit,.btn-delete{cursor:pointer;background:#fff;border:1px solid;border-radius:6px;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s}.action-btn.edit,.btn-edit{color:#374151;border-color:#d1d5db}.action-btn.edit:hover,.btn-edit:hover{background:#f9fafb;border-color:#9ca3af}.action-btn.delete,.btn-delete{color:#dc2626;border-color:#f87171}.action-btn.delete:hover,.btn-delete:hover{background:#fef2f2;border-color:#ef4444}.action-btn:disabled,.btn-edit:disabled,.btn-delete:disabled{opacity:.5;cursor:not-allowed}@media (max-width:768px){.member-card{border-radius:8px}.member-info{padding:1rem}.member-avatar{width:50px;height:50px}.avatar-placeholder{font-size:1.2rem}.member-meta{gap:.5rem}.member-actions{gap:.5rem;flex-direction:row!important;justify-content:space-between!important}.action-btn{text-align:center;white-space:nowrap;flex:1;justify-content:center;min-width:0;min-height:44px;padding:.5rem;font-size:.75rem}}.empty-state{text-align:center;color:#6b7280;padding:4rem 1rem}.empty-state h4{color:#374151;margin:0 0 1rem;font-size:1.2rem}.empty-state p{max-width:400px;margin:0 auto;line-height:1.5}@media (max-width:768px){.empty-state{padding:2rem 1rem}.empty-icon{font-size:3rem}}.member-card-content{margin-top:1rem}.member-info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.info-item{flex-direction:column;gap:.25rem;display:flex}.info-item label{color:#6c757d;text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:600}.info-item span{color:#e9ecef;font-size:.95rem}.members-summary{border-top:1px solid #e9ecef;padding-top:1.5rem}.members-summary h5{color:#333;margin:0 0 1rem;font-size:1rem}.members-list{flex-wrap:wrap;gap:.75rem;display:flex}.member-chip{cursor:pointer;background:#e9ecef;border:2px solid #0000;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;transition:all .3s;display:flex}.member-chip:hover{background:#dee2e6}.member-chip.active{color:#667eea;background:#667eea1a;border-color:#667eea}.member-chip span{font-weight:500}.remove-chip{color:#dc3545;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:1rem;font-weight:700;transition:all .3s;display:flex}.remove-chip:hover{color:#fff;background:#dc3545}.members-vertical-stack{flex-direction:column;gap:1rem;width:100%;display:flex}.members-vertical-stack .member-card.full-width{cursor:pointer;background:#fff;border:2px solid #e9ecef;border-radius:8px;flex-direction:column;width:100%;margin:0;transition:all .3s;display:flex;overflow:hidden}.members-vertical-stack .member-card.full-width:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.member-card-main{box-sizing:border-box;align-items:flex-start;gap:.75rem;width:100%;padding:.75rem 1rem;transition:background-color .2s;display:flex}.member-card-main:hover{background-color:#667eea05}.member-avatar{flex-shrink:0}.avatar-placeholder{color:#fff;text-transform:uppercase;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;font-weight:600;display:flex}.avatar-image{object-fit:cover;border:2px solid #e5e7eb}.member-primary-info{flex:1;min-width:0;padding-top:.25rem}.member-details{align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.member-gender{color:#374151;background:#e5e7eb;border-radius:12px;padding:.2rem .6rem;font-size:.75rem;font-weight:500;display:inline-block}.member-status{text-transform:capitalize;border-radius:12px;padding:.2rem .6rem;font-size:.75rem;font-weight:500;display:inline-block}.member-status[data-status=registered]{color:#065f46;background:#d1fae5}.member-status[data-status=cancelled]{color:#b91c1c;background:#fee2e2}.member-status[data-status=not-registered]{color:#92400e;background:#fef3c7}.member-logistics{flex-direction:column;gap:.2rem;display:flex}.logistics-item{align-items:center;gap:.4rem;display:flex}.logistics-icon{text-align:center;flex-shrink:0;width:16px;font-size:.8rem}.logistics-label{color:#6b7280;min-width:70px;font-size:.75rem;font-weight:500}.logistics-value{color:#374151;font-size:.75rem;font-weight:500;line-height:1.2}.member-card-actions{flex-shrink:0;justify-content:flex-end;align-items:flex-start;gap:.5rem;width:auto;padding-top:.1rem;display:flex}.member-actions-inline{flex-wrap:wrap;gap:.4rem;display:flex}.member-actions-inline .step-btn.small{color:#374151;text-align:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;min-width:50px;padding:.35rem .6rem;font-size:.75rem;font-weight:500}.member-actions-inline .step-btn.small:hover{background:#f3f4f6;border-color:#9ca3af;transform:translateY(-1px)}.member-actions-inline .step-btn.small.danger{color:#dc2626;border-color:#fca5a5}.member-actions-inline .step-btn.small.danger:hover{color:#b91c1c;background:#fee2e2;border-color:#dc2626}@media (max-width:768px){.content-container:has(.members-management){padding:0 1rem}.member-actions{gap:.5rem;flex-direction:column!important}.member-actions .step-btn{justify-content:center;width:100%;min-height:48px;padding:.875rem 1rem;font-size:.9rem}.member-actions .step-btn span{font-size:1.1rem}.members-display{width:100%;padding:0}.member-counter{margin-bottom:1rem;padding:1rem}.members-vertical-stack{gap:.75rem;width:100%}.members-vertical-stack .member-card.full-width{width:100%;margin:0}.member-card-main{flex-wrap:wrap;gap:.6rem;padding:.6rem .75rem}.member-primary-info{min-width:150px;padding-top:0}.member-details{flex-direction:column;align-items:flex-start;gap:.4rem;margin-bottom:.4rem}.member-logistics{gap:.15rem}.logistics-item{gap:.3rem}.logistics-icon{width:14px;font-size:.75rem}.logistics-value{font-size:.7rem}.member-card-actions{flex-wrap:wrap;gap:.4rem;padding-top:0}.member-actions-inline{flex-wrap:wrap;justify-content:flex-start;gap:.3rem}.member-actions-inline .step-btn.small{min-width:45px;padding:.3rem .5rem;font-size:.7rem}.avatar-placeholder{font-size:1rem}.member-name{font-size:1.1rem}.member-email{font-size:.85rem}.member-counter{text-align:center;text-align:center;flex-direction:column;gap:1rem}}@media (max-width:480px){.content-container:has(.members-management){padding:0 .75rem}.members-display{width:100%;padding:0}.member-counter{margin-bottom:1rem;padding:1rem}.members-vertical-stack{gap:.75rem;width:100%}.members-vertical-stack .member-card.full-width{border-radius:6px;width:100%;margin:0}.member-card-main{gap:.75rem;padding:.75rem}.avatar-placeholder{width:40px;height:40px;font-size:.9rem}.member-name{font-size:.95rem}.member-email{font-size:.75rem}.member-details{gap:.4rem;margin-bottom:.4rem}.member-gender,.member-status{padding:.15rem .4rem;font-size:.7rem}.member-logistics{gap:.15rem}.logistics-item{gap:.3rem}.logistics-label{min-width:60px;font-size:.65rem}.logistics-value{font-size:.65rem}.member-gender{padding:.15rem .4rem;font-size:.7rem}.member-card-actions{gap:.5rem}.member-actions-inline{flex-wrap:wrap;gap:.3rem}.member-actions-inline .step-btn.small{min-width:50px;padding:.3rem .6rem;font-size:.7rem}}.inline-form-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:2rem;box-shadow:0 4px 6px -1px #0000001a}.fixed-form-area{min-height:600px;max-height:800px;position:relative;overflow-y:auto}.inline-form-header{z-index:10;background:#f8f9fa;border-bottom:1px solid #e5e7eb;border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex;position:sticky;top:0}.inline-form-header h4{color:#374151;margin:0;font-size:1.1rem;font-weight:600}.close-inline-form{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:4px;padding:.25rem .5rem;font-size:1.2rem;transition:all .2s}.close-inline-form:hover{color:#374151;background:#e5e7eb}.inline-form-container .accordion-form-container{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}.inline-form-container .member-form{background:0 0;padding:1.5rem}:is(.members-display:has(.fixed-form-area) .member-counter,.members-display:has(.fixed-form-area) .members-vertical-stack:not(:has(.fixed-form-area))){display:none}.members-vertical-stack{transition:opacity .3s}.inline-form-container{animation:.3s slideIn}.inline-family-selector{width:100%;padding:1rem}.family-members-grid{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.empty-family-state{text-align:center;color:#666;padding:2rem}.empty-family-state .empty-icon{margin-bottom:1rem;font-size:3rem}.empty-family-state h4{color:#333;margin:1rem 0 .5rem}.btn-add-new{color:#fff;cursor:pointer;background:#007bff;border:none;border-radius:8px;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1.5rem;font-weight:500;transition:background-color .3s;display:inline-flex}.btn-add-new:hover{background:#0056b3}.btn-add-new .btn-icon{font-size:1.2rem;font-weight:700}.member-card{cursor:pointer;border:2px solid #e0e0e0;border-radius:12px;padding:1rem;transition:all .3s}.member-card.selected{background:#f8f9ff;border-color:#007bff}.member-card:hover{border-color:#ccc;box-shadow:0 2px 8px #0000001a}.member-card-content{align-items:flex-start;gap:1rem;display:flex}.member-checkbox{margin-top:.25rem}.member-checkbox input[type=checkbox]{accent-color:#007bff;width:20px;height:20px}.member-avatar{background:#e9ecef;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;display:flex;overflow:hidden}.member-avatar img{object-fit:cover;width:100%;height:100%}.member-details h4{color:#333;margin:0 0 .25rem;font-size:1.1rem}.member-email{color:#666;margin:.25rem 0;font-size:.9rem}.member-yatra-details{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-top:1rem;padding:1rem}.yatra-details-summary .detail-row{justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;display:flex}.yatra-details-summary .detail-row:last-child{margin-bottom:0}.detail-value{color:#333}.selector-actions{border-top:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding-top:1rem;display:flex}.action-buttons{gap:1rem;display:flex}.btn-cancel{color:#fff;cursor:pointer;background:#6c757d;border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:500;transition:background-color .3s}.btn-cancel:hover{background:#545b62}.btn-confirm{color:#fff;cursor:pointer;background:#28a745;border:none;border-radius:8px;padding:.75rem 1.5rem;font-weight:500;transition:background-color .3s}.btn-confirm:hover{background:#218838}.btn-confirm:disabled{cursor:not-allowed;background:#ccc}.btn-add-new.secondary{color:#fff;background:#6c757d}.btn-add-new.secondary:hover{background:#545b62}.inline-member-form{width:100%;padding:1rem}.inline-member-form .user-form{box-shadow:none;background:0 0;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.services-checkbox-group{flex-direction:column;gap:.75rem;display:flex}.service-checkbox-item{align-items:flex-start;display:flex}.service-checkbox-label{cursor:pointer;border:1px solid #e0e0e0;border-radius:8px;align-items:flex-start;gap:.75rem;width:100%;padding:.75rem;transition:all .2s;display:flex}.service-checkbox-label:hover{background-color:#f8f9fa;border-color:#667eea}.service-checkbox-label input[type=checkbox]{cursor:pointer;flex-shrink:0;width:18px;height:18px;margin-top:.25rem}.service-checkbox-text{flex:1;line-height:1.5}.service-checkbox-text strong{color:#374151;margin-bottom:.25rem;display:block}.service-description{color:#6b7280;font-size:.9rem}@media (max-width:768px){.service-checkbox-label{padding:.625rem}.service-checkbox-text strong{font-size:.95rem}.service-description{font-size:.85rem}}.hotel-search-form-mmt{box-sizing:border-box;background:#fff;border-radius:6px;width:100%;margin-bottom:1rem;overflow:visible;box-shadow:0 1px 2px #00000014}.search-fields-row{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:6px;flex-wrap:wrap;align-items:stretch;width:100%;display:flex;overflow:visible}.search-field{cursor:pointer;box-sizing:border-box;border-right:1px solid #e5e7eb;flex-direction:column;flex:1;justify-content:center;min-width:0;min-height:52px;padding:.375rem .625rem;transition:all .2s;display:flex;position:relative}.search-field:last-of-type{border-right:none}.search-field:hover{background:#f9fafb}.destination-field{cursor:pointer;flex:1.2}.date-field{flex:1}.date-field.active{background:#f0f4ff;border-color:#667eea}.guests-field{cursor:pointer;flex:1.3}.field-label{color:#6b7280;text-transform:capitalize;justify-content:space-between;align-items:center;margin-bottom:.125rem;font-size:.625rem;font-weight:500;display:flex}.dropdown-icon{color:#9ca3af;margin-left:.25rem;font-size:.5625rem}.field-display{pointer-events:none}.field-value{color:#1f2937;margin-bottom:.0625rem;font-size:1.125rem;font-weight:700;line-height:1.2}.field-value-small{color:#1f2937;margin-top:.125rem;font-size:.9375rem;font-weight:600;line-height:1.2}.field-subtitle{color:#6b7280;font-size:.6875rem;font-weight:400}.guests-controls{align-items:flex-end;gap:.375rem;margin-bottom:.125rem;display:flex}.guest-control-item{flex-direction:column;flex:1;gap:.125rem;display:flex}.control-sublabel{color:#9ca3af;text-transform:uppercase;letter-spacing:.025em;font-size:.5625rem;font-weight:500}.guest-select{color:#1f2937;appearance:none;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .25rem center;background-repeat:no-repeat;background-size:1em 1em;border:1px solid #d1d5db;border-radius:3px;width:100%;padding:.25rem 1.5rem .25rem .375rem;font-size:.8125rem;font-weight:600;transition:all .2s}.guest-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea1a}.guest-select:disabled{cursor:not-allowed;opacity:.6;background-color:#f3f4f6}.field-select-visible{color:#1f2937;appearance:none;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .25rem center;background-repeat:no-repeat;background-size:1em 1em;border:1px solid #d1d5db;border-radius:3px;width:100%;padding:.25rem 1.5rem .25rem .375rem;font-size:.9375rem;font-weight:600;transition:all .2s}.field-select-visible:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea1a}.field-select-visible:disabled{cursor:not-allowed;opacity:.6;background-color:#f3f4f6}.custom-dropdown{z-index:1000;background:#fff;border:1px solid #e5e7eb;border-radius:6px;max-height:280px;margin-top:.25rem;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000026}.dropdown-option{cursor:pointer;color:#1f2937;padding:.625rem .875rem;font-size:.875rem;transition:background-color .15s}.dropdown-option:hover{background-color:#f3f4f6}.dropdown-option.selected{color:#667eea;background-color:#eef2ff;font-weight:600}.guests-dropdown{min-width:250px;padding:1rem}.dropdown-control-group{margin-bottom:1rem}.dropdown-control-group:last-of-type{margin-bottom:0}.dropdown-control-label{color:#1f2937;margin-bottom:.5rem;font-size:.875rem;font-weight:600;display:block}.dropdown-control-buttons{align-items:center;gap:.75rem;display:flex}.control-btn{color:#4b5563;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:4px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:1.25rem;font-weight:600;line-height:1;transition:all .2s;display:flex}.control-btn:hover:not(:disabled){color:#667eea;background:#f3f4f6;border-color:#667eea}.control-btn:disabled{opacity:.4;cursor:not-allowed;background:#f9fafb}.control-input{text-align:center;color:#1f2937;border:1px solid #d1d5db;border-radius:4px;width:60px;height:2rem;padding:0 .5rem;font-size:.9375rem;font-weight:600}.control-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 2px #667eea1a}.share-room-option{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.share-room-label{color:#4b5563;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.share-room-checkbox{cursor:pointer;accent-color:#667eea;width:1rem;height:1rem}.share-room-label:hover{color:#1f2937}.share-room-hint{color:#6b7280;margin-top:.25rem;margin-left:1.5rem;font-size:.75rem;line-height:1.3}.field-select-mmt,.field-input-hidden{opacity:0;cursor:pointer;z-index:1;pointer-events:none;width:100%;height:100%;max-height:10px;position:absolute;top:0;left:0}.field-select-mmt:disabled,.field-input-hidden:disabled{cursor:not-allowed}.date-field .field-input-hidden{pointer-events:auto}.search-button-mmt{color:#fff;cursor:pointer;letter-spacing:.025em;text-transform:uppercase;background:#5191fa;border:none;border-radius:0 6px 6px 0;min-width:100px;padding:0 1.5rem;font-size:.9375rem;font-weight:600;transition:all .2s}.search-button-mmt:hover:not(:disabled){background:#3d7de8;box-shadow:0 2px 8px #5191fa4d}.search-button-mmt:disabled{opacity:.5;cursor:not-allowed;background:#9ca3af}.hotel-search-form-mmt.compact-mode .field-value-small{font-size:.875rem}.hotel-search-form-mmt.compact-mode .search-button-mmt{min-width:80px;min-height:50px;padding:0 1rem;font-size:.75rem}.hotel-search-form-mmt.compact-mode .guest-select{padding:.25rem .375rem;font-size:.75rem}@media (max-width:1200px){.field-value{font-size:1.0625rem}.search-button-mmt{min-width:90px;padding:0 1.25rem;font-size:.875rem}}@media (max-width:1024px){.search-field{min-height:48px;padding:.375rem .5rem}.field-value{font-size:1rem}.field-value-small{font-size:.875rem}.field-label{font-size:.5625rem}.field-subtitle{font-size:.625rem}.guest-select{padding:.25rem .3125rem;font-size:.75rem}}@media (max-width:768px){.search-fields-row{flex-wrap:wrap}.search-field{border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;flex:calc(50% - 1px);min-height:42px;padding:.3125rem .4375rem}.search-field:nth-child(2n){border-right:none}.destination-field{border-right:none;flex:100%}.search-button-mmt{border-bottom:none;border-right:none;border-radius:0 0 6px 6px;flex:100%;min-width:auto;padding:.625rem;font-size:.8125rem}.field-value{font-size:.9375rem}.field-value-small{font-size:.8125rem}.field-subtitle{font-size:.5625rem}.field-label{margin-bottom:.0625rem;font-size:.5rem}.guest-select{padding:.1875rem .25rem;font-size:.625rem}.control-sublabel{font-size:.4375rem}}@media (max-width:480px){.search-field{border-right:none;flex:100%;min-height:40px;padding:.3125rem .4375rem}.field-label{margin-bottom:.0625rem;font-size:.4375rem}.field-value{font-size:.875rem}.field-value-small{margin-top:.0625rem;font-size:.75rem}.field-subtitle{font-size:.5rem}.search-button-mmt{padding:.5rem;font-size:.75rem}.guest-select{padding:.1875rem .25rem;font-size:.5625rem}.control-sublabel{font-size:.4375rem}}.date-constraint-warning-mmt{color:#92400e;text-align:center;background-color:#fffbeb;border:1px solid #fcd34d;border-radius:6px;margin-top:.75rem;padding:.625rem 1rem;font-size:.8125rem}.hotel-search-form-mmt.compact-mode .search-fields-row{border-radius:6px}.hotel-search-form-mmt.compact-mode .search-field{min-height:60px;padding:.5rem .75rem}.hotel-search-form-mmt.compact-mode .field-label{font-size:.6875rem}.hotel-search-form-mmt.compact-mode .field-value{font-size:1.125rem}.hotel-search-form-mmt.compact-mode .field-subtitle{font-size:.75rem}.hotel-search-form-mmt.compact-mode .search-button-mmt{min-width:100px;padding:0 1.5rem;font-size:.875rem}@media (max-width:1024px){.field-value{font-size:1.25rem}.search-button-mmt{min-width:120px;padding:0 1.5rem;font-size:1rem}}@media (max-width:768px){.search-fields-row{flex-wrap:wrap}.search-field{border-bottom:1px solid #e5e7eb;border-right:1px solid #e5e7eb;flex:calc(50% - 1px)}.search-field:nth-child(2n){border-right:none}.destination-field{border-right:none;flex:100%}.search-button-mmt{border-bottom:none;border-right:none;border-radius:0 0 8px 8px;flex:100%;padding:1rem}.field-value{font-size:1.125rem}.field-subtitle{font-size:.75rem}}@media (max-width:480px){.search-field{border-right:none;flex:100%;min-height:55px;padding:.625rem .875rem}.field-label{font-size:.6875rem}.field-value{font-size:1rem}.field-subtitle{font-size:.6875rem}.search-button-mmt{padding:.875rem;font-size:.9375rem}}.form-container.search-form{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;overflow:visible}.search-form .form-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;border-radius:8px 8px 0 0;padding:1rem}.search-form .form-header h4{color:#1e293b;margin:0;font-size:1.125rem;font-weight:600}.search-form .form-content{padding:1.5rem;overflow:visible}.search-form .form-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid;overflow:visible}.search-form-compact .form-content{padding:1rem}.search-form-compact .form-grid-compact{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.search-form-compact .form-grid-compact>div{flex:1;min-width:140px}.search-form-compact .form-label{margin-bottom:.375rem;font-size:.8125rem}.search-form-compact .form-input,.search-form-compact .form-select{padding:.625rem;font-size:.8125rem}.search-form-compact .search-button{white-space:nowrap;min-width:140px;margin-bottom:0;padding:.625rem 1.25rem;font-size:.875rem}.form-label{color:#374151;margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.form-input{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:.75rem;font-size:.875rem;transition:all .2s}.form-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.date-range-picker-wrapper{z-index:10;position:relative}.search-form .date-range-picker,.search-form-compact .date-range-picker{min-width:280px;flex:2!important}.form-select{color:#1f2937;appearance:none;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:.75rem 2.5rem .75rem .75rem;font-size:.875rem;transition:all .2s}.form-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.search-button{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:6px;width:100%;padding:.875rem 1.5rem;font-size:.9375rem;font-weight:600;transition:all .2s}.search-button:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.search-button:disabled{cursor:not-allowed;opacity:.5;background:#9ca3af}.date-constraint-warning{color:#92400e;background-color:#fffbeb;border:1px solid #fcd34d;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.875rem}.search-form-section .form-container.search-form{margin-bottom:0}@media (max-width:768px){.search-form .form-grid{grid-template-columns:1fr}.search-form .date-range-picker{min-width:100%}.search-form-compact .form-content{padding:.875rem}.search-form-compact .form-grid-compact{gap:.625rem}.search-form-compact .form-grid-compact>div{min-width:120px}.search-form-compact .date-range-picker{flex:2;min-width:240px}.search-form-compact .search-button{min-width:120px}}@media (max-width:480px){.search-form .form-content{padding:1rem}.search-form .date-range-picker{min-width:100%}.search-form-compact .form-content{padding:.75rem}.search-form-compact .form-grid-compact{gap:.5rem}.search-form-compact .form-grid-compact>div{min-width:100px}.search-form-compact .date-range-picker{flex:1;min-width:100%}.search-form-compact .search-button{min-width:100px;padding:.625rem 1rem;font-size:.8125rem}.search-form-compact .form-label{font-size:.75rem}.search-form-compact .form-input,.search-form-compact .form-select{padding:.5rem;font-size:.75rem}}.hsf-calendar-dropdown{z-index:9999;background:#fff;border-radius:12px;min-width:280px;padding:1rem;animation:.15s hsfFadeIn;box-shadow:0 8px 30px #00000026}@keyframes hsfFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.hsf-calendar-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.hsf-calendar-header button{cursor:pointer;color:#4b5563;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.375rem;transition:all .15s;display:flex}.hsf-calendar-header button:hover{color:#667eea;background:#f3f4f6}.hsf-month-year-btn{color:#1f2937;cursor:pointer;font-size:.95rem;font-weight:600}.hsf-month-year-btn:hover{color:#667eea!important}.hsf-weekdays{grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:.375rem;display:grid}.hsf-weekday{text-align:center;color:#6b7280;text-transform:uppercase;padding:.25rem 0;font-size:.7rem;font-weight:600}.hsf-days-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.hsf-day{aspect-ratio:1;color:#1f2937;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:500;transition:all .15s;display:flex}.hsf-day:hover:not(:disabled){background:#f3f4f6}.hsf-day-other{color:#9ca3af}.hsf-day-disabled{color:#d1d5db;cursor:not-allowed}.hsf-day-today{border:2px solid #667eea}.hsf-day-selected{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.hsf-day-selected:hover{background:linear-gradient(135deg,#5a6fd6 0%,#6a4190 100%)}.hsf-months-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.hsf-month{color:#1f2937;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.75rem .5rem;font-size:.85rem;font-weight:500;transition:all .15s}.hsf-month:hover{background:#f3f4f6}.hsf-month-selected{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.hsf-years-grid{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.hsf-year{color:#1f2937;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.75rem .5rem;font-size:.85rem;font-weight:500;transition:all .15s}.hsf-year:hover{background:#f3f4f6}.hsf-year-selected{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.hsf-calendar-mobile{z-index:10000;border-radius:0;flex-direction:column;padding:0;animation:.25s hsfSlideUp;display:flex;width:100%!important;max-width:none!important;height:100%!important;max-height:none!important;position:fixed!important;inset:0!important}@keyframes hsfSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.hsf-calendar-mobile-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.hsf-calendar-mobile-header span{font-size:1.1rem;font-weight:600}.hsf-calendar-mobile-header button{color:#fff;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.25rem}.hsf-calendar-mobile .hsf-calendar-header{border-bottom:1px solid #e5e7eb;margin-bottom:0;padding:1rem 1.25rem}.hsf-calendar-mobile .hsf-weekdays{margin-bottom:.5rem;padding:0 1.25rem}.hsf-calendar-mobile .hsf-days-grid{flex:1;padding:0 1.25rem}.hsf-calendar-mobile .hsf-day{min-height:44px;font-size:1rem}.hsf-calendar-mobile .hsf-months-grid,.hsf-calendar-mobile .hsf-years-grid{flex:1;padding:1rem 1.25rem}.hsf-calendar-mobile .hsf-month,.hsf-calendar-mobile .hsf-year{padding:1rem;font-size:1rem}.shared-room-modal-overlay{z-index:9998;overscroll-behavior:contain;background-color:#00000080;inset:0;transform:none;position:fixed!important}.shared-room-modal{z-index:9999;overscroll-behavior:contain;background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;top:50%;left:50%;overflow-y:auto;box-shadow:0 10px 40px #0003;position:fixed!important;transform:translate(-50%,-50%)!important}.shared-room-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.shared-room-modal-header h3{color:#111827;margin:0;font-size:1.25rem;font-weight:600}.shared-room-modal-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:1.75rem;transition:all .2s;display:flex}.shared-room-modal-close:hover{color:#111827;background-color:#f3f4f6}.shared-room-modal-body{padding:24px}.room-details-summary{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;padding:16px}.room-details-summary h4{color:#111827;margin:0 0 4px;font-size:1rem;font-weight:600}.room-details-summary .room-type-name{color:#6b7280;margin:0 0 8px;font-size:.875rem}.room-details-summary .quantity-info{color:#4b5563;margin:0 0 8px;font-size:.875rem;font-weight:500}.room-details-summary .availability-info{color:#2563eb;background-color:#dbeafe;border-radius:4px;margin:0;padding:6px 10px;font-size:.875rem;font-weight:600;display:inline-block}.room-details-summary .capacity-warning{color:#dc2626;background-color:#fee2e2;border-left:3px solid #dc2626;border-radius:4px;margin:8px 0 0;padding:8px 12px;font-size:.875rem;font-weight:600}.form-group .required{color:#ef4444}.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:10px 12px;font-family:inherit;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.field-help{color:#6b7280;margin:6px 0 0;font-size:.75rem}.shared-room-modal-footer{background:#f9fafb;border-top:1px solid #e5e7eb;border-radius:0 0 12px 12px;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.shared-room-modal-footer button{cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:.875rem;font-weight:600;transition:all .2s}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{cursor:not-allowed;opacity:.6;background:#9ca3af}@media (max-width:768px){.shared-room-modal{border-radius:0;width:100%;max-width:none;height:100%;max-height:none;top:0;left:0;transform:none!important}.shared-room-modal-header,.shared-room-modal-body{padding:16px}.shared-room-modal-footer{background:#fff;padding:16px;position:sticky;bottom:0}}.booking-expiry-timer{border-radius:6px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:500;transition:all .3s;display:flex}.booking-expiry-timer.normal{color:#1976d2;background-color:#e3f2fd;border:1px solid #bbdefb}.booking-expiry-timer.warning{color:#f57c00;background-color:#fff3e0;border:1px solid #ffcc80;animation:2s ease-in-out infinite pulse-warning}.booking-expiry-timer.critical{color:#c62828;background-color:#ffebee;border:1px solid #ef9a9a;animation:1s ease-in-out infinite pulse-critical}.booking-expiry-timer.expired{color:#757575;background-color:#f5f5f5;border:1px solid #e0e0e0}.timer-icon{font-size:20px;line-height:1}.timer-content{flex-direction:column;gap:2px;display:flex}.timer-label{opacity:.8;text-transform:uppercase;letter-spacing:.5px;font-size:11px}.timer-value{letter-spacing:.5px;font-family:Courier New,monospace;font-size:16px;font-weight:700}.timer-warning{margin-top:2px;font-size:11px;font-weight:600;animation:1s ease-in-out infinite blink}@keyframes pulse-warning{0%,to{transform:scale(1);box-shadow:0 0 #f57c0066}50%{transform:scale(1.02);box-shadow:0 0 0 4px #f57c0000}}@keyframes pulse-critical{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}@media (max-width:768px){.booking-expiry-timer{gap:6px;padding:6px 10px;font-size:12px}.timer-icon{font-size:18px}.timer-value{font-size:14px}.timer-label,.timer-warning{font-size:10px}}.selected-bookings{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.selected-bookings-header{background:#f0f9ff;border-bottom:1px solid #e0f2fe;justify-content:space-between;align-items:center;gap:12px;padding:1rem;display:flex}.selected-bookings-header h4{color:#0c4a6e;margin:0;font-size:16px;font-weight:600}.booking-section{border-bottom:1px solid #e0e0e0}.booking-section:last-child{border-bottom:none}.booking-section-header{background-color:#f5f5f5;border-bottom:1px solid #e0e0e0;padding:12px 16px}.booking-section-header h5{color:#333;margin:0 0 4px;font-size:15px;font-weight:600}.booking-section-note{color:#666;margin:0;font-size:12px}.booking-item-wrapper{border-bottom:1px solid #e0e0e0;padding:12px}.booking-item-wrapper:last-child{border-bottom:none}.booking-item{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.booking-item.view-only{opacity:.85}.booking-info{flex:1}.booking-title{color:#333;margin-bottom:8px;font-size:15px;font-weight:600}.booking-details{flex-direction:column;gap:6px;margin-bottom:12px;display:flex}.booking-quantity{color:#1976d2;font-size:13px;font-weight:600}.booking-dates{color:#555;font-size:13px;font-weight:500}.booking-guests{color:#666;font-size:12px}.booking-shared-info{color:#f57c00;background-color:#fff3e0;border-radius:4px;align-self:flex-start;padding:4px 8px;font-size:12px;display:inline-block}.booking-comments{color:#555;background-color:#f9f9f9;border-left:3px solid #e0e0e0;border-radius:4px;padding:6px 10px;font-size:12px;font-style:italic}.booking-amenities{color:#666;font-size:12px;font-style:italic}.booking-address{color:#555;font-size:12px;line-height:1.5}.distance-badge{color:#1976d2;background-color:#e3f2fd;border-radius:12px;margin-left:4px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.booking-contact-links{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.contact-link{color:#1976d2;background-color:#e3f2fd;border-radius:4px;align-items:center;padding:4px 8px;font-size:12px;text-decoration:none;transition:all .2s;display:inline-flex}.contact-link:hover{color:#0d47a1;background-color:#bbdefb;transform:translateY(-1px)}.contact-link:active{transform:translateY(0)}.map-link{color:#f57c00;background-color:#fff3e0}.map-link:hover{color:#e65100;background-color:#ffe0b2}.booking-pricing{border-top:1px solid #f0f0f0;margin-top:8px;padding-top:8px}.booking-price{color:#666;margin-bottom:4px;font-size:13px}.booking-total{color:#2e7d32;font-size:15px;font-weight:700}.quantity-note{color:#666;font-size:12px;font-weight:400}.remove-booking-button{color:#fff;cursor:pointer;background-color:#f44336;border:none;border-radius:4px;padding:6px 12px;font-size:13px;transition:background-color .2s}.remove-booking-button:hover{background-color:#d32f2f}.remove-booking-button:active{background-color:#b71c1c}.booking-total{background-color:#f5f5f5;border-top:2px solid #e0e0e0;padding:16px}.booking-total-amount{color:#333;margin-bottom:8px;font-size:18px;font-weight:700}.booking-total-note{color:#d32f2f;background-color:#ffebee;border-left:3px solid #d32f2f;border-radius:4px;padding:8px 12px;font-size:12px}.archive-toggle-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:6px;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .2s;display:flex}.archive-toggle-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.archived-section{background-color:#fafafa}.archived-section .booking-section-header{background-color:#f0f0f0}.archived-booking-item{opacity:.7;border-bottom:1px solid #e0e0e0;padding:12px;position:relative}.archived-booking-item:last-child{border-bottom:none}.archived-badge{color:#fff;background-color:#ff9800;border-radius:4px;padding:4px 10px;font-size:11px;font-weight:600;position:absolute;top:20px;right:20px;box-shadow:0 2px 4px #0003}.no-bookings-message{text-align:center;color:#666;padding:40px 20px}.no-bookings-message p{margin:8px 0}.hint-text{color:#999;font-size:13px;font-style:italic}@media (max-width:768px){.booking-item{flex-direction:column}.remove-booking-button{width:100%;margin-top:8px}.booking-section-header{padding:10px 12px}.booking-item-wrapper{padding:10px}.booking-title{font-size:14px}.booking-total-amount{font-size:16px}}.hotel-info-card{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:1rem 1.25rem}.hotel-info-name{color:#1f2937;margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.hotel-info-location{color:#6b7280;margin:0 0 .5rem;font-size:.875rem}.hotel-info-address{color:#4b5563;margin:0 0 .75rem;font-size:.875rem;line-height:1.4}.hotel-info-links{flex-wrap:wrap;gap:1rem;display:flex}.hotel-info-link{align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.hotel-map-link{color:#2563eb}.hotel-map-link:hover{color:#1d4ed8;text-decoration:underline}.hotel-contact-link{color:#059669}.hotel-contact-link:hover{color:#047857;text-decoration:underline}@media (max-width:768px){.hotel-info-card{padding:.875rem 1rem}.hotel-info-name{font-size:1rem}.hotel-info-location,.hotel-info-address,.hotel-info-link{font-size:.8125rem}.hotel-info-links{gap:.75rem}}.hotel-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;transition:all .2s;overflow:hidden;box-shadow:0 1px 3px #0000000d}.hotel-card:hover{box-shadow:0 4px 12px #0000001a}.hotel-rooms{padding:1rem}.room-type-item{background:#fff;border:1px solid #f3f4f6;border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;padding:1rem;transition:all .2s;display:flex}.room-type-item:last-child{margin-bottom:0}.room-type-item:hover{border-color:#e5e7eb;box-shadow:0 2px 6px #0000000d}.room-type-info{flex:1;padding-right:1rem}.room-type-name{color:#1f2937;margin-bottom:.375rem;font-size:1rem;font-weight:600}.room-type-details{color:#6b7280;font-size:.875rem;line-height:1.5}.room-availability-window,.room-segment-dates{color:#8b5cf6;margin-top:.375rem;font-size:.8125rem;font-weight:500;line-height:1.4}.room-segment-dates{color:#f59e0b}.quantity-suggestion{color:#059669;text-align:center;background-color:#d1fae5;border-radius:4px;margin-bottom:.5rem;padding:.375rem .625rem;font-size:.8125rem;font-weight:500}.shared-beds-info{color:#2563eb;text-align:center;background-color:#dbeafe;border-radius:4px;margin-bottom:.5rem;padding:.375rem .625rem;font-size:.8125rem;font-weight:500}.room-type-price{text-align:right;min-width:80px;margin-right:1rem}.room-price{color:#1f2937;font-size:1.375rem;font-weight:700;line-height:1.2}.room-price-label{color:#6b7280;margin-top:2px;font-size:.75rem}.book-room-button{color:#fff;cursor:pointer;white-space:nowrap;background:#10b981;border:none;border-radius:6px;padding:.625rem 1.25rem;font-size:.875rem;font-weight:600;transition:all .2s}.book-room-button:hover{background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.book-room-button:active{transform:translateY(0)}.room-quantity-controls{align-items:center;gap:.75rem;display:flex}.quantity-selector{background:#f3f4f6;border-radius:6px;align-items:center;gap:.5rem;padding:.25rem;display:flex}.quantity-btn{color:#374151;cursor:pointer;background:#fff;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;font-weight:600;line-height:1;transition:all .2s;display:flex}.quantity-btn:hover:not(:disabled){color:#fff;background:#10b981}.quantity-btn:disabled{opacity:.4;cursor:not-allowed}.quantity-display{text-align:center;color:#1f2937;min-width:32px;font-size:.9375rem;font-weight:600}.search-empty-state{text-align:center;color:#6b7280;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;padding:3rem 2rem;font-size:.9375rem}@media (max-width:768px){.room-type-item{flex-direction:column;align-items:flex-start}.room-type-info{width:100%;margin-bottom:.75rem;padding-right:0}.room-type-price{text-align:left;width:100%;margin-bottom:.75rem;margin-right:0}.room-quantity-controls{flex-direction:column;gap:.5rem;width:100%}.quantity-selector{justify-content:center;width:100%}.book-room-button{width:100%}}@media (max-width:480px){.hotel-header h5{font-size:1rem}.hotel-header{padding:.875rem 1rem}.hotel-rooms{padding:.75rem}.room-type-item{padding:.875rem}.room-type-name{font-size:.9375rem}.room-type-details{font-size:.8125rem}.room-price{font-size:1.25rem}.quantity-btn{width:36px;height:36px;font-size:1.375rem}.quantity-display{min-width:40px;font-size:1rem}}.categorized-results{flex-direction:column;gap:2rem;display:flex}.results-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014}.results-section .section-header{color:#fff;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)!important}.results-section .section-header:hover{background:linear-gradient(135deg,#5a6fd6 0%,#6a4190 100%)!important}.results-section .section-header h4,.results-section .section-header p,.results-section .section-header .section-description,.results-section .section-header:hover h4,.results-section .section-header:hover p,.results-section .section-header:hover .section-description{color:#fff!important}.section-header h4{align-items:center;gap:.5rem;margin:0 0 .25rem;font-size:1.125rem;font-weight:600;display:flex}.section-description{opacity:.9;margin:0;font-size:.875rem}.section-content{padding:1.25rem}.section-content .hotel-card{margin-bottom:1rem}.section-content .hotel-card:last-child{margin-bottom:0}.connecting-section .section-header{background:linear-gradient(135deg,#764ba2 0%,#9333ea 100%)}.connecting-option-card{background:#faf5ff;border:2px solid #c4b5fd;border-radius:10px;margin-bottom:1.5rem;overflow:hidden}.connecting-option-card:last-child{margin-bottom:0}.connecting-option-header{background:linear-gradient(135deg,#f3e8ff 0%,#e9d5ff 100%);border-bottom:1px solid #c4b5fd;flex-wrap:wrap;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:background-color .2s;display:flex}.connecting-option-header.clickable{cursor:pointer}.connecting-option-header.clickable:hover{background:linear-gradient(135deg,#e9d5ff 0%,#ddd6fe 100%)}.connecting-header-left{flex:1;align-items:center;gap:.75rem;display:flex}.expand-icon{color:#6b21a8;width:1rem;font-size:.75rem;font-weight:700;transition:transform .2s;display:inline-block}.option-badge{color:#fff;background:#9333ea;border-radius:20px;padding:.25rem .75rem;font-size:.875rem;font-weight:600}.option-hotels-count{color:#6b21a8;font-size:.875rem;font-weight:500}.full-coverage-badge{color:#fff;background:#10b981;border-radius:20px;margin-left:auto;padding:.25rem .75rem;font-size:.8125rem;font-weight:500}.connecting-segments{padding:1.25rem}.segment-card{margin-bottom:1.5rem;padding-left:1.5rem;position:relative}.segment-card:before{content:"";background:linear-gradient(#9333ea,#a855f7);border-radius:2px;width:3px;position:absolute;top:0;bottom:0;left:0}.segment-card:last-child{margin-bottom:0}.segment-dates{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.segment-number{color:#fff;background:#9333ea;border-radius:15px;padding:.25rem .75rem;font-size:.8125rem;font-weight:600}.date-range{color:#6b21a8;font-size:.9375rem;font-weight:500}.segment-hotel{background:#fff;margin-bottom:0!important}.segment-hotel .hotel-header{background:#faf5ff}@media (max-width:768px){.results-section .section-header{padding:1rem 1.25rem}.results-section .section-header h4{font-size:1rem}.section-content{padding:1rem}.connecting-option-header{padding:.875rem 1rem}.full-coverage-badge{text-align:center;width:100%;margin-top:.5rem;margin-left:0}.connecting-segments{padding:1rem}.segment-card{padding-left:1rem}.segment-dates{gap:.5rem}}@media (max-width:480px){.categorized-results{gap:1.5rem}.results-section .section-header{padding:.875rem 1rem}.results-section .section-header h4{font-size:.9375rem}.section-description{font-size:.8125rem}.section-content{padding:.75rem}.connecting-option-header{gap:.5rem;padding:.75rem}.option-badge,.segment-number{padding:.2rem .5rem;font-size:.75rem}.option-hotels-count{font-size:.8125rem}.connecting-segments{padding:.75rem}.segment-card{margin-bottom:1rem;padding-left:.75rem}.date-range{font-size:.8125rem}}.hotel-cart-sidebar{background:#fff;border-left:1px solid #e0e0e0;flex-direction:column;width:380px;height:100%;transition:transform .3s;display:flex;position:sticky;top:0}.cart-header{background:#fafafa;border-bottom:2px solid #f0f0f0;padding:20px;display:block}.cart-mobile-header{background:#fafafa;border-bottom:2px solid #f0f0f0;justify-content:space-between;align-items:center;padding:20px;display:none}.cart-header h3,.cart-mobile-header h3{color:#333;margin:0;font-size:18px;font-weight:600}.close-mobile-cart{color:#666;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:32px;line-height:1;transition:all .2s;display:flex}.close-mobile-cart:hover{color:#333;background:#f0f0f0}.close-mobile-cart:active{background:#e0e0e0}.cart-items{flex:1;padding:16px;overflow-y:auto}.empty-cart{text-align:center;color:#999;padding:60px 20px}.empty-cart p{margin:0 0 12px;font-size:14px}.empty-icon{opacity:.3;font-size:48px}.cart-item{background:#f9f9f9;border:1px solid #e8e8e8;border-radius:8px;margin-bottom:10px;padding:12px;transition:all .2s}.cart-item:hover{box-shadow:0 2px 8px #00000014}.cart-item-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.header-info{flex-direction:column;flex:1;gap:3px;display:flex}.hotel-room-line{flex-wrap:wrap;align-items:center;gap:6px;line-height:1.3;display:flex}.hotel-name{color:#333;font-size:14px;font-weight:600}.separator{color:#999;font-weight:400}.room-type{color:#555;font-size:13px;font-weight:500}.dates-line{color:#666;font-size:12px;line-height:1.3}.shared-room-info{color:#2563eb;margin-top:4px;font-size:11px;font-weight:500}.room-comments{color:#059669;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:4px;font-size:11px;font-style:italic;overflow:hidden}.remove-btn{color:#999;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;padding:0;font-size:24px;transition:all .2s;display:flex}.remove-btn:hover{color:#fff;background:#f44336}.cart-item-table{background:#fff;border:1px solid #e0e0e0;border-radius:6px;overflow:hidden}.table-row{grid-template-columns:1fr 1fr 1.2fr;gap:8px;display:grid}.table-header{background:#f5f5f5;border-bottom:1px solid #e0e0e0;padding:6px 10px}.table-header .table-cell{color:#666;text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.table-data{padding:8px 10px}.table-cell{text-align:center;justify-content:center;align-items:center;display:flex}.quantity-controls{justify-content:center;align-items:center;gap:4px;display:flex}.qty-btn{color:#1976d2;cursor:pointer;background:#e3f2fd;border:1px solid #90caf9;border-radius:4px;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:16px;font-weight:600;line-height:1;transition:all .2s;display:flex}.qty-btn:hover:not(:disabled){color:#fff;background:#1976d2;transform:scale(1.05)}.qty-btn:disabled{color:#ccc;cursor:not-allowed;opacity:.5;background:#f5f5f5;border-color:#e0e0e0}.qty-value{color:#333;text-align:center;min-width:24px;font-size:14px;font-weight:600}.nights-cell{color:#555;font-size:14px;font-weight:500}.price-cell{color:#2196f3;font-size:14px;font-weight:600}.cart-footer{background:#fafafa;border-top:2px solid #e0e0e0;padding:20px}.cart-total{background:#fff;border:1px solid #e0e0e0;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px;display:flex}.total-label{color:#333;font-size:16px;font-weight:600}.total-amount{color:#2196f3;font-size:20px;font-weight:700}.confirm-btn{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:6px;width:100%;padding:14px 20px;font-size:15px;font-weight:600;transition:all .3s}.confirm-btn:hover:not(:disabled){background:#45a049;transform:translateY(-1px);box-shadow:0 4px 12px #4caf504d}.confirm-btn:disabled{cursor:not-allowed;opacity:.6;background:#ccc}.floating-cart-btn{cursor:pointer;z-index:999;background:#4caf50;border:none;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:all .3s;display:none;position:fixed;bottom:20px;right:20px;box-shadow:0 4px 12px #0000004d}.floating-cart-btn:hover{transform:scale(1.1);box-shadow:0 6px 16px #0006}.floating-cart-btn:active{transform:scale(.95)}.floating-cart-btn svg{color:#fff}.cart-badge{color:#fff;background:#f44336;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:700;display:flex;position:absolute;top:-5px;right:-5px}.cart-mobile-overlay{z-index:1099;background:#00000080;animation:.3s fadeIn;display:none;position:fixed;inset:0}@media (max-width:1024px){.floating-cart-btn{display:flex}.hotel-cart-sidebar{z-index:1100;border-left:none;width:380px;height:100%;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-4px 0 12px #0000001a}.hotel-cart-sidebar.mobile-open{transform:translate(0)}.cart-header{display:none}.cart-mobile-header{display:flex}.cart-item{padding:10px}.hotel-name{font-size:13px}.room-type{font-size:12px}.dates-line{font-size:11px}}@media (max-width:768px){.floating-cart-btn{display:flex}.hotel-cart-sidebar{z-index:1100;border-left:none;width:100%;max-width:100%;height:100%;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.hotel-cart-sidebar.mobile-open{transform:translate(0)}.cart-header{display:none}.cart-mobile-header{display:flex}.cart-items{flex:1;max-height:none}.cart-footer{padding:16px}.cart-total{margin-bottom:12px;padding:10px}.total-label{font-size:15px}.total-amount{font-size:18px}.confirm-btn{padding:12px 18px;font-size:14px}}@media (max-width:480px){.hotel-cart-sidebar{width:100%}.cart-items{padding:12px}.cart-item{margin-bottom:8px;padding:10px}.hotel-name{font-size:12px}.room-type{font-size:11px}.dates-line,.table-header .table-cell{font-size:10px}.table-data{padding:6px 8px}.qty-btn{width:22px;height:22px;font-size:14px}.qty-value{min-width:20px;font-size:13px}.nights-cell,.price-cell{font-size:13px}.cart-mobile-header{padding:14px}.cart-mobile-header h3{font-size:16px}.cart-footer{padding:14px}.total-label{font-size:14px}.total-amount{font-size:16px}.confirm-btn{padding:11px 16px;font-size:13px}.remove-btn{width:24px;height:24px;font-size:22px}.floating-cart-btn{width:56px;height:56px;bottom:16px;right:16px}.cart-badge{width:22px;height:22px;font-size:11px}}.full-page-view{z-index:1000;background:#fff;position:fixed;inset:0;overflow-y:auto}.full-page-header h2{color:#fff;margin:0;font-size:1.5rem;font-weight:700}.back-btn{cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1.5px solid #ffffff4d;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 2px 8px #ffffff1a}.back-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px);box-shadow:0 4px 12px #fff3}.back-btn svg{flex-shrink:0}.full-page-content-with-cart{gap:1.5rem;max-width:1400px;height:calc(100vh - 80px);margin:0 auto;padding:1.5rem;display:flex;overflow:hidden}.empty-state-hotels{text-align:center;color:#6b7280;flex-direction:column;justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.empty-state-hotels svg{opacity:.5;margin-bottom:1.5rem}.empty-state-hotels h3{color:#1f2937;margin-bottom:.75rem;font-size:1.25rem;font-weight:600}.empty-state-hotels p{max-width:500px;margin:0;font-size:.9375rem;line-height:1.6}.empty-state-hotels strong{color:#4b5563;font-weight:600}.full-page-view .error-message{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.875rem 1rem;font-size:.875rem;display:flex}@media (max-width:1024px){.full-page-content-with-cart{flex-direction:column;height:auto;min-height:calc(100vh - 80px);overflow-y:auto}.search-and-results-section{flex:none;height:auto;padding-bottom:90px;overflow-y:visible}.full-page-view .room-type-item{flex-direction:column;align-items:stretch;gap:.75rem}.full-page-view .room-type-price{text-align:left;margin-bottom:.5rem;margin-right:0}.full-page-view .room-price{font-size:1.125rem}.full-page-view .book-room-button{width:100%;padding:.75rem 1rem;font-size:1rem}}@media (max-width:768px){.full-page-header{padding:1rem 1.25rem}.full-page-header h2{font-size:1.25rem}.back-btn{padding:7px 12px;font-size:12px}.full-page-content-with-cart{gap:1rem;padding:1rem}.search-and-results-section{padding:16px 16px 90px}.search-form-section{margin-bottom:20px;padding:16px}.empty-state-hotels{padding:2rem 1rem}.empty-state-hotels svg{width:60px;height:60px}.empty-state-hotels h3{font-size:1.125rem}.empty-state-hotels p{font-size:.875rem}.full-page-view .error-message{padding:.75rem;font-size:.875rem}.full-page-view .hotel-card{margin-bottom:1rem}.full-page-view .hotel-header,.full-page-view .hotel-rooms{padding:.875rem}.full-page-view .search-in-modal button{padding:.875rem 1rem;font-size:.9375rem}}@media (max-width:480px){.search-and-results-section{padding:12px 12px 85px}.search-form-section{margin-bottom:16px;padding:14px}.full-page-view .error-message{padding:.625rem;font-size:.8125rem}.full-page-view .error-message .error-icon{font-size:1.125rem}.full-page-view .full-page-header{padding:.875rem 1rem}.full-page-view .full-page-header h2{font-size:1.125rem}.full-page-view .back-btn{padding:6px 10px;font-size:11px}.full-page-view .back-btn svg{width:16px;height:16px}.full-page-view .hotel-header,.full-page-view .hotel-rooms{padding:.75rem}.full-page-view .search-in-modal{margin-bottom:1rem;padding:.75rem}.full-page-view .search-in-modal button{padding:.75rem;font-size:.875rem}.full-page-view .search-empty-state{padding:1.5rem 1rem;font-size:.875rem}.full-page-view .hotel-header h5{font-size:1rem}.full-page-view .hotel-header p{font-size:.8125rem}.full-page-view .room-type-name{font-size:.9375rem}.full-page-view .room-type-details{font-size:.8125rem}.full-page-view .room-type-item{padding:.625rem}.full-page-view .hotel-card{margin-bottom:.875rem}}@media (max-width:360px){.full-page-view .book-room-button{padding:.5rem .75rem;font-size:.8125rem}.full-page-view .hotel-header h5{font-size:.9375rem}.full-page-view .room-price{font-size:1rem}.full-page-view .room-type-name{font-size:.875rem}.full-page-view .full-page-header h2{font-size:1rem}.full-page-view .back-btn{padding:5px 8px;font-size:10px}}.sse-status-indicator{align-items:center;margin-left:auto;display:flex}.sse-status{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.sse-status.connected{color:#a7f3d0;background:#10b98133;border:1px solid #10b9814d}.sse-status.error{color:#fecaca;background:#ef444433;border:1px solid #ef44444d}.sse-dot{border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite sse-pulse}.sse-status.connected .sse-dot{background:#10b981}.sse-status.error .sse-dot{background:#ef4444;animation:none}@keyframes sse-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.sse-reconnect-btn{cursor:pointer;color:inherit;background:#ffffff26;border:1px solid #ffffff4d;border-radius:4px;margin-left:8px;padding:2px 8px;font-size:.7rem;font-weight:600;transition:all .2s}.sse-reconnect-btn:hover{background:#ffffff40;border-color:#ffffff80}@media (max-width:768px){.sse-status-indicator{position:absolute;top:50%;right:1rem;transform:translateY(-50%)}.sse-status{padding:4px 8px;font-size:.65rem}.sse-dot{width:6px;height:6px}.full-page-header{position:relative}}@media (max-width:480px){.sse-status span:not(.sse-dot){display:none}.sse-status{border-radius:50%;padding:6px}.sse-reconnect-btn{display:none}}.hotel-search-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.hotel-search-section .section-title{color:#111827;border-bottom:2px solid #e5e7eb;margin:0 0 1rem;padding-bottom:.75rem;font-size:1.1rem;font-weight:600}.hotel-search-action{margin-bottom:1.5rem}.search-hotels-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:1rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex;box-shadow:0 4px 6px #667eea40}.search-hotels-btn:hover{background:linear-gradient(135deg,#5568d3 0%,#6a4091 100%);transform:translateY(-2px);box-shadow:0 6px 12px #667eea59}.search-hotels-btn:active{transform:translateY(0);box-shadow:0 2px 4px #667eea40}.search-hotels-btn svg{flex-shrink:0}.empty-state-hotels{text-align:center;background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin:2rem 0;padding:4rem 2rem;display:flex}.empty-state-hotels svg{color:#9ca3af;margin-bottom:1.5rem}.empty-state-hotels h3{color:#1f2937;margin:0 0 .75rem;font-size:1.5rem;font-weight:600}.empty-state-hotels p{color:#6b7280;max-width:500px;margin:0;font-size:1rem;line-height:1.6}.hotels-step .error-message{color:#dc2626;background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;margin-bottom:1rem;padding:.75rem}.hotels-step .error-message .error-icon{margin-right:.5rem}.hotels-step .debug-info{color:#1e40af;background-color:#f0f9ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:1rem;padding:.75rem;font-size:.875rem}.hotels-step .search-form .form-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:1rem}.hotels-step .search-form .form-header h4{color:#1e293b;margin:0}.hotels-step .search-form .form-content{padding:1.5rem}.hotels-step .search-form .form-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.hotels-step .form-label{color:#374151;margin-bottom:.5rem;font-weight:500;display:block}.hotels-step .form-input{border:1px solid #d1d5db;border-radius:6px;width:100%;padding:.75rem}.hotels-step .form-select{color:#1f2937;appearance:none;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;border:1px solid #d1d5db;border-radius:6px;width:100%;padding:.75rem 2.5rem .75rem .75rem;font-size:.875rem}.hotels-step .search-button{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:6px;padding:.75rem 1.5rem;font-weight:500}.hotels-step .search-button:disabled{cursor:not-allowed;opacity:.5}.hotels-step .date-constraint-warning{color:#92400e;background-color:#fffbeb;border:1px solid #fcd34d;border-radius:6px;margin-top:1rem;padding:.75rem;font-size:.875rem}.hotels-step .search-modal-overlay{z-index:1000;background-color:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.hotels-step .search-modal{background-color:#fff;border-radius:12px;width:800px;max-width:90vw;max-height:90vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.hotels-step .search-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.hotels-step .search-modal-header h3{color:#1f2937;margin:0}.hotels-step .search-modal-close{cursor:pointer;color:#6b7280;background:0 0;border:none;font-size:1.5rem}.hotels-step .search-modal-content{max-height:70vh;padding:1.5rem;overflow-y:auto}.hotels-step .search-in-modal{background-color:#f8fafc;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.hotels-step .search-in-modal button{color:#fff;cursor:pointer;border:none;border-radius:6px;width:100%;padding:.75rem 1.5rem;font-weight:500}.hotels-step .search-in-modal button:disabled{cursor:not-allowed;background:#9ca3af}.hotels-step .search-in-modal button:not(:disabled){background:#667eea}.hotels-step .hotel-card{border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;overflow:hidden}.hotels-step .hotel-header{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:1rem}.hotels-step .hotel-header h5{color:#1f2937;margin:0 0 .5rem}.hotels-step .hotel-header p{color:#6b7280;margin:0;font-size:.875rem}.hotels-step .hotel-rooms{padding:1rem}.hotels-step .room-type-item{background:#fff;border:1px solid #f3f4f6;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.75rem;display:flex}.hotels-step .room-type-info{flex:1}.hotels-step .room-type-name{color:#1f2937;margin-bottom:.25rem;font-weight:500}.hotels-step .room-type-details{color:#6b7280;font-size:.875rem}.hotels-step .room-type-price{text-align:right;margin-right:1rem}.hotels-step .room-price{color:#1f2937;font-size:1.25rem;font-weight:600}.hotels-step .room-price-label{color:#6b7280;font-size:.75rem}.hotels-step .book-room-button{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;transition:background-color .2s}.hotels-step .book-room-button:hover{background:#059669}.hotels-step .search-empty-state{text-align:center;color:#6b7280;padding:2rem}.hotels-step .selected-bookings .form-header{background:#f0f9ff;border-bottom:1px solid #e0f2fe;padding:1rem}.hotels-step .selected-bookings .form-header h4{color:#0c4a6e;margin:0}.hotels-step .selected-bookings .form-content{padding:1rem}.hotels-step .booking-item{background:#f0f9ff;border:1px solid #dbeafe;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.75rem;display:flex}.hotels-step .booking-info .booking-title{color:#1e40af;font-weight:500}.hotels-step .booking-info .booking-dates{color:#3730a3;font-size:.875rem}.hotels-step .booking-info .booking-status{color:#6366f1;font-size:.75rem}.hotels-step .booking-info .booking-price{color:#059669;font-size:.75rem}.hotels-step .remove-booking-button{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.hotels-step .booking-total{background:#ecfdf5;border:1px solid #bbf7d0;border-radius:6px;margin-top:1rem;padding:.75rem}.hotels-step .booking-total-amount{color:#065f46;font-weight:600}.hotels-step .booking-total-note{color:#047857;font-size:.875rem}@media (max-width:768px){.hotels-step .search-modal{max-width:95vw;max-height:95vh}.hotels-step .search-form .form-grid{grid-template-columns:1fr}.hotels-step .search-modal-header,.hotels-step .search-modal-content{padding:1rem}.hotels-step .form-grid{grid-template-columns:1fr}.hotels-step .room-type-item,.full-page-view .room-type-item{flex-direction:column;align-items:stretch;gap:.75rem}.hotels-step .room-type-price,.full-page-view .room-type-price{text-align:left;margin-bottom:.5rem;margin-right:0}.hotels-step .room-price,.full-page-view .room-price{font-size:1.125rem}.hotels-step .book-room-button,.full-page-view .book-room-button{width:100%;padding:.75rem 1rem;font-size:1rem}.hotels-step .booking-item{flex-direction:column;align-items:stretch;gap:.75rem}.hotels-step .remove-booking-button{width:100%;padding:.5rem 1rem;font-size:.875rem}.full-page-view .full-page-header{padding:1rem}.full-page-view .full-page-header h2{font-size:1.25rem}.full-page-view .back-btn{padding:.5rem .75rem;font-size:.875rem}.full-page-view .full-page-content{padding:1rem}.full-page-view .hotel-card{margin-bottom:1rem}.full-page-view .hotel-header,.hotels-step .hotel-header,.full-page-view .hotel-rooms,.hotels-step .hotel-rooms{padding:.875rem}.full-page-view .search-in-modal button,.hotels-step .search-in-modal button{padding:.875rem 1rem;font-size:.9375rem}}@media (max-width:480px){.hotels-step .search-form .form-content,.hotels-step .selected-bookings .form-content{padding:1rem}.hotels-step .search-form .form-header,.hotels-step .selected-bookings .form-header{padding:.75rem}.hotels-step .search-form .form-header h4,.hotels-step .selected-bookings .form-header h4{font-size:1rem}.hotels-step .form-input,.hotels-step .form-select{padding:.625rem;font-size:.875rem}.hotels-step .form-label{margin-bottom:.375rem;font-size:.875rem}.hotels-step .search-button{padding:.625rem 1rem;font-size:.875rem}.hotels-step .error-message,.hotels-step .date-constraint-warning{padding:.625rem;font-size:.8125rem}.hotels-step .search-modal{border-radius:0;max-width:100vw;max-height:100vh}.hotels-step .search-modal-header,.hotels-step .search-modal-content{padding:.875rem}.hotels-step .search-modal-header h3{font-size:1.125rem}.hotels-step .hotel-header h5,.full-page-view .hotel-header h5{font-size:1rem}.hotels-step .hotel-header p,.full-page-view .hotel-header p{font-size:.8125rem}.hotels-step .room-type-name,.full-page-view .room-type-name{font-size:.9375rem}.hotels-step .room-type-details,.full-page-view .room-type-details{font-size:.8125rem}.hotels-step .room-type-item,.full-page-view .room-type-item{padding:.625rem}.hotels-step .hotel-card,.full-page-view .hotel-card{margin-bottom:.875rem}.hotels-step .booking-item{padding:.625rem}.hotels-step .booking-info .booking-title{font-size:.9375rem}.hotels-step .booking-info .booking-dates,.hotels-step .booking-info .booking-status,.hotels-step .booking-info .booking-price{font-size:.8125rem}.hotels-step .booking-total{padding:.625rem}.hotels-step .booking-total-amount{font-size:.9375rem}.hotels-step .booking-total-note{font-size:.8125rem}.full-page-view .full-page-header{padding:.75rem}.full-page-view .full-page-header h2{font-size:1.125rem}.full-page-view .back-btn{padding:.5rem .625rem;font-size:.8125rem}.full-page-view .back-btn svg{width:16px;height:16px}.full-page-view .full-page-content{padding:.875rem}.full-page-view .hotel-header,.hotels-step .hotel-header,.full-page-view .hotel-rooms,.hotels-step .hotel-rooms{padding:.75rem}.full-page-view .search-in-modal,.hotels-step .search-in-modal{margin-bottom:1rem;padding:.75rem}.full-page-view .search-in-modal button,.hotels-step .search-in-modal button{padding:.75rem;font-size:.875rem}.full-page-view .search-empty-state,.hotels-step .search-empty-state{padding:1.5rem 1rem;font-size:.875rem}}@media (max-width:360px){.hotels-step .form-input,.hotels-step .form-select{padding:.5rem;font-size:.8125rem}.hotels-step .search-button,.hotels-step .book-room-button,.full-page-view .book-room-button{padding:.5rem .75rem;font-size:.8125rem}.hotels-step .hotel-header h5,.full-page-view .hotel-header h5{font-size:.9375rem}.hotels-step .room-price,.full-page-view .room-price{font-size:1rem}.hotels-step .room-type-name,.full-page-view .room-type-name{font-size:.875rem}.full-page-view .full-page-header h2{font-size:1rem}.hotels-step .booking-info .booking-title{font-size:.875rem}}.full-page-content-with-cart{height:calc(100vh - 80px);display:flex;overflow:hidden}.search-and-results-section{background:#f9fafb;flex:1;min-width:0;padding:20px;overflow-y:auto}.search-form-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:24px;padding:20px}.full-page-view .error-message{color:#dc2626;background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;align-items:center;margin-bottom:1rem;padding:.875rem 1rem;font-size:.9375rem;display:flex}.full-page-view .error-message .error-icon{margin-right:.625rem;font-size:1.25rem}@media (max-width:1024px){.full-page-content-with-cart{flex-direction:column;height:auto;min-height:calc(100vh - 80px);overflow-y:auto}.search-and-results-section{flex:none;height:auto;padding-bottom:90px;overflow-y:visible}}@media (max-width:768px){.search-and-results-section{padding:16px 16px 90px}.search-form-section{margin-bottom:20px;padding:16px}.full-page-view .error-message{padding:.75rem;font-size:.875rem}}@media (max-width:480px){.search-and-results-section{padding:12px 12px 85px}.search-form-section{margin-bottom:16px;padding:14px}.full-page-view .error-message{padding:.625rem;font-size:.8125rem}.full-page-view .error-message .error-icon{font-size:1.125rem}}.billing-summary{flex-direction:column;gap:20px;padding:0;display:flex}.bill-type-toggle{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:10px;gap:8px;padding:6px;display:flex}.bill-toggle-btn{color:#666;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 16px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.bill-toggle-btn:hover{color:#333;background:#f0f0f0}.bill-toggle-btn.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.billing-cards-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:8px;display:grid}.billing-card{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;flex-direction:column;justify-content:space-between;width:100%;height:auto;min-height:140px;padding:20px;transition:transform .2s;display:flex;box-shadow:0 4px 6px #0000001a}.billing-card:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.billing-card.total-card{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.billing-card.paid-card{background:linear-gradient(135deg,#11998e 0%,#38ef7d 100%)}.billing-card.due-card.has-due{background:linear-gradient(135deg,#ee0979 0%,#ff6a00 100%)}.billing-card.due-card.no-due{background:linear-gradient(135deg,#56ab2f 0%,#a8e063 100%)}.billing-card.registration-card{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%)}.card-label{opacity:1;text-transform:uppercase;letter-spacing:.5px;color:#fffffff2;margin-bottom:8px;font-size:12px;font-weight:600}.card-amount{color:#fff;text-shadow:0 1px 2px #0000001a;margin-bottom:6px;font-size:32px;font-weight:700;line-height:1.1}.card-note{opacity:.9;color:#ffffffe6;font-size:12px}.billing-section{background:#fff;border:1px solid #e0e0e0;border-radius:12px;overflow:hidden}.section-header{background:#f8f9fa;border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.section-header h5{color:#333;margin:0;font-size:16px;font-weight:600}.section-total{color:#2e7d32;font-size:15px;font-weight:600}.tax-info-section .section-header{background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%)}.tax-info-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;padding:20px;display:grid}.tax-item{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;align-items:center;padding:16px;display:flex}.tax-item.total-tax{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none}.tax-label{color:inherit;opacity:.9;margin-bottom:8px;font-size:13px}.tax-item.total-tax .tax-label{color:#fff}.tax-value{color:inherit;font-size:24px;font-weight:700}.tax-note{color:#e65100;background:#fff3e0;border-top:1px solid #ffe0b2;padding:12px 20px;font-size:13px}.members-bill-note{background:#fff3cd;border-left:4px solid #ffc107;border-radius:4px;margin:0 20px 16px;padding:12px 20px}.members-bill-note p{color:#856404;margin:0;font-size:13px}.members-bill-table-wrapper{padding:20px;overflow-x:auto}.billing-table{border-collapse:collapse;width:100%;font-size:13px}.billing-table thead{background:#f5f5f5}.billing-table th{text-align:left;color:#555;white-space:nowrap;border-bottom:2px solid #ddd;padding:12px 8px;font-weight:600}.billing-table td{color:#333;border-bottom:1px solid #eee;padding:12px 8px}.billing-table tbody tr:hover{background:#f9f9f9}.billing-table .text-right{text-align:right}.billing-table .text-center{text-align:center}.status-badge{text-transform:uppercase;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-block}.status-registered{color:#1976d2;background:#e3f2fd}.status-waitlisted{color:#ef6c00;background:#fff3e0}.status-default{color:#666;background:#f5f5f5}.token-cell{color:#f57c00;font-weight:600;background:#fff9e6!important}.charge-note{color:#e65100;margin-top:2px;font-size:10px;font-style:italic}.total-cell{color:#2e7d32;font-weight:600;background:#f1f8f4!important}.bill-explanation{background:#f5f5f5;border-top:1px solid #e0e0e0;flex-wrap:wrap;gap:24px;padding:16px 20px;display:flex}.explanation-item{color:#555;font-size:12px}.explanation-item strong{color:#333;margin-right:4px}.billing-table tfoot .total-row{background:#f5f5f5;font-size:14px}.billing-table tfoot td{border-top:2px solid #ddd;border-bottom:none;padding:16px 8px}.hotel-table .hotel-name-cell{color:#333;font-weight:600}.hotel-table .room-type-cell{color:#666;font-size:13px}.hotel-table .shared-badge{color:#f57c00;white-space:nowrap;background:#fff3e0;border-radius:3px;margin-left:4px;padding:2px 6px;font-size:11px}.hotel-bill-note{color:#1565c0;text-align:center;background:#e3f2fd;border-radius:6px;margin-top:12px;padding:12px 16px;font-size:13px}.hotel-advance-section .section-header{background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%)}.hotel-advance-info{background:#f8f9fa;padding:20px}.advance-note{color:#333;border-bottom:1px solid #e0e0e0;justify-content:space-between;align-items:center;margin:0;padding:10px 0;font-size:14px;display:flex}.advance-note:last-child{color:#d32f2f;border-bottom:none;font-weight:600}.advance-note strong{color:#555}.driver-prasadam-section .section-content{justify-content:space-between;align-items:center;padding:20px;display:flex}.driver-info{align-items:center;gap:16px;display:flex}.driver-icon{font-size:36px}.driver-details{flex-direction:column;display:flex}.driver-label{color:#333;margin-bottom:4px;font-size:16px;font-weight:600}.driver-note{color:#666;font-size:13px}.driver-amount{color:#2e7d32;font-size:24px;font-weight:700}.bill-summary-section{background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);border:2px solid #667eea}.summary-lines{padding:20px}.summary-line{border-bottom:1px solid #0000001a;justify-content:space-between;align-items:center;padding:12px 0;font-size:15px;display:flex}.summary-line:last-child{border-bottom:none}.summary-label{color:#333}.summary-value{color:#333;font-weight:600}.summary-line.total-line{background:#ffffff80;border:none;border-radius:8px;margin:8px 0;padding:16px 12px;font-size:18px}.summary-line.paid-line .summary-value.paid{color:#2e7d32}.summary-line.due-line{background:#ffffffb3;border:none;border-radius:8px;padding:16px 12px;font-size:18px}.summary-line.due-line.has-due .summary-value{color:#d32f2f}.summary-line.due-line.no-due .summary-value{color:#2e7d32}.payment-note{background:linear-gradient(135deg,#fff3e0 0%,#ffe0b2 100%);border:2px solid #ff9800;border-radius:12px;align-items:flex-start;gap:16px;margin-top:8px;padding:20px;display:flex}.note-icon{flex-shrink:0;font-size:32px}.note-content{flex:1}.note-content strong{color:#e65100;margin-bottom:8px;font-size:16px;display:block}.note-content p{color:#555;margin:0;font-size:14px}.advance-note-box{background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%);border-left:4px solid #2196f3;border-radius:8px;margin-top:15px;padding:15px}.advance-note-box p{color:#0d47a1;margin:0;font-size:.9rem;line-height:1.5}.advance-note-box strong{color:#1565c0;font-weight:600}.billing-summary-loading{text-align:center;color:#666;padding:40px}@media (max-width:768px){.bill-type-toggle{flex-direction:row;gap:8px}.bill-toggle-btn{padding:12px 16px;font-size:13px}.billing-cards-grid{grid-template-columns:1fr}.billing-card{height:auto;min-height:140px}.card-amount{font-size:24px}.section-header{flex-direction:column;align-items:flex-start;gap:8px}.members-bill-table-wrapper{padding:12px}.billing-table{font-size:11px}.billing-table th,.billing-table td{padding:8px 4px}.driver-prasadam-section .section-content{text-align:center;flex-direction:column;gap:12px}.summary-line{font-size:13px}.summary-line.total-line,.summary-line.due-line{font-size:15px}}@media (max-width:480px){.billing-table th,.billing-table td{padding:6px 2px;font-size:10px}.status-badge{padding:2px 4px;font-size:9px}}.summary-step{padding:0}.billing-view-toggle{background:#f5f5f5;border-radius:8px;gap:12px;width:fit-content;margin-bottom:20px;padding:4px;display:flex}.toggle-btn{color:#666;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.toggle-btn:hover{background:#0000000d}.toggle-btn.active{color:#1976d2;background:#fff;box-shadow:0 2px 4px #0000001a}.loading-billing{background:#fff;border:1px solid #e0e0e0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.loading-billing p{color:#666;font-size:15px}.summary-step .error-message{color:#dc2626;background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;margin-bottom:1rem;padding:.75rem}.summary-step .error-message .error-icon{margin-right:.5rem}.summary-step .summary-section{margin-bottom:1.5rem}.summary-step .members-list,.summary-step .bookings-list{flex-direction:column;gap:.75rem;display:flex}.summary-step .booking-item{background:#f0f9ff;border:1px solid #dbeafe;border-radius:6px;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding:.75rem;display:flex}.summary-step .booking-info{flex:1}.summary-step .booking-info .booking-title{color:#1e40af;margin-bottom:.25rem;font-weight:500}.summary-step .booking-info .booking-dates{color:#3730a3;margin-bottom:.25rem;font-size:.875rem}.summary-step .booking-info .booking-status{color:#6366f1;margin-bottom:.25rem;font-size:.75rem}.summary-step .booking-info .booking-price{color:#059669;font-size:.875rem;font-weight:600}.summary-step .remove-booking-button{color:#fff;cursor:pointer;background:#dc2626;border:none;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;transition:background .2s}.summary-step .remove-booking-button:hover{background:#b91c1c}.summary-step .empty-state{text-align:center;color:#6b7280;background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;padding:2rem}.summary-step .empty-state p{margin:0}.summary-step .section-total{color:#0c4a6e;background:#f0f9ff;border-radius:6px;justify-content:space-between;align-items:center;margin-top:1rem;padding:.75rem;font-weight:500;display:flex}.summary-step .section-total .total-amount{color:#0369a1;font-size:1.125rem;font-weight:600}.summary-step .grand-total-section{background:linear-gradient(#ecfdf5,#d1fae5);border:2px solid #10b981}.summary-step .grand-total{justify-content:space-between;align-items:center;padding:1rem;display:flex}.summary-step .grand-total-label{color:#065f46;font-size:1.25rem;font-weight:600}.summary-step .grand-total-amount{color:#047857;font-size:1.5rem;font-weight:700}.summary-step .total-note{color:#059669;padding:0 1rem 1rem;font-size:.875rem}.summary-step .terms-section{margin-top:1.5rem;margin-bottom:1.5rem}.summary-step .terms-content{color:#374151;white-space:pre-wrap;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;max-height:300px;margin-bottom:1rem;padding:1rem;font-size:.875rem;line-height:1.6;overflow-y:auto}.summary-step .terms-acceptance{background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border:2px solid #bae6fd;border-radius:10px;padding:1.25rem;box-shadow:0 2px 4px #0000000d}.summary-step .terms-acceptance .checkbox-label{cursor:pointer;color:#1f2937;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:.875rem;font-size:.95rem;line-height:1.6;transition:all .2s;display:flex}.summary-step .terms-acceptance .checkbox-label:hover{color:#111827}.summary-step .terms-acceptance .checkbox-text{flex:1}.summary-step .terms-acceptance .checkbox-label input[type=checkbox].terms-checkbox{cursor:pointer;accent-color:#2563eb;z-index:1;border-radius:4px;flex-shrink:0;width:1.35rem;min-width:1.35rem;height:1.35rem;margin-top:.2rem;transition:transform .15s,box-shadow .15s;appearance:auto!important;-webkit-appearance:checkbox!important;-moz-appearance:checkbox!important;opacity:1!important;visibility:visible!important;position:relative!important}.summary-step .terms-acceptance .checkbox-label input[type=checkbox].terms-checkbox:hover:not(:disabled){transform:scale(1.1);box-shadow:0 0 0 3px #2563eb1a}.summary-step .terms-acceptance .checkbox-label input[type=checkbox].terms-checkbox:disabled{cursor:not-allowed;opacity:.5!important}.summary-step .terms-link{color:#2563eb;border-bottom:2px solid #0000;padding-bottom:1px;font-weight:600;text-decoration:none;transition:all .2s}.summary-step .terms-link:hover{color:#1d4ed8;border-bottom-color:#1d4ed8}.summary-step .terms-link:visited{color:#7c3aed}.summary-step .loading-container{text-align:center;color:#6b7280;padding:2rem}.summary-step .loading-spinner{border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:40px;height:40px;margin:0 auto 1rem;animation:1s linear infinite spin}.summary-step .step-navigation{justify-content:space-between;gap:1rem;margin-top:2rem;display:flex}.summary-step .step-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:500;transition:all .2s;display:flex}.summary-step .step-btn[disabled],.summary-step .step-btn:disabled,.summary-step button.step-btn[disabled],.summary-step button.step-btn:disabled{opacity:.5!important;cursor:not-allowed!important;pointer-events:none!important;color:#9ca3af!important;box-shadow:none!important;filter:grayscale()!important;background:#d1d5db!important;transform:none!important}.summary-step .step-btn.primary[disabled],.summary-step .step-btn.primary:disabled,.summary-step button.step-btn.primary[disabled],.summary-step button.step-btn.primary:disabled{color:#9ca3af!important;box-shadow:none!important;filter:grayscale()!important;background:#d1d5db!important;transform:none!important}.summary-step .step-btn.secondary{color:#374151;background:#f3f4f6}.summary-step .step-btn.secondary:hover:not(:disabled){background:#e5e7eb}.summary-step .step-btn.primary{color:#fff;background:#10b981}.summary-step .step-btn.primary:hover:not(:disabled){background:#059669;transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}@media (max-width:768px){.summary-step .grand-total{text-align:center;flex-direction:column;gap:.5rem}.summary-step .grand-total-label,.summary-step .grand-total-amount{font-size:1.125rem}.summary-step .section-total{text-align:center;flex-direction:column;gap:.5rem}.summary-step .booking-item{flex-direction:column;align-items:stretch;gap:.75rem}.summary-step .remove-booking-button{width:100%;padding:.5rem 1rem;font-size:.875rem}.summary-step .step-navigation{flex-direction:column}.summary-step .step-btn{justify-content:center;width:100%}}@media (max-width:480px){.summary-step .terms-content{max-height:200px;padding:.75rem;font-size:.8125rem}.summary-step .checkbox-label{font-size:.875rem}.summary-step .terms-checkbox{width:1.125rem;height:1.125rem}.summary-step .grand-total-label{font-size:1rem}.summary-step .grand-total-amount{font-size:1.25rem}.summary-step .booking-item{padding:.625rem}.summary-step .booking-info .booking-title{font-size:.9375rem}.summary-step .booking-info .booking-dates,.summary-step .booking-info .booking-status,.summary-step .booking-info .booking-price{font-size:.8125rem}}.summary-step .booking-status-bar{background:linear-gradient(135deg,#f0f4ff 0%,#e8f0ff 100%);border:1px solid #667eea;border-radius:12px;margin-bottom:1rem;padding:1rem}.summary-step .status-bar-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.summary-step .status-bar-icon{font-size:1.1rem}.summary-step .status-bar-title{color:#333;font-size:.95rem;font-weight:600}.summary-step .status-bar-items{flex-wrap:wrap;gap:.5rem;display:flex}.summary-step .status-bar-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.85rem;transition:all .2s;display:flex}.summary-step .status-bar-item.urgent{background:#fff8e6;border-color:#f59e0b}.summary-step .status-bar-item.critical{background:#fef2f2;border-color:#ef4444;animation:1s ease-in-out infinite pulse-critical}.summary-step .status-room-name{color:#374151;text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-weight:500;overflow:hidden}.summary-step .status-timer{color:#667eea;font-family:Courier New,monospace;font-weight:600}.summary-step .status-bar-item.urgent .status-timer{color:#f59e0b}.summary-step .status-bar-item.critical .status-timer{color:#ef4444}.summary-step .expired-bookings-alert{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin-bottom:1rem;padding:1rem}.summary-step .expired-alert-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.summary-step .expired-icon{font-size:1.1rem}.summary-step .expired-title{color:#dc2626;flex:1;font-size:.95rem;font-weight:600}.summary-step .clear-all-btn{color:#dc2626;cursor:pointer;background:0 0;border:1px solid #dc2626;border-radius:6px;padding:.35rem .75rem;font-size:.8rem;font-weight:500;transition:all .2s}.summary-step .clear-all-btn:hover{color:#fff;background:#dc2626}.summary-step .expired-bookings-list{flex-direction:column;gap:.5rem;display:flex}.summary-step .expired-booking-item{background:#fff;border:1px solid #fecaca;border-radius:8px;justify-content:space-between;align-items:center;padding:.65rem .75rem;display:flex}.summary-step .expired-booking-info{flex-direction:column;gap:.15rem;display:flex}.summary-step .expired-hotel-name{color:#374151;font-size:.9rem;font-weight:500}.summary-step .expired-room-type{color:#6b7280;font-size:.8rem}.summary-step .expired-booking-actions{align-items:center;gap:.5rem;display:flex}.summary-step .dismiss-btn{color:#9ca3af;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1rem;line-height:1;transition:color .2s}.summary-step .dismiss-btn:hover{color:#6b7280}.summary-step .remove-booking-btn{color:#dc2626;cursor:pointer;background:#fee2e2;border:1px solid #fecaca;border-radius:6px;padding:.35rem .65rem;font-size:.8rem;font-weight:500;transition:all .2s}.summary-step .remove-booking-btn:hover:not(:disabled){color:#fff;background:#dc2626}.summary-step .remove-booking-btn:disabled{opacity:.6;cursor:not-allowed}.summary-step .expired-hint{color:#6b7280;margin:.75rem 0 0;font-size:.8rem;font-style:italic}@media (max-width:768px){.summary-step .booking-status-bar{padding:.85rem}.summary-step .status-bar-item{padding:.4rem .6rem;font-size:.8rem}.summary-step .status-room-name{max-width:120px}.summary-step .expired-booking-item{flex-direction:column;align-items:flex-start;gap:.5rem}.summary-step .expired-booking-actions{justify-content:flex-end;width:100%}}@media (max-width:480px){.summary-step .status-bar-items{flex-direction:column}.summary-step .status-bar-item{justify-content:space-between}.summary-step .status-room-name{flex:1;max-width:none}}.payment-gateway-selection{background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex}.payment-gateway-container{background:#fff;border-radius:16px;width:100%;max-width:800px;padding:2.5rem;box-shadow:0 10px 40px #0000001a}.payment-gateway-header{border-bottom:2px solid #f0f0f0;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.back-button{cursor:pointer;color:#333;background:#f5f5f5;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.95rem;font-weight:500;transition:all .3s;display:flex}.back-button:hover:not(:disabled){background:#e0e0e0}.back-button:disabled{opacity:.5;cursor:not-allowed}.payment-gateway-header h2{color:#333;flex:1;margin:0;font-size:1.75rem;font-weight:700}.payment-amount-display{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;display:flex}.payment-amount-display .label{opacity:.9;font-size:1rem;font-weight:500}.payment-amount-display .amount{font-size:2rem;font-weight:700}.gateway-options{flex-direction:column;gap:1.5rem;margin-bottom:2rem;display:flex}.gateway-card{cursor:pointer;border:2px solid #e1e8ed;border-radius:12px;gap:1rem;padding:1.5rem;transition:all .3s;display:flex}.gateway-card:hover{border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea26}.gateway-card.selected{background:linear-gradient(135deg,#667eea0d 0%,#764ba20d 100%);border-color:#667eea;box-shadow:0 4px 16px #667eea33}.gateway-radio{align-items:flex-start;padding-top:.25rem;display:flex}.gateway-radio input[type=radio]{cursor:pointer;accent-color:#667eea;width:20px;height:20px}.gateway-content{flex:1;gap:1.5rem;display:flex}.gateway-logo{background:#f8f9fa;border-radius:8px;justify-content:center;align-items:center;width:120px;height:80px;display:flex;overflow:hidden}.gateway-logo img{object-fit:contain;max-width:100%;max-height:100%}.gateway-logo-placeholder{color:#fff;text-align:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;width:100%;height:100%;padding:.5rem;font-size:.9rem;font-weight:600;display:flex}.gateway-info{flex:1}.gateway-info h3{color:#333;margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.gateway-info p{color:#666;margin:0 0 1rem;font-size:.95rem}.gateway-features{grid-template-columns:repeat(2,1fr);gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.gateway-features li{color:#555;align-items:center;gap:.25rem;font-size:.9rem;display:flex}.payment-actions{justify-content:center;margin-bottom:1.5rem;display:flex}.proceed-button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;min-width:250px;padding:1rem 3rem;font-size:1.1rem;font-weight:600;transition:all .3s;display:flex}.proceed-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #667eea66}.proceed-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.payment-security-note{color:#666;background:#f8f9fa;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:1rem;font-size:.85rem;display:flex}.payment-security-note svg{color:#28a745}@media (max-width:768px){.payment-gateway-selection{padding:1rem}.payment-gateway-container{border-radius:12px;padding:1.5rem}.payment-gateway-header{flex-direction:row;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem}.payment-gateway-header h2{font-size:1.25rem}.back-button{padding:.5rem .75rem;font-size:.9rem}.payment-amount-display{flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.25rem}.payment-amount-display .label{font-size:.9rem}.payment-amount-display .amount{font-size:1.75rem}.gateway-options{gap:1rem}.gateway-card{flex-direction:column;gap:.75rem;padding:1rem}.gateway-radio{align-self:flex-start;padding-top:0}.gateway-content{flex-direction:column;gap:1rem}.gateway-logo{width:100%;height:60px}.gateway-info h3{font-size:1.1rem}.gateway-info p{font-size:.9rem}.gateway-features{grid-template-columns:1fr;gap:.4rem}.gateway-features li{font-size:.85rem}.proceed-button{width:100%;min-width:auto;padding:.875rem 2rem;font-size:1rem}.payment-security-note{padding:.875rem;font-size:.8rem}}@media (max-width:480px){.payment-gateway-selection{min-height:100vh;padding:.5rem}.payment-gateway-container{border-radius:8px;max-width:100%;padding:1rem}.payment-gateway-header{margin-bottom:1rem;padding-bottom:.75rem}.payment-gateway-header h2{font-size:1.1rem}.back-button{gap:.3rem;padding:.4rem .6rem;font-size:.85rem}.back-button svg{width:16px;height:16px}.payment-amount-display{margin-bottom:1rem;padding:1rem}.payment-amount-display .label{font-size:.85rem}.payment-amount-display .amount{font-size:1.5rem}.gateway-options{gap:.75rem;margin-bottom:1rem}.gateway-card{gap:.5rem;padding:.875rem}.gateway-radio input[type=radio]{width:18px;height:18px}.gateway-content{gap:.75rem}.gateway-logo{height:50px}.gateway-logo-placeholder{padding:.4rem;font-size:.8rem}.gateway-info h3{margin-bottom:.4rem;font-size:1rem}.gateway-info p{margin-bottom:.75rem;font-size:.85rem}.gateway-features{gap:.3rem}.gateway-features li{font-size:.8rem}.payment-actions{margin-bottom:1rem}.proceed-button{padding:.75rem 1.5rem;font-size:.95rem}.payment-security-note{padding:.75rem;font-size:.75rem}.payment-security-note svg{width:14px;height:14px}}.payment-button-container{background:#fff;border-radius:12px;max-width:500px;margin:0 auto;padding:24px;box-shadow:0 2px 8px #0000001a}.payment-description{color:#666;text-align:center;margin:0 0 20px;font-size:14px}.payment-breakdown{background:#f8f9fa;border-radius:8px;margin-bottom:20px;padding:16px}.payment-row{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.payment-row:last-child{margin-bottom:0}.payment-label{color:#666;font-size:14px;font-weight:500}.payment-value{color:#333;font-size:16px;font-weight:600}.payment-row.base-amount .payment-label{color:#333;font-size:15px}.payment-row.base-amount .payment-value{color:#333;font-size:18px}.payment-row.tax-row .payment-label{color:#888;padding-left:12px;font-size:13px}.payment-row.tax-row .payment-value{color:#666;font-size:14px}.payment-divider{background:#ddd;height:1px;margin:12px 0}.payment-row.total-amount{border-top:2px solid #ddd;margin-top:12px;padding-top:12px}.payment-row.total-amount .payment-label{color:#333;font-size:16px;font-weight:700}.payment-row.total-amount .payment-value{color:#28a745;font-size:20px;font-weight:700}.payment-action-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;width:100%;padding:14px 24px;font-size:16px;font-weight:600;transition:all .3s;box-shadow:0 4px 12px #667eea4d}.payment-action-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.payment-action-btn:active{transform:translateY(0)}.payment-action-btn:disabled{color:#666;cursor:not-allowed;box-shadow:none;background:#ccc;transform:none}.payment-info-text{color:#888;text-align:center;margin:12px 0 0;font-size:12px;font-style:italic}@media (max-width:576px){.payment-button-container{padding:20px 16px}.payment-breakdown{padding:14px}.payment-label{font-size:13px}.payment-value{font-size:15px}.payment-row.base-amount .payment-label{font-size:14px}.payment-row.base-amount .payment-value{font-size:16px}.payment-row.total-amount .payment-label{font-size:15px}.payment-row.total-amount .payment-value{font-size:18px}.payment-action-btn{padding:12px 20px;font-size:15px}}.custom-alert-overlay{z-index:99999;-webkit-backdrop-filter:blur(6px);overscroll-behavior:contain;box-sizing:border-box;isolation:isolate;background-color:#000000a6;justify-content:center;align-items:center;width:100vw;height:100vh;margin:0;padding:16px;animation:.2s ease-out alertFadeIn;display:flex;inset:0;position:fixed!important;transform:none!important}@keyframes alertFadeIn{0%{opacity:0}to{opacity:1}}@keyframes alertSlideIn{0%{opacity:0;transform:scale(.9)translateY(-20px)}to{opacity:1;transform:scale(1)translateY(0)}}.custom-alert-container{background:#fff;border-radius:16px;flex-direction:column;width:100%;min-width:320px;max-width:420px;animation:.3s cubic-bezier(.34,1.56,.64,1) alertSlideIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d}.custom-alert-header{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 24px 16px;display:flex}.custom-alert-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;min-width:56px;height:56px;min-height:56px;display:flex}.custom-alert-icon svg{flex-shrink:0;width:28px;height:28px}.custom-alert-icon.error{color:#dc2626;background:linear-gradient(135deg,#fee2e2 0%,#fecaca 100%)}.custom-alert-icon.warning{color:#d97706;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%)}.custom-alert-icon.success{color:#059669;background:linear-gradient(135deg,#d1fae5 0%,#a7f3d0 100%)}.custom-alert-icon.info{color:#4f46e5;background:linear-gradient(135deg,#e0e7ff 0%,#c7d2fe 100%)}.custom-alert-icon.auth{color:#dc2626;background:linear-gradient(135deg,#fee2e2 0%,#fecaca 100%)}.custom-alert-title{color:#111827;text-align:center;margin:0;font-size:1.25rem;font-weight:600;line-height:1.4}.custom-alert-body{text-align:center;padding:0 24px 20px}.custom-alert-message{color:#4b5563;white-space:pre-wrap;word-break:break-word;text-align:center;margin:0;font-size:.9375rem;line-height:1.6}.custom-alert-footer{background:#fafafa;border-top:1px solid #f3f4f6;justify-content:center;gap:12px;padding:16px 24px 24px;display:flex}.custom-alert-btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-width:100px;padding:12px 24px;font-size:.9375rem;font-weight:600;transition:all .2s;display:inline-flex}.custom-alert-btn:focus{outline:none;box-shadow:0 0 0 3px #6366f166}.custom-alert-btn:active{transform:scale(.97)}.custom-alert-btn.cancel{color:#374151;background:#fff;border:1px solid #d1d5db}.custom-alert-btn.cancel:hover{background:#f9fafb;border-color:#9ca3af}.custom-alert-btn.confirm{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 4px 14px #667eea66}.custom-alert-btn.confirm:hover{background:linear-gradient(135deg,#5a67d8 0%,#6b46c1 100%);transform:translateY(-1px);box-shadow:0 6px 20px #667eea80}.custom-alert-btn.confirm.error{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);box-shadow:0 4px 14px #ef444466}.custom-alert-btn.confirm.error:hover{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);box-shadow:0 6px 20px #ef444480}.custom-alert-btn.confirm.warning{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%);box-shadow:0 4px 14px #f59e0b66}.custom-alert-btn.confirm.warning:hover{background:linear-gradient(135deg,#d97706 0%,#b45309 100%);box-shadow:0 6px 20px #f59e0b80}.custom-alert-btn.confirm.success{background:linear-gradient(135deg,#10b981 0%,#059669 100%);box-shadow:0 4px 14px #10b98166}.custom-alert-btn.confirm.success:hover{background:linear-gradient(135deg,#059669 0%,#047857 100%);box-shadow:0 6px 20px #10b98180}.custom-alert-btn.confirm.auth{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);box-shadow:0 4px 14px #ef444466}.custom-alert-btn.confirm.auth:hover{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);box-shadow:0 6px 20px #ef444480}@media (max-width:480px){.custom-alert-overlay{align-items:center;padding:16px}.custom-alert-container{border-radius:20px;min-width:auto;max-width:100%;margin:0 8px}.custom-alert-header{padding:24px 20px 12px}.custom-alert-icon{width:52px;min-width:52px;height:52px;min-height:52px}.custom-alert-icon svg{width:26px;height:26px}.custom-alert-title{font-size:1.125rem}.custom-alert-body{padding:0 20px 16px}.custom-alert-message{font-size:.875rem}.custom-alert-footer{flex-direction:column-reverse;gap:10px;padding:16px 20px 20px}.custom-alert-btn{width:100%;padding:14px 20px;font-size:1rem}}@media (max-width:360px){.custom-alert-container{margin:0 4px}.custom-alert-header{padding:20px 16px 10px}.custom-alert-body{padding:0 16px 14px}.custom-alert-footer{padding:14px 16px 18px}}.content-container{max-width:100%}.content-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #00000014}.content-section h3{color:#111827;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 .5rem;font-size:1.35rem;font-weight:700}.payment-step-description{color:#6b7280;margin-bottom:1.5rem;font-size:.95rem;line-height:1.5}.payment-loading{background:linear-gradient(135deg,#f9fafb 0%,#f3f4f6 100%);border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.payment-loading .spinner{border:3px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;width:48px;height:48px;margin-bottom:1.25rem;animation:.8s linear infinite spin}.payment-loading p{color:#6b7280;font-size:1rem;font-weight:500}.payment-details-container{flex-direction:column;gap:1.5rem;display:flex}.payment-info-card{background:linear-gradient(135deg,#f9fafb 0%,#f3f4f6 100%);border:1px solid #e5e7eb;border-radius:14px;padding:1.25rem}.payment-info-card h4{color:#111827;border-bottom:2px solid #e5e7eb;align-items:center;gap:.5rem;margin:0 0 1rem;padding-bottom:.75rem;font-size:1rem;font-weight:600;display:flex}.payment-info-card h4:before{content:"💳";font-size:1.1rem}.info-grid{flex-direction:column;gap:.5rem;display:flex}.info-item{background:#fff;border:1px solid #e5e7eb;border-radius:10px;justify-content:space-between;align-items:center;padding:.85rem 1rem;transition:all .2s;display:flex}.info-item:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000a}.info-item.highlight{background:linear-gradient(135deg,#667eea15 0%,#764ba215 100%);border:2px solid #667eea;padding:1rem 1.25rem}.info-label{color:#6b7280;font-size:.9rem;font-weight:500}.info-item.highlight .info-label{color:#374151;font-weight:600}.info-item.highlight .info-value{color:#667eea;font-size:1.15rem;font-weight:700}.payment-complete-message{text-align:center;background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border:2px solid #22c55e;border-radius:16px;padding:2.5rem}.payment-complete-message .success-icon{margin-bottom:1.25rem}.payment-complete-message h4{color:#16a34a;margin:0 0 .75rem;font-size:1.35rem;font-weight:700}.payment-complete-message p{color:#4b5563;margin:0;font-size:1rem;line-height:1.6}.payment-info-note{background:linear-gradient(135deg,#fefce8 0%,#fef3c7 100%);border:1px solid #fde68a;border-radius:12px;padding:1.5rem 1.75rem}.payment-info-note h5{color:#92400e;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.05rem;font-weight:600;display:flex}.payment-info-note ul{margin:0;padding-left:1.25rem;list-style:none}.payment-info-note ul li{color:#78350f;margin-bottom:.5rem;padding-left:.5rem;font-size:.9rem;line-height:1.7;position:relative}.payment-info-note ul li:before{content:"•";color:#f59e0b;font-weight:700;position:absolute;left:-1rem}.payment-info-note ul li:last-child{margin-bottom:0}.transaction-success{text-align:center;background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 2px 8px #0000001a}.success-icon{justify-content:center;margin-bottom:1rem;display:flex}.alert{border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem 1.25rem;font-size:.95rem;animation:.3s slideDown;display:flex}.alert-error{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.alert button{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:1.5rem;transition:opacity .2s;display:flex}.transaction-success .success-icon{margin-bottom:1.5rem}.transaction-success h4{color:#16a34a;margin:0 0 .75rem;font-size:1.75rem;font-weight:700}.transaction-success p{color:#4b5563;margin:0;font-size:1.1rem}.transaction-details-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;margin-bottom:2rem;padding:1.75rem}.transaction-details-card h4{color:#111827;border-bottom:2px solid #e5e7eb;margin:0 0 1.25rem;padding-bottom:.75rem;font-size:1.1rem;font-weight:600}.transaction-info{flex-direction:column;gap:.75rem;display:flex}.transaction-row{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.transaction-label{color:#6b7280;font-size:.95rem;font-weight:500}.transaction-value{color:#111827;font-family:Monaco,Courier New,monospace;font-size:.95rem;font-weight:600}.transaction-value.success{color:#16a34a;font-family:inherit}.success-message-box{background:linear-gradient(135deg,#f0fdf4 0%,#ecfdf5 100%);border:2px solid #22c55e;border-radius:16px;margin-bottom:2rem;padding:2rem}.success-message-box p{color:#374151;margin:0 0 1rem}.success-message-box strong{color:#16a34a;font-size:1.1rem}.success-message-box ul{margin:1rem 0;padding-left:0;list-style:none}.success-message-box ul li{color:#374151;align-items:center;gap:.5rem;margin-bottom:.25rem;font-size:.95rem;line-height:2;display:flex}.success-message-box ul li:last-child{margin-bottom:0}.redirect-notice{color:#16a34a;text-align:center;border-top:2px solid #22c55e;margin-top:1.5rem;padding-top:1.25rem;font-size:.95rem;font-style:italic;font-weight:600}.transactions-placeholder{background:#fff;border-radius:12px;margin-bottom:2rem;padding:2rem;box-shadow:0 2px 8px #0000001a}.transactions-placeholder p{color:#666;margin-bottom:1rem}.transactions-placeholder ul{color:#666;padding-left:1.5rem;list-style:outside}.transactions-placeholder ul li{margin-bottom:.5rem}@media (max-width:768px){.content-section{border-radius:12px;padding:1.5rem}.content-section h3{font-size:1.25rem}.payment-details-container{gap:1.25rem}.payment-info-card{border-radius:12px;padding:1.25rem}.payment-info-card h4{font-size:1rem}.info-item{flex-direction:column;align-items:flex-start;gap:.35rem;padding:.85rem 1rem}.info-item.highlight{padding:1rem 1.25rem}.info-label{font-size:.85rem}.info-value{font-size:1rem;font-weight:600}.payment-complete-message{border-radius:12px;padding:1.75rem}.payment-complete-message h4{font-size:1.15rem}.payment-info-note{border-radius:10px;padding:1.25rem}.payment-info-note h5{font-size:.95rem}.payment-info-note ul li{font-size:.85rem}.transaction-success{border-radius:12px;padding:2rem 1.5rem}.transaction-success h4{font-size:1.35rem}.transaction-row{flex-direction:column;align-items:flex-start;gap:.35rem;padding:.85rem 1rem}.success-message-box{border-radius:12px;padding:1.5rem}}@media (max-width:480px){.content-section{border-left:none;border-right:none;border-radius:0;margin:0 -.5rem;padding:1.25rem}.content-section h3{font-size:1.15rem}.payment-step-description{margin-bottom:1.5rem;font-size:.9rem}.payment-info-card h4{font-size:.95rem}.payment-info-card h4:before{display:none}.payment-info-note ul li{font-size:.85rem}}.booking-status-bar{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border:1px solid #93c5fd;border-radius:16px;margin-bottom:1.25rem;padding:1.25rem 1.5rem}.status-bar-header{border-bottom:1px solid #bfdbfe;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.status-bar-icon{font-size:1.25rem}.status-bar-title{color:#1e40af;font-size:1rem;font-weight:600}.status-bar-items{flex-wrap:wrap;gap:.75rem;display:flex}.status-bar-item{background:#fff;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.9rem;transition:all .2s;display:flex;box-shadow:0 2px 4px #0000000a}.status-bar-item:hover{box-shadow:0 4px 8px #00000014}.status-bar-item.urgent{background:linear-gradient(135deg,#fefce8 0%,#fef3c7 100%);border-color:#fbbf24}.status-bar-item.critical{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border-color:#f87171;animation:1s ease-in-out infinite pulse-critical}.status-room-name{color:#374151;text-overflow:ellipsis;white-space:nowrap;max-width:180px;font-weight:500;overflow:hidden}.status-timer{color:#2563eb;font-family:Monaco,Courier New,monospace;font-size:.95rem;font-weight:700}.status-bar-item.urgent .status-timer{color:#d97706}.status-bar-item.critical .status-timer{color:#dc2626}.expired-bookings-alert{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border:1px solid #fca5a5;border-radius:16px;margin-bottom:1.25rem;padding:1.25rem 1.5rem}.expired-alert-header{border-bottom:1px solid #fecaca;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.expired-icon{font-size:1.25rem}.expired-title{color:#b91c1c;flex:1;font-size:1rem;font-weight:600}.clear-all-btn{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #dc2626;border-radius:8px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s}.clear-all-btn:hover{color:#fff;background:#dc2626;transform:translateY(-1px)}.expired-bookings-list{flex-direction:column;gap:.75rem;display:flex}.expired-booking-item{background:#fff;border:1px solid #fecaca;border-radius:12px;justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex;box-shadow:0 2px 4px #0000000a}.expired-booking-info{flex-direction:column;gap:.25rem;display:flex}.expired-hotel-name{color:#374151;font-size:.95rem;font-weight:600}.expired-room-type{color:#6b7280;font-size:.85rem}.expired-booking-actions{align-items:center;gap:.75rem;display:flex}.dismiss-btn{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.35rem;font-size:1.1rem;line-height:1;transition:all .2s}.dismiss-btn:hover{color:#6b7280;background:#f3f4f6}.remove-booking-btn{color:#dc2626;cursor:pointer;background:#fff;border:1px solid #fca5a5;border-radius:8px;padding:.5rem .85rem;font-size:.85rem;font-weight:600;transition:all .2s}.remove-booking-btn:hover:not(:disabled){color:#fff;background:#dc2626;transform:translateY(-1px)}.remove-booking-btn:disabled{opacity:.6;cursor:not-allowed}.expired-hint{color:#6b7280;margin:1rem 0 0;font-size:.85rem;font-style:italic}@media (max-width:768px){.booking-status-bar{border-radius:12px;padding:1rem}.status-bar-header{margin-bottom:.75rem;padding-bottom:.5rem}.status-bar-item{border-radius:10px;padding:.65rem .85rem;font-size:.85rem}.status-room-name{max-width:130px}.expired-bookings-alert{border-radius:12px;padding:1rem}.expired-booking-item{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1rem}.expired-booking-actions{justify-content:flex-end;width:100%}}@media (max-width:480px){.status-bar-items{flex-direction:column}.status-bar-item{justify-content:space-between;width:100%}.status-room-name{flex:1;max-width:none}.expired-booking-actions{justify-content:space-between;gap:.5rem}.remove-booking-btn{text-align:center;flex:1}}:root{--header-height:0px}.registration-page-container{background:#f5f7fa;flex-direction:column;min-height:100vh;display:flex}.registration-main-layout{flex:1;grid-template-columns:260px 1fr;min-height:0;display:grid}.registration-global-header{z-index:1000;color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex-shrink:0;padding:.5rem 1.25rem;transition:transform .3s,padding .2s,box-shadow .2s;position:sticky;top:0;left:0;right:0;box-shadow:0 2px 8px #0000001a}.registration-global-header.hidden{box-shadow:none;transform:translateY(-100%)}.registration-global-header.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.35rem 1.25rem;box-shadow:0 4px 20px #0003}.registration-global-header-container{justify-content:flex-start;align-items:center;gap:1rem;max-width:1400px;margin:0 auto;display:flex}.registration-back-btn{cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;background:#ffffff26;border:1.5px solid #ffffff4d;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;gap:5px;min-height:32px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 2px 8px #ffffff1a}.registration-back-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px);box-shadow:0 4px 12px #fff3}.registration-back-btn:active{transform:translateY(0);box-shadow:0 2px 8px #ffffff26}.registration-card-section{box-sizing:border-box;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%) padding-box content-box;border-radius:20px;min-height:100vh;padding:calc(1.5rem + 140px) 1.5rem 2rem calc(1.5rem + 250px)}.registration-card-section>:not(.alert){background:#fff;border-radius:20px;padding:2rem;animation:.5s ease-out slideInUp;box-shadow:0 20px 60px #00000026}.registration-card-section .content-container{box-shadow:none!important;background:0 0!important;border-radius:0!important;padding:0!important}.registration-card-section .content-section{background:0 0;padding:1rem}.registration-global-header.scrolled~.registration-card-section{padding-top:calc(2rem + 90px)}.registration-header-content{text-align:center;flex:1;transition:all .3s}.registration-global-header.scrolled .registration-header-content h2.registration-title{margin-bottom:.1rem;font-size:1.1rem}.registration-global-header.scrolled .registration-subtitle{font-size:.8rem}.registration-global-header.scrolled .registration-step-title{font-size:.75rem}.registration-header-content h2.registration-title{margin-bottom:.15rem;font-size:1.3rem;font-weight:700;transition:all .2s}.registration-subtitle{opacity:.9;margin:0;font-size:.85rem;transition:all .2s}.registration-id{color:#e0e7ff;margin-top:.15rem;font-size:.8rem;font-weight:500}.registration-step-title{opacity:.95;margin-top:.25rem;font-size:.8rem;font-weight:500;transition:all .2s}.registration-header-actions{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.75rem;display:flex}.registration-delete-btn{cursor:pointer;color:#fee2e2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8717133;border:1.5px solid #f8717166;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:100px;min-height:36px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 2px 8px #dc262626}.registration-delete-btn:hover:not(:disabled){color:#fecaca;background:#f871714d;border-color:#f8717199;transform:translateY(-1px);box-shadow:0 4px 12px #dc262640}.registration-delete-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #dc262633}.registration-delete-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.registration-close-btn{cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1.5px solid #ffffff4d;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:100px;min-height:36px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 2px 8px #ffffff1a}.registration-close-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px);box-shadow:0 4px 12px #fff3}.registration-close-btn:active{transform:translateY(0);box-shadow:0 2px 8px #ffffff26}.registration-progress-sidebar{background:#fff;border-right:1px solid #e5e7eb;align-self:start;height:calc(100vh - 70px);padding:2rem 1.5rem;transition:top .3s,height .3s;position:sticky;top:70px;overflow-y:auto;box-shadow:2px 0 10px #00000008}.registration-progress-sidebar.header-hidden{height:100vh;top:0}.sidebar-header{border-bottom:2px solid #e5e7eb;margin-bottom:2rem;padding-bottom:1rem}.sidebar-header h3{color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;margin:0 0 .5rem;font-size:.75rem;font-weight:600}.sidebar-header p{color:#6b7280;margin:0;font-size:.9rem}.registration-card-section .step-navigation{display:none}.registration-card-section{background:#f5f7fa;min-height:calc(100vh - 60px);padding:1rem 1.5rem 5rem;overflow-y:auto}.registration-card-section>*{max-width:1200px;margin:0 auto}.bottom-nav-container{z-index:800;pointer-events:none;background:linear-gradient(#f5f7fa00 0%,#f5f7fa 100%);justify-content:space-between;align-items:center;padding:2rem 0 0;display:flex;position:fixed;bottom:0;left:260px;right:0}.bottom-nav-btn{cursor:pointer;color:#667eea;pointer-events:auto;background:#fff;border:none;align-items:center;gap:0;min-height:56px;padding:18px 20px;font-size:1rem;font-weight:600;transition:all .3s;display:flex;overflow:hidden;box-shadow:0 -2px 20px #0000001a}.bottom-nav-btn.prev{border-radius:0 20px 0 0;padding-left:20px}.bottom-nav-btn.next{border-radius:20px 0 0;padding-right:20px}.bottom-nav-btn .nav-label{opacity:1;white-space:nowrap;max-width:150px;transition:all .3s}.bottom-nav-btn.prev .nav-label{margin-left:8px}.bottom-nav-btn.next .nav-label{margin-right:8px}.bottom-nav-btn:hover{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding-left:20px;padding-right:20px}.bottom-nav-btn:disabled{opacity:.4;cursor:not-allowed}.bottom-nav-btn:disabled:hover{color:#667eea;background:#fff}.bottom-nav-btn.hidden{opacity:0;pointer-events:none}.bottom-nav-btn svg{flex-shrink:0}.registration-global-footer{z-index:800;opacity:0;background:#fff;border-top:2px solid #e9ecef;transition:transform .3s,opacity .3s;position:fixed;bottom:0;left:240px;right:0;transform:translateY(100%);box-shadow:0 -4px 12px #00000014}.registration-global-footer.visible{opacity:1;transform:translateY(0)}.registration-global-footer.auto-hidden{opacity:0;transform:translateY(100%)}.step-navigation{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex}.progress-steps{flex-direction:column;align-items:center;gap:1.5rem;display:flex;position:relative}.progress-step-wrapper{flex-direction:column;align-items:center;width:100%;display:flex;position:relative}.progress-step{cursor:pointer;background:#fff;border:3px solid #e5e7eb;border-radius:25px;flex-direction:row;flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:90px;height:45px;margin-bottom:.5rem;transition:all .3s;display:flex;position:relative}.progress-step.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#0000;transform:scale(1.05);box-shadow:0 4px 16px #667eea66}.progress-step.completed{color:#fff;background:#10b981;border-color:#10b981}.progress-step.pending{color:#9ca3af;background:#fff;border-color:#e5e7eb}.progress-step:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #0000001a}.progress-step:disabled{cursor:not-allowed;opacity:.6}.step-icon{font-size:1.1rem;line-height:1}.step-number{background:#ffffff40;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;display:flex}.progress-step.pending .step-number{color:#6b7280;background:#f3f4f6}.step-label{color:#374151;text-align:center;font-size:.9rem;font-weight:600;line-height:1.3}.progress-step.active+.step-label{color:#667eea;font-weight:700}.progress-step-wrapper:has(.progress-step.active) .step-label{color:#667eea;font-weight:700}.step-connector{z-index:1;background:#e5e7eb;width:3px;height:1.5rem;margin-top:.5rem;transition:background-color .3s;top:100%;left:50%;transform:translate(-50%)}.step-connector.completed{background:#10b981}.progress-step-wrapper:last-child .step-connector{display:none}.content-container{width:100%;max-width:100%;margin:0 auto}.content-section h3{color:#333;text-align:center;margin-bottom:1.2rem;font-size:1.6rem;font-weight:600}.yatra-rules{flex-direction:column;gap:1rem;margin-bottom:1.5rem;display:flex}.yatra-rules.compact{gap:.6rem;margin-bottom:1.2rem}.rule-item{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;padding:1.2rem;transition:all .3s;box-shadow:0 2px 8px #0000000d}.rule-item.compact{border-radius:6px;padding:.8rem 1rem}.rule-item.inline-format{background:linear-gradient(90deg,#f8f9fa 0%,#fff 100%);border-left:3px solid #667eea}.rule-item:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.rule-inline{flex-wrap:wrap;align-items:flex-start;gap:.8rem;display:flex}.rule-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.rule-icon{opacity:.8;font-size:1rem}.rule-title{color:#495057;text-transform:capitalize;flex-shrink:0;min-width:fit-content;margin:0;font-size:1rem;font-weight:700;position:relative}.rule-title:after{content:"";opacity:.6;background:#667eea;width:100%;height:2px;position:absolute;bottom:-1px;left:0}.rule-content{color:#6c757d;flex:1;min-width:200px;margin:0;font-size:.95rem;line-height:1.5}.no-rules{text-align:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:10px;margin-bottom:1.5rem;padding:1.5rem}.no-rules.compact{text-align:left;align-items:center;gap:1rem;margin-bottom:1.2rem;padding:1.2rem;display:flex}.no-rules-icon{opacity:.6;font-size:1.5rem}.no-rules-content{flex:1}.no-rules p{color:#6c757d;margin-bottom:.3rem}.no-rules p:last-child{margin-bottom:0;font-size:.9rem}.yatra-basic-info{background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;margin-top:2rem;padding:1.5rem}.yatra-basic-info h4{color:#333;margin-bottom:1rem;font-size:1.3rem;font-weight:600}.info-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.info-item{border:1px solid #e9ecef;border-radius:8px;flex-direction:column;gap:.3rem;padding:1rem;display:flex}.info-item.full-width{grid-column:1/-1}.info-label{color:#6c757d;text-transform:uppercase;letter-spacing:.5px;font-size:.9rem;font-weight:600}.info-value{color:#333;font-size:1rem;font-weight:500}.members-placeholder,.hotels-placeholder,.summary-placeholder,.payment-placeholder,.transactions-placeholder{text-align:center;background:#f8f9fa;border:2px dashed #dee2e6;border-radius:10px;padding:3rem 2rem}.members-placeholder p,.hotels-placeholder p,.summary-placeholder p,.payment-placeholder p,.transactions-placeholder p{color:#6c757d;margin-bottom:1rem;font-size:1.1rem}.members-placeholder ul,.hotels-placeholder ul,.summary-placeholder ul,.payment-placeholder ul,.transactions-placeholder ul{text-align:left;color:#6c757d;display:inline-block}.transaction-success{text-align:center;background:#f8f9fa;border:2px solid #28a745;border-radius:15px;margin-bottom:2rem;padding:2rem}.success-icon{margin-bottom:1rem}.transaction-success h4{color:#28a745;margin-bottom:.5rem;font-size:1.5rem}.transaction-success p{color:#6c757d;font-size:1.1rem}.step-navigation{z-index:800;background:#fff;border-top:2px solid #e9ecef;justify-content:space-between;align-items:center;padding:1rem 2rem;transition:left .3s;display:flex;bottom:0;left:240px;right:0;box-shadow:0 -4px 12px #00000014}.step-btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.step-btn .btn-text-full{display:inline}.step-btn .btn-text-short{display:none}.step-btn.success{color:#fff;background:linear-gradient(135deg,#28a745 0%,#20c997 100%)}.step-btn.success:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #28a74566}.full-page-container{z-index:1100;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);position:fixed;inset:0;overflow-y:auto}.full-page-view{background:#fff;width:100%;min-height:100vh}.full-page-header{z-index:100;color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);align-items:center;gap:1.5rem;padding:1.5rem 2rem;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0000001a}.full-page-header .back-btn{cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1.5px solid #ffffff4d;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .3s;display:flex;box-shadow:0 2px 8px #ffffff1a}.full-page-header .back-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px);box-shadow:0 4px 12px #fff3}.full-page-header h2{margin:0;font-size:1.5rem;font-weight:700}.full-page-content{max-width:1400px;min-height:calc(100vh - 80px);margin:0 auto;padding:2rem}@media (max-width:1024px) and (min-width:769px){.registration-main-layout{grid-template-columns:180px 1fr}.registration-progress-sidebar{height:calc(100vh - 50px);padding:1.5rem .75rem}.progress-step{border-radius:20px;width:75px;height:38px}.step-icon{font-size:.9rem}.step-number{width:18px;height:18px;font-size:.65rem}.step-label{font-size:.75rem}.step-connector{height:1.25rem}.registration-card-section{padding:1rem 1.25rem 5rem}.bottom-nav-container{left:180px}}@media (max-width:768px){.registration-main-layout{grid-template-rows:auto 1fr;grid-template-columns:1fr}.registration-global-header{z-index:1000;padding:.35rem .5rem;position:sticky;top:0}.registration-global-header.scrolled{padding:.25rem .5rem}.registration-global-header-container{flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem}.registration-back-btn{border-radius:5px;justify-content:center;gap:3px;width:auto;min-height:26px;padding:4px 8px;font-size:10px}.registration-back-btn svg{width:12px;height:12px}.registration-header-content{text-align:left;flex:1}.registration-header-content h2.registration-title{margin-bottom:.05rem;font-size:1rem;line-height:1.2}.registration-subtitle{font-size:.65rem}.registration-step-title{margin-top:.05rem;font-size:.6rem;line-height:1.1}.registration-step-title h3{font-size:inherit;line-height:inherit;margin:0}.registration-progress-sidebar{top:var(--header-height,0px);z-index:999;align-self:unset;background:#fff;border-bottom:1px solid #e5e7eb;border-right:none;width:100%;padding:.75rem .5rem;position:sticky;overflow:auto visible;box-shadow:0 2px 8px #0000000d;height:auto!important;min-height:unset!important;max-height:none!important}.registration-progress-sidebar.header-hidden{top:0;height:auto!important}.sidebar-header{display:none}.progress-steps{flex-direction:row;justify-content:center;align-items:flex-start;gap:.75rem;width:max-content;min-width:100%;padding:0 .25rem}.progress-step-wrapper{flex-direction:column;flex:none;align-items:center;gap:.35rem;width:auto;padding-bottom:0}.progress-step{border-radius:25px;flex-direction:row;gap:4px;width:clamp(50px,14vw,65px);height:clamp(36px,10vw,45px);margin-bottom:0;padding:0 8px}.step-icon{font-size:clamp(.8rem,2.5vw,1rem)}.step-number{width:clamp(16px,4.5vw,20px);height:clamp(16px,4.5vw,20px);font-size:clamp(.55rem,1.8vw,.7rem)}.step-label{text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:clamp(.55rem,1.8vw,.7rem);line-height:1.2;overflow:hidden}.step-connector{width:.75rem;height:3px;margin-top:0;top:clamp(18px,5vw,22px);left:100%;right:auto;transform:none}.registration-card-section{min-height:auto;padding:.75rem .75rem 5rem}.registration-card-section>:not(.alert){border-radius:12px}.bottom-nav-container{padding-top:1rem;left:0}.bottom-nav-btn{min-height:50px;padding:14px 16px;font-size:.9rem}.bottom-nav-btn .nav-label{max-width:120px}.bottom-nav-btn.prev{border-radius:0 14px 0 0}.bottom-nav-btn.next{border-radius:14px 0 0}}@media (max-width:400px){.registration-global-header{padding:.25rem .4rem}.registration-global-header.scrolled{padding:.2rem .4rem}.registration-global-header-container{gap:.35rem}.registration-back-btn{min-height:22px;padding:3px 6px;font-size:9px}.registration-back-btn svg{width:10px;height:10px}.registration-header-content h2.registration-title{font-size:.9rem}.progress-steps{gap:.5rem}.progress-step-wrapper{gap:.25rem}.progress-step{border-radius:18px;width:45px;height:32px;padding:0 6px}.step-icon{font-size:.7rem}.step-number{width:14px;height:14px;font-size:.5rem}.step-connector{width:.5rem;top:16px}.step-label{font-size:.5rem}.bottom-nav-btn{min-height:46px;padding:12px 14px;font-size:.85rem}.bottom-nav-btn .nav-label{max-width:80px}}@keyframes slideInFromTop{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.reg-modal-overlay{z-index:10000;overscroll-behavior:contain;background:#00000080;width:100%;height:100%;animation:.2s fadeIn;position:fixed;inset:0;overflow:hidden}.reg-modal-overlay *,.reg-modal-container *,.reg-modal-content *{box-sizing:border-box}.reg-modal-container{z-index:10001;box-sizing:border-box;overscroll-behavior:contain;background:#fff;flex-direction:column;width:70%;height:100%;animation:.3s slideInRight;display:flex;position:fixed;inset:0 0 0 30%;overflow:hidden}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.reg-modal-header{color:#fff;z-index:10;box-sizing:border-box;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:2px solid #e5e7eb;flex-shrink:0;justify-content:space-between;align-items:center;width:100%;max-width:100%;padding:1.5rem 2rem;display:flex}.reg-modal-title{align-items:center;gap:1rem;display:flex}.reg-modal-title h2{margin:0;font-size:1.5rem;font-weight:600}.reg-modal-id{background:#fff3;border-radius:20px;padding:.25rem .75rem;font-size:.9rem;font-weight:500}.reg-modal-close{cursor:pointer;color:#fff;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex}.reg-modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.reg-modal-header-actions{align-items:center;gap:.75rem;display:flex}.reg-modal-edit-btn{cursor:pointer;color:#fff;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.reg-modal-edit-btn:hover{background:#ffffff4d;border-color:#ffffff80;transform:translateY(-1px)}.reg-modal-edit-btn svg{flex-shrink:0}.reg-modal-tabs{z-index:9;scrollbar-width:thin;scrollbar-color:#d1d5db #f9fafb;box-sizing:border-box;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-wrap:nowrap;flex-shrink:0;gap:.5rem;width:100%;max-width:100%;padding:1rem 2rem;display:flex;overflow-x:auto}.reg-modal-tabs::-webkit-scrollbar{height:6px}.reg-modal-tabs::-webkit-scrollbar-track{background:#f9fafb}.reg-modal-tabs::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.reg-modal-tabs::-webkit-scrollbar-thumb:hover{background:#9ca3af}.reg-tab-btn{cursor:pointer;color:#6b7280;white-space:nowrap;background:#fff;border:2px solid #e5e7eb;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;transition:all .2s;display:flex}.reg-tab-btn:hover{color:#667eea;border-color:#667eea;transform:translateY(-1px)}.reg-tab-btn.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.tab-label{font-weight:600}.reg-modal-content{box-sizing:border-box;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#f9fafb;flex:1;width:100%;max-width:100%;padding:2rem 2rem 8rem;overflow:hidden auto}.empty-state{text-align:center;color:#9ca3af;padding:3rem 3rem 5rem;font-size:1rem;font-style:italic}.members-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.member-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s;box-shadow:0 2px 8px #0000000d}.member-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.member-header{border-bottom:1px solid #e5e7eb;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;display:flex}.member-icon{flex-shrink:0;font-size:2.5rem}.member-info{flex:1}.member-name{color:#111827;margin:0 0 .25rem;font-size:1.1rem;font-weight:600}.member-meta{color:#6b7280;margin:0;font-size:.9rem}.member-details{flex-direction:column;gap:.75rem;display:flex}.rooms-list{flex-direction:column;gap:1.25rem;display:flex}.room-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.room-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;display:flex}.room-title{color:#111827;margin:0;font-size:1.1rem;font-weight:600}.room-type-badge{color:#2563eb;background:#dbeafe;border-radius:20px;padding:.5rem 1rem;font-size:.85rem;font-weight:500}.room-details{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;display:grid}.transactions-list{flex-direction:column;gap:1.25rem;display:flex}.transaction-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.transaction-card.completed{border-left:4px solid #10b981}.transaction-card.pending{border-left:4px solid #f59e0b}.transaction-card.failed{border-left:4px solid #ef4444}.transaction-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.transaction-type{align-items:center;gap:.75rem;display:flex}.txn-icon{font-size:1.5rem}.txn-type-text{color:#111827;font-size:1rem;font-weight:600}.txn-status-badge{text-transform:capitalize;border-radius:20px;padding:.5rem 1rem;font-size:.85rem;font-weight:500}.txn-status-badge.completed{color:#16a34a;background:#dcfce7}.txn-status-badge.pending{color:#d97706;background:#fef3c7}.txn-status-badge.failed{color:#dc2626;background:#fee2e2}.transaction-details{flex-direction:column;gap:1rem;display:flex}.txn-amount{color:#16a34a;margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.txn-info{flex-direction:column;gap:.5rem;display:flex}.detail-row{justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.9rem;display:flex}.detail-label{color:#6b7280;font-weight:500}.detail-value{color:#111827;text-align:right;font-weight:500}.detail-value.price{color:#16a34a;font-weight:600}.bills-container{flex-direction:column;gap:2rem;display:flex}.bill-summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.bill-title{color:#111827;border-bottom:2px solid #e5e7eb;margin:0 0 1rem;padding-bottom:.75rem;font-size:1.1rem;font-weight:600}.bill-details{flex-direction:column;gap:.75rem;display:flex}.bill-row{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;padding:.75rem 0;font-size:.95rem;display:flex}.bill-row:last-child{border-bottom:none}.bill-row.small{padding:.5rem 0;font-size:.85rem}.bill-row.total{color:#111827;border-top:2px solid #e5e7eb;margin-top:.5rem;padding-top:1rem;font-size:1.1rem;font-weight:700}.bill-row.paid{color:#16a34a;font-weight:600}.bill-row.due{color:#dc2626;font-weight:600}.bill-label{color:#6b7280;text-transform:capitalize;font-weight:500}.bill-row.total .bill-label,.bill-row.paid .bill-label,.bill-row.due .bill-label{color:inherit}.bill-value{color:#111827;font-weight:600}.member-bills-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.member-bills-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin-top:1rem;display:grid}.member-bill-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.member-bill-name{color:#111827;border-bottom:1px solid #e5e7eb;margin:0 0 .75rem;padding-bottom:.5rem;font-size:1rem;font-weight:600}.member-bill-details{flex-direction:column;gap:.25rem;display:flex}.hotel-bill-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.hotel-bill-details{flex-direction:column;gap:.5rem;margin-top:1rem;display:flex}@media (max-width:1024px){.reg-modal-container{width:80%;left:20%}.reg-modal-header{padding:1.25rem 1.5rem}.reg-modal-tabs{gap:.35rem;padding:.75rem 1.5rem}.reg-modal-content{padding:1.5rem 1.5rem 7rem}.members-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.rooms-list,.member-bills-grid{grid-template-columns:1fr}}@media (max-width:768px){.reg-modal-container{width:100%;max-width:100%;left:0}.reg-modal-header{padding:1rem}.reg-modal-title h2{font-size:1.25rem}.reg-modal-id{padding:.2rem .6rem;font-size:.85rem}.reg-modal-close{width:36px;height:36px}.reg-modal-header-actions{gap:.5rem}.reg-modal-edit-btn{padding:.4rem .75rem;font-size:.85rem}.reg-modal-tabs{flex-wrap:wrap;gap:.35rem;padding:.75rem 1rem;overflow-x:visible}.reg-tab-btn{padding:.6rem 1rem;font-size:.85rem}.tab-icon{font-size:1rem}.reg-modal-content{padding:1rem 1rem 7rem}.members-grid{grid-template-columns:1fr;gap:.75rem}.member-card,.room-card{padding:1rem}.room-details{grid-template-columns:1fr}.transaction-card{padding:1rem}.member-bills-grid{grid-template-columns:1fr}.bill-card{padding:1rem}.charges-list,.bill-summary{gap:.5rem}}@media (max-width:480px){.reg-modal-header{padding:.75rem}.reg-modal-title{flex-direction:column;flex:1;align-items:flex-start;gap:.35rem}.reg-modal-title h2{font-size:1rem;line-height:1.3}.reg-modal-id{padding:.15rem .5rem;font-size:.75rem}.reg-modal-close{width:32px;min-width:32px;height:32px}.reg-modal-header-actions{gap:.35rem}.reg-modal-edit-btn{gap:.35rem;padding:.35rem .6rem;font-size:.75rem}.reg-modal-edit-btn svg{width:14px;height:14px}.reg-modal-tabs{flex-wrap:wrap;gap:.25rem;padding:.5rem;overflow-x:visible}.reg-tab-btn{min-height:44px;padding:.5rem .75rem;font-size:.75rem}.tab-icon{font-size:.9rem}.reg-modal-content{padding:.75rem .75rem 7rem}.section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.section-title{font-size:1rem}.members-grid{gap:.5rem}.member-card,.room-card,.transaction-card,.bill-card{padding:.75rem}.member-info h4,.room-header h4,.transaction-header h4{font-size:.95rem}.member-details,.room-details,.transaction-details{font-size:.8rem}.detail-label{font-size:.75rem}.detail-value{font-size:.85rem}.charges-list,.bill-summary{gap:.35rem}.charge-item,.summary-item{font-size:.8rem}.empty-state{padding:2rem 1rem}.empty-icon{font-size:2.5rem}.empty-state h3{font-size:1rem}.empty-state p{font-size:.85rem}}@media (max-width:360px){.reg-modal-header{padding:.5rem}.reg-modal-title h2{font-size:.9rem}.reg-modal-tabs{padding:.5rem .35rem}.reg-tab-btn{padding:.4rem .6rem;font-size:.7rem}.tab-label{display:none}.reg-modal-content{padding:.5rem .5rem 7rem}}.payment-section{max-width:800px;margin:0 auto;padding-bottom:2rem}.payment-category-selector{margin-bottom:2rem}.payment-category-selector .options-title{color:#111827;margin-bottom:1rem;font-size:1.1rem;font-weight:600}.category-toggle{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;gap:1rem;padding:.5rem;display:flex}.category-btn{color:#6b7280;cursor:pointer;background:#fff;border:2px solid #0000;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.category-btn:hover{color:#111827;background:#f3f4f6}.category-btn.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.payment-header{margin-bottom:2rem}.payment-due-card{text-align:center;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:2px solid #f59e0b;border-radius:12px;padding:2rem}.due-label{color:#92400e;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.9rem;font-weight:600}.due-amount{color:#92400e;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.due-note{color:#b45309;font-size:.9rem}.payment-options{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.options-title{color:#111827;margin:0 0 1rem;font-size:1.1rem;font-weight:600}.payment-type-selector{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.payment-type-option{cursor:pointer;display:block;position:relative}.payment-type-option input[type=radio]{opacity:0;pointer-events:none;position:absolute}.payment-type-option .option-content{background:#fff;border:2px solid #e5e7eb;border-radius:10px;align-items:center;gap:1rem;padding:1.25rem;transition:all .2s;display:flex}.payment-type-option:hover .option-content{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.payment-type-option.selected .option-content{background:linear-gradient(135deg,#f0f4ff 0%,#e0edff 100%);border-color:#667eea;box-shadow:0 4px 12px #667eea33}.option-icon{flex-shrink:0;font-size:2rem}.option-details{flex:1}.option-label{color:#111827;margin-bottom:.25rem;font-size:1rem;font-weight:600}.option-amount{color:#667eea;font-size:1.25rem;font-weight:700}.option-description{color:#6b7280;font-size:.85rem}.partial-amount-input{margin-top:1rem;animation:.3s fadeIn}.input-label{color:#374151;margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.input-wrapper{align-items:center;display:flex;position:relative}.currency-symbol{color:#6b7280;pointer-events:none;font-size:1rem;font-weight:600;position:absolute;left:1rem}.amount-input{border:2px solid #e5e7eb;border-radius:8px;width:100%;padding:.75rem 1rem .75rem 3.5rem;font-size:1.1rem;font-weight:600;transition:all .2s}.amount-input:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.error-message{color:#dc2626;margin-top:.5rem;font-size:.85rem;font-weight:500}.payment-action{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem}.payment-summary-box{background:#f9fafb;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.summary-row{justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.summary-row:not(:last-child){border-bottom:1px solid #e5e7eb}.summary-label{color:#6b7280;font-size:.95rem;font-weight:500}.summary-value{color:#111827;font-size:1.1rem;font-weight:700}.payment-btn-disabled{color:#9ca3af;cursor:not-allowed;background:#e5e7eb;border:none;border-radius:8px;width:100%;padding:1rem;font-size:1rem;font-weight:600}.payment-complete-state{text-align:center;padding:3rem 2rem 5rem}.complete-icon{margin-bottom:1rem;font-size:4rem}.payment-complete-state h3{color:#16a34a;margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.payment-complete-state p{color:#6b7280;margin-bottom:2rem;font-size:1rem}.payment-summary{background:#f0fdf4;border:2px solid #86efac;border-radius:12px;min-width:300px;padding:1.5rem;display:inline-block}.payment-summary .summary-item{justify-content:space-between;align-items:center;padding:.75rem 0;display:flex}.payment-summary .summary-item:not(:last-child){border-bottom:1px solid #bbf7d0}.payment-summary .label{color:#166534;font-size:.95rem;font-weight:500}.payment-summary .value{color:#15803d;font-size:1.1rem;font-weight:700}.empty-icon{opacity:.5;margin-bottom:1rem;font-size:4rem}.empty-state h3{color:#374151;margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.members-section{padding:0}.members-list-detailed{flex-direction:column;gap:1rem;display:flex}.modal-member-card{border:1px solid #e5e7eb;border-radius:10px;overflow:hidden}.rooms-section{padding:0}.rooms-list-detailed{flex-direction:column;gap:1rem;display:flex}.bills-container{padding:0}@media (max-width:768px){.reg-modal-container{width:100%;left:0}.payment-type-selector{grid-template-columns:1fr}.category-toggle{flex-direction:column;gap:.75rem}.category-btn{padding:.875rem 1.25rem}.hotel-rooms-grid{grid-template-columns:1fr}.member-view-modal{width:95%;max-width:95%}.member-view-modal .modal-header{padding:1rem 1.5rem}.member-view-modal .modal-header h3{font-size:1.25rem}.view-grid{grid-template-columns:1fr}.floating-payment-btn{width:auto;max-width:calc(100% - 2rem);padding:1rem 2rem;font-size:1rem;bottom:1rem;left:50%;transform:translate(-50%)}.floating-payment-btn:hover{transform:translate(-50%)translateY(-2px)}.floating-payment-btn:active{transform:translate(-50%)translateY(-1px)}.floating-payment-btn .btn-icon{font-size:1.5rem}}@media (max-width:480px){.due-amount{font-size:2rem}.payment-due-card{padding:1.5rem}.option-icon,.card-amount{font-size:1.5rem}.payment-summary{width:100%;min-width:auto}.category-btn{padding:.75rem 1rem;font-size:.9rem}.member-view-modal{width:100%;max-width:100%;margin:0}.member-view-modal .modal-header{padding:.875rem 1rem}.member-view-modal .modal-header h3{font-size:1.1rem}.member-view-modal .modal-close-btn{width:36px;height:36px}.floating-payment-btn{width:auto;max-width:calc(100% - 1.5rem);padding:.875rem 1.5rem;font-size:.9rem;bottom:.75rem;left:50%;transform:translate(-50%)}.floating-payment-btn:hover{transform:translate(-50%)translateY(-2px)}.floating-payment-btn:active{transform:translate(-50%)translateY(-1px)}.floating-payment-btn .btn-icon{font-size:1.25rem}}.member-view-overlay{z-index:10100;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.member-view-modal{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:600px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #0000004d}.member-view-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.member-view-header h3{margin:0;font-size:1.25rem;font-weight:600}.member-view-header .close-btn{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:20px;transition:all .2s;display:flex}.member-view-header .close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.member-view-content{padding:1.5rem;overflow-y:auto}.member-view-section{margin-bottom:1.5rem}.member-view-section:last-child{margin-bottom:0}.member-view-section h4{color:#333;border-bottom:2px solid #e5e7eb;margin:0 0 1rem;padding-bottom:.5rem;font-size:1rem;font-weight:600}.view-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.view-item{flex-direction:column;gap:.25rem;display:flex}.view-label{color:#6b7280;font-size:.875rem;font-weight:500}.view-value{color:#1f2937;font-size:.95rem;font-weight:400}.rooms-list-detailed .room-type-item,.rooms-list-detailed .booking-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.75rem;padding:1rem}.rooms-list-detailed .room-type-item:last-child,.rooms-list-detailed .booking-item:last-child{margin-bottom:0}.rooms-list-detailed .booking-info{flex:1}.rooms-list-detailed .booking-title{color:#333;margin-bottom:8px;font-size:15px;font-weight:600}.rooms-list-detailed .booking-details{color:#555;flex-direction:column;gap:6px;margin-bottom:12px;font-size:13px;display:flex}.rooms-list-detailed .booking-pricing{border-top:1px solid #f0f0f0;margin-top:8px;padding-top:8px}.rooms-list-detailed .booking-price{color:#666;margin-bottom:4px;font-size:13px}.rooms-list-detailed .booking-total{color:#2e7d32;font-size:15px;font-weight:700}.floating-payment-btn{cursor:pointer;z-index:10002;letter-spacing:.3px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:50px;align-items:center;gap:.875rem;padding:1.25rem 2.5rem;font-size:1.1rem;font-weight:700;transition:all .3s;animation:2s infinite pulseGlow;display:flex;position:fixed;bottom:2rem;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #667eea59;color:#fff!important}.floating-payment-btn:hover{background:linear-gradient(135deg,#764ba2 0%,#667eea 100%);transform:translate(-50%)translateY(-6px)scale(1.02);box-shadow:0 12px 32px #667eea73}.floating-payment-btn:active{transform:translate(-50%)translateY(-3px)scale(1)}.floating-payment-btn .btn-icon{filter:drop-shadow(0 2px 4px #0003);font-size:1.75rem;animation:1.5s infinite bounceIcon}.floating-payment-btn .btn-text{white-space:nowrap;text-shadow:0 2px 4px #0000001a;color:#fff!important}@keyframes pulseGlow{0%,to{box-shadow:0 8px 24px #667eea59}50%{box-shadow:0 8px 32px #667eea80,0 0 20px #764ba24d}}@keyframes bounceIcon{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-5px)scale(1.1)}}.step-btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:flex}.step-btn:disabled{opacity:.5;cursor:not-allowed}.step-btn.primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.step-btn.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.step-btn.secondary{color:#fff;background:#6c757d}.step-btn.secondary:hover:not(:disabled){background:#5a6268;transform:translateY(-2px)}.step-btn.delete{color:#dc2626;background:#fee2e2;border:1px solid #fecaca;align-items:center;gap:8px;display:flex}.step-btn.delete:hover:not(:disabled){background:#fecaca;border-color:#f87171;transform:translateY(-2px);box-shadow:0 8px 25px #dc26264d}.step-btn.delete svg{flex-shrink:0}.registration-card{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;transition:all .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 2px 12px #00000014}.registration-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.registration-card-image-container{flex-shrink:0;width:100%;position:relative}.registration-card-image{width:100%;height:140px;overflow:hidden}.registration-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.registration-card:hover .registration-card-image img{transform:scale(1.05)}.registration-card-image-container .registration-status{z-index:2;position:absolute;top:.5rem;right:.5rem;box-shadow:0 2px 8px #00000026}.registration-card-content{flex-direction:column;flex:1;padding:1rem 1.25rem 1.25rem;display:flex}.registration-card:before{content:"";z-index:1;background:#6b7280;height:4px;position:absolute;top:0;left:0;right:0}.registration-card.draft:before,.registration-card.draft-registration:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.registration-card.confirmed:before{background:linear-gradient(90deg,#10b981,#059669)}.registration-card.registered:before{background:linear-gradient(90deg,#3b82f6,#2563eb)}.registration-card.pending:before{background:linear-gradient(90deg,#f59e0b,#d97706)}.registration-card.cancelled:before{background:linear-gradient(90deg,#ef4444,#dc2626)}.registration-card.completed:before{background:linear-gradient(90deg,#8b5cf6,#7c3aed)}.registration-header{flex-direction:column;gap:.25rem;margin-bottom:.75rem;display:flex}.registration-yatra-name{color:#111827;margin:0;font-size:1.1rem;font-weight:600;line-height:1.3}.registration-yatra-dates{color:#6b7280;align-items:center;gap:.25rem;font-size:.85rem;display:flex}.registration-status{white-space:nowrap;text-transform:uppercase;letter-spacing:.3px;border-radius:20px;align-items:center;gap:.35rem;padding:.4rem .75rem;font-size:.75rem;font-weight:600;display:flex}.registration-status.confirmed{color:#16a34a;background:#dcfce7}.registration-status.registered{color:#2563eb;background:#dbeafe}.registration-status.pending{color:#d97706;background:#fef3c7}.registration-status.cancelled{color:#dc2626;background:#fee2e2}.registration-status.completed{color:#4338ca;background:#e0e7ff}.registration-status.draft,.registration-status.not-registered{color:#6b7280;background:#f3f4f6}.registration-card.not-registered:before{background:#f59e0b}.draft-registration{background:linear-gradient(135deg,#fffbeb 0%,#fef3c7 100%)}.summary-row{color:#4b5563;text-align:left;justify-content:flex-start;align-items:center;gap:.5rem;width:100%;font-size:.875rem;display:flex}.summary-row .summary-icon{text-align:center;flex-shrink:0;width:24px;font-size:.9rem}.summary-row .summary-label{color:#6b7280;flex-shrink:0;min-width:70px;font-weight:500}.summary-row.member-dates{color:#059669;font-weight:500}.summary-row.member-dates .summary-label{color:#059669}.card-action-footer{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:space-between;align-items:center;margin:.75rem -1.25rem -1.25rem;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.registration-card:hover .card-action-footer{background:linear-gradient(135deg,#5a67d8 0%,#6b46c1 100%)}.card-action-footer .action-text{flex:1}.card-action-footer .action-arrow{font-size:1.1rem;transition:transform .2s}.registration-card:hover .card-action-footer .action-arrow{transform:translate(4px)}.card-action-footer.draft{background:linear-gradient(135deg,#f59e0b 0%,#d97706 100%)}.registration-card:hover .card-action-footer.draft{background:linear-gradient(135deg,#d97706 0%,#b45309 100%)}.card-action-footer.cancelled{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%)}.registration-card:hover .card-action-footer.cancelled{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%)}.registration-card-summary{cursor:pointer}.registration-summary-compact{flex-direction:column;flex:1;gap:.5rem;width:100%;display:flex}.registration-expanded-details{border-top:2px solid #e5e7eb;margin-top:1rem;padding-top:1rem;animation:.3s expandIn}@keyframes expandIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.details-loading,.details-error{text-align:center;color:#6b7280;padding:2rem}.details-loading{flex-direction:column;align-items:center;gap:1rem;display:flex}.details-error{color:#dc2626;font-weight:500}.details-content{flex-direction:column;gap:1.5rem;display:flex}.details-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.section-title{color:#111827;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:1rem;font-weight:600;display:flex}.members-list-expanded{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;display:grid}.member-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.9rem;display:flex}.member-name{color:#111827;font-weight:500}.member-age{color:#6b7280;font-size:.85rem}.rooms-list-expanded{flex-direction:column;gap:.5rem;display:flex}.room-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.9rem;display:flex}.room-hotel{color:#111827;flex:1;font-weight:500}.room-type{color:#6b7280;margin:0 1rem;font-size:.85rem}.room-nights{color:#6b7280;font-size:.85rem}.transactions-list-expanded{flex-direction:column;gap:.5rem;display:flex}.transaction-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;justify-content:space-between;align-items:center;padding:.5rem .75rem;font-size:.9rem;display:flex}.txn-type{color:#111827;flex:1;font-weight:500}.txn-amount{color:#16a34a;margin:0 1rem;font-weight:600}.txn-status{color:#6b7280;font-size:.85rem}.bill-summary-placeholder{text-align:center;color:#9ca3af;padding:1.5rem;font-style:italic}@media (max-width:1024px){.registration-card-content{padding:.9rem 1rem 1rem}.registration-yatra-name{font-size:1.05rem}.registration-card-image{height:120px}}@media (max-width:768px){.registration-card{border-radius:12px}.registration-card-image{height:100px}.registration-card-content{padding:.75rem 1rem 1rem}.registration-header{flex-direction:column;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.registration-yatra-name{font-size:1rem;line-height:1.4}.registration-status{align-self:flex-start;padding:.35rem .7rem;font-size:.7rem}.summary-row,.detail-row{font-size:.8rem}.summary-icon,.detail-icon{width:18px;font-size:.85rem}.summary-label,.detail-label{font-size:.8rem}.registration-summary-compact,.registration-details-compact{gap:.35rem}.card-action-footer{margin:.5rem -1rem -1rem;padding:.65rem .85rem;font-size:.85rem}.step-btn{padding:.65rem 1.5rem;font-size:.9rem}}@media (max-width:480px){.registration-card{border-radius:10px}.registration-card:before{height:3px}.registration-card-image{height:90px}.registration-card-content{padding:.6rem .85rem .85rem}.registration-yatra-name{font-size:.95rem;line-height:1.3}.registration-status{border-radius:16px;padding:.3rem .6rem;font-size:.65rem}.summary-row,.detail-row{gap:.4rem;font-size:.75rem}.summary-icon,.detail-icon{width:16px;font-size:.8rem}.summary-label,.detail-label{font-size:.75rem}.registration-summary-compact,.registration-details-compact{gap:.3rem}.card-action-footer{margin:.5rem -.85rem -.85rem;padding:.6rem .75rem;font-size:.8rem}.step-btn{border-radius:6px;padding:.6rem 1.25rem;font-size:.85rem}}@media (max-width:360px){.registration-card-image{height:80px}.registration-card-content{padding:.5rem .7rem .7rem}.registration-yatra-name{font-size:.9rem}.registration-status{padding:.25rem .5rem;font-size:.6rem}.summary-row,.detail-row{font-size:.7rem}.card-action-footer{margin:.4rem -.7rem -.7rem;padding:.5rem .6rem;font-size:.75rem}.step-btn{padding:.5rem 1rem;font-size:.8rem}}@media (hover:none) and (pointer:coarse){.registration-card{-webkit-tap-highlight-color:#667eea1a}.registration-card:active{transform:scale(.98)}.step-btn{min-height:44px}}.user-registrations{background:#fff;border-radius:12px;margin-top:1rem;padding:1.5rem}.user-registrations.compact{padding:1rem}.user-registrations-loading,.user-registrations-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.user-registrations-loading .loading-spinner{border:3px solid #e9ecef;border-top-color:#667eea;border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}.user-registrations-loading p,.user-registrations-error p{color:#666;margin-top:1rem}.user-registrations-error .error-icon{margin-bottom:.5rem;font-size:2.5rem}.user-registrations-error .retry-btn{color:#fff;cursor:pointer;background:#667eea;border:none;border-radius:8px;margin-top:1rem;padding:.5rem 1.5rem;font-weight:500;transition:background .3s}.user-registrations-error .retry-btn:hover{background:#5a6fd8}.user-registrations-header{border-bottom:1px solid #e9ecef;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.user-registrations-header .header-title h3{color:#2c3e50;margin:0;font-size:1.25rem;font-weight:600}.user-registrations-header .header-subtitle{color:#666;margin:.25rem 0 0;font-size:.9rem}.user-registrations-header .header-stats{gap:1rem;display:flex}.user-registrations-header .stat-item{background:#f8f9fa;border-radius:8px;flex-direction:column;align-items:center;padding:.5rem 1rem;display:flex}.user-registrations-header .stat-value{color:#667eea;font-size:1.25rem;font-weight:700}.user-registrations-header .stat-label{color:#666;text-transform:uppercase;font-size:.75rem}.user-registrations-empty{text-align:center;background:#f8f9fa;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;padding:3rem 1rem;display:flex}.user-registrations-empty .empty-icon{margin-bottom:1rem;font-size:3rem}.user-registrations-empty h4{color:#2c3e50;margin:0 0 .5rem;font-size:1.25rem}.user-registrations-empty p{color:#666;margin:0}.user-registrations-tabs{background:#f8f9fa;border-radius:10px;gap:.5rem;margin-bottom:1rem;padding:.5rem;display:flex}.user-registrations-tabs .tab-btn{cursor:pointer;color:#666;background:0 0;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;font-weight:500;transition:all .3s;display:flex}.user-registrations-tabs .tab-btn:hover{color:#667eea;background:#667eea1a}.user-registrations-tabs .tab-btn.active{color:#667eea;background:#fff;font-weight:600;box-shadow:0 2px 8px #0000001a}.user-registrations-tabs .tab-icon{font-size:1rem}.user-registrations-tabs .tab-count{color:#fff;text-align:center;background:#667eea;border-radius:10px;min-width:22px;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.user-registrations-tabs .tab-btn:not(.active) .tab-count{color:#666;background:#cbd5e0}.user-registrations-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.user-registrations-filters .filter-btn{cursor:pointer;color:#666;background:#fff;border:1px solid #e9ecef;border-radius:20px;align-items:center;gap:.4rem;padding:.5rem 1rem;font-size:.85rem;font-weight:500;transition:all .3s;display:flex}.user-registrations-filters .filter-btn:hover{color:#667eea;border-color:#667eea}.user-registrations-filters .filter-btn.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#0000}.user-registrations-filters .filter-count{color:#667eea;text-align:center;background:#667eea26;border-radius:8px;min-width:18px;padding:.1rem .4rem;font-size:.75rem;font-weight:600}.user-registrations-filters .filter-btn.active .filter-count{color:#fff;background:#ffffff40}.user-registrations-content{padding:.5rem 0}.user-registrations-content .registrations-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;display:grid}.user-registrations-empty-filtered{text-align:center;background:#f8f9fa;border-radius:8px;padding:2rem}.user-registrations-empty-filtered p{color:#666;margin:0;font-size:.9rem}.user-registrations.compact .user-registrations-header{flex-direction:column;gap:1rem}.user-registrations.compact .header-stats{justify-content:space-between;width:100%}.user-registrations.compact .registrations-grid{grid-template-columns:1fr}@media (max-width:768px){.user-registrations{padding:1rem}.user-registrations-header{flex-direction:column;gap:1rem}.user-registrations-header .header-stats{justify-content:space-around;width:100%}.user-registrations-tabs .tab-label{display:none}.user-registrations-tabs .tab-btn{padding:.6rem .75rem}.user-registrations-filters{flex-wrap:nowrap;padding-bottom:.5rem;overflow-x:auto}.user-registrations-filters .filter-btn{white-space:nowrap;flex-shrink:0}.user-registrations-content .registrations-grid{grid-template-columns:1fr}}@media (max-width:480px){.user-registrations-header .stat-item{padding:.4rem .6rem}.user-registrations-header .stat-value,.user-registrations-tabs .tab-icon{font-size:1.1rem}.user-registrations-tabs .tab-count{padding:.1rem .4rem;font-size:.7rem}}.user-details-modal-overlay{z-index:10000;overscroll-behavior:contain;background:#00000080;width:100%;height:100%;animation:.2s fadeIn;position:fixed;inset:0;overflow:hidden}.user-details-modal-overlay *,.user-details-content *{box-sizing:border-box}.user-details-content{box-sizing:border-box;overscroll-behavior:contain;background:#fff;flex-direction:column;display:flex;overflow:hidden}.user-details-content.modal-mode{z-index:10001;border-radius:0;width:70%;height:100%;animation:.3s slideInRight;position:fixed;inset:0 0 0 30%;box-shadow:-4px 0 20px #00000026}.user-details-content.inline-mode{border-radius:16px;width:100%;max-width:100%;max-height:none;box-shadow:0 2px 8px #0000001a}.user-details-top-bar{z-index:100;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:sticky;top:0;left:0;right:0;box-shadow:0 2px 8px #0000001a}.top-bar-back-btn{color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.top-bar-back-btn:hover{background:#ffffff4d;transform:translateY(-1px)}.top-bar-edit-btn{color:#667eea;cursor:pointer;background:#ffffffe6;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.top-bar-edit-btn:hover{background:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.user-details-header{color:#fff;z-index:10;box-sizing:border-box;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex-direction:column;flex-shrink:0;width:100%;padding:1rem 2rem;display:flex;position:relative}.header-actions{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.header-spacer{flex:1}.user-details-back{color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;transition:all .2s;display:flex}.user-details-back:hover{background:#ffffff4d;transform:translate(-2px)}.header-edit-btn{color:#667eea;cursor:pointer;background:#ffffffe6;border:none;border-radius:8px;align-items:center;gap:.4rem;padding:.5rem .85rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.header-edit-btn:hover{background:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.user-details-close{cursor:pointer;color:#fff;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex}.user-details-close:hover{background:#ffffff4d;transform:scale(1.1)}.header-main-row{align-items:flex-start;gap:1.5rem;display:flex}.header-avatar{aspect-ratio:1;border:4px solid #ffffff80;border-radius:14px;flex-shrink:0;width:180px;min-width:180px;height:180px;overflow:hidden;box-shadow:0 8px 24px #0000004d}.header-avatar img{object-fit:cover;width:100%;height:100%}.avatar-placeholder-large{color:#fff;letter-spacing:2px;background:#ffffff26;justify-content:center;align-items:center;width:100%;height:100%;font-size:4rem;font-weight:700;display:flex}.header-info{flex:1}.header-name-row{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.header-name-row h2{color:#fff;margin:0;font-size:1.5rem;font-weight:600}.header-initiated-name{color:#ffffffe6;margin:0 0 .75rem;font-size:.95rem;font-style:italic}.badge{border-radius:20px;align-items:center;padding:.25rem .75rem;font-size:.85rem;font-weight:500;display:inline-flex}.badge-role{text-transform:capitalize}.header-meta-container{margin-top:.75rem}.meta-toggle-checkbox,.meta-toggle-label{display:none}.header-meta{flex-wrap:wrap;gap:1rem;margin-top:.5rem;display:flex}.meta-item{color:#ffffffe6;align-items:center;gap:.5rem;font-size:.85rem;display:flex;position:relative}.meta-item svg{color:#ffffffb3;flex-shrink:0}.meta-item .short-id{cursor:help}.full-id-tooltip{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:10;background:#2d3748;border-radius:6px;margin-bottom:.5rem;padding:.5rem .75rem;font-family:SF Mono,Monaco,monospace;font-size:.75rem;transition:opacity .2s;position:absolute;bottom:100%;left:0}.meta-item:hover .full-id-tooltip{opacity:1}@media (max-width:768px){.meta-toggle-label{cursor:pointer;color:#fff;background:#ffffff26;border:1px solid #ffffff40;border-radius:8px;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.meta-toggle-label:hover{background:#ffffff40}.toggle-text-show{display:inline}.toggle-text-hide{display:none}.header-meta{opacity:0;max-height:0;transition:max-height .3s,opacity .3s;overflow:hidden}.meta-toggle-checkbox:checked~.header-meta{opacity:1;max-height:500px}.meta-toggle-checkbox:checked~.meta-toggle-label .toggle-text-show{display:none}.meta-toggle-checkbox:checked~.meta-toggle-label .toggle-text-hide{display:inline}}.user-details-body{box-sizing:border-box;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#f9fafb;flex:1;width:100%;padding:2rem;overflow:hidden auto}.body-columns{grid-template-columns:2fr 1fr;gap:1.5rem;display:grid}.main-column,.side-column{flex-direction:column;gap:1.5rem;display:flex}.details-section{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.details-section h3{color:#111827;border-bottom:2px solid #e5e7eb;margin:0 0 1rem;padding-bottom:.75rem;font-size:1.05rem;font-weight:600}.section-header-with-action{border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.section-header-with-action h3{border-bottom:none;margin:0;padding-bottom:0}.btn-add-member{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex}.btn-add-member:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.details-table{border-collapse:separate;border-spacing:0;background:#fff;border-radius:8px;width:100%;overflow:hidden;box-shadow:0 1px 3px #0000000d}.details-table tbody tr:hover{background-color:#f9fafb}.detail-label{color:#6b7280;vertical-align:top;width:40%;padding:14px 20px;font-size:.95rem;font-weight:600}.detail-value{color:#1f2937;width:60%;padding:14px 20px;font-size:.95rem;font-weight:500;word-wrap:break-word!important;word-break:break-word!important;overflow-wrap:break-word!important;white-space:normal!important}.comments-text{color:#374151;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin:0;padding:1rem;line-height:1.6}.family-members-list{flex-direction:column;gap:.75rem;display:flex}.family-member-card-compact{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem;transition:all .2s;display:flex}.family-member-card-compact:hover{background:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.member-avatar-small{border:2px solid #e5e7eb;border-radius:50%;flex-shrink:0;width:48px;height:48px;overflow:hidden}.member-avatar-small img{object-fit:cover;width:100%;height:100%}.avatar-placeholder-small{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;width:100%;height:100%;font-size:1.1rem;font-weight:700;display:flex}.member-info-compact{flex:1;min-width:0}.member-info-compact h4{color:#111827;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.9rem;font-weight:600;overflow:hidden}.member-info-compact .member-initiated{color:#667eea;margin:.125rem 0 0;font-size:.75rem;font-style:italic}.member-info-compact .member-relationship{color:#6b7280;text-transform:capitalize;margin:.125rem 0 0;font-size:.75rem}.member-actions-compact{flex-shrink:0;gap:.25rem;display:flex}.loading-members{flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2rem;display:flex}.loading-members .spinner{border:3px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}.no-members-text{text-align:center;color:#6b7280;padding:1.5rem;font-size:.9rem;font-style:italic}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-sm{padding:.4rem .75rem;font-size:.8rem}.btn-secondary{color:#374151;background:#fff;border:1px solid #e5e7eb}.btn-secondary:hover{background:#f9fafb;border-color:#d1d5db}.btn-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.btn-warning{color:#fff;background:linear-gradient(135deg,#f6ad55 0%,#ed8936 100%)}.btn-warning:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ed89364d}.btn-danger{color:#fff;background:linear-gradient(135deg,#fc8181 0%,#e53e3e 100%)}.btn-danger:hover{transform:translateY(-1px);box-shadow:0 4px 12px #e53e3e4d}.registration-summary-box{cursor:pointer;background:#fff;border-radius:8px;padding:1rem;transition:all .2s}.registration-summary-box:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.registration-summary-box:focus{outline:none;box-shadow:0 0 0 3px #667eea4d}.registration-summary-header{border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.registration-summary-header h3{color:#111827;border:none;margin:0;padding:0;font-size:1.05rem;font-weight:600}.view-details-link{color:#667eea;font-size:.85rem;font-weight:500;transition:color .2s}.registration-summary-box:hover .view-details-link{color:#764ba2}.registration-summary-stats{justify-content:space-between;gap:.75rem;display:flex}.summary-stat-item{text-align:center;border:1px solid #0000;border-radius:10px;flex:1;padding:1rem .5rem;transition:all .2s}.summary-stat-item:hover{transform:translateY(-2px);box-shadow:0 2px 8px #00000014}.summary-stat-item.total{background:#f0f4ff;border-color:#c7d2fe}.summary-stat-item.total .summary-stat-value{color:#4f46e5}.summary-stat-item.total .summary-stat-label{color:#6366f1}.summary-stat-item.registered{background:#ecfdf5;border-color:#a7f3d0}.summary-stat-item.registered .summary-stat-value{color:#059669}.summary-stat-item.registered .summary-stat-label{color:#10b981}.summary-stat-item.draft{background:#fffbeb;border-color:#fde68a}.summary-stat-item.draft .summary-stat-value{color:#d97706}.summary-stat-item.draft .summary-stat-label{color:#f59e0b}.summary-stat-item.cancelled{background:#fef2f2;border-color:#fecaca}.summary-stat-item.cancelled .summary-stat-value{color:#dc2626}.summary-stat-item.cancelled .summary-stat-label{color:#ef4444}.summary-stat-value{font-size:1.75rem;font-weight:700;line-height:1.2;display:block}.summary-stat-label{text-transform:uppercase;letter-spacing:.5px;margin-top:.35rem;font-size:.7rem;font-weight:600;display:block}.registration-summary-loading{color:#6b7280;justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;display:flex}.spinner-small{border:2px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.registration-summary-empty{text-align:center;color:#6b7280;padding:1.5rem;font-size:.9rem;font-style:italic}.registrations-expanded-view{flex:1;padding:1.5rem;overflow-y:auto}.registrations-expanded-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;display:flex}.back-to-profile-btn{color:#374151;cursor:pointer;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.back-to-profile-btn:hover{color:#111827;background:#f3f4f6}.admin-actions{background:linear-gradient(135deg,#ebf8ff 0%,#e6fffa 100%);border:1px solid #81e6d9;border-radius:12px;grid-column:1/-1;margin-top:.5rem}.admin-actions h3{color:#234e52;border-bottom-color:#b2f5ea}.admin-action-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.admin-action-info{flex:1;min-width:200px}.admin-action-info h4{color:#234e52;margin:0 0 .5rem;font-size:1rem;font-weight:600}.admin-action-info p{color:#4a5568;margin:0 0 .25rem;font-size:.9rem}.admin-action-info .role-warning{color:#718096;font-size:.85rem;font-style:italic}.danger-zone{background:linear-gradient(135deg,#fff5f5 0%,#fed7d7 100%);border:1px solid #fc8181;border-radius:12px;grid-column:1/-1;margin-top:.5rem}.danger-zone h3{color:#c53030;border-bottom-color:#feb2b2}.danger-content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.danger-info{flex:1;min-width:200px}.danger-info h4{color:#c53030;margin:0 0 .25rem;font-size:1rem;font-weight:600}.danger-info p{color:#742a2a;margin:0;font-size:.9rem}@media (max-width:1024px){.user-details-content.modal-mode{width:80%;left:20%}.user-details-header{padding:1.25rem 1.5rem}.user-details-body{padding:1.5rem}.body-columns{grid-template-columns:1fr}.side-column{order:-1}}@media (max-width:768px){.user-details-content.modal-mode{width:100%;max-width:100%;left:0}.user-details-header{padding:.75rem 1rem 1rem}.header-actions{margin-bottom:.75rem}.header-edit-btn{padding:.4rem .7rem;font-size:.8rem}.user-details-close{width:36px;height:36px}.header-main-row{text-align:center;flex-direction:column;align-items:center}.header-avatar{border-radius:12px;width:140px;min-width:140px;height:140px;margin-bottom:.5rem}.avatar-placeholder-large{font-size:3.5rem}.header-info{width:100%}.header-name-row{flex-wrap:wrap;justify-content:center}.header-name-row h2{font-size:1.25rem}.header-meta{flex-direction:column;align-items:center;gap:.5rem}.user-details-body,.details-section{padding:1rem}.detail-label,.detail-value{width:100%;padding:10px 16px;display:block}.detail-label{color:#4b5563;padding-bottom:4px;font-size:.875rem;font-weight:700}.detail-value{padding-top:0;padding-bottom:12px;font-size:.9rem}.summary-stat-item{padding:.75rem .25rem}.summary-stat-value{font-size:1.5rem}}@media (max-width:480px){.user-details-modal-overlay{padding:0}.user-details-content.modal-mode{border-radius:0;max-width:100vw;height:100vh;max-height:100vh}.user-details-header{padding:.5rem .75rem .75rem}.header-actions{margin-bottom:.5rem}.header-edit-btn{min-height:36px;padding:.4rem .6rem;font-size:.75rem}.user-details-close{width:32px;min-width:32px;height:32px;min-height:32px}.header-avatar{border-radius:10px;width:110px;min-width:110px;height:110px}.avatar-placeholder-large{font-size:3rem}.header-name-row h2{font-size:1.1rem}.user-details-body{padding:.75rem}.details-section{border-radius:8px;padding:0;overflow:hidden}.details-section h3{margin:0;padding:.875rem 1rem;font-size:.95rem}.detail-label,.detail-value{padding:8px 16px}.registration-summary-stats{flex-wrap:wrap}.summary-stat-item{flex:45%;min-width:70px}.summary-stat-value{font-size:1.25rem}.summary-stat-label{font-size:.65rem}.admin-action-content,.danger-content{flex-direction:column;align-items:stretch}.admin-action-info,.danger-info{min-width:100%}.btn-primary,.btn-warning,.btn-danger{justify-content:center;width:100%}}.bulk-upload-modal-overlay{z-index:10000;background-color:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}.bulk-upload-modal-content{background:#fff;border-radius:12px;flex-direction:column;width:100%;max-width:900px;max-height:90vh;animation:.3s ease-out modalSlideIn;display:flex;box-shadow:0 10px 40px #0000004d}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.bulk-upload-modal-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.bulk-upload-modal-header h2{color:#1f2937;margin:0;font-size:24px;font-weight:600}.close-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:32px;transition:all .2s;display:flex}.close-btn:hover:not(:disabled){color:#1f2937;background-color:#f3f4f6}.close-btn:disabled{opacity:.5;cursor:not-allowed}.bulk-upload-modal-body{flex:1;padding:28px;overflow-y:auto}.upload-instructions{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:24px;padding:20px}.upload-instructions h3{color:#1f2937;margin-top:0;margin-bottom:12px;font-size:18px}.upload-instructions ol{margin:12px 0;padding-left:24px}.upload-instructions ol li{color:#4b5563;margin:8px 0;line-height:1.6}.important-notes{background-color:#fef3c7;border:1px solid #fbbf24;border-radius:6px;margin-top:16px;padding:16px}.important-notes h4{color:#92400e;margin-top:0;margin-bottom:12px;font-size:16px}.important-notes ul{margin:0;padding-left:24px}.important-notes ul li{color:#78350f;margin:6px 0;line-height:1.5}.important-notes strong{color:#92400e}.file-upload-area{text-align:center;cursor:pointer;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;margin-top:20px;padding:40px;transition:all .3s}.file-upload-area:hover{background-color:#fff;border-color:#ff6b35}.file-upload-area.drag-over{background-color:#fff7ed;border-color:#ff6b35;transform:scale(1.02)}.file-upload-area.has-file{background-color:#ecfdf5;border-color:#10b981}.upload-icon{margin-bottom:12px;font-size:48px}.upload-text{color:#374151;margin:8px 0;font-size:16px;font-weight:500}.upload-hint{color:#6b7280;margin:4px 0;font-size:14px}.remove-file-btn{color:#fff;cursor:pointer;background-color:#ef4444;border:none;border-radius:4px;margin-left:12px;padding:4px 12px;font-size:12px;transition:background-color .2s}.remove-file-btn:hover{background-color:#dc2626}.upload-progress{background-color:#f0f9ff;border:1px solid #bfdbfe;border-radius:8px;margin-top:24px;padding:20px}.progress-bar{background-color:#e0e7ff;border-radius:4px;width:100%;height:8px;margin-bottom:12px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#ff6b35 0%,#f9a826 100%);border-radius:4px;height:100%;transition:width .3s}.progress-text{text-align:center;color:#1e40af;margin:0;font-weight:500}.upload-results{animation:.4s ease-in fadeIn}.results-summary{border-radius:8px;margin-bottom:24px;padding:24px}.results-summary.success{background-color:#ecfdf5;border:2px solid #10b981}.results-summary.has-errors{background-color:#fef2f2;border:2px solid #ef4444}.results-summary h3{margin-top:0;margin-bottom:16px;font-size:20px}.results-stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;display:grid}.stat-item{background-color:#fff;border-radius:6px;flex-direction:column;padding:12px;display:flex}.stat-item.success{border-left:4px solid #10b981}.stat-item.error{border-left:4px solid #ef4444}.stat-item.total{border-left:4px solid #3b82f6}.stat-label{color:#6b7280;margin-bottom:4px;font-size:14px}.stat-value{color:#1f2937;font-size:24px;font-weight:700}.errors-list{margin-bottom:24px}.errors-list h4{color:#dc2626;margin-top:0;margin-bottom:12px;font-size:18px}.error-note{color:#991b1b;background-color:#fee2e2;border:1px solid #fca5a5;border-radius:6px;margin-bottom:16px;padding:12px}.errors-table-container,.users-table-container{border:1px solid #e5e7eb;border-radius:8px;max-height:400px;overflow:auto}.errors-table,.users-table{border-collapse:collapse;width:100%;font-size:14px}.errors-table thead,.users-table thead{z-index:1;background-color:#f9fafb;position:sticky;top:0}.errors-table th,.users-table th{text-align:left;color:#374151;border-bottom:2px solid #e5e7eb;padding:12px;font-weight:600}.errors-table td,.users-table td{color:#4b5563;border-bottom:1px solid #f3f4f6;padding:12px}.errors-table tbody tr:hover,.users-table tbody tr:hover{background-color:#f9fafb}.error-value{color:#dc2626;font-family:Courier New,monospace;font-size:13px}.error-message{color:#991b1b;font-size:13px}.errors-table code{color:#1f2937;background-color:#f3f4f6;border-radius:3px;padding:2px 6px;font-size:12px}.table-note{text-align:center;color:#6b7280;background-color:#f9fafb;margin:0;padding:12px;font-size:13px;font-style:italic}.success-list{margin-bottom:24px}.success-list h4{color:#059669;margin-top:0;margin-bottom:12px;font-size:18px}.bulk-upload-modal-footer{background-color:#f9fafb;border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;padding:20px 28px;display:flex}.btn{cursor:pointer;border:none;border-radius:6px;align-items:center;gap:8px;padding:10px 24px;font-size:16px;font-weight:500;transition:all .2s;display:inline-flex}@media (max-width:768px){.bulk-upload-modal-content{border-radius:0;max-width:100%;max-height:100vh}.bulk-upload-modal-header,.bulk-upload-modal-body,.bulk-upload-modal-footer{padding:16px}.file-upload-area{padding:24px}.upload-icon{font-size:36px}.results-stats{grid-template-columns:1fr}.errors-table-container,.users-table-container{font-size:12px}.errors-table th,.users-table th,.errors-table td,.users-table td{padding:8px}.bulk-upload-modal-footer{flex-direction:column}.btn{justify-content:center;width:100%}}.users-page-container{max-width:1400px;margin:0 auto;padding:2rem}.user-details-header-bar{margin-bottom:1.5rem}.back-to-list-btn{color:#fff;cursor:pointer;background:#3182ce;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s;display:inline-flex;box-shadow:0 2px 4px #3182ce33}.back-to-list-btn:hover{background:#2c5aa0;transform:translateY(-1px);box-shadow:0 4px 8px #3182ce4d}.back-to-list-btn:active{transform:translateY(0);box-shadow:0 2px 4px #3182ce33}.back-to-list-btn svg{flex-shrink:0}.users-page-header{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:2rem;display:flex}.header-left h1{color:#1a202c;margin:0 0 .5rem;font-size:2rem;font-weight:700}.header-left .subtitle{color:#718096;margin:0;font-size:.95rem}.btn{cursor:pointer;border:none;border-radius:12px;align-items:center;gap:.625rem;padding:.875rem 1.75rem;font-size:.95rem;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a}.btn:before{content:"";background:#ffffff4d;border-radius:50%;width:0;height:0;transition:width .5s,height .5s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn:hover:before{width:300px;height:300px}.btn svg,.btn span{z-index:1;position:relative}.btn-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);box-shadow:0 4px 12px #667eea4d}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 20px #667eea66}.btn-primary:active{transform:translateY(-1px);box-shadow:0 4px 12px #667eea59}.btn-secondary{color:#2d3748;background:linear-gradient(135deg,#e2e8f0 0%,#cbd5e0 100%);box-shadow:0 2px 6px #00000014}.btn-secondary:hover{background:linear-gradient(135deg,#cbd5e0 0%,#a0aec0 100%);transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.btn-secondary:active{transform:translateY(-1px)}.btn-danger{color:#fff;background:linear-gradient(135deg,#f56565 0%,#e53e3e 100%);box-shadow:0 4px 12px #f565654d}.btn-danger:hover{background:linear-gradient(135deg,#e53e3e 0%,#c53030 100%);transform:translateY(-3px);box-shadow:0 8px 20px #f5656566}.btn-danger:active{transform:translateY(-1px)}.search-section{background:#fff;border-radius:16px;margin-bottom:2rem;padding:1.5rem;box-shadow:0 2px 8px #0000000a}.search-container{margin-bottom:1rem;position:relative}.search-input-wrapper{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-radius:14px;align-items:center;padding:4px;display:flex;position:relative;box-shadow:0 4px 12px #0000000d,inset 0 1px 2px #ffffff80}.search-icon{color:#667eea;pointer-events:none;z-index:1;filter:drop-shadow(0 1px 2px #667eea33);position:absolute;left:1.25rem}.search-input{color:#212e67;background:#fff;border:2px solid #0000;border-radius:12px;width:100%;padding:1.125rem 3.5rem;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d}.search-input::placeholder{color:#a0aec0}.search-input:focus{border-color:#667eea;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #667eea1f,0 4px 12px #667eea26}.autocomplete-dropdown{z-index:1000;background:#fff;border:1px solid #e2e8f0;border-radius:14px;max-height:420px;animation:.2s cubic-bezier(.4,0,.2,1) slideDown;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow-y:auto;box-shadow:0 16px 48px #0000001f,0 0 1px #0000000d}.autocomplete-header{color:#fff;letter-spacing:.025em;text-transform:uppercase;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:14px 14px 0 0;padding:.875rem 1.25rem;font-size:.875rem;font-weight:700;box-shadow:0 2px 4px #667eea33}.autocomplete-loading{color:#718096;justify-content:center;align-items:center;gap:.875rem;padding:2.5rem;font-weight:500;display:flex}.autocomplete-item{cursor:pointer;border-bottom:1px solid #f7fafc;padding:1.125rem 1.25rem;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.autocomplete-item:before{content:"";opacity:0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);width:3px;transition:opacity .2s;position:absolute;top:0;bottom:0;left:0}.autocomplete-item:hover{background:linear-gradient(90deg,#667eea0d 0%,#f7fafc 100%);transform:translate(2px)}.autocomplete-item:hover:before{opacity:1}.autocomplete-item:last-child{border-bottom:none;border-radius:0 0 14px 14px}.autocomplete-display{color:#2d3748;font-size:1rem;font-weight:700}.autocomplete-badge{color:#fff;letter-spacing:.05em;text-transform:uppercase;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;padding:.35rem .75rem;font-size:.7rem;font-weight:700;box-shadow:0 2px 6px #667eea40}.autocomplete-item-meta{color:#718096;gap:1.25rem;font-size:.875rem;display:flex}.autocomplete-email{font-family:SF Mono,Monaco,Cascadia Code,Courier New,monospace;font-weight:500}.autocomplete-location{font-weight:500}.autocomplete-empty{text-align:center;color:#a0aec0;padding:2.5rem;font-size:.95rem;font-weight:500}.search-stats{color:#718096;align-items:center;gap:.5rem;padding:.5rem .25rem;font-size:.875rem;font-weight:600;display:flex}.search-stats:before{content:"📊";font-size:1rem}.pagination-section{background:#fff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:1rem;display:flex;box-shadow:0 1px 3px #0000001a}.page-size-select{color:#2d3748;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.375rem .75rem;font-size:.875rem;transition:all .2s}.pagination-btn{color:#4a5568;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:6px;justify-content:center;align-items:center;min-width:36px;height:36px;padding:0 .75rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.pagination-btn:hover:not(:disabled){color:#2d3748;background:#f7fafc;border-color:#cbd5e0}.pagination-btn.active{color:#fff;background:linear-gradient(135deg,#ff6b35 0%,#f9a826 100%);border-color:#ff6b35;font-weight:600}.pagination-ellipsis{color:#a0aec0;padding:0 .5rem;font-weight:600}.table-container{-webkit-overflow-scrolling:touch;background:#fff;border-radius:12px;position:relative;overflow:auto visible;box-shadow:0 1px 3px #0000001a}.users-table{border-collapse:collapse;width:100%}.users-table thead{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.users-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;padding:1rem;font-size:.875rem;font-weight:600}.users-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.users-table th.sortable:hover{background:#ffffff1a}.users-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .2s}.users-table tbody tr.clickable-row{cursor:pointer}.users-table tbody tr:hover{background:#f7fafc}.users-table td{color:#2d3748;padding:1rem;font-size:.95rem}.user-avatar{border-radius:50%;flex-shrink:0;width:40px;height:40px;overflow:hidden}.user-avatar img{object-fit:cover;width:100%;height:100%}.avatar-placeholder{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:center;align-items:center;width:100%;height:100%;font-size:.875rem;font-weight:700;display:flex}.user-info{flex-direction:column;gap:.25rem;display:flex}.user-initiated{color:#718096;font-size:.8rem;font-style:italic}.email-cell{color:#667eea;font-family:SF Mono,Monaco,Cascadia Code,Courier New,monospace;font-size:.9rem}.badge{text-transform:capitalize;border-radius:12px;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}.badge-male{color:#0056d2;background:#e6f4ff}.badge-female{color:#c41d7f;background:#ffe6f0}.badge-role{text-transform:uppercase;letter-spacing:.05em}.badge-admin{color:#b45309;background:#fef3c7}.badge-user{color:#1e40af;background:#dbeafe}.action-btn-compact{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;transition:all .2s;display:flex}.action-btn-compact:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.action-btn-compact:active:not(:disabled){transform:translateY(0)}.action-btn-compact.view{background:#e3f2fd}.action-btn-compact.view:hover:not(:disabled){background:#bbdefb}.action-btn-compact.edit{background:#fff3e0}.action-btn-compact.edit:hover:not(:disabled){background:#ffe0b2}.action-btn-compact.role{background:#f3e8ff}.action-btn-compact.role.admin{background:#fef3c7}.action-btn-compact.role.user{background:#dbeafe}.action-btn-compact.role:hover:not(:disabled){background:#e9d5ff}.action-btn-compact.role.admin:hover:not(:disabled){background:#fde68a}.action-btn-compact.role.user:hover:not(:disabled){background:#bfdbfe}.action-btn-compact.delete{background:#ffebee}.action-btn-compact.delete:hover:not(:disabled){background:#ffcdd2}.action-btn-compact:disabled{opacity:.35;cursor:not-allowed;filter:grayscale();background:#f5f5f5}.modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;padding:2rem;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-content{background:#fff;border-radius:16px;width:100%;max-height:90vh;margin:auto;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-small{max-width:500px}.modal-header h2{color:#1a202c;margin:0;font-size:1.5rem}.modal-close{color:#a0aec0;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;padding:.5rem;transition:all .2s;display:flex}.modal-close:hover{color:#4a5568;background:#f7fafc}.modal-footer{border-top:1px solid #e2e8f0;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;display:flex}.modal-body{flex-direction:column;gap:1.5rem;max-height:70vh;padding:1.5rem 2rem;display:flex;overflow-y:auto}.details-section{background:#f7fafc;border-radius:12px;padding:1.5rem}.details-section.full-width{grid-column:1/-1}.details-section h3{color:#2d3748;margin:0 0 1rem;font-size:1.1rem;font-weight:700}.details-table{border-collapse:separate;border-spacing:0;background:#fff;border-radius:8px;width:100%;overflow:hidden}.details-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background .2s}.details-table tbody tr:last-child{border-bottom:none}.details-table tbody tr:hover{background:#f7fafc}.details-table td{padding:.875rem 1rem}.details-table .detail-label{color:#4a5568;white-space:nowrap;background:#f8fafc;width:180px;font-size:.9rem;font-weight:600}.details-table .detail-value{color:#2d3748;word-break:break-word;font-size:.95rem}.details-table .detail-value.code{background:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;padding:.25rem .5rem;font-family:SF Mono,Monaco,Cascadia Code,Courier New,monospace;font-size:.85rem}.comments-text{color:#2d3748;background:#fff;border-radius:8px;margin:0;padding:1rem;line-height:1.6}.confirmation-modal{max-width:600px}.confirmation-content{padding:1rem 0}.user-info-block{background:#f7fafc;border-radius:8px;margin-bottom:1.5rem;padding:1rem;font-size:1.1rem}.user-info-block strong{color:#4a5568;margin-right:.5rem}.role-change-display{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-radius:12px;justify-content:space-around;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.current-role,.new-role{flex-direction:column;flex:1;align-items:center;gap:.5rem;display:flex}.role-label{color:#718096;text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;font-weight:600}.role-arrow{color:#667eea;font-size:2rem;animation:2s ease-in-out infinite pulse}.warning-message{background:#fff7ed;border-left:4px solid #f59e0b;border-radius:8px;padding:1rem}.warning-message strong{color:#b45309;margin-bottom:.5rem;display:block}.warning-message p{color:#78350f;margin:0;font-size:.95rem;line-height:1.6}.delete-user-info{background:#f7fafc;border-radius:8px;flex-direction:column;gap:.5rem;margin:1rem 0;padding:1rem;display:flex}.delete-user-info strong{color:#2d3748;font-size:1.1rem}.delete-user-info span{color:#718096;font-size:.9rem}.warning-text{color:#dc2626;margin:0;font-size:.9rem}.loading-state{color:#718096;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}@media (max-width:1200px){.users-page-container{max-width:100%;padding:1.5rem}.users-table{font-size:.9rem}.users-table th,.users-table td{padding:.75rem}.search-wrapper{max-width:100%}}@media (max-width:1024px) and (min-width:769px){.users-page-container{padding:1.5rem}.users-page-header{gap:1.5rem}.header-left h1{font-size:1.75rem}.header-left .subtitle{font-size:.9rem}.btn{padding:.75rem 1.5rem;font-size:.9rem}.search-bar-container{flex-direction:column;gap:1rem}.users-table{font-size:.85rem}.users-table th,.users-table td{padding:.65rem}}@media (max-width:768px){.users-page-container{padding:1rem}.users-page-header{flex-direction:column;align-items:stretch;gap:1rem}.header-left h1{text-align:center;font-size:1.5rem}.header-left .subtitle{text-align:center;font-size:.85rem}.header-right{flex-direction:column;width:100%}.header-right .btn{justify-content:center;width:100%;padding:.75rem 1rem;font-size:.9rem}.search-bar-container{flex-direction:column;gap:1rem;padding:1rem}.search-wrapper{max-width:100%}.search-input{padding:.75rem 1rem .75rem 2.75rem;font-size:.9rem}.search-icon{left:.75rem}.autocomplete-list{max-height:250px}.autocomplete-item{padding:.75rem;font-size:.85rem}.sort-controls{flex-direction:column;gap:.75rem;width:100%}.sort-controls label{font-size:.85rem}.sort-controls select,.sort-controls button{width:100%;padding:.625rem;font-size:.85rem}.pagination-section{flex-direction:column;align-items:stretch;gap:.75rem;padding:.75rem}.pagination-info{width:100%;font-size:.85rem}.pagination-info:first-child{order:1;justify-content:center}.pagination-info:last-child{order:3;justify-content:center}.page-size-select{min-width:80px;padding:.375rem .625rem;font-size:.85rem}.pagination-controls{flex-wrap:wrap;order:2;justify-content:center;gap:.375rem;width:100%}.pagination-btn{min-width:38px;height:38px;padding:0 .625rem;font-size:.85rem}.pagination-btn:first-child,.pagination-btn:last-child{padding:0 .75rem}.pagination-pages{flex-wrap:wrap;justify-content:center;gap:.25rem}.pagination-ellipsis{padding:0 .375rem}.table-container{-webkit-overflow-scrolling:touch;overflow-x:auto}.users-table{min-width:1000px;font-size:.8rem}.users-table th,.users-table td{white-space:nowrap;padding:.5rem}.users-table th{z-index:10;font-size:.75rem;position:sticky;top:0}.action-buttons{gap:.25rem}.action-btn-compact{width:28px;height:28px;font-size:.75rem}.empty-state{padding:2rem 1rem}.empty-state-icon{font-size:2.5rem}.empty-state h3{font-size:1.1rem}.empty-state p{font-size:.85rem}.modal-overlay{align-items:flex-start;padding:1rem}.modal-content{border-radius:12px;max-width:calc(100vw - 2rem);max-height:calc(100vh - 2rem);margin:0;padding:1rem;overflow-y:auto}.modal-body{padding:1rem}.modal-header h2{font-size:1.25rem}.modal-close{width:32px;height:32px;font-size:1.25rem}.details-table{width:100%;display:block}.details-table tbody{display:block}.details-table tbody tr{border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;margin-bottom:.5rem;display:flex;overflow:hidden}.details-table tbody tr:last-child{margin-bottom:0}.details-table td{border-bottom:none;width:100%;padding:.75rem;display:block}.details-table .detail-label{text-transform:uppercase;letter-spacing:.025em;color:#718096;background:#f8fafc;border-bottom:1px solid #e2e8f0;width:100%;padding:.5rem .75rem;font-size:.75rem}.details-table .detail-value{background:#fff;padding:.75rem;font-size:.875rem}.details-section{padding:1rem}.details-section h3{font-size:1rem}.modal-footer{gap:.75rem;padding:1rem}.modal-footer .btn{padding:.625rem 1rem;font-size:.85rem}.role-change-display{flex-direction:column;gap:1rem;padding:1rem}.role-arrow{font-size:1.5rem;transform:rotate(90deg)}.user-info-block{padding:.875rem;font-size:1rem}.warning-message{padding:.875rem}.warning-message p{font-size:.9rem}.stats-summary{flex-direction:column;gap:.75rem}.stat-item{padding:.75rem}.stat-value{font-size:1.5rem}.stat-label{font-size:.75rem}}@media (max-width:480px){.users-page-container{padding:.75rem}.users-page-header{gap:.75rem}.header-left h1{font-size:1.25rem}.header-left .subtitle{font-size:.8rem}.btn{gap:.4rem;padding:.625rem .875rem;font-size:.85rem}.btn svg{width:14px;height:14px}.pagination-section{gap:.625rem;padding:.625rem .5rem}.pagination-info{flex-wrap:wrap;gap:.375rem;font-size:.8rem}.page-size-select{min-width:70px;padding:.3rem .5rem;font-size:.8rem}.pagination-controls{gap:.25rem}.pagination-btn{min-width:36px;height:36px;padding:0 .5rem;font-size:.8rem}.pagination-btn:first-child,.pagination-btn:last-child{padding:0 .625rem}.pagination-pages{gap:.2rem}.pagination-ellipsis{padding:0 .25rem;font-size:.8rem}.search-bar-container{padding:.75rem}.search-input{padding:.625rem .875rem .625rem 2.5rem;font-size:.85rem}.search-icon{width:16px;height:16px}.autocomplete-item{padding:.625rem;font-size:.8rem}.users-table{font-size:.75rem}.users-table th,.users-table td{padding:.4rem}.action-btn-compact{width:26px;height:26px;font-size:.7rem}.modal-overlay{align-items:stretch;height:100dvh;padding:0}.modal-content{border-radius:0;flex-direction:column;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;padding:.75rem;display:flex}.modal-body{-webkit-overflow-scrolling:touch;flex:1;padding:.75rem;overflow-y:auto}.modal-header h2{font-size:1.1rem}.modal-close{width:28px;height:28px;font-size:1.1rem}.details-table{width:100%;display:block}.details-table tbody{display:block}.details-table tbody tr{background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex-direction:column;margin-bottom:.5rem;display:flex;overflow:hidden}.details-table tbody tr:last-child{margin-bottom:0}.details-table tbody tr:hover{background:#fff}.details-table td{border-bottom:none;width:100%;padding:0;display:block}.details-table .detail-label{text-transform:uppercase;letter-spacing:.05em;color:#718096;white-space:normal;background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-bottom:1px solid #e2e8f0;width:100%;padding:.4rem .625rem;font-size:.7rem;font-weight:700}.details-table .detail-value{color:#2d3748;background:#fff;padding:.625rem;font-size:.825rem}.details-table .detail-value.code{background:#f8fafc;padding:.5rem;font-size:.75rem}.details-section{margin-bottom:.75rem;padding:.75rem}.details-section:last-child{margin-bottom:0}.details-section h3{border-bottom:2px solid #e2e8f0;margin-bottom:.75rem;padding-bottom:.5rem;font-size:.95rem}.comments-text{padding:.75rem;font-size:.85rem}.empty-state{padding:1.5rem .75rem}.empty-state-icon{font-size:2rem}.empty-state h3{font-size:1rem}.empty-state p{font-size:.8rem}}@media (max-width:360px){.users-page-container{padding:.5rem}.header-left h1{font-size:1.1rem}.header-left .subtitle{font-size:.75rem}.btn{padding:.5rem .75rem;font-size:.8rem}.search-input{padding:.5rem .75rem .5rem 2.25rem;font-size:.8rem}.users-table{min-width:900px;font-size:.7rem}.users-table th,.users-table td{padding:.35rem}.action-btn-compact{width:24px;height:24px;font-size:.65rem}.modal-content,.modal-body{padding:.5rem}.modal-header{padding:.75rem}.modal-header h2{font-size:1rem}.modal-footer{padding:.75rem}.details-table{width:100%;display:block}.details-table tbody{display:block}.details-table tbody tr{background:#fff;border:1px solid #e2e8f0;border-radius:6px;flex-direction:column;margin-bottom:.4rem;display:flex;overflow:hidden}.details-table tbody tr:last-child{margin-bottom:0}.details-table td{border-bottom:none;width:100%;padding:0;display:block}.details-table .detail-label{text-transform:uppercase;letter-spacing:.05em;color:#718096;white-space:normal;background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-bottom:1px solid #e2e8f0;width:100%;padding:.35rem .5rem;font-size:.65rem;font-weight:700}.details-table .detail-value{color:#2d3748;background:#fff;padding:.5rem;font-size:.8rem}.details-table .detail-value.code{padding:.4rem;font-size:.7rem}.details-section{margin-bottom:.625rem;padding:.625rem}.details-section h3{margin-bottom:.625rem;padding-bottom:.4rem;font-size:.9rem}.comments-text{padding:.625rem;font-size:.8rem}}.registrations-page-container{box-sizing:border-box;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);width:100%;max-width:1400px;min-height:100vh;margin:0 auto;padding:2rem;overflow-x:hidden}.registrations-page-header{box-sizing:border-box;background:#fff;border-radius:16px;justify-content:space-between;align-items:center;width:100%;margin-bottom:2rem;padding:1.5rem;display:flex;box-shadow:0 4px 12px #00000014}.stats-card{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;flex-direction:column;align-items:center;padding:1rem 1.5rem;display:flex;box-shadow:0 4px 12px #667eea4d}.yatra-selection-section{box-sizing:border-box;background:linear-gradient(135deg,#667eea0d 0%,#764ba20d 100%) padding-box padding-box;border:2px solid #0000;border-radius:16px;align-items:center;gap:1rem;width:100%;margin-bottom:2rem;padding:1.5rem;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000014,inset 0 1px #ffffff80}.yatra-selection-section:before{content:"";opacity:0;pointer-events:none;z-index:0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);transition:opacity .3s;position:absolute;inset:0}.yatra-selection-section:focus-within:before{opacity:.05}.yatra-select-label{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;white-space:nowrap;z-index:1;-webkit-background-clip:text;background-clip:text;align-items:center;gap:.5rem;font-size:1.1rem;font-weight:700;display:flex}.yatra-select{color:#333;cursor:pointer;z-index:1;appearance:none;background:#fff 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='%23667eea' d='M6 8L1 3h10z'/%3E%3C/svg%3E") calc(100% - 1rem)/12px no-repeat;border:2px solid #e1e8ed;border-radius:12px;outline:none;flex:1;padding:.875rem 2.5rem .875rem 1rem;font-size:1rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.yatra-select:hover{border-color:#667eea;transform:translateY(-1px);box-shadow:0 4px 12px #667eea33}.yatra-select:focus{border-color:#667eea;transform:translateY(-1px);box-shadow:0 0 0 4px #667eea26,0 4px 12px #667eea33}.yatra-select option{padding:.75rem;font-weight:500}.yatra-select option:first-child{color:#999;font-style:italic}.empty-state-large{text-align:center;background:#fff;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex;box-shadow:0 4px 12px #00000014}.empty-state-large svg{margin-bottom:1.5rem}.empty-state-large h2{color:#333;margin:0 0 .5rem;font-size:1.5rem}.empty-state-large p{color:#666;margin:0;font-size:1rem}.search-section{box-sizing:border-box;background:#fff;border-radius:16px;flex-direction:column;gap:1rem;width:100%;margin-bottom:1.5rem;padding:1.5rem;display:flex;box-shadow:0 4px 12px #00000014}.search-container{box-sizing:border-box;flex:1;width:100%;position:relative}.search-input-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:#667eea;z-index:1;position:absolute;left:1rem}.search-input{box-sizing:border-box;background:#fff;border:2px solid #e1e8ed;border-radius:12px;outline:none;width:100%;padding:.875rem 10rem .875rem 3rem;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.search-input:focus{border-color:#667eea;transform:translateY(-1px);box-shadow:0 0 0 4px #667eea1f,0 4px 12px #667eea26}.search-actions{z-index:1;gap:.5rem;display:flex;position:absolute;right:1rem}.search-action-btn,.clear-search-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:8px;align-items:center;padding:.625rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 6px #667eea4d}.search-action-btn:hover,.clear-search-btn:hover{transform:translateY(-2px)scale(1.05);box-shadow:0 4px 12px #667eea66}.search-action-btn:active,.clear-search-btn:active{transform:translateY(0)scale(.98)}.filter-group{background:linear-gradient(135deg,#667eea0d 0%,#764ba20d 100%);border:2px solid #0000;border-radius:12px;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.filter-group label{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;white-space:nowrap;-webkit-background-clip:text;background-clip:text;font-size:.95rem;font-weight:700}.status-filter-select{color:#333;cursor:pointer;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 20 20' fill='%23667eea'%3E%3Cpath fillRule='evenodd' d='M3 3a1 1 0 011-1h12a1 1 0 011 1v3a1 1 0 01-.293.707L12 11.414V15a1 1 0 01-.293.707l-2 2A1 1 0 018 17v-5.586L3.293 6.707A1 1 0 013 6V3z' clipRule='evenodd'/%3E%3C/svg%3E"),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='%23667eea' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:.75rem,calc(100% - .75rem);background-repeat:no-repeat,no-repeat;background-size:16px 16px,12px 12px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border:2px solid #e1e8ed;border-radius:10px;outline:none;min-width:200px;padding:.625rem 2.5rem;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.status-filter-select:hover{border-color:#667eea;transform:translateY(-1px);box-shadow:0 4px 12px #667eea33}.status-filter-select:focus{border-color:#667eea;transform:translateY(-1px);box-shadow:0 0 0 3px #667eea26,0 4px 12px #667eea33}.status-filter-select option{padding:.75rem;font-weight:600}.search-stats{color:#666;padding:.5rem 0;font-size:.9rem}.autocomplete-dropdown{z-index:1000;background:#fff;border-radius:12px;max-height:400px;position:absolute;top:calc(100% + .5rem);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000026}.autocomplete-loading{color:#666;justify-content:center;align-items:center;gap:.75rem;padding:1.5rem;display:flex}.small-spinner{border:3px solid #f3f3f3;border-top-color:#667eea;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.autocomplete-header{color:#666;background:#f8f9fa;border-bottom:1px solid #e1e8ed;padding:.75rem 1rem;font-size:.875rem;font-weight:600}.autocomplete-item{cursor:pointer;border-bottom:1px solid #f0f0f0;padding:1rem;transition:all .2s}.autocomplete-item:hover{background:linear-gradient(90deg,#f8f9ff 0%,#fff 100%);border-left:3px solid #667eea;padding-left:calc(1rem - 3px)}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item-main{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.autocomplete-display{color:#333;font-weight:600}.autocomplete-badge{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:6px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.autocomplete-item-meta{color:#666;justify-content:space-between;align-items:center;gap:1rem;font-size:.85rem;display:flex}.autocomplete-email{flex:1}.autocomplete-status{white-space:nowrap;border-radius:6px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.autocomplete-empty{text-align:center;color:#666;padding:2rem}.pagination-section{box-sizing:border-box;background:#fff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;margin-bottom:1.5rem;padding:1rem 1.5rem;display:flex;box-shadow:0 4px 12px #00000014}.pagination-info{color:#666;align-items:center;gap:.5rem;font-size:.95rem;display:flex}.pagination-info label{color:#333;font-weight:600}.page-size-select{cursor:pointer;appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 12 12'%3E%3Cpath fill='%23667eea' d='M6 8L1 3h10z'/%3E%3C/svg%3E") calc(100% - .5rem)/10px no-repeat;border:2px solid #e1e8ed;border-radius:8px;padding:.5rem 2rem .5rem .75rem;font-size:.95rem;transition:all .3s}.page-size-select:hover{border-color:#667eea}.page-size-select:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1f}.pagination-controls{align-items:center;gap:.5rem;display:flex}.pagination-pages{align-items:center;gap:.25rem;display:flex}.pagination-btn{color:#333;cursor:pointer;text-align:center;background:#fff;border:2px solid #e1e8ed;border-radius:8px;min-width:40px;padding:.5rem .875rem;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.pagination-btn:hover:not(:disabled){color:#667eea;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 8px #667eea33}.pagination-btn.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#667eea;box-shadow:0 4px 12px #667eea4d}.pagination-ellipsis{color:#999;padding:0 .5rem}.table-container{box-sizing:border-box;-webkit-overflow-scrolling:touch;background:#fff;border-radius:16px;width:100%;overflow:auto hidden;box-shadow:0 4px 12px #00000014}.registrations-table{border-collapse:collapse;width:100%}.registrations-table thead{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.registrations-table th{text-align:left;padding:1rem;font-size:.95rem;font-weight:600;position:relative}.registrations-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.registrations-table th.sortable:hover{background:#ffffff1a}.registrations-table tbody tr{border-bottom:1px solid #f0f0f0;transition:all .2s}.registrations-table tbody tr.clickable-row{cursor:pointer}.registrations-table tbody tr:hover{background:linear-gradient(90deg,#f8f9ff 0%,#fff 100%);transform:translate(4px);box-shadow:-4px 0 #667eea}.registrations-table tbody tr.clickable-row:hover{background:linear-gradient(90deg,#f5f7ff 0%,#fff 100%);transform:translateY(-2px)translate(4px);box-shadow:-4px 0 #667eea,0 4px 12px #667eea26}.registrations-table td{color:#333;padding:1rem;font-size:.95rem}.user-cell{align-items:center;gap:.75rem;display:flex}.user-info{flex-direction:column;display:flex}.user-name{color:#333;font-weight:600}.email-cell{color:#666}.reg-id{color:#667eea;background:#667eea1a;border-radius:6px;padding:.25rem .5rem;font-family:Courier New,monospace;font-size:.9rem;font-weight:600}.members-badge{color:#333;background:#f0f0f0;border-radius:8px;align-items:center;gap:.25rem;padding:.375rem .75rem;font-weight:600;display:inline-flex}.status-badge{text-transform:capitalize;border-radius:8px;align-items:center;gap:.25rem;padding:.375rem .75rem;font-size:.875rem;font-weight:600;display:inline-flex}.status-draft{color:#1976d2;background:#e3f2fd}.status-pending{color:#f57c00;background:#fff3e0}.status-confirmed{color:#388e3c;background:#e8f5e9}.status-completed{color:#7b1fa2;background:#f3e5f5}.status-cancelled,.payment-not-paid{color:#c62828;background:#ffebee}.payment-partial{color:#f57c00;background:#fff3e0}.payment-reg-paid{color:#1976d2;background:#e3f2fd}.payment-full-paid{color:#388e3c;background:#e8f5e9}.download-section{display:inline-block;position:relative}.download-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border:none;border-radius:10px;align-items:center;padding:.75rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 12px #667eea4d}.download-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.download-btn:disabled{opacity:.5;cursor:not-allowed}.download-menu{z-index:1000;background:#fff;border-radius:12px;min-width:200px;animation:.2s ease-out slideDown;position:absolute;top:calc(100% + .5rem);left:0;overflow:hidden;box-shadow:0 8px 24px #00000026}.download-menu-item{text-align:left;cursor:pointer;color:#333;background:#fff;border:none;border-bottom:1px solid #f0f0f0;width:100%;padding:.875rem 1.25rem;font-size:.9rem;transition:all .2s;display:block}.download-menu-item:last-child{border-bottom:none}.download-menu-item:hover{color:#667eea;background:linear-gradient(90deg,#f8f9ff 0%,#fff 100%);padding-left:1.5rem}.actions-column{text-align:center;width:100px}.actions-cell{justify-content:center;gap:.5rem;display:flex}.action-btn-compact{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;font-size:1.25rem;transition:all .2s;display:flex}.action-btn-compact.view:hover{transform:scale(1.1);box-shadow:0 4px 12px #667eea4d}.empty-content{color:#999;flex-direction:column;align-items:center;gap:1rem;display:flex}.empty-content svg{opacity:.3}.empty-content p{margin:0;font-size:1.1rem}.loading-state{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 2rem;display:flex}@media (max-width:1200px){.registrations-page-container{padding:1.5rem}.search-input{font-size:.95rem}}@media (max-width:768px){.registrations-page-container{width:100%;max-width:100%;padding:1rem}.registrations-page-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem}.header-left h1{font-size:1.5rem}.header-right{width:100%}.stats-card{flex-direction:row;justify-content:space-between;width:100%;padding:.875rem 1rem}.yatra-selection-section{flex-direction:column;align-items:stretch;padding:1rem}.yatra-select-label{justify-content:center;font-size:1rem}.yatra-select{background-position:.5rem;background-size:18px 18px;padding:.75rem 1rem .75rem 2.5rem;font-size:.95rem}.search-section{flex-direction:column;gap:.875rem;padding:1rem}.search-input{padding:.75rem 9rem .75rem 2.5rem;font-size:.9rem}.search-icon{width:18px;height:18px;left:.75rem}.search-actions{right:.75rem}.search-action-btn,.clear-search-btn{padding:.5rem}.search-action-btn svg,.clear-search-btn svg{width:14px;height:14px}.filter-group{flex-flow:wrap;align-items:center;padding:.625rem .875rem}.filter-group label{text-align:left;flex-shrink:0;font-size:.9rem}.status-filter-select{background-position:.5rem;background-size:14px 14px;flex:1;min-width:150px;padding:.5rem .875rem .5rem 2.25rem;font-size:.9rem}.search-stats{padding:.375rem 0;font-size:.85rem}.download-btn{justify-content:center;width:100%;padding:.625rem 1rem;font-size:.9rem}.download-menu{min-width:100%;left:0;right:0}.pagination-section{flex-direction:column;align-items:stretch;gap:.75rem;padding:.875rem}.pagination-info{order:3;justify-content:space-between;width:100%;font-size:.9rem}.pagination-info:first-child{order:1;justify-content:center}.pagination-info:last-child{order:3;justify-content:center}.pagination-controls{order:2;justify-content:center;gap:.375rem;width:100%}.pagination-pages{flex:0 auto;gap:.25rem}.pagination-btn{min-width:38px;padding:.5rem .625rem;font-size:.9rem}.pagination-btn:first-child,.pagination-btn:last-child{padding:.5rem .75rem}.page-size-select{padding:.5rem .625rem;font-size:.9rem}.table-container{-webkit-overflow-scrolling:touch;border-radius:12px;overflow-x:auto}.registrations-table{min-width:800px}.registrations-table th,.registrations-table td{padding:.875rem;font-size:.9rem}.user-name{font-size:.95rem}.email-cell{font-size:.85rem}.reg-id{padding:.25rem .5rem;font-size:.85rem}.members-badge{padding:.3rem .6rem;font-size:.85rem}.status-badge{padding:.3rem .6rem;font-size:.8rem}.action-btn-compact{padding:.4rem;font-size:1.15rem}.empty-state-large{padding:3rem 1.5rem}.empty-state-large h2{font-size:1.25rem}.empty-state-large p{font-size:.9rem}.autocomplete-dropdown{max-height:300px}.autocomplete-item{padding:.875rem}.autocomplete-display{font-size:.95rem}.autocomplete-badge{font-size:.7rem}.autocomplete-item-meta{font-size:.8rem}}@media (max-width:480px){.registrations-page-container{width:100%;max-width:100vw;padding:.75rem}.registrations-page-header{padding:.875rem}.header-left h1{font-size:1.25rem}.subtitle{font-size:.8rem;line-height:1.4}.stats-card{padding:.75rem}.stats-label{font-size:.75rem}.stats-value{font-size:1.5rem}.yatra-selection-section{padding:.875rem}.yatra-select-label{font-size:.95rem}.yatra-select{background-size:16px 16px;padding:.625rem .875rem .625rem 2.25rem;font-size:.9rem}.search-section{padding:.875rem}.search-input{padding:.625rem 8rem .625rem 2.25rem;font-size:.85rem}.search-icon{width:16px;height:16px;left:.625rem}.search-actions{gap:.375rem;right:.625rem}.search-action-btn,.clear-search-btn{padding:.425rem}.search-action-btn svg,.clear-search-btn svg{width:13px;height:13px}.filter-group{align-items:stretch;gap:.5rem;padding:.5rem .75rem}.filter-group label{text-align:center;font-size:.85rem}.status-filter-select{background-size:13px 13px;width:100%;min-width:100%;padding:.5rem .75rem .5rem 2rem;font-size:.85rem}.search-stats{text-align:center;font-size:.8rem}.pagination-section{gap:.625rem;padding:.75rem .5rem}.pagination-info{flex-wrap:wrap;gap:.375rem;font-size:.85rem}.pagination-info label{font-size:.85rem}.pagination-info span{white-space:nowrap}.page-size-select{min-width:70px;padding:.375rem .5rem;font-size:.85rem}.pagination-controls{gap:.25rem}.pagination-btn{min-width:36px;padding:.375rem .5rem;font-size:.85rem}.pagination-btn:first-child,.pagination-btn:last-child{padding:.375rem .625rem}.pagination-ellipsis{padding:0 .25rem;font-size:.85rem}.pagination-pages{gap:.2rem}.registrations-table{min-width:700px}.registrations-table th,.registrations-table td{padding:.75rem .5rem;font-size:.85rem}.user-name{font-size:.9rem}.email-cell{font-size:.8rem}.reg-id{padding:.2rem .4rem;font-size:.8rem}.members-badge{padding:.25rem .5rem;font-size:.8rem}.status-badge{padding:.25rem .5rem;font-size:.75rem}.action-btn-compact{padding:.375rem;font-size:1.1rem}.empty-state-large{padding:2rem 1rem}.empty-state-large svg{width:60px;height:60px}.empty-state-large h2{font-size:1.1rem}.empty-state-large p{font-size:.85rem}.autocomplete-dropdown{border-radius:10px;max-height:250px}.autocomplete-header{padding:.625rem .875rem;font-size:.8rem}.autocomplete-item{padding:.75rem}.autocomplete-display{font-size:.9rem}.autocomplete-badge{padding:.2rem .4rem;font-size:.65rem}.autocomplete-item-meta{gap:.5rem;font-size:.75rem}.autocomplete-loading{padding:1.25rem;font-size:.85rem}.small-spinner{border-width:2px;width:18px;height:18px}.loading-state{padding:2rem 1rem}.spinner{border-width:3px;width:40px;height:40px}}@media (hover:none) and (pointer:coarse){.pagination-btn,.action-btn-compact,.search-action-btn,.clear-search-btn{min-width:44px;min-height:44px}.yatra-select,.status-filter-select{min-height:44px}.registrations-table tbody tr:hover{transform:none}.autocomplete-item:hover{border-left-width:0;padding-left:1rem}}@media (max-width:768px) and (orientation:landscape){.registrations-page-header{padding:.75rem}.yatra-selection-section{flex-direction:row;padding:.75rem}.search-section{padding:.75rem}.pagination-section{flex-flow:wrap;padding:.75rem}.empty-state-large{padding:2rem 1rem}}.sponsorships-page-container{background:var(--gray-50,#f9fafb);box-sizing:border-box;width:100%;max-width:1400px;min-height:100vh;margin:0 auto;padding:2rem}.sponsorships-page-header{background:#fff;border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;display:flex;box-shadow:0 4px 12px #00000014}.header-left h1{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0 0 .5rem;font-size:2rem;font-weight:700}.subtitle{color:var(--gray-500,#6b7280);margin:0;font-size:.95rem}.header-right{gap:1rem;display:flex}.stats-card{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;border-radius:12px;flex-direction:column;align-items:center;padding:1rem 1.5rem;display:flex;box-shadow:0 4px 12px #667eea4d}.stats-card.success{background:linear-gradient(135deg,#22c55e 0%,#16a34a 100%);box-shadow:0 4px 12px #22c55e4d}.stats-label{opacity:.9;margin-bottom:.25rem;font-size:.85rem}.stats-value{font-size:1.5rem;font-weight:700}.yatra-selection-section{background:#fff;border-radius:16px;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;display:flex;box-shadow:0 4px 12px #00000014}.yatra-select-label{color:var(--gray-700,#374151);white-space:nowrap;font-size:1rem;font-weight:600}.yatra-select{border:2px solid var(--gray-200,#e5e7eb);color:var(--gray-800,#1f2937);cursor:pointer;appearance:none;background:#fff 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='%23667eea' d='M6 8L1 3h10z'/%3E%3C/svg%3E") calc(100% - 1rem)/12px no-repeat;border-radius:10px;flex:1;padding:.75rem 2.5rem .75rem 1rem;font-size:1rem;transition:all .2s}.yatra-select:hover{border-color:var(--primary-500,#667eea)}.yatra-select:focus{border-color:var(--primary-500,#667eea);outline:none;box-shadow:0 0 0 3px #667eea26}.filters-section{background:#fff;border-radius:16px;flex-wrap:wrap;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;padding:1.25rem;display:flex;box-shadow:0 4px 12px #00000014}.search-box{flex:1;min-width:250px;position:relative}.search-icon{font-size:1rem;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-input{border:2px solid var(--gray-200,#e5e7eb);border-radius:10px;width:100%;padding:.75rem 2.5rem .75rem 2.75rem;font-size:1rem;transition:all .2s}.search-input:focus{border-color:var(--primary-500,#667eea);outline:none;box-shadow:0 0 0 3px #667eea26}.clear-search-btn{cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1rem;transition:all .2s;display:flex;top:50%;right:.75rem}.filter-group{gap:.35rem;display:flex}.filter-group label{color:var(--gray-600,#4b5563);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:600}.filter-select{border:2px solid var(--gray-200,#e5e7eb);cursor:pointer;appearance:none;background:#fff 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='%23667eea' d='M6 8L1 3h10z'/%3E%3C/svg%3E") calc(100% - .75rem)/12px no-repeat;border-radius:10px;min-width:150px;padding:.75rem 2.5rem .75rem 1rem;font-size:.95rem;transition:all .2s}.filter-select:hover{border-color:var(--primary-500,#667eea)}.filter-select:focus{border-color:var(--primary-500,#667eea);outline:none;box-shadow:0 0 0 3px #667eea26}.clear-filters-btn{background:var(--gray-100,#f3f4f6);border:2px solid var(--gray-200,#e5e7eb);color:var(--gray-600,#4b5563);cursor:pointer;border-radius:10px;padding:.75rem 1.25rem;font-size:.9rem;font-weight:500;transition:all .2s}.clear-filters-btn:hover{background:var(--gray-200,#e5e7eb);border-color:var(--gray-300,#d1d5db)}.sponsorships-table-container{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 12px #00000014}.loading-state{color:var(--gray-500,#6b7280);flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.empty-state h3{color:var(--gray-700,#374151);margin:0 0 .5rem}.empty-state p{color:var(--gray-500,#6b7280);margin:0}.sponsorships-table{border-collapse:collapse;background:#fff;border-radius:12px;width:100%;overflow:hidden;box-shadow:0 4px 12px #00000014}.sponsorships-table thead{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.sponsorships-table th{text-align:left;color:#fff;border-bottom:none;padding:1rem;font-size:.95rem;font-weight:600;position:relative}.sponsorships-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.sponsorships-table th.sortable:hover{background:#ffffff1a}.sponsorships-table tbody tr{border-bottom:1px solid #f0f0f0;transition:all .2s}.sponsorships-table tbody tr:hover{background:linear-gradient(90deg,#f8f9ff 0%,#fff 100%);transform:translate(4px);box-shadow:-4px 0 #667eea}.sponsorships-table td{border-bottom:1px solid var(--gray-100,#f3f4f6);vertical-align:middle;color:#333;padding:1rem;font-size:.95rem}.date-cell{color:var(--gray-600,#4b5563);white-space:nowrap;font-size:.9rem}.sponsor-cell .sponsor-info{flex-direction:column;gap:.25rem;display:flex}.sponsor-name{color:var(--gray-800,#1f2937);font-weight:500}.sponsor-email{color:var(--gray-500,#6b7280);font-size:.8rem}.item-cell{color:var(--gray-800,#1f2937);font-weight:500}.type-badge{background:var(--gray-100,#f3f4f6);color:var(--gray-700,#374151);border-radius:20px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.8rem;display:inline-flex}.units-cell{text-align:center;font-weight:600}.amount-cell{color:var(--primary-500,#667eea);font-weight:600}.status-badge.paid{color:#166534;background:#dcfce7}.message-preview{color:var(--gray-600,#4b5563);font-size:.85rem;font-style:italic}.no-message{color:var(--gray-400,#9ca3af)}.pagination{border-top:1px solid var(--gray-100,#f3f4f6);justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;display:flex}.pagination-btn{border:2px solid var(--gray-200,#e5e7eb);cursor:pointer;background:#fff;border-radius:8px;padding:.5rem .875rem;font-size:.9rem;font-weight:500;transition:all .2s}.pagination-btn:hover:not(:disabled){border-color:var(--primary-500,#667eea);color:var(--primary-500,#667eea)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{color:var(--gray-600,#4b5563);padding:0 1rem;font-size:.9rem}.clickable-row{cursor:pointer;transition:all .2s}.clickable-row:hover{transform:translateY(-1px);box-shadow:0 2px 8px #667eea1a;background:var(--primary-50,#f5f7ff)!important}.sponsorship-details-modal-overlay{z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:contain;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;overflow-y:auto;position:fixed!important;inset:0!important;transform:none!important}.sponsorship-details-modal{background:#fff;border-radius:20px;width:100%;max-width:800px;max-height:90vh;margin:auto;animation:.3s ease-out sponsorshipModalSlideIn;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}@keyframes sponsorshipModalSlideIn{0%{opacity:0;transform:translateY(-30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.sponsorship-details-modal .modal-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:2px solid #f3f4f6;border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.sponsorship-details-modal .modal-header h2{color:#fff;margin:0;font-size:1.5rem;font-weight:700}.sponsorship-details-modal .close-modal-btn{color:#fff;cursor:pointer;background:#fff3;border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:1.5rem;line-height:1;transition:all .2s;display:flex}.sponsorship-details-modal .close-modal-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.sponsorship-details-modal .modal-content{background:#fff;padding:2rem}.sponsorship-details-modal .details-section{background:#fff;margin-bottom:2rem}.sponsorship-details-modal .details-section:last-child{margin-bottom:0}.sponsorship-details-modal .details-section h3{color:#374151;border-bottom:2px solid #f3f4f6;margin:0 0 1rem;padding-bottom:.5rem;font-size:1.1rem;font-weight:600}.sponsorship-details-modal .details-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.sponsorship-details-modal .detail-item{flex-direction:column;gap:.25rem;display:flex}.sponsorship-details-modal .detail-item.full-width{grid-column:1/-1}.sponsorship-details-modal .detail-item label{color:#6b7280;text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.sponsorship-details-modal .detail-item span{color:#111827;word-break:break-word;font-size:1rem}.sponsorship-details-modal .mono-text{word-break:break-all;background:#f3f4f6;border-radius:4px;padding:.25rem .5rem;font-family:Monaco,Courier New,monospace;display:inline-block;font-size:.9rem!important}.sponsorship-details-modal .amount-value{color:#667eea!important;font-size:1.25rem!important;font-weight:700!important}.sponsorship-details-modal .message-box{color:#374151;white-space:pre-wrap;word-wrap:break-word;background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:1rem;font-size:.95rem;line-height:1.6}.sponsorship-details-modal .modal-footer{background:#f9fafb;border-top:2px solid #f3f4f6;border-radius:0 0 20px 20px;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;display:flex}.sponsorship-details-modal .btn-close{color:#fff;cursor:pointer;background:#4b5563;border:none;border-radius:10px;padding:.75rem 2rem;font-size:1rem;font-weight:600;transition:all .2s}.sponsorship-details-modal .btn-close:hover{background:#374151;transform:translateY(-2px);box-shadow:0 4px 12px #4b55634d}.sponsorship-details-modal .status-badge{border-radius:20px;align-items:center;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.sponsorship-details-modal .status-badge.paid{color:#166534;background:#dcfce7}.sponsorship-details-modal .status-badge.pending{color:#92400e;background:#fef3c7}.sponsorship-details-modal .status-badge.unpaid{color:#991b1b;background:#fee2e2}.sponsorship-details-modal .status-badge.pledge{color:#4338ca;background:#e0e7ff;border:1px solid #818cf8}.sponsorship-details-modal .type-badge{color:#374151;background:#f3f4f6;border-radius:20px;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.8rem;display:inline-flex}@media (max-width:1024px){.sponsorships-table-container{overflow-x:auto}.sponsorships-table{min-width:900px}}@media (max-width:768px){.sponsorships-page-container{padding:1rem}.sponsorships-page-header{text-align:center;flex-direction:column;gap:1rem}.header-right{justify-content:center;width:100%}.yatra-selection-section{flex-direction:column;align-items:stretch}.filters-section{flex-direction:column}.search-box,.filter-group,.filter-select{width:100%}.sponsorship-details-modal-overlay{align-items:flex-start!important;padding:0!important}.sponsorship-details-modal{border-radius:0!important;width:100%!important;max-width:100%!important;height:100%!important;max-height:100vh!important;margin:0!important}.sponsorship-details-modal .modal-header{border-radius:0!important;padding:1rem 1.5rem!important}.sponsorship-details-modal .modal-header h2{font-size:1.25rem!important}.sponsorship-details-modal .modal-content{padding:1.5rem!important}.sponsorship-details-modal .details-grid{grid-template-columns:1fr!important}.sponsorship-details-modal .modal-footer{border-radius:0!important;padding:1rem 1.5rem!important}.sponsorship-details-modal .btn-close{width:100%!important}}.manual-payment-approval-page{max-width:1400px;margin:0 auto;padding:2rem}.page-header{margin-bottom:2rem}.page-header h1{color:#1a1a1a;margin-bottom:.5rem;font-size:2rem}.page-header p{font-size:1rem}.loading-container{flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.spinner-large{border:4px solid #f3f3f3;border-top-color:#ff6b35;border-radius:50%;width:50px;height:50px;margin-bottom:1rem;animation:1s linear infinite spin}.success-alert,.error-alert{border-radius:8px;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding:1rem 1.5rem;font-size:.95rem;display:flex;position:relative}.success-alert{color:#155724;background-color:#d4edda;border:1px solid #c3e6cb}.error-alert{color:#721c24;background-color:#f8d7da;border:1px solid #f5c6cb}.success-icon,.error-icon{font-size:1.2rem}.close-alert{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;justify-content:center;align-items:center;width:24px;height:24px;margin-left:auto;padding:0;font-size:1.5rem;display:flex}.close-alert:hover{opacity:1}.empty-state{text-align:center;background:#f8f9fa;border-radius:12px;margin-top:2rem;padding:4rem 2rem}.empty-icon{color:#28a745;margin-bottom:1rem;font-size:4rem}.empty-state h3{color:#1a1a1a;margin-bottom:.5rem;font-size:1.5rem}.empty-state p{color:#666;font-size:1rem}.payments-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.payment-card{background:#fff;border-radius:12px;transition:transform .2s,box-shadow .2s;overflow:hidden;box-shadow:0 2px 8px #0000001a}.payment-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.payment-card-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.payment-badge{background:#ffffff40;border-radius:20px;padding:.35rem .75rem;font-size:.85rem;font-weight:500}.payment-badge.pending{color:#000;background:#ffc107e6}.payment-id{opacity:.9;font-family:Courier New,monospace;font-size:.9rem}.payment-card-body{padding:1.5rem 1.25rem}.payment-amount{color:#ff6b35;margin-bottom:1rem;font-size:2rem;font-weight:700}.payment-details{border-top:1px solid #eee;border-bottom:1px solid #eee;margin-bottom:1rem;padding:1rem 0}.detail-row{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.detail-row:last-child{margin-bottom:0}.detail-label{color:#666;font-size:.9rem}.detail-value{color:#1a1a1a;text-align:right;font-size:.9rem;font-weight:500}.payment-comments{background:#f8f9fa;border-radius:8px;margin-bottom:1rem;padding:1rem}.payment-comments strong{color:#1a1a1a;margin-bottom:.5rem;font-size:.9rem;display:block}.payment-comments p{color:#555;white-space:pre-wrap;word-break:break-word;margin:0;font-size:.9rem;line-height:1.5}.proof-section{margin-top:1rem}.view-proof-link{color:#007bff;padding:.5rem 0;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .2s;display:inline-block}.view-proof-link:hover{color:#0056b3;text-decoration:underline}.payment-card-actions{background:#f8f9fa;border-top:1px solid #eee;gap:.75rem;padding:1rem 1.25rem;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.btn-approve{color:#fff;background:linear-gradient(135deg,#11998e 0%,#38ef7d 100%)}.btn-approve:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #11998e66}.btn-reject{color:#fff;background:linear-gradient(135deg,#f85032 0%,#e73827 100%)}.btn-reject:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f8503266}.btn-secondary{color:#fff;background:#6c757d}.modal-content{background:#fff;border-radius:12px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-header h3{color:#1a1a1a;margin:0;font-size:1.5rem}.modal-close{color:#666;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;font-size:2rem;transition:background .2s;display:flex}.modal-close:hover:not(:disabled){background:#f0f0f0}.modal-close:disabled{cursor:not-allowed;opacity:.5}.payment-summary{background:#f8f9fa;border-radius:8px;margin-bottom:1.5rem;padding:1.25rem}.summary-row{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.summary-row:last-child{margin-bottom:0}.summary-row span{color:#666;font-size:.95rem}.summary-row strong{color:#1a1a1a;font-size:1rem}.error-message{color:#721c24;background:#f8d7da;border-radius:6px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.required{color:#dc3545}.form-group textarea{resize:vertical;border:1px solid #ddd;border-radius:6px;width:100%;padding:.75rem;font-family:inherit;font-size:.95rem;transition:border-color .2s}.form-group textarea:focus{border-color:#667eea;outline:none;box-shadow:0 0 0 3px #667eea1a}.form-group textarea:disabled{cursor:not-allowed;background:#f8f9fa}.modal-actions{gap:1rem;margin-top:2rem;display:flex}.modal-actions .btn{min-width:140px}@media (max-width:768px){.manual-payment-approval-page{padding:1rem}.page-header h1{font-size:1.5rem}.payments-grid{grid-template-columns:1fr;gap:1rem}.payment-amount{font-size:1.75rem}.payment-card-actions{flex-direction:column}.btn{width:100%}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}@media (max-width:480px){.modal-content{max-height:95vh}.modal-header,.modal-body,.payment-summary{padding:1rem}}:root{--swiper-theme-color:#007aff}:host{z-index:1;margin-left:auto;margin-right:auto;display:block;position:relative}.swiper{z-index:1;margin-left:auto;margin-right:auto;padding:0;list-style:none;display:block;position:relative;overflow:hidden}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{z-index:1;width:100%;height:100%;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function,initial);box-sizing:content-box;display:flex;position:relative}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translate(0,0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;transition-property:transform;display:block;position:relative}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{backface-visibility:hidden;transform:translateZ(0)}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{scrollbar-width:none;-ms-overflow-style:none;overflow:auto}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(#0000,#00000080)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(#00000080,#0000)}.swiper-lazy-preloader{z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color,var(--swiper-theme-color));border-top-color:#0000;border-radius:50%;width:42px;height:42px;margin-top:-21px;margin-left:-21px;position:absolute;top:50%;left:50%}:is(.swiper:not(.swiper-watch-progress),.swiper-watch-progress .swiper-slide-visible) .swiper-lazy-preloader{animation:1s linear infinite swiper-preloader-spin}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--swiper-navigation-size:44px}.swiper-button-prev,.swiper-button-next{width:var(--swiper-navigation-size);height:var(--swiper-navigation-size);z-index:10;cursor:pointer;color:var(--swiper-navigation-color,var(--swiper-theme-color));justify-content:center;align-items:center;display:flex;position:absolute}:is(.swiper-button-prev,.swiper-button-next).swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}:is(.swiper-button-prev,.swiper-button-next).swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled :is(.swiper-button-prev,.swiper-button-next){display:none!important}:is(.swiper-button-prev,.swiper-button-next) svg{object-fit:contain;transform-origin:50%;fill:currentColor;pointer-events:none;width:100%;height:100%}.swiper-button-lock{display:none}.swiper-button-prev,.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size)/2))}.swiper-button-prev{left:var(--swiper-navigation-sides-offset,4px);right:auto}.swiper-button-prev .swiper-navigation-icon{transform:rotate(180deg)}.swiper-button-next{right:var(--swiper-navigation-sides-offset,4px);left:auto}.swiper-horizontal .swiper-button-prev,.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal~.swiper-button-next{top:var(--swiper-navigation-top-offset,50%);margin-top:calc(0px - (var(--swiper-navigation-size)/2));margin-left:0}.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next{left:var(--swiper-navigation-sides-offset,4px);right:auto}.swiper-horizontal .swiper-button-next,.swiper-horizontal~.swiper-button-next,.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev{right:var(--swiper-navigation-sides-offset,4px);left:auto}:is(.swiper-horizontal .swiper-button-prev,.swiper-horizontal~.swiper-button-prev,.swiper-horizontal.swiper-rtl .swiper-button-next,.swiper-horizontal.swiper-rtl~.swiper-button-next) .swiper-navigation-icon{transform:rotate(180deg)}:is(.swiper-horizontal.swiper-rtl .swiper-button-prev,.swiper-horizontal.swiper-rtl~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(0)}.swiper-vertical .swiper-button-prev,.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-prev,.swiper-vertical~.swiper-button-next{left:var(--swiper-navigation-top-offset,50%);margin-left:calc(0px - (var(--swiper-navigation-size)/2));margin-top:0;right:auto}.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev{top:var(--swiper-navigation-sides-offset,4px);bottom:auto}:is(.swiper-vertical .swiper-button-prev,.swiper-vertical~.swiper-button-prev) .swiper-navigation-icon{transform:rotate(-90deg)}.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next{bottom:var(--swiper-navigation-sides-offset,4px);top:auto}:is(.swiper-vertical .swiper-button-next,.swiper-vertical~.swiper-button-next) .swiper-navigation-icon{transform:rotate(90deg)}.swiper-pagination{text-align:center;z-index:10;transition:opacity .3s;position:absolute;transform:translate(0,0)}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none!important}.swiper-pagination-fraction,.swiper-pagination-custom,.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal{bottom:var(--swiper-pagination-bottom,8px);top:var(--swiper-pagination-top,auto);width:100%;left:0}.swiper-pagination-bullets-dynamic{font-size:0;overflow:hidden}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{position:relative;transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width,var(--swiper-pagination-bullet-size,8px));height:var(--swiper-pagination-bullet-height,var(--swiper-pagination-bullet-size,8px));border-radius:var(--swiper-pagination-bullet-border-radius,50%);background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity,.2);display:inline-block}button.swiper-pagination-bullet{box-shadow:none;appearance:none;border:none;margin:0;padding:0}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity,1);background:var(--swiper-pagination-color,var(--swiper-theme-color))}.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets{right:var(--swiper-pagination-right,8px);left:var(--swiper-pagination-left,auto);top:50%;transform:translateY(-50%)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets) .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px)0;display:block}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{width:8px;top:50%;transform:translateY(-50%)}:is(.swiper-vertical>.swiper-pagination-bullets,.swiper-pagination-vertical.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,top .2s;display:inline-block}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets) .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap,4px)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic{white-space:nowrap;left:50%;transform:translate(-50%)}:is(.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-horizontal.swiper-pagination-bullets).swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,left .2s}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color,inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color,#00000040);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color,var(--swiper-theme-color));transform-origin:0 0;width:100%;height:100%;position:absolute;top:0;left:0;transform:scale(0)}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{transform-origin:100% 0}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size,4px);top:0;left:0}.swiper-vertical>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite{width:var(--swiper-pagination-progressbar-size,4px);height:100%;top:0;left:0}.swiper-pagination-lock{display:none}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active{pointer-events:auto}.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.dashboard-modern{background:#f8f9fa;width:100%;min-height:100vh;overflow-x:hidden}.home-modern{background:#f8f9fa;min-height:100vh}.welcome-section{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:3rem 2rem}.welcome-content{text-align:center;max-width:1200px;margin:0 auto}.welcome-title{margin-bottom:1rem;font-size:2.5rem;font-weight:700;line-height:1.3}.user-highlight{color:gold;text-shadow:0 2px 4px #0000004d}.welcome-subtitle{opacity:.95;max-width:800px;margin:0 auto 2rem;font-size:1.1rem;line-height:1.7}.welcome-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.welcome-btn{cursor:pointer;border:none;border-radius:12px;padding:.875rem 2rem;font-size:1rem;font-weight:600;transition:all .3s}.welcome-btn.primary{color:#667eea;background:#fff}.welcome-btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #ffffff4d}.welcome-btn.secondary{color:#fff;background:#fff3;border:2px solid #fff}.welcome-btn.secondary:hover{background:#ffffff4d}.loading-container{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:400px;display:flex}.loading-spinner{border:4px solid #e2e8f0;border-top-color:#667eea;border-radius:50%;width:50px;height:50px;animation:.8s linear infinite spin}.alert{border-radius:12px;justify-content:space-between;align-items:center;max-width:1200px;margin:1rem auto;padding:1rem 1.5rem;animation:.3s slideDown;display:flex}.alert-success{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.alert-error{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.alert button{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;font-size:1.5rem}.alert button:hover{opacity:1}.empty-state{text-align:center;padding:4rem 2rem}.empty-state-content{max-width:600px;margin:0 auto}.empty-state-icon{margin-bottom:1.5rem;font-size:4rem}.empty-state-title{color:#2d3748;margin-bottom:1rem;font-size:2rem;font-weight:700}.empty-state-subtitle{color:#718096;margin-bottom:2rem;font-size:1.1rem}.empty-state-actions{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.empty-state-btn{cursor:pointer;border:none;border-radius:12px;padding:.875rem 2rem;font-weight:600;transition:all .3s}.empty-state-btn.primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.empty-state-btn.secondary{color:#4a5568;background:#e2e8f0}.quick-stats{background:#fff;padding:3rem 2rem}.section-header{text-align:center;margin-bottom:2rem}.section-header h2{color:#2d3748;font-size:2rem;font-weight:700}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1200px;margin:0 auto;display:grid}.stat-card{text-align:center;background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;gap:.5rem;padding:2rem;transition:transform .3s;display:flex}.stat-card:hover{transform:translateY(-4px)}.stat-icon{font-size:2.5rem}.stat-number{color:#667eea;font-size:2.5rem;font-weight:700}.stat-label{color:#718096;font-size:1rem;font-weight:600}.yatra-cards-section{background:#f8f9fa;padding:3rem 2rem}.section-header-modern{text-align:center;margin-bottom:3rem}.section-title-modern{color:#2d3748;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.section-subtitle-modern{color:#718096;font-size:1.1rem}.yatra-cards-grid{grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:2.5rem;max-width:1400px;margin:0 auto;display:grid}.yatra-card{cursor:pointer;background:#fff;border-radius:20px;flex-direction:column;height:100%;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 20px #00000014}.yatra-card:after{content:"";pointer-events:none;border:2px solid #0000;border-radius:20px;transition:all .3s;position:absolute;inset:0}.yatra-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #667eea40}.yatra-card:hover:after{border-color:#667eea80}.yatra-card:active{transform:translateY(-4px);box-shadow:0 8px 32px #667eea4d}.yatra-card-image-container{width:100%;height:420px;position:relative;overflow:hidden}.yatra-card-image{object-fit:cover;width:100%;height:100%;transition:transform .5s}.yatra-card:hover .yatra-card-image{transform:scale(1.1)}.image-indicators{z-index:2;justify-content:center;gap:.5rem;display:flex;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.image-indicator{background:#ffffff80;border-radius:50%;width:8px;height:8px;transition:all .3s}.image-indicator.active{background:#fff;border-radius:4px;width:24px}.yatra-card-info-overlay{z-index:1;background:linear-gradient(#0000 0%,#0009 40%,#000000e0 100%);flex-direction:column;gap:.75rem;padding:3rem 2rem 1.5rem;transition:all .3s;display:flex;position:absolute;bottom:0;left:0;right:0}.yatra-card:hover .yatra-card-info-overlay{background:linear-gradient(#0000 0%,#000000b3 40%,#000000eb 100%);padding-bottom:1.75rem}.yatra-card-title-overlay{color:#fff;text-shadow:0 2px 10px #0009;margin:0;font-size:1.5rem;font-weight:700;line-height:1.2}.yatra-card-meta-overlay{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.yatra-card-date-overlay{color:#fff;text-shadow:0 2px 6px #0009;align-items:center;gap:.25rem;font-size:.95rem;font-weight:600;display:inline-flex}.yatra-card-badge-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;white-space:nowrap;border:1px solid #fff3;border-radius:20px;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.yatra-card-badge-overlay.badge-open{color:#fff;background:#22c55ee6}.yatra-card-badge-overlay.badge-registered{color:#fff;background:#3b82f6e6}.yatra-card-badge-overlay.badge-closed{color:#fff;background:#ef4444e6}.yatra-card-content{flex-direction:column;flex-grow:1;gap:1.5rem;display:flex}.yatra-card-description{color:#4a5568;margin:0;font-size:.98rem;line-height:1.7}.yatra-card-actions{gap:.75rem;margin-top:auto;display:flex}.yatra-card-btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;transition:all .3s;display:flex}.yatra-card-btn.primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);flex:1}.yatra-card-btn.sponsor{color:#fff;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);flex:1}.yatra-card-btn.sponsor:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f093fb66}.yatra-card-btn.secondary{display:none}.yatra-card-details{background:#f7fafc;border-radius:12px;flex-direction:column;gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:flex}.yatra-card-detail-item{align-items:center;gap:.75rem;display:flex}.detail-icon{flex-shrink:0;font-size:1.2rem}.detail-text{color:#4a5568;font-size:.9rem;font-weight:500}.yatra-card-actions{gap:.75rem;margin-top:auto;display:flex;flex-direction:row!important;padding:10px!important}.yatra-card-btn{cursor:pointer;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:all .3s;display:flex}.yatra-card-btn.primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.yatra-card-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.yatra-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000bf;justify-content:center;align-items:center;padding:2rem;animation:.3s fadeIn;display:flex;position:fixed;inset:0;overflow:hidden}.yatra-modal-container{box-sizing:border-box;-webkit-overflow-scrolling:touch;background:#fff;border-radius:20px;width:100%;max-width:1200px;max-height:85vh;animation:.4s slideUp;position:relative;overflow:hidden auto;box-shadow:0 20px 60px #0000004d}.yatra-expanded-view{background:#fff;border-radius:20px;position:relative;overflow:hidden}.yatra-expanded-close{cursor:pointer;z-index:1001;background:#fffffff2;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s;display:flex;position:absolute;top:1.5rem;right:1.5rem;box-shadow:0 4px 12px #0003}.yatra-expanded-close:hover{background:#fff;transform:scale(1.1)rotate(90deg)}.yatra-expanded-close svg{color:#2d3748}.yatra-expanded-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:2rem}.yatra-expanded-title-row{justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:.75rem;display:flex}.yatra-expanded-title{flex:1;font-size:2rem;font-weight:700;line-height:1.2}.yatra-expanded-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;border:1px solid #ffffff4d;border-radius:20px;padding:.5rem 1rem;font-size:.85rem;font-weight:600}.yatra-expanded-date-row{opacity:.95;font-size:1rem}.yatra-expanded-date{font-weight:500}.yatra-expanded-content{grid-template-columns:1fr 1fr;gap:2rem;max-width:100%;padding:2rem;display:grid;overflow:hidden}.yatra-expanded-left{flex-direction:column;align-self:start;gap:1.5rem;max-width:100%;display:flex;position:sticky;top:2rem;overflow:hidden}.yatra-expanded-image-section{border-radius:16px;width:100%;max-width:100%;height:400px;overflow:hidden;box-shadow:0 4px 16px #0000001a}.yatra-expanded-swiper{width:100%;max-width:100%;height:100%}.yatra-expanded-swiper .swiper-button-next,.yatra-expanded-swiper .swiper-button-prev{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border-radius:50%;width:40px;height:40px}.yatra-expanded-swiper .swiper-button-next:after,.yatra-expanded-swiper .swiper-button-prev:after{font-size:18px}.yatra-expanded-swiper .swiper-pagination-bullet{opacity:.7;background:#fff}.yatra-expanded-swiper .swiper-pagination-bullet-active{opacity:1;border-radius:4px;width:24px}.yatra-expanded-image{object-fit:cover;width:100%;height:100%}.yatra-expanded-right{flex-direction:column;gap:1.5rem;max-width:100%;display:flex;overflow:hidden}.yatra-expanded-description{color:#4a5568;font-size:1rem;line-height:1.7}.yatra-expanded-details-grid{grid-template-columns:1fr;gap:1rem;display:grid}.yatra-expanded-detail-card{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:1rem;padding:1rem;transition:all .3s;display:flex}.yatra-expanded-detail-card:hover{transform:translate(4px);box-shadow:0 2px 8px #00000014}.detail-card-icon{flex-shrink:0;font-size:2rem}.detail-card-content{flex-direction:column;gap:.25rem;display:flex}.detail-card-label{color:#718096;text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.detail-card-value{color:#2d3748;font-size:1rem;font-weight:600}.yatra-expanded-info-section{background:#f7fafc;border-radius:12px}.info-section-title{color:#2d3748;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}.info-items-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.info-item-expanded{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem}.info-value-expanded{color:#4a5568;font-size:.9rem;line-height:1.6}.yatra-expanded-actions{gap:1rem;padding-top:.5rem;display:flex}.yatra-expanded-btn{cursor:pointer;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:1rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s;display:flex}.yatra-expanded-btn.primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.yatra-expanded-btn.primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.yatra-expanded-btn.sponsor{color:#fff;background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%)}.yatra-expanded-btn.sponsor:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f5576c66}@media (max-width:1024px){.yatra-cards-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.yatra-expanded-content{grid-template-columns:1fr}.yatra-expanded-left{position:static}.yatra-expanded-image-section{height:350px}.yatra-modal-backdrop{padding:1rem}.yatra-modal-container{max-height:95vh}}@media (max-width:768px){.welcome-title,.section-title-modern{font-size:2rem}.yatra-cards-grid{grid-template-columns:1fr;gap:1.5rem;padding:0 1rem}.yatra-cards-section{padding:2rem 1rem}.yatra-card-image-container{height:380px}.yatra-card-info-overlay{background:linear-gradient(#0000 0%,#0009 45%,#000000e6 100%);padding:4rem 1.5rem 1.75rem}.yatra-card:hover .yatra-card-info-overlay{padding-bottom:2rem}.yatra-card-title-overlay{font-size:1.35rem}.yatra-card-date-overlay{font-size:.9rem}.yatra-card-meta-overlay{flex-direction:column;align-items:flex-start;gap:.75rem}.yatra-card-btn.primary,.yatra-card-btn.sponsor{flex:1}.yatra-expanded-title{font-size:1.5rem}.yatra-expanded-title-row{flex-direction:column;gap:1rem}.yatra-expanded-content{padding:1rem}.yatra-expanded-image-section{height:300px}.yatra-expanded-header{padding:1.25rem}.yatra-expanded-actions{flex-direction:column}.yatra-card-actions{flex-direction:row!important}.yatra-modal-backdrop{align-items:stretch;padding:0;overflow:hidden}.yatra-modal-container{border-radius:0;width:100vw;max-width:100vw;max-height:100vh;overflow:hidden auto}.yatra-expanded-view{border-radius:0}.yatra-expanded-close{width:36px;height:36px;top:1rem;right:1rem}}@media (max-width:480px){.welcome-title{font-size:1.75rem}.yatra-expanded-close{width:36px;height:36px;top:.75rem;right:.75rem}.yatra-card-title{font-size:1.1rem}.yatra-card-date{padding:.4rem .6rem;font-size:.8rem}.yatra-expanded-content{padding:.75rem}.yatra-expanded-image-section{height:250px}}.yatra-schedule-section{border-top:1px solid #e5e7eb;padding-top:1.5rem}.schedule-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.schedule-section-title{color:#1f2937;margin:0;font-size:1.25rem;font-weight:600}.schedule-days-count{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:20px;padding:.375rem .75rem;font-size:.85rem;font-weight:500}.schedule-summary{flex-direction:column;gap:.75rem;display:flex}.schedule-summary-item{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:10px;transition:all .2s;overflow:hidden}.schedule-summary-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.schedule-summary-item.expanded{background:#fff;border-color:#667eea}.schedule-summary-header{cursor:pointer;align-items:center;gap:1rem;padding:.875rem 1rem;transition:background .2s;display:flex}.schedule-summary-header:hover{background:#667eea0d}.schedule-day-badge{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;flex-direction:column;align-items:center;min-width:70px;padding:.5rem;display:flex}.schedule-day-badge .day-num{font-size:.9rem;font-weight:700}.schedule-day-badge .day-date{opacity:.9;white-space:nowrap;font-size:.7rem}.schedule-day-info{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}.schedule-day-title{color:#1f2937;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:600;overflow:hidden}.schedule-activity-count{color:#6b7280;font-size:.8rem}.schedule-expand-icon{color:#667eea;font-size:.8rem;transition:transform .2s}.schedule-activities-expanded{padding:0 1rem 1rem;animation:.2s ease-out slideDown}.schedule-day-notes{color:#856404;background:#fff3cd;border-radius:6px;margin-bottom:.75rem;padding:.75rem 1rem;font-size:.875rem}.schedule-activities-table{border-collapse:collapse;width:100%;font-size:.875rem}.schedule-activities-table th{text-align:left;color:#374151;background:#f3f4f6;border-bottom:2px solid #e5e7eb;padding:.625rem .75rem;font-weight:600}.schedule-activities-table td{vertical-align:top;border-bottom:1px solid #e5e7eb;padding:.625rem .75rem}.schedule-activities-table tr:last-child td{border-bottom:none}.schedule-activities-table tr:hover td{background:#f8f9fa}.activity-time{white-space:nowrap;color:#667eea;width:100px;font-weight:500}.activity-name{color:#1f2937}.activity-remarks{color:#6b7280;font-size:.8rem}.view-all-schedule-btn{color:#667eea;cursor:pointer;background:0 0;border:2px dashed #667eea;border-radius:8px;width:100%;margin-top:1rem;padding:.75rem;font-weight:600;transition:all .2s}.view-all-schedule-btn:hover{color:#fff;background:#667eea;border-style:solid}.schedule-loading{text-align:center;color:#6b7280;padding:1rem;font-style:italic}@media (max-width:768px){.schedule-section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.schedule-summary-header{flex-wrap:wrap;gap:.75rem}.schedule-day-badge{min-width:60px;padding:.375rem}.schedule-day-badge .day-num{font-size:.8rem}.schedule-day-badge .day-date{font-size:.65rem}.schedule-day-title{font-size:.875rem}.schedule-activities-table{display:block;overflow-x:auto}.schedule-activities-table th,.schedule-activities-table td{padding:.5rem;font-size:.8rem}.activity-time{width:80px;min-width:80px}}@media (max-width:480px){.schedule-summary-header{padding:.75rem}.schedule-expand-icon{position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.schedule-summary-item{position:relative}.schedule-activities-table th:last-child,.schedule-activities-table td:last-child{display:none}}.yatra-sponsorship-section{border-top:1px solid #e5e7eb;margin-top:1.5rem;padding-top:1.5rem}.sponsorship-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.sponsorship-section-title{color:#1f2937;margin:0;font-size:1.25rem;font-weight:600}.sponsorship-items-count{color:#fff;background:linear-gradient(135deg,#ff9800 0%,#f57c00 100%);border-radius:20px;padding:.375rem .75rem;font-size:.85rem;font-weight:500}.sponsorship-items-preview{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem;display:grid}.sponsorship-item-preview{background:linear-gradient(135deg,#fff8e1 0%,#ffe0b2 100%);border:1px solid #ffcc80;border-radius:10px;flex-direction:column;gap:.375rem;padding:.875rem;transition:all .2s;display:flex}.sponsorship-item-preview:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff980033}.sponsorship-item-icon{font-size:1.5rem}.sponsorship-item-title{color:#bf360c;font-size:.9rem;font-weight:600;line-height:1.3}.sponsorship-item-amount{color:#e65100;font-size:.95rem;font-weight:700}.sponsorship-more-text{text-align:center;color:#6b7280;margin:0 0 1rem;font-size:.85rem}.view-all-sponsorship-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff9800 0%,#f57c00 100%);border:none;border-radius:10px;width:100%;padding:.875rem;font-size:1rem;font-weight:600;transition:all .2s}.view-all-sponsorship-btn:hover{background:linear-gradient(135deg,#f57c00 0%,#ef6c00 100%);transform:translateY(-2px);box-shadow:0 4px 15px #ff98004d}@media (max-width:768px){.sponsorship-section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.sponsorship-items-preview{grid-template-columns:1fr}.sponsorship-item-preview{flex-direction:row;align-items:center;gap:.75rem}.sponsorship-item-icon{font-size:1.75rem}.sponsorship-item-title{flex:1}.sponsorship-item-amount{font-size:.9rem}}.my-registrations-page{background:#f8f9fa;width:100%;min-height:100vh}.page-header{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;padding:1rem 1rem 2rem}.page-header-content{justify-content:space-between;align-items:flex-end;gap:2rem;max-width:1200px;margin:0 auto;display:flex}.page-title{margin-bottom:.5rem;font-size:2.5rem;font-weight:700}.page-subtitle{opacity:.9;font-size:1.1rem}.page-actions{flex-shrink:0}.page-btn{cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.page-btn.primary{color:var(--primary-500);background:#fff}.page-btn.primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px #ffffff4d}.registrations-section{padding:2rem 1rem}.section-header{justify-content:space-between;align-items:center;gap:2rem;max-width:1200px;margin:0 auto 1.5rem;display:flex}.section-header h2{color:#2c3e50;margin:0;font-size:1.8rem;font-weight:700}.registrations-stats{align-items:center;gap:2rem;margin-top:.5rem;display:flex}.registrations-stats .stat{color:#666;font-size:.9rem}.registrations-stats .stat strong{color:#333;font-weight:600}.tabs-container{background:#fff;border-radius:12px;max-width:1200px;margin-top:1.5rem;margin-left:auto;margin-right:auto;overflow:hidden;box-shadow:0 2px 8px #0000001a}.tabs-header{background:#f8f9fa;border-bottom:2px solid #e9ecef;display:flex}.tab-btn{cursor:pointer;color:#666;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s;display:flex;position:relative}.tab-btn:hover{color:#667eea;background:#667eea0d}.tab-btn.active{color:#667eea;background:#fff;font-weight:600}.tab-btn.active:after{content:"";background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);height:3px;position:absolute;bottom:-2px;left:0;right:0}.tab-icon{font-size:1.25rem}.tab-label{font-size:1rem}.tab-count{color:#fff;text-align:center;background:#667eea;border-radius:12px;min-width:28px;padding:.25rem .75rem;font-size:.85rem;font-weight:600}.tab-btn:not(.active) .tab-count{color:#666;background:#cbd5e0}.status-filter{background:#fff;flex-wrap:wrap;gap:.75rem;padding:1.25rem;display:flex}.filter-btn{cursor:pointer;color:#666;background:#fff;border:2px solid #e9ecef;border-radius:24px;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.9rem;font-weight:500;transition:all .3s;display:flex}.filter-btn:hover{color:#667eea;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #667eea33}.filter-btn.active{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:#0000;box-shadow:0 4px 12px #667eea66}.filter-count{color:#667eea;text-align:center;background:#667eea26;border-radius:10px;min-width:24px;padding:.2rem .6rem;font-size:.8rem;font-weight:600}.filter-btn.active .filter-count{color:#fff;background:#ffffff40}.tab-content{background:#fff;border-radius:0 0 12px 12px;padding:1.5rem}.registrations-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto;display:grid}.empty-registrations{text-align:center;background:#f8fafc;border-radius:12px;margin:2rem 0;padding:4rem 1rem}.empty-registrations .empty-state-icon{margin-bottom:1.5rem;font-size:4rem;display:block}.empty-registrations h3{color:#2d3748;margin-bottom:1rem;font-size:2rem;font-weight:700}.empty-registrations p{color:#718096;margin-bottom:2rem;font-size:1.1rem;line-height:1.6}.empty-state-btn{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;cursor:pointer;border:none;border-radius:12px;align-items:center;padding:12px 24px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.empty-state-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.available-yatras-section{background:#fff;border-radius:16px;max-width:1200px;margin:2rem auto;padding:2rem 1rem;box-shadow:0 4px 20px #0000001a}.available-yatras-section .section-header{margin-bottom:1.5rem}.available-yatras-section .section-header h2{margin-bottom:.5rem}.available-yatras-section .section-header p{color:#666;font-size:1rem}.yatras-quick-list{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;margin-top:1.5rem;display:grid}.yatra-quick-card{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;transition:all .3s}.yatra-quick-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.yatra-quick-card.more-yatras{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;text-align:center;justify-content:center;align-items:center;display:flex}.yatra-quick-info{margin-bottom:1rem}.yatra-quick-title{color:#333;margin-bottom:.5rem;font-size:1.1rem;font-weight:600}.yatra-quick-date{color:#666;margin-bottom:.25rem;font-size:.9rem}.yatra-quick-cost{color:var(--primary-500);font-size:1rem;font-weight:600}.yatra-quick-actions{gap:.5rem;display:flex}.yatra-quick-btn{background:var(--primary-500);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:1;padding:8px 16px;font-weight:600;transition:background .3s}.yatra-quick-btn:hover{background:#5a6fd8}.yatra-quick-btn.primary{background:var(--primary-500)}.yatra-quick-status{color:#28a745;align-items:center;font-size:.9rem;font-weight:600;display:flex}.more-yatras-content{width:100%}.more-yatras-content h4{color:#fff;margin-bottom:1rem;font-size:1.2rem}.more-yatras-btn{color:#fff;cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:8px;padding:8px 16px;font-weight:600;transition:all .3s}.more-yatras-btn:hover{background:#ffffff4d}.registrations-horizontal-list .registration-card{flex-direction:row;align-items:center;gap:2rem;width:100%;min-height:auto;padding:1.5rem;display:flex}.registrations-horizontal-list .registration-card .registration-header{flex-shrink:0;min-width:200px;max-width:250px;margin-bottom:0}.registrations-horizontal-list .registration-card .registration-yatra-name{margin-bottom:.5rem;font-size:1.1rem}.registrations-horizontal-list .registration-card .registration-status{padding:.25rem .75rem;font-size:.8rem}.registrations-horizontal-list .registration-card .draft-registration-content{flex-direction:row;flex:1;align-items:center;gap:1.5rem;margin:0;display:flex}.registrations-horizontal-list .registration-card .draft-notice{display:none}.registrations-horizontal-list .registration-card .registration-details{flex-flow:wrap;flex:1;gap:1rem;min-width:0;margin:0;display:flex}.registrations-horizontal-list .registration-card .registration-detail{white-space:nowrap;flex-shrink:0;margin-bottom:0;font-size:.85rem}.registrations-horizontal-list .registration-card .registration-detail .detail-icon{margin-right:.5rem}.registrations-horizontal-list .registration-card .registration-actions{flex-direction:column;flex-shrink:0;align-items:stretch;gap:.5rem;min-width:120px;margin-top:0;display:flex}.registrations-horizontal-list .registration-card .step-btn,.registrations-horizontal-list .registration-card .registration-btn{white-space:nowrap;text-align:center;flex:none;min-width:auto;padding:.5rem 1rem;font-size:.875rem}.registrations-horizontal-list .registration-card .registration-summary{flex:1;margin:0}.registrations-horizontal-list .registration-card .summary-grid{flex-flow:wrap;gap:1.5rem;margin-bottom:0;display:flex}.registrations-horizontal-list .registration-card .summary-item{flex-shrink:0;min-width:auto}.registrations-horizontal-list .registration-card .summary-label{font-size:.75rem}.registrations-horizontal-list .registration-card .summary-value{font-size:.85rem}.registrations-horizontal-list .registration-card .members-summary,.registrations-horizontal-list .registration-card .registration-highlights{display:none}@media (max-width:768px){.page-header-content{flex-direction:column;align-items:flex-start;gap:1.5rem}.page-title{font-size:2rem}.tabs-header{flex-direction:column}.tab-btn{padding:1rem}.tab-label{font-size:.95rem}.status-filter{gap:.5rem;padding:1rem}.filter-btn{padding:.5rem 1rem;font-size:.85rem}.registrations-grid{grid-template-columns:1fr;gap:1rem}.tab-content{padding:1rem}.yatras-quick-list{grid-template-columns:1fr}.registrations-stats{flex-direction:column;align-items:flex-start;gap:.5rem}.registrations-horizontal-list .registration-card{flex-direction:column;align-items:stretch;gap:1rem}.registrations-horizontal-list .registration-card .registration-header{min-width:auto;max-width:none}.registrations-horizontal-list .registration-card .draft-registration-content{flex-direction:column;gap:1rem}.registrations-horizontal-list .registration-card .draft-notice{display:flex}.registrations-horizontal-list .registration-card .registration-details{flex-direction:column;gap:.75rem}.registrations-horizontal-list .registration-card .registration-detail{white-space:normal}.registrations-horizontal-list .registration-card .registration-actions{flex-flow:wrap;justify-content:center}.registrations-horizontal-list .registration-card .summary-grid{flex-direction:column;gap:.75rem}.registrations-horizontal-list .registration-card .members-summary,.registrations-horizontal-list .registration-card .registration-highlights{display:block}}.manual-payment-page{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);min-height:100vh;padding:40px 20px}.manual-payment-container{max-width:800px;margin:0 auto}.manual-payment-header{align-items:center;gap:20px;margin-bottom:30px;display:flex}.manual-payment-header .back-button{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 16px;font-size:16px;transition:all .2s;display:flex}.manual-payment-header .back-button:hover:not(:disabled){background:#ffffff4d}.manual-payment-header .back-button:disabled{opacity:.5;cursor:not-allowed}.manual-payment-header h2{color:#fff;margin:0;font-size:2rem;font-weight:600}.payment-info-card{background:#fff;border-radius:12px;margin-bottom:24px;padding:24px;box-shadow:0 4px 12px #0000001a}.payment-info-card .info-row{justify-content:space-between;align-items:center;padding:12px 0;display:flex}.payment-info-card .info-row:not(:last-child){border-bottom:1px solid #e5e7eb}.payment-info-card .label{color:#6b7280;font-weight:500}.payment-info-card .value{color:#1f2937;font-weight:600}.payment-info-card .value.amount{color:#3b82f6;font-size:1.5rem}.manual-payment-form-card{background:#fff;border-radius:12px;padding:32px;box-shadow:0 4px 12px #0000001a}.form-instructions{border-bottom:2px solid #e5e7eb;margin-bottom:32px;padding-bottom:24px}.form-instructions h3{color:#1f2937;margin:0 0 12px;font-size:1.5rem}.form-instructions p{color:#6b7280;margin:0;line-height:1.6}.error-message{color:#c33;background:#fee;border:1px solid #fcc;border-radius:8px;align-items:center;gap:8px;margin-bottom:24px;padding:12px 16px;font-size:.95rem;display:flex}.error-icon{font-size:1.2rem}.close-error{color:#c33;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;margin-left:auto;padding:0;font-size:20px;display:flex}.close-error:hover{background:#cc33331a}.required{color:#dc2626;font-weight:600}.form-group input[type=text],.form-group input[type=date],.form-group select,.form-group textarea{box-sizing:border-box;background:#fff;border:2px solid #d1d5db;border-radius:8px;width:100%;padding:12px 16px;font-size:1rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{color:#6b7280;cursor:not-allowed;background-color:#f9fafb}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit}.field-hint{color:#6b7280;margin-top:6px;font-size:.85rem;font-style:italic;display:block}.file-input-wrapper{position:relative}.file-input{opacity:0;width:0;height:0;position:absolute}.file-input-label{cursor:pointer;color:#374151;background:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;align-items:center;gap:12px;padding:12px 16px;font-weight:500;transition:all .2s;display:flex}.file-input-label:hover{color:#3b82f6;background:#eff6ff;border-color:#3b82f6}.file-input-label.uploading{color:#f59e0b;cursor:wait;background:#fffbeb;border-color:#f59e0b}.file-input-label.uploaded{color:#10b981;background:#f0fdf4;border-style:solid;border-color:#10b981}.file-input:disabled+.file-input-label{opacity:.5;cursor:not-allowed}.form-actions{border-top:2px solid #e5e7eb;justify-content:flex-end;gap:16px;margin-top:32px;padding-top:24px;display:flex}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-width:120px;padding:12px 24px;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background-color:#3b82f6}.btn-primary:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.btn-secondary{color:#374151;background-color:#f3f4f6}.btn-secondary:hover:not(:disabled){background-color:#e5e7eb}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin}.approval-notice{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;gap:12px;margin-top:24px;padding:16px;display:flex}.approval-notice svg{color:#92400e;flex-shrink:0}.approval-notice p{color:#92400e;margin:0;font-size:.9rem;line-height:1.6}.approval-notice strong{font-weight:600}@media (max-width:768px){.manual-payment-page{padding:20px 16px}.manual-payment-header h2{font-size:1.5rem}.manual-payment-form-card{padding:24px 20px}.payment-info-card .value.amount{font-size:1.25rem}.form-actions{flex-direction:column}.btn{width:100%}}@media (max-width:480px){.manual-payment-header{flex-direction:column;align-items:flex-start}.manual-payment-header h2{font-size:1.25rem}.payment-info-card .info-row{flex-direction:column;align-items:flex-start;gap:4px}}.static-page{background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);min-height:100vh;padding:calc(76px + 2rem) 1rem 2rem}.static-page-container{background:#fff;border-radius:20px;max-width:1000px;margin:0 auto;animation:.5s ease-out slideInUp;overflow:hidden;box-shadow:0 20px 60px #00000026}.static-page-header{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;text-align:center;padding:3rem 2rem}.static-page-title{text-shadow:0 2px 4px #0000001a;margin-bottom:1rem;font-size:2.5rem;font-weight:700}.static-page-subtitle{opacity:.9;margin:0;font-size:1.2rem;line-height:1.5}.static-page-content{padding:3rem 2rem}.content-section{margin-bottom:3rem}.content-section:last-child{margin-bottom:0}.section-title{color:#333;border-bottom:3px solid var(--primary-500);margin-bottom:2rem;padding-bottom:.5rem;font-size:2rem;font-weight:700;position:relative}.section-title:after{content:"";background:var(--secondary-500);width:60px;height:3px;position:absolute;bottom:-3px;left:0}.subsection{margin-bottom:2.5rem}.subsection:last-child{margin-bottom:0}.subsection h3{color:#4a5568;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.5rem;font-weight:600;display:flex}.subsection h3:before{content:"▶";color:var(--primary-500);font-size:.8rem}.subsection h4{color:#2d3748;margin-top:1.5rem;margin-bottom:.8rem;font-size:1.2rem;font-weight:600}.subsection p{color:#4a5568;margin-bottom:1rem;font-size:1rem;line-height:1.7}.subsection ul{margin:1rem 0;padding-left:1.5rem}.subsection li{color:#4a5568;margin-bottom:.5rem;font-size:1rem;line-height:1.6}.subsection ol{margin:1rem 0;padding-left:1.5rem}.content-block{border-left:4px solid var(--primary-500);background:#f8f9fa;border-radius:0 8px 8px 0;margin-bottom:1.5rem;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.content-block h4{color:var(--primary-500);margin-top:0;font-weight:700}.highlight-text{color:#856404;text-align:center;background:linear-gradient(135deg,#fff3cd 0%,#ffeaa7 100%);border:1px solid #ffc107;border-radius:8px;padding:1rem;font-weight:600}.policy-intro{background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%);border:1px solid #2196f3;border-radius:10px;margin-bottom:2rem;padding:1.5rem}.policy-highlight{background:linear-gradient(135deg,#ffebee 0%,#ffcdd2 100%);border:2px solid #f44336;border-radius:10px;margin:1.5rem 0;padding:1.5rem}.policy-highlight strong{color:#c62828;font-size:1.1rem}.policy-note{background:linear-gradient(135deg,#f3e5f5 0%,#e1bee7 100%);border:1px solid #9c27b0;border-radius:8px;margin:1rem 0;padding:1rem}.policy-note p{margin-bottom:0}.agreement-section{background:linear-gradient(135deg,#e8f5e8 0%,#c8e6c9 100%);border:2px solid #4caf50;border-radius:10px;margin:1.5rem 0;padding:1.5rem}.policy-footer{color:#6c757d;background:#f8f9fa;border-top:2px solid #dee2e6;border-radius:8px;margin-top:2rem;padding:1.5rem;font-style:italic}.payment-methods{gap:1.5rem;margin:1.5rem 0;display:grid}.payment-method{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.5rem;transition:all .3s;box-shadow:0 2px 8px #0000000d}.payment-method:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.payment-method h4{color:var(--primary-500);margin-top:0;margin-bottom:1rem;font-size:1.1rem}.important-note{background:linear-gradient(135deg,#fff3cd 0%,#ffeaa7 100%);border:1px solid #ffc107;border-radius:8px;margin:1.5rem 0;padding:1rem}.pricing-details{gap:1.5rem;margin:2rem 0;display:grid}.pricing-item{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.pricing-item h4{color:var(--primary-500);border-bottom:2px solid #e2e8f0;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.2rem}.timeline{gap:1rem;margin:1.5rem 0;display:grid}.timeline-item{border-left:4px solid var(--primary-500);background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border-radius:0 8px 8px 0;padding:1rem}.timeline-item h4{color:var(--primary-500);margin:0 0 .5rem;font-size:1.1rem}.timeline-item p{color:#4a5568;margin:0}.info-list{gap:1.5rem;margin:2rem 0;display:grid}.info-item{border:1px solid #e2e8f0;border-radius:10px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.info-item h4{color:var(--primary-500);border-bottom:2px solid #e2e8f0;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.2rem}.legal-intro{background:linear-gradient(135deg,#e3f2fd 0%,#bbdefb 100%);border:2px solid #2196f3;border-radius:10px;margin-bottom:2rem;padding:1.5rem}.platform-explanation{background:linear-gradient(135deg,#f3e5f5 0%,#e1bee7 100%);border:2px solid #9c27b0;border-radius:10px;margin:1.5rem 0;padding:1.5rem}.liability-points{gap:1.5rem;margin:2rem 0;display:grid}.liability-item{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #f44336;border-radius:0 8px 8px 0;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.liability-item h4{color:#f44336;margin-top:0;margin-bottom:1rem;font-size:1.1rem}.user-responsibilities{background:linear-gradient(135deg,#e8f5e8 0%,#c8e6c9 100%);border:2px solid #4caf50;border-radius:10px;margin:1.5rem 0;padding:1.5rem}.user-responsibilities h4{color:#2e7d32;margin-top:0;margin-bottom:1rem}.service-categories{margin:2rem 0}.category-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.category-item{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.5rem;transition:all .3s;box-shadow:0 2px 8px #0000000d}.category-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.category-item h5{color:var(--primary-500);border-bottom:2px solid #e2e8f0;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.1rem;font-weight:600}.dispute-info{background:linear-gradient(135deg,#fff3cd 0%,#ffeaa7 100%);border:2px solid #ffc107;border-radius:10px;margin:1.5rem 0;padding:1.5rem}.dispute-info h4{color:#856404;margin-top:0;margin-bottom:1rem}.legal-footer{border-top:3px solid var(--primary-500);background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border-radius:10px;margin-top:3rem;padding:2rem}.footer-note{text-align:center}.footer-note p{color:#4a5568;margin:0;font-size:1.1rem}.credit-details{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin:1.5rem 0;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.credit-details h4{color:var(--primary-500);border-bottom:2px solid #e2e8f0;margin-top:0;margin-bottom:1rem;padding-bottom:.5rem;font-size:1.1rem}.important-info{background:linear-gradient(135deg,#e8f5e8 0%,#c8e6c9 100%);border:2px solid #4caf50;border-radius:10px;margin:1.5rem 0;padding:1.5rem}.important-info h4{color:#2e7d32;margin-top:0;margin-bottom:1rem}@media (max-width:768px){.static-page{padding:calc(64px + 1rem) .5rem 1rem}.static-page-header{padding:2rem 1.5rem}.static-page-title{font-size:2rem}.static-page-subtitle{font-size:1.1rem}.static-page-content{padding:2rem 1.5rem}.section-title{font-size:1.7rem}.subsection h3{font-size:1.3rem}.content-block{padding:1rem}.category-grid{grid-template-columns:1fr}}@media (max-width:480px){.static-page-header{padding:1.5rem 1rem}.static-page-title{font-size:1.7rem}.static-page-subtitle{font-size:1rem}.static-page-content{padding:1.5rem 1rem}.section-title{font-size:1.5rem}.subsection h3{font-size:1.2rem}.content-block{padding:.8rem}}.contact-intro{border-left:5px solid var(--primary-500);background:linear-gradient(135deg,#f8f9ff 0%,#e8f1ff 100%);border-radius:15px;margin-bottom:2rem;padding:2rem}.contact-intro p{color:#333;margin:0;font-size:1.1rem;line-height:1.6}.contact-details{grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem;display:grid}.contact-section{background:#f8f9fa;border-radius:15px;padding:2rem;box-shadow:0 4px 15px #00000014}.contact-location h3{color:var(--primary-500);text-align:center;border-bottom:2px solid #e9ecef;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.5rem}.contact-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000000d}.contact-info h4{color:#333;margin-bottom:1rem;font-size:1.3rem;font-weight:600}.address{border-left:4px solid var(--primary-500);background:#f8f9ff;border-radius:8px;margin-bottom:1.5rem;padding:1rem}.address p{color:#555;margin:.3rem 0;font-size:.95rem}.contact-methods{flex-direction:column;gap:1rem;display:flex}.contact-item{background:#f8f9fa;border-radius:8px;align-items:center;gap:.8rem;padding:.8rem;transition:all .3s;display:flex}.contact-item:hover{background:#e9ecef;transform:translate(5px)}.contact-icon{background:var(--primary-500);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:35px;height:35px;font-size:1.2rem;display:flex}.contact-text{color:#333;font-size:.95rem}.contact-text strong{color:var(--primary-500)}.contact-hours{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;border-radius:15px;margin-bottom:2rem;padding:2rem}.contact-hours h3{color:#fff;text-align:center;margin-bottom:1.5rem;font-size:1.5rem}.hours-info{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.hours-section{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffff1a;border-radius:12px;padding:1.5rem}.hours-section h4{color:#fff;text-align:center;margin-bottom:1rem;font-size:1.2rem}.hours-section p{opacity:.9;text-align:center;margin:.5rem 0}.contact-additional{background:#f8f9fa;border:1px solid #e9ecef;border-radius:15px;padding:2rem}.contact-additional h3{color:var(--primary-500);text-align:center;margin-bottom:2rem;font-size:1.5rem}.additional-info{grid-template-columns:1fr 1fr 1fr;gap:1.5rem;display:grid}.info-item{text-align:center;background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000000d}.info-item h4{color:var(--primary-500);margin-bottom:1rem;font-size:1.1rem}.info-item p{color:#666;font-size:.9rem;line-height:1.5}@media (max-width:768px){.contact-details{grid-template-columns:1fr;gap:1.5rem}.hours-info,.additional-info{grid-template-columns:1fr;gap:1rem}.contact-section,.contact-hours{padding:1.5rem}}@media (max-width:480px){.contact-intro{padding:1.5rem}.contact-card{padding:1rem}.contact-item{text-align:center;flex-direction:column;gap:.5rem}.contact-text{font-size:.9rem}}.sponsorship-page{background:var(--gray-50,#f9fafb);min-height:100vh;padding:calc(76px + 1.5rem) 1rem 2rem}.sponsorship-container{max-width:1100px;margin:0 auto}.sponsorship-header{text-align:center;margin-bottom:2rem}.back-button{color:var(--primary-500,#667eea);cursor:pointer;background:#fff;border:none;border-radius:50px;margin-bottom:1.5rem;padding:.75rem 1.5rem;font-weight:600;transition:all .3s;box-shadow:0 4px 15px #0000001a}.back-button:hover{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;transform:translateY(-2px)}.sponsorship-title{color:var(--gray-800,#1f2937);text-shadow:none;margin:0;font-size:2.5rem;font-weight:700}.sponsorship-tabs{background:#fff;border-radius:12px;gap:.5rem;margin-bottom:1.5rem;padding:.5rem;display:flex;box-shadow:0 4px 15px #00000014}.tab-btn{color:var(--gray-600,#4b5563);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:.875rem 1.25rem;font-size:1rem;font-weight:600;transition:all .2s}.tab-btn:hover{background:var(--gray-100,#f3f4f6)}.tab-btn.active{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;box-shadow:0 4px 12px #667eea4d}.letter-section{background:#fff;border-radius:16px;margin-bottom:2rem;padding:2rem;box-shadow:0 8px 30px #0000001a}.letter-content{color:#4a4a4a;font-size:1.05rem;line-height:1.8}.section-title{color:var(--gray-800,#1f2937);text-align:center;margin-bottom:1.5rem;font-size:1.75rem;font-weight:700}.items-section{margin-bottom:2rem}.items-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;display:grid}.sponsorship-item-card{background:#fff;border-radius:16px;padding:1.5rem;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 8px 30px #0000001a}.sponsorship-item-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px #00000026}.sponsorship-item-card.sold-out{opacity:.7}.item-number{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.9rem;font-weight:700;display:flex;position:absolute;top:.75rem;left:.75rem}.item-icon{text-align:center;margin-bottom:.75rem;font-size:2.5rem}.item-title{color:#333;text-align:center;margin:0 0 .75rem;font-size:1.25rem;font-weight:700}.item-cost-desc,.item-total-desc{color:#666;text-align:center;margin:.25rem 0;font-size:.9rem}.item-amount{color:var(--primary-500,#667eea);text-align:center;margin:1rem 0;font-size:1.5rem;font-weight:700}.item-amount .per-unit{color:#888;font-size:.85rem;font-weight:400;display:block}.item-units{margin:1rem 0}.units-progress{background:#eee;border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden}.units-progress-bar{background:linear-gradient(135deg,#4caf50 0%,#8bc34a 100%);border-radius:4px;height:100%;transition:width .5s}.units-text{color:#666;text-align:center;font-size:.85rem;display:block}.item-actions{gap:.5rem;margin-top:1rem;display:flex}.sponsor-btn{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;padding:.875rem;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 4px 6px -1px #0000001a}.sponsor-btn:hover:not(.disabled){opacity:.9;transform:scale(1.02);box-shadow:0 10px 15px -3px #0000001a}.sponsor-btn.disabled{background:var(--gray-300,#d1d5db);color:var(--gray-600,#4b5563);cursor:default;box-shadow:none}.pledge-btn{color:var(--primary-600,#5568d3);border:2px solid var(--primary-500,#667eea);cursor:pointer;background:#fff;border-radius:10px;flex:1;padding:.875rem;font-size:1rem;font-weight:600;transition:all .3s;box-shadow:0 4px 6px -1px #0000000d}.pledge-btn:hover{background:var(--primary-50,#f0f4ff);transform:scale(1.02);box-shadow:0 10px 15px -3px #0000001a}.empty-items-section{text-align:center;background:#fff;border-radius:16px;margin-bottom:2rem;padding:4rem 2rem;box-shadow:0 8px 30px #0000001a}.empty-icon{margin-bottom:1rem;font-size:4rem}.empty-items-section h3{color:#666;margin:0 0 .5rem}.empty-items-section p{color:#888;margin:0}.sponsors-section{background:#fff;border-radius:16px;margin-bottom:2rem;padding:2rem;box-shadow:0 8px 30px #0000001a}.sponsors-list{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.sponsor-card{background:linear-gradient(135deg,var(--primary-50,#f0f4ff)0%,#e0edff 100%);text-align:center;border-radius:12px;flex:0 auto;min-width:200px;padding:1rem 1.5rem}.sponsor-name{color:var(--secondary-500,#764ba2);font-size:1rem;font-weight:600}.sponsor-message{color:#666;margin:.5rem 0 0;font-size:.85rem;font-style:italic}.my-sponsorships-section{margin-bottom:2rem}.my-sponsorships-list{flex-direction:column;gap:1.25rem;display:flex}.my-sponsorship-card{border:1px solid var(--gray-100,#f3f4f6);background:#fff;border-radius:16px;padding:1.25rem 1.5rem;transition:all .2s;box-shadow:0 4px 20px #00000014}.my-sponsorship-card:hover{border-color:var(--primary-200,#c7d2fe);box-shadow:0 8px 30px #0000001f}.my-sponsorship-header{border-bottom:1px solid var(--gray-100,#f3f4f6);align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.my-sponsorship-icon{background:linear-gradient(135deg,var(--primary-50,#f0f4ff)0%,#e0edff 100%);border-radius:12px;justify-content:center;align-items:center;width:56px;min-width:56px;height:56px;font-size:2rem;display:flex}.my-sponsorship-info{flex:1;min-width:0}.my-sponsorship-info h3{color:var(--gray-800,#1f2937);white-space:nowrap;text-overflow:ellipsis;margin:0 0 .35rem;font-size:1.15rem;font-weight:700;overflow:hidden}.my-sponsorship-date{color:var(--gray-500,#6b7280);margin:0;font-size:.875rem}.my-sponsorship-details{flex-wrap:wrap;align-items:center;gap:0;padding:1rem 0;display:flex}.detail-row{flex-direction:column;gap:.5rem;min-width:0;padding:0 1.5rem;display:flex}.detail-row:first-child{padding-left:0}.detail-separator{background:var(--gray-200,#e5e7eb);width:1px;height:40px}.detail-label{color:var(--gray-500,#6b7280);letter-spacing:.8px;white-space:nowrap;font-size:.7rem;font-weight:600;width:100%!important}.detail-value{color:var(--gray-800,#1f2937);white-space:nowrap;font-size:1.05rem;font-weight:600}.my-sponsorship-message{background:var(--primary-50,#f0f4ff);color:var(--gray-600,#4b5563);border-left:3px solid var(--primary-400,#818cf8);border-radius:10px;margin-top:.5rem;padding:.875rem 1rem;font-size:.9rem;font-style:italic}.message-label{color:var(--gray-700,#374151);margin-right:.5rem;font-style:normal;font-weight:600}.complete-payment-btn{width:100%;margin-top:1rem}.status-badge{border-radius:20px;align-items:center;padding:.35rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.status-badge.success{color:#166534;background:#dcfce7}.status-badge.pending{color:#92400e;background:#fef3c7}.status-badge.unpaid{color:#991b1b;background:#fee2e2}.status-badge.pledge{color:#4338ca;background:#e0e7ff;border:1px solid #818cf8}.pledge-card{border-left:4px solid var(--primary-500,#667eea)}.pledge-actions{border-top:1px solid var(--gray-100,#f3f4f6);gap:.75rem;margin-top:1rem;padding-top:1rem;display:flex}.pledge-actions .btn-primary{flex:2}.pledge-actions .btn-secondary{flex:1}.empty-sponsorships{text-align:center;background:#fff;border-radius:16px;padding:3rem 2rem;box-shadow:0 4px 20px #00000014}.empty-sponsorships .empty-icon{margin-bottom:1rem;font-size:4rem}.empty-sponsorships h3{color:var(--gray-700,#374151);margin:0 0 .5rem}.empty-sponsorships p{color:var(--gray-500,#6b7280);margin:0 0 1.5rem}.contact-section{text-align:center;background:#fff;border-radius:16px;padding:1.5rem 2rem;box-shadow:0 8px 30px #0000001a}.contact-section h3{color:#333;margin:0 0 .5rem}.contact-section p{color:#666;margin:0}.link-btn{color:var(--primary-500,#667eea);cursor:pointer;font-weight:600;font-size:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.link-btn:hover{color:var(--primary-600,#5a6fd8)}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:20px;max-height:90vh;animation:.3s modalSlideIn;position:relative;overflow-y:auto;width:100%!important}.modal-close{color:#666;cursor:pointer;z-index:1;background:0 0;border:none;padding:0;font-size:2rem;line-height:1;transition:color .2s;position:absolute;top:1rem;right:1rem}.modal-close:hover{color:#dc3545}.modal-header{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;border-radius:20px 20px 0 0;padding:1.5rem 2rem}.modal-header h2{align-items:center;gap:.75rem;margin:0;font-size:1.5rem;display:flex}.modal-icon{font-size:2rem}.modal-body{padding:2rem}.item-details{background:#f8f9fa;border-radius:10px;margin-bottom:1.5rem;padding:1rem}.detail-row{color:#555;margin:.5rem 0;font-size:.95rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#333;margin-bottom:.5rem;font-size:.95rem;font-weight:600;display:block}.form-group input,.form-group textarea{border:2px solid #e0e0e0;border-radius:10px;width:100%;padding:.875rem;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary-500,#667eea);outline:none}.form-group textarea{resize:vertical;min-height:100px}.checkbox-group label{cursor:pointer;align-items:center;gap:.5rem;font-weight:400;display:flex}.checkbox-group input[type=checkbox]{cursor:pointer;width:auto}.units-input-group{align-items:center;gap:0;max-width:180px;display:flex}.units-input-group button{cursor:pointer;background:#f0f0f0;border:2px solid #e0e0e0;width:48px;height:48px;font-size:1.5rem;font-weight:600;transition:all .2s}.units-input-group button:first-child{border-radius:10px 0 0 10px}.units-input-group button:last-child{border-radius:0 10px 10px 0}.units-input-group button:hover:not(:disabled){color:#fff;background:#ff9800;border-color:#ff9800}.units-input-group button:disabled{opacity:.5;cursor:not-allowed}.units-input-group input{text-align:center;border-left:none;border-right:none;border-radius:0;width:80px;height:48px;font-weight:600}.amount-preview{color:#333;margin:1rem 0 0;font-size:1.1rem}.amount-preview strong{color:#e65100;font-size:1.25rem}.modal-actions{border-top:1px solid #eee;justify-content:flex-end;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.btn-primary{background:linear-gradient(135deg,var(--primary-500,#667eea)0%,var(--secondary-500,#764ba2)100%);color:#fff;cursor:pointer;border:none;border-radius:10px;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 6px -1px #0000001a}.btn-primary:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{color:#333;cursor:pointer;background:#f0f0f0;border:none;border-radius:10px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.btn-secondary:hover{background:#e0e0e0}.error-message{color:#c62828;background:#ffebee;border-radius:10px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.875rem;display:flex}.payment-selection .payment-summary{background:linear-gradient(135deg,#e8f5e9 0%,#c8e6c9 100%);border-radius:12px;margin-bottom:1.5rem;padding:1.25rem}.payment-summary h3{color:#2e7d32;margin:0 0 1rem;font-size:1.1rem}.summary-row{color:#555;justify-content:space-between;padding:.5rem 0;display:flex}.summary-row.total{border-top:2px solid #a5d6a7;margin-top:.5rem;padding-top:.75rem;font-weight:600}.total-amount{color:#2e7d32;font-size:1.25rem}.gateway-selection h4{color:#333;margin:0 0 1rem}.gateway-options{flex-direction:column;gap:.75rem;display:flex}.gateway-option{cursor:pointer;border:2px solid #e0e0e0;border-radius:12px;align-items:center;gap:1rem;padding:1rem;transition:all .2s;display:flex}.gateway-option:hover{border-color:var(--primary-500,#667eea)}.gateway-option.selected{border-color:var(--primary-500,#667eea);background:var(--primary-50,#f0f4ff)}.gateway-option input[type=radio]{cursor:pointer}.gateway-info{align-items:center;gap:.75rem;display:flex}.gateway-info img{object-fit:contain;width:auto;max-width:80px;height:28px}.gateway-name{color:#333;font-weight:600}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}.loading-container{color:#666;flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.loading-spinner{border:4px solid var(--primary-50,#f0f4ff);border-top-color:var(--primary-500,#667eea);border-radius:50%;width:50px;height:50px;margin-bottom:1rem;animation:1s linear infinite spin}.error-container{text-align:center;background:#fff;border-radius:20px;max-width:500px;margin:0 auto;padding:4rem 2rem;box-shadow:0 8px 30px #0000001a}.error-icon{margin-bottom:1rem;font-size:4rem}.error-container h2{color:#c62828;margin:0 0 .5rem}.error-container p{color:#666;margin:0 0 1.5rem}@media (max-width:768px){.sponsorship-page{padding:calc(76px + 1rem) .75rem 1.5rem}.sponsorship-title{font-size:1.75rem}.letter-section{padding:1.5rem}.items-grid{grid-template-columns:1fr;gap:1rem}.sponsorship-item-card{padding:1.25rem}.sponsorship-tabs{flex-direction:column;gap:.25rem}.tab-btn{padding:.75rem 1rem}.my-sponsorship-card{padding:1rem}.my-sponsorship-header{flex-wrap:wrap;gap:.75rem}.my-sponsorship-icon{width:48px;min-width:48px;height:48px;font-size:1.5rem}.my-sponsorship-info{flex:calc(100% - 140px)}.my-sponsorship-info h3{font-size:1rem}.my-sponsorship-details{flex-direction:column;align-items:stretch;gap:.75rem}.detail-row{border-bottom:1px solid var(--gray-100,#f3f4f6);flex-direction:row;justify-content:space-between;padding:.5rem 0}.detail-row:first-child{padding-left:0}.detail-row:last-of-type{border-bottom:none}.detail-separator{display:none}.detail-label,.detail-value{white-space:normal}.status-badge{flex:none;order:3}.item-actions,.pledge-actions{flex-direction:column}.pledge-actions .btn-primary,.pledge-actions .btn-secondary{flex:1}.modal-content{border-radius:0;max-width:100%;max-height:100vh}.modal-header{border-radius:0}.modal-body{padding:1.5rem}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}.units-input-group{max-width:100%}.units-input-group input{flex:1}}@media (max-width:480px){.sponsorship-title{font-size:1.5rem}.section-title{font-size:1.35rem}.item-title{font-size:1.1rem}.item-amount{font-size:1.25rem}.sponsor-card{min-width:100%}}.app-layout{flex-direction:column;width:100%;min-height:100vh;display:flex;overflow-x:hidden}.global-layout{flex-direction:column;min-height:100vh;display:flex}.global-content{box-sizing:border-box;flex-direction:column;flex:1;width:100%;max-width:100vw;padding-top:0;display:flex;overflow-x:hidden}@media (max-width:768px){.global-content{display:block;overflow:visible}}.main-content{width:100%;padding:var(--space-4);transition:all var(--transition-normal);background-color:var(--gray-50);flex-direction:column;flex:1;align-items:center;min-height:calc(100vh - 276px);margin-top:76px;display:flex}.content-wrapper{width:100%;max-width:1200px;padding:0 var(--space-4);margin:0 auto}.loading-screen{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);justify-content:center;align-items:center;min-height:100vh;display:flex}.loading-spinner{text-align:center}.loading-logo{border-radius:var(--radius-xl);width:80px;height:80px;margin-bottom:var(--space-8);object-fit:cover;box-shadow:var(--shadow-xl)}.spinner{border:3px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:40px;height:40px;margin:0 auto;animation:1s linear infinite spin}.container{max-width:1200px;padding:0 var(--space-4);margin:0 auto}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.mt-4{margin-top:var(--space-4)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.text-center{text-align:center}.text-sm{font-size:.875rem}.text-base{font-size:1rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.text-3xl{font-size:1.875rem}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.text-gray-600{color:var(--gray-600)}.text-gray-700{color:var(--gray-700)}.text-gray-800{color:var(--gray-800)}.bg-white{background-color:#fff}.bg-gray-50{background-color:var(--gray-50)}.bg-gray-100{background-color:var(--gray-100)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3)var(--space-6);border-radius:var(--radius-lg);font-size:.875rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);border:none;outline:none;min-height:44px;text-decoration:none;display:inline-flex}.btn:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.btn-primary{background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-secondary{background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-300)}.btn-secondary:hover:not(:disabled){background:var(--gray-200)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.input{width:100%;padding:var(--space-3);border:2px solid var(--gray-200);border-radius:var(--radius-lg);transition:all var(--transition-fast);background:var(--gray-50);font-size:1rem}.input:focus{border-color:var(--primary-500);background:#fff;outline:none;box-shadow:0 0 0 3px #667eea1a}.card{border-radius:var(--radius-2xl);box-shadow:var(--shadow-md);border:1px solid var(--gray-100);background:#fff;overflow:hidden}.page-placeholder{padding:var(--space-16)var(--space-8);text-align:center;max-width:600px;margin:0 auto}.page-placeholder h1{font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--gray-800);margin-bottom:var(--space-4);background:linear-gradient(135deg,var(--primary-500)0%,var(--secondary-500)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.page-placeholder p{color:var(--gray-600);margin:0;font-size:1.125rem;line-height:1.6}#root{text-align:left;width:100%;min-height:100vh;margin:0;padding:0}.logo{will-change:filter;height:6em;padding:1.5em;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.rps-logo{border-radius:var(--radius-xl);max-width:200px;height:auto;box-shadow:var(--shadow-lg)}.rps-logo:hover{filter:drop-shadow(0 0 2em #ff6b35aa);transform:scale(1.05)}.animate-fade-in{animation:.3s ease-in-out fadeIn}.animate-slide-up{animation:.3s ease-out slideUp}@media (max-width:768px){.container{padding:0 var(--space-3)}.page-placeholder{padding:var(--space-8)var(--space-4)}.page-placeholder h1{font-size:2rem}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.access-denied{text-align:center;min-height:60vh;padding:var(--space-8);flex-direction:column;justify-content:center;align-items:center;display:flex}.access-denied h2{color:var(--error-500);font-size:2rem;font-weight:var(--font-weight-bold);margin-bottom:var(--space-4)}.access-denied p{color:var(--gray-600);margin-bottom:var(--space-2);max-width:400px;font-size:1.1rem}.access-denied p:last-child{font-weight:var(--font-weight-medium);color:var(--gray-700)}.global-signup-banner{color:#fff;padding:var(--space-6)var(--space-4);margin:var(--space-4)auto;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:40;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);width:50vw;position:relative}.signup-banner-content{justify-content:center;align-items:center;gap:var(--space-6);text-align:center;max-width:800px;padding:var(--space-4);flex-wrap:wrap;margin:0 auto;display:flex}.signup-banner-icon{margin-bottom:var(--space-2);flex-shrink:0;font-size:4rem}.signup-banner-text{min-width:280px;margin-bottom:var(--space-4);flex:1}.signup-banner-text h3{margin:0 0 var(--space-2)0;font-size:1.5rem;font-weight:var(--font-weight-bold);color:#fff;letter-spacing:-.025em}.signup-banner-text p{color:#fffffff2;max-width:500px;margin:0 auto;font-size:1rem;line-height:1.6}.signup-banner-actions{gap:var(--space-3);flex-shrink:0;justify-content:center;width:100%;display:flex}.signup-banner-actions .btn{padding:var(--space-3)var(--space-6);min-width:140px;font-size:1rem;font-weight:var(--font-weight-medium);border-radius:var(--radius-lg);transition:var(--transition-normal)}.signup-banner-actions .btn-primary{color:#667eea;font-weight:var(--font-weight-medium);background:#fff;border:none}.signup-banner-actions .btn-primary:hover{background:#f8f9ff;transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.signup-banner-actions .btn-text{color:#ffffffe6;background:0 0;border:1px solid #ffffff4d}.signup-banner-actions .btn-text:hover{color:#fff;background:#ffffff1a;border-color:#ffffff80}@media (max-width:768px){.global-signup-banner{margin:var(--space-2)auto;padding:var(--space-4)var(--space-3);width:90vw}.signup-banner-content{text-align:center;gap:var(--space-4);padding:var(--space-2);flex-direction:column}.signup-banner-icon{font-size:3rem}.signup-banner-text{min-width:auto}.signup-banner-text h3{font-size:1.25rem}.signup-banner-text p{font-size:.95rem}.signup-banner-actions{gap:var(--space-2);flex-direction:column;width:100%}.signup-banner-actions .btn{min-width:100%;padding:var(--space-3)var(--space-4)}}
