@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.loading-spinner{display:inline-block;border:3px solid rgba(139,92,246,.2);border-top-color:var(--accent, #8B5CF6);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner--small{width:20px;height:20px;border-width:2px}.loading-spinner--medium{width:40px;height:40px;border-width:3px}.loading-spinner--large{width:60px;height:60px;border-width:4px}.skeleton{background:linear-gradient(90deg,var(--bg-card-muted, #f3f4f6) 0%,var(--bg-card, #ffffff) 50%,var(--bg-card-muted, #f3f4f6) 100%);background-size:2000px 100%;animation:shimmer 2s infinite;border-radius:4px}.skeleton-card{background:var(--bg-card);border-radius:12px;padding:24px;border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft)}.skeleton-card__header{height:20px;width:60%;margin-bottom:16px}.skeleton-card__content{height:40px;width:80%;margin-bottom:12px}.skeleton-card__footer{height:16px;width:40%}.skeleton-table-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:16px;padding:12px 0;border-bottom:1px solid var(--border-subtle)}.skeleton-table-cell{height:16px;width:100%}.skeleton-form-field{margin-bottom:20px}.skeleton-form-label{height:14px;width:120px;margin-bottom:8px}.skeleton-form-input{height:40px;width:100%;border-radius:6px}.skeleton-list-item{padding:12px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;gap:12px}.skeleton-list-item__avatar{width:40px;height:40px;border-radius:50%;flex-shrink:0}.skeleton-list-item__content{flex:1}.skeleton-list-item__title{height:16px;width:60%;margin-bottom:8px}.skeleton-list-item__subtitle{height:12px;width:40%}.page-loader{position:fixed;top:0;left:0;right:0;bottom:0;background:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;gap:16px}.page-loader__spinner{margin-bottom:8px}.page-loader__message{color:var(--text-muted);font-size:14px;font-weight:500}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#fffc;display:flex;align-items:center;justify-content:center;z-index:100;border-radius:8px}.inline-loading{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);font-size:14px}.admin-layout{display:flex;height:100vh;overflow:hidden;background:var(--bg-body);position:relative}.sidebar{background:var(--bg-sidebar-elevated);color:var(--text-on-sidebar);display:flex;flex-direction:column;transition:all .3s ease;position:fixed;left:20px;top:20px;bottom:20px;z-index:100;border-radius:24px;box-shadow:var(--shadow-soft)}.sidebar.open{width:280px}.sidebar.closed{width:80px}.sidebar-header{padding:16px 20px;min-height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.15);position:relative}.sidebar.open .sidebar-header{justify-content:center}.sidebar-logo-text{font-family:Outfit,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:24px;font-weight:700;color:#fff;letter-spacing:-.03em;-webkit-user-select:none;user-select:none;white-space:nowrap}.sidebar-logo-text .logo-accent{color:#10b981}.sidebar.closed .sidebar-logo-text{display:none}.sidebar-toggle{position:absolute;top:50%;right:24px;transform:translateY(-50%);background:#ffffff1a;border:none;color:#fff;cursor:pointer;font-size:18px;padding:12px 10px;border-radius:8px;transition:all .2s}.sidebar.closed .sidebar-toggle{right:auto;left:50%;transform:translate(-50%,-50%)}.sidebar-toggle:hover{background:#fff3;transform:translateY(-50%) scale(1.05)}.sidebar.closed .sidebar-toggle:hover{transform:translate(-50%,-50%) scale(1.05)}.sidebar-nav{flex:1;padding:16px;overflow-y:auto}.sidebar-section-title{padding:0 18px;margin:16px 0 8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff6}.sidebar.closed .sidebar-section-title{display:none}.nav-item{display:flex;align-items:center;gap:14px;padding:12px 18px;margin-bottom:6px;color:#ffffffd9;text-decoration:none;transition:all .2s;white-space:nowrap;border-radius:12px;font-weight:500;font-size:15px}.nav-item:hover{background:var(--nav-item-hover-bg);color:#fff;transform:translate(4px)}.nav-item.active{background:var(--nav-item-active-bg);color:#fff;box-shadow:0 4px 12px #00000026;font-weight:600}.nav-icon{min-width:32px;text-align:center;display:flex;align-items:center;justify-content:center}.nav-icon svg{stroke:currentColor}.sidebar.closed .nav-item{justify-content:center;padding:10px}.sidebar.closed .nav-item span:not(.nav-icon){display:none}.sidebar-footer{border-top:1px solid rgba(255,255,255,.15);padding:16px}.sidebar.closed .sidebar-footer{padding:16px 8px;display:flex;flex-direction:column;gap:12px;align-items:center}.user-info{display:flex;align-items:center;gap:12px;padding:10px;background:#ffffff1a;border-radius:12px;border:1px solid rgba(255,255,255,.05)}.sidebar.closed .user-info{justify-content:center;padding:0;background:transparent;border:none;width:auto}.user-avatar{width:40px;height:40px;border-radius:50%;background:#8b5cf6;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0;box-shadow:0 4px 8px #0003;border:2px solid rgba(255,255,255,.1)}.sidebar.closed .user-avatar{width:36px;height:36px;font-size:14px}.user-details{overflow:hidden;flex:1}.user-name{font-weight:600;font-size:14px;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.user-email{font-size:11px;color:#fff9;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-logout-btn{background:transparent;border:none;color:#fff9;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s}.sidebar-logout-btn:hover{background:#ef444433;color:#ef4444}.sidebar-logout-btn.collapsed{width:100%;margin-top:4px}.main-content{flex:1;overflow-y:auto;background:var(--bg-body);margin-left:320px;transition:margin-left .3s ease;display:flex;flex-direction:column}.sidebar.closed~.main-content{margin-left:120px}.main-header{display:flex;align-items:center;justify-content:space-between;padding:16px 28px;border-bottom:1px solid var(--border-subtle);background:var(--bg-card)}.main-header-title{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.main-header-right{display:flex;align-items:center;gap:12px}.main-content-inner{padding:24px 28px 32px;height:100%}.main-content-inner.no-padding{padding:0;height:100%}.service-selector{margin:12px;display:flex;flex-direction:column;gap:10px;position:relative;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar.closed .service-selector{display:block;opacity:0;pointer-events:none;height:44px;margin:12px;padding-bottom:12px}.service-dropdown-wrapper{position:relative;width:100%;z-index:20}.service-dropdown-trigger{width:100%;height:44px;background:#ffffff1a;border-radius:12px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:background .2s;border:1px solid rgba(255,255,255,.05)}.service-dropdown-trigger:hover{background:#ffffff26}.selected-service-name{font-weight:600;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-arrow{transition:transform .2s;opacity:.7}.dropdown-arrow.open{transform:rotate(180deg)}.create-service-btn-sidebar{background:transparent;color:#ffffffb3;border:1px dashed rgba(255,255,255,.2);width:100%;height:auto;padding:10px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:14px;font-weight:500}.create-service-btn-sidebar:hover{background:#ffffff0d;color:#fff;border-color:#fff6;transform:translateY(-1px)}.service-dropdown-menu{position:absolute;top:100%;left:0;right:0;margin-top:6px;background:var(--bg-sidebar-elevated);border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 4px 20px #0000004d;overflow:hidden;max-height:240px;overflow-y:auto;animation:fadeIn .15s ease-out}.service-option{padding:12px 16px;font-size:14px;color:var(--text-on-sidebar);cursor:pointer;transition:background .1s;border-bottom:1px solid rgba(255,255,255,.05)}.service-option:last-child{border-bottom:none}.service-option:hover{background:#ffffff1a}.service-option.selected{background:#ffffff26;color:#fff;font-weight:600}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tour-spotlight-active{pointer-events:none!important}.tour-spotlight{position:fixed;z-index:999998;pointer-events:none;border-radius:8px;box-shadow:0 0 0 9999px #0f172ab8,0 0 15px #6366f180;border:2px solid var(--accent, #6366f1);transition:all .35s cubic-bezier(.4,0,.2,1);box-sizing:border-box}.tour-bubble{position:fixed;z-index:999999;background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 12px 40px #0f172a26;border-radius:16px;padding:20px;width:320px;max-width:90vw;color:#0f172a;font-family:Outfit,Inter,sans-serif;transition:all .35s cubic-bezier(.4,0,.2,1);box-sizing:border-box}.dark .tour-bubble{background:#0f172ad9;border:1px solid rgba(255,255,255,.08);color:#f8fafc;box-shadow:0 12px 40px #00000080}.tour-bubble-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.tour-bubble-title{font-size:16px;font-weight:700;color:var(--accent, #6366f1);margin:0;display:flex;align-items:center;gap:8px}.tour-bubble-content{font-size:14px;line-height:1.6;color:#475569;margin-bottom:20px}.dark .tour-bubble-content{color:#cbd5e1}.tour-bubble-content strong{color:#0f172a;font-weight:600}.dark .tour-bubble-content strong{color:#fff}.tour-bubble-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.tour-progress{font-size:12px;font-weight:600;color:#94a3b8}.tour-actions{display:flex;align-items:center;gap:8px}.tour-btn{padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;outline:none;font-family:inherit}.tour-btn-skip{background:transparent;color:#94a3b8;padding:6px 0;margin-right:8px}.tour-btn-skip:hover{color:#ef4444}.tour-btn-back{background:#0000000d;color:#475569;border:1px solid rgba(0,0,0,.05)}.dark .tour-btn-back{background:#ffffff0d;color:#cbd5e1;border:1px solid rgba(255,255,255,.05)}.tour-btn-back:hover{background:#00000014}.dark .tour-btn-back:hover{background:#ffffff14}.tour-btn-next{background:var(--accent, #6366f1);color:#fff;box-shadow:0 4px 12px #6366f14d}.tour-btn-next:hover{background:#4f46e5;transform:translateY(-1px);box-shadow:0 6px 16px #6366f166}.tour-success-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000000;background:#ffffffe6;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.4);box-shadow:0 20px 50px #0f172a40;border-radius:24px;padding:32px;width:400px;max-width:90vw;text-align:center;animation:successModalFade .4s cubic-bezier(.34,1.56,.64,1);color:#0f172a;font-family:Outfit,Inter,sans-serif}.dark .tour-success-modal{background:#0f172ae6;border:1px solid rgba(255,255,255,.08);color:#f8fafc}@keyframes successModalFade{0%{opacity:0;transform:translate(-50%,-40%) scale(.9)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.tour-success-title{font-size:24px;font-weight:800;color:var(--accent, #6366f1);margin-bottom:12px}.tour-success-desc{font-size:14px;color:#475569;line-height:1.6;margin-bottom:24px}.dark .tour-success-desc{color:#cbd5e1}.tour-success-btn{background:var(--accent, #6366f1);color:#fff;padding:12px 32px;border-radius:12px;font-size:14px;font-weight:700;border:none;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px #6366f166}.tour-success-btn:hover{background:#4f46e5;transform:translateY(-2px);box-shadow:0 6px 20px #6366f180}.tour-badge-restart{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;font-size:12px;font-weight:600;color:var(--accent, #6366f1);background:#6366f114;border:1px solid rgba(99,102,241,.15);cursor:pointer;transition:all .2s ease}.tour-badge-restart:hover{background:#6366f11f;transform:translateY(-1px)}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);padding:20px}.login-box{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;padding:40px;width:100%;max-width:420px}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-size:32px;font-weight:700;color:#1a1a1a;margin:0 0 8px}.login-header p{font-size:16px;color:#666;margin:0}.login-form{display:flex;flex-direction:column;gap:20px}.error-message{background:#fee;color:#c33;padding:12px 16px;border-radius:8px;border:1px solid #fcc;font-size:14px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;font-size:14px;color:#1a1a1a}.form-group input{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:15px;transition:all .2s}.form-group input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.login-button{padding:14px;background:#8b5cf6;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:8px}.login-button:hover:not(:disabled){background:#7c3aed;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf666}.login-button:disabled{opacity:.6;cursor:not-allowed}.demo-credentials{margin-top:24px;padding:16px;background:#f8f9fa;border-radius:8px;text-align:center}.demo-credentials p{margin:4px 0;font-size:13px;color:#666}.demo-credentials strong{color:#1a1a1a;font-size:14px}.smart-calendar-container{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:1.25rem;box-shadow:var(--shadow-soft);width:100%}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem}.current-month{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.calendar-nav{display:flex;gap:.5rem}.nav-btn{background:var(--bg-body);border:1px solid var(--border-subtle);color:var(--text-secondary);width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.nav-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.today-btn{color:var(--primary)}.weekdays-row{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.5rem}.weekday-label{text-align:center;font-size:.75rem;font-weight:600;color:var(--text-muted);padding:.5rem 0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;font-size:.9rem;color:var(--text-primary);transition:all .15s;position:relative;border:1px solid transparent}.calendar-day:not(.empty):hover{background:var(--bg-hover)}.calendar-day.empty{cursor:default}.calendar-day.today{color:var(--accent);font-weight:600;border-color:#8b5cf64d}.calendar-day.selected{background:var(--accent);color:#fff;font-weight:600;box-shadow:0 4px 12px #8b5cf64d}.calendar-day.selected:hover{background:var(--accent);filter:brightness(1.1)}.calendar-day.selected.today{border-color:transparent}.activity-dot{width:4px;height:4px;border-radius:50%;background:#10b981;position:absolute;bottom:6px}.calendar-day.selected .activity-dot{background:#fff}.dashboard{max-width:1400px;margin:0 auto;padding:1.5rem;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dashboard-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:flex-end}.dashboard-header h1{font-size:2rem;font-weight:700;margin:0 0 .5rem;background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--text-primary)}.dashboard-header p{color:var(--text-secondary);font-size:1rem;margin:0}.calendar-create-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--accent);color:#fff;border-radius:12px;text-decoration:none;font-weight:600;font-size:.9rem;box-shadow:0 4px 12px #8b5cf640;transition:all .2s}.calendar-create-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf659}.dashboard-grid{display:grid;grid-template-columns:1fr 360px;gap:1.5rem}@media(max-width:1100px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-main,.dashboard-sidebar{display:flex;flex-direction:column;gap:1.5rem}.dashboard-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-soft);transition:transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001f}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.stat-card-modern{display:flex;flex-direction:column;justify-content:space-between;height:140px;position:relative}.stat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.stat-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);box-shadow:0 4px 12px #6366f14d}.stat-value{font-size:2.25rem;font-weight:700;color:var(--text-primary);line-height:1}.stat-label{color:var(--text-secondary);font-size:.875rem;font-weight:500;margin-top:.5rem}.stat-bookings .stat-icon-wrapper{background:linear-gradient(135deg,#3b82f6,#0ea5e9);box-shadow:0 4px 12px #3b82f64d}.stat-tables .stat-icon-wrapper{background:linear-gradient(135deg,#10b981,#34d399);box-shadow:0 4px 12px #10b9814d}.occupancy-mini-bar{height:6px;background:var(--bg-body);border-radius:3px;width:100%;margin-top:auto;overflow:hidden}.occupancy-mini-fill{height:100%;background:#10b981;border-radius:3px}.recent-activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-subtle)}.header-with-date{display:flex;align-items:center;gap:1rem}.header-with-date h2{font-size:1.25rem;margin:0;color:var(--text-primary)}.date-badge{background:var(--primary-light);color:var(--primary);font-size:.75rem;font-weight:600;padding:.25rem .6rem;border-radius:99px}.view-all-link{font-size:.875rem;color:var(--primary);text-decoration:none;font-weight:500}.view-all-link:hover{text-decoration:underline}.activity-list{display:flex;flex-direction:column;gap:.75rem}.activity-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;border:1px solid var(--border-subtle);border-radius:12px;transition:background .2s}.activity-item:hover{background:var(--bg-body)}.activity-info{display:flex;align-items:center;gap:1rem}.activity-time-box{background:var(--bg-sidebar);color:#fff;padding:.5rem .75rem;border-radius:8px;font-weight:600;font-size:.9rem;min-width:80px;text-align:center}.activity-details h4{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.activity-details p{margin:.2rem 0 0;font-size:.85rem;color:var(--text-secondary);display:flex;align-items:center}.activity-status{padding:.35rem .75rem;border-radius:8px;font-size:.8rem;font-weight:600;text-transform:capitalize}.status-confirmed{background:#10b98126;color:#10b981}.status-pending{background:#f59e0b26;color:#f59e0b}.status-cancelled{background:#ef444426;color:#ef4444}.status-completed{background:#6b728026;color:#6b7280}.status-no-show,.status-no_show{background:#3b82f626;color:#3b82f6}.empty-day-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:var(--text-muted)}.empty-day-state svg{margin-bottom:1rem;opacity:.5}.empty-day-state p{margin:0 0 1rem}.text-btn{background:none;border:none;color:var(--primary);font-weight:600;cursor:pointer;font-size:.9rem}.text-btn:hover{text-decoration:underline}.onboarding-top-grid{display:grid;grid-template-columns:1fr 340px;gap:20px;align-items:stretch}@media(max-width:900px){.onboarding-top-grid{grid-template-columns:1fr}}.onboarding-hero{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:2.5rem 2rem;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.onboarding-hero:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#6366f1,#8b5cf6,#a78bfa)}.onboarding-hero-content{max-width:600px}.onboarding-wave{font-size:2.25rem;display:inline-block;animation:ob-wave 1.8s ease-in-out infinite;transform-origin:70% 70%}@keyframes ob-wave{0%,60%,to{transform:rotate(0)}10%,30%{transform:rotate(14deg)}20%{transform:rotate(-8deg)}40%{transform:rotate(-4deg)}}.onboarding-hero-title{font-size:1.875rem;font-weight:700;margin:.75rem 0 .5rem;letter-spacing:-.025em;color:var(--text-primary)}.onboarding-hero-sub{color:var(--text-secondary);font-size:1rem;line-height:1.6;margin:0}.onboarding-hero-cta{display:inline-flex;align-items:center;gap:8px;margin-top:1.5rem;padding:.75rem 1.5rem;background:var(--accent);color:#fff;border-radius:12px;text-decoration:none;font-weight:600;font-size:.9rem;box-shadow:0 4px 12px #8b5cf640;transition:all .2s ease}.onboarding-hero-cta:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 6px 16px #8b5cf659}.onboarding-section{margin-top:.5rem}.onboarding-section-title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.onboarding-section-desc{color:var(--text-muted);font-size:.9rem;margin:0 0 1.25rem}.onboarding-steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media(max-width:900px){.onboarding-steps-grid{grid-template-columns:1fr}}.onboarding-step-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:28px 24px;display:flex;flex-direction:column;align-items:flex-start;text-decoration:none;color:inherit;box-shadow:var(--shadow-soft);transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.onboarding-step-card:not(.onboarding-step-locked):hover{transform:translateY(-4px);box-shadow:0 12px 32px #8b5cf61f;border-color:var(--accent)}.onboarding-step-locked{opacity:.55;cursor:default}.onboarding-step-number{position:absolute;top:16px;right:16px;width:28px;height:28px;border-radius:50%;background:var(--bg-body);border:1.5px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:var(--text-muted)}.onboarding-step-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:16px;box-shadow:0 4px 12px #00000014}.onboarding-step-card h3{font-size:1.05rem;font-weight:650;margin:0 0 8px;color:var(--text-primary)}.onboarding-step-card p{font-size:.84rem;color:var(--text-muted);line-height:1.55;margin:0 0 auto}.onboarding-step-action{display:inline-block;margin-top:16px;font-size:.84rem;font-weight:600;color:var(--accent)}.onboarding-step-action-locked{color:var(--text-muted);font-weight:500;font-style:italic}.onboarding-links-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media(max-width:768px){.onboarding-links-grid{grid-template-columns:1fr}}.onboarding-link-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:18px 20px;display:flex;align-items:center;gap:14px;text-decoration:none;color:inherit;transition:all .2s ease}.onboarding-link-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf614}.onboarding-link-icon{width:40px;height:40px;border-radius:10px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.onboarding-link-card h4{font-size:.92rem;font-weight:600;color:var(--text-primary);margin:0 0 2px}.onboarding-link-card p{font-size:.8rem;color:var(--text-muted);margin:0;line-height:1.4}.onboarding-tips-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:24px 28px;box-shadow:var(--shadow-soft)}.onboarding-tips-card h3{font-size:1rem;font-weight:650;margin:0 0 12px;color:var(--text-primary)}.onboarding-tips-card ul{margin:0;padding:0 0 0 20px;list-style:none}.onboarding-tips-card li{position:relative;padding:6px 0 6px 8px;font-size:.86rem;color:var(--text-secondary);line-height:1.55}.onboarding-tips-card li:before{content:"•";position:absolute;left:-12px;color:var(--accent);font-weight:700}.onboarding-tips-card li strong{color:var(--text-primary)}.occupancy-summary-card{display:flex;flex-direction:column;gap:1rem}.occupancy-summary-card h3{margin:0;font-size:1rem;color:var(--text-primary)}.status-row{display:flex;justify-content:space-between;align-items:center}.status-label{color:var(--text-secondary);font-size:.9rem}.status-badge{font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:99px;text-transform:uppercase;letter-spacing:.5px}.status-badge.active{background:#10b98126;color:#10b981}.status-divider{height:1px;background:var(--border-subtle);width:100%}.capacity-stat{display:flex;flex-direction:column;align-items:center;text-align:center}.cap-label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.cap-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.sales-dashboard-content{display:flex;flex-direction:column;gap:1.5rem}.sales-dashboard-content .stats-row{margin-bottom:0}.dashboard .date-input{padding:.5rem .75rem;border:1px solid var(--border-subtle);border-radius:8px;font-size:.9rem;background:var(--bg-card);color:var(--text-primary);cursor:pointer;transition:border-color .2s,box-shadow .2s;margin-left:.5rem}.dashboard .date-input:hover{border-color:var(--accent)}.dashboard .date-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #8b5cf633}.timeline-page{min-height:100%;display:flex;flex-direction:column;background:var(--bg-body);animation:timeline-fade-in .3s ease-out}@keyframes timeline-fade-in{0%{opacity:0}to{opacity:1}}.timeline-header{background:var(--bg-card);border-bottom:1px solid var(--border-subtle);padding:1.25rem 1.5rem;flex-shrink:0}.timeline-header-top{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.timeline-back-btn{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000a;flex-shrink:0}.timeline-back-btn:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:scale(1.08);box-shadow:0 4px 12px var(--accent-soft)}.timeline-header-title h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.timeline-header-title p{margin:.25rem 0 0;font-size:.875rem;color:var(--text-muted)}.timeline-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:0;row-gap:.75rem}.timeline-toolbar-group{display:flex;align-items:center;gap:.5rem;padding-right:1.25rem;border-right:1px solid var(--border-subtle);margin-right:1rem}.timeline-toolbar-group:last-of-type{border-right:none;padding-right:0;margin-right:0}.timeline-resource-select{display:flex;align-items:center;gap:.5rem}.timeline-resource-select label{font-size:.75rem;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.timeline-resource-select select,.timeline-filter select{height:40px;padding:0 2rem 0 .75rem;border:1px solid var(--input-border);border-radius:8px;background:var(--input-bg);color:var(--text-primary);font-size:.9rem;min-width:140px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.timeline-date-nav{display:flex;align-items:center;gap:.25rem}.timeline-date-nav button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;border:1px solid var(--input-border);background:var(--bg-card-muted);color:var(--text-secondary);cursor:pointer;transition:all .2s}.timeline-date-nav button:hover{background:var(--bg-card);color:var(--accent);border-color:var(--accent)}.timeline-today-btn{width:auto!important;padding:0 1rem!important;font-size:.85rem!important;font-weight:500!important}.timeline-week-label{font-size:.875rem;color:var(--text-secondary);margin-left:.5rem;white-space:nowrap}.timeline-filter{display:flex;align-items:center;gap:.5rem}.timeline-filter select{min-width:120px}.timeline-btn-primary{display:inline-flex;align-items:center;gap:.5rem;height:40px;padding:0 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;margin-left:auto}.timeline-btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.timeline-btn-primary:disabled,.timeline-btn-primary--disabled{background:var(--bg-card-muted);color:var(--text-muted);border:1px solid var(--border-subtle);opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.timeline-btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-card-muted);border:1px solid var(--border-subtle);color:var(--text-primary);border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;text-decoration:none;transition:all .2s}.timeline-btn-secondary:hover{background:var(--bg-card);border-color:var(--accent);color:var(--accent)}.timeline-btn-danger{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.timeline-btn-danger:hover{background:#ef444433}.timeline-error{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;margin:0 1.5rem;border-radius:10px}.timeline-error button{background:none;border:none;color:inherit;cursor:pointer;padding:.25rem}.timeline-main{flex:1;overflow:auto;padding:1.5rem;position:relative}.timeline-grid{display:grid;grid-template-columns:56px repeat(7,minmax(0,1fr));grid-template-rows:auto repeat(18,48px);min-width:min-content;background:var(--bg-card);border-radius:16px;border:1px solid var(--border-subtle);overflow:hidden;box-shadow:var(--shadow-soft)}.timeline-time-col{grid-column:1;grid-row:1 / -1;display:grid;grid-template-rows:subgrid;grid-template-columns:1fr;border-right:1px solid var(--border-subtle)}.timeline-time-header-spacer{grid-row:1;border-bottom:1px solid var(--border-subtle)}.timeline-time-slot{border-bottom:1px solid var(--border-subtle);display:flex;align-items:flex-start;padding:2px 8px 0 0;justify-content:flex-end}.timeline-time-label{font-size:.7rem;color:var(--text-muted)}.timeline-days-container{grid-column:2 / -1;grid-row:1 / -1;display:grid;grid-template-columns:subgrid;grid-template-rows:subgrid;min-width:0}.timeline-day-col{display:grid;grid-template-rows:subgrid;grid-template-columns:1fr;grid-row:1 / -1;border-right:1px solid var(--border-subtle);position:relative;min-width:0}.timeline-day-col:last-child{border-right:none}.timeline-day-col.today{background:#8b5cf60a}.timeline-day-col.day-disabled{background-color:#f1f1f1;opacity:.65;pointer-events:none;filter:grayscale(1);cursor:not-allowed}.timeline-day-header{grid-row:1;padding:.75rem;text-align:center;border-bottom:1px solid var(--border-subtle);background:var(--bg-card-muted)}.timeline-day-col.today .timeline-day-header{background:var(--accent-soft);color:var(--accent);font-weight:600}.timeline-day-name{display:block;font-size:.7rem;color:var(--text-muted);text-transform:uppercase}.timeline-day-col.today .timeline-day-name{color:var(--accent)}.timeline-day-num{display:block;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.timeline-day-slots{grid-row:2 / -1;display:grid;grid-template-rows:subgrid;grid-template-columns:1fr;position:relative;min-height:864px}.timeline-slot{border-bottom:1px solid var(--border-subtle);cursor:pointer;transition:background .15s;min-height:48px}.timeline-slot:hover{background:var(--accent-soft)}.timeline-day-bookings{grid-column:1;grid-row:1 / -1;position:absolute;top:0;left:0;right:0;bottom:0;z-index:2;padding:0 3px;pointer-events:none;box-sizing:border-box;overflow:hidden}.timeline-day-bookings>*{pointer-events:auto}.timeline-booking{position:absolute;left:0;right:0;padding:4px 8px;border-radius:6px;box-sizing:border-box;cursor:pointer;overflow:hidden;display:flex;flex-direction:column;gap:2px;transition:transform .15s,box-shadow .15s}.timeline-booking:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.timeline-booking.status-confirmed{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:1px solid rgba(0,0,0,.1)}.timeline-booking.status-pending{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:1px solid rgba(0,0,0,.1)}.timeline-booking.status-cancelled{background:var(--bg-card-muted);color:var(--text-muted);border:1px dashed var(--border-strong);opacity:.8}.timeline-booking.status-completed{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border:1px solid rgba(0,0,0,.1)}.timeline-booking.status-no_show{background:var(--bg-card-muted);color:var(--text-secondary);border:1px solid var(--border-strong)}.timeline-booking.cluster-bar{color:#fff;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;text-align:center}.timeline-booking.cluster-bar.status-mixed{background:linear-gradient(135deg,#4b5563,#1f2937);border:1px dashed rgba(255,255,255,.4)}.timeline-booking-count{font-size:.75rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 4px}.timeline-booking-time{font-size:.65rem;opacity:.95}.timeline-booking-name{font-size:.8rem;font-weight:600;line-height:1.2}.timeline-booking-resource{color:#ffffffd9;font-weight:800;text-transform:uppercase;font-size:.7rem}.timeline-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff9;display:flex;align-items:center;justify-content:center;border-radius:16px}.timeline-spinner{width:40px;height:40px;border:3px solid var(--border-subtle);border-top-color:var(--accent);border-radius:50%;animation:timeline-spin .8s linear infinite}@keyframes timeline-spin{to{transform:rotate(360deg)}}.timeline-no-bookings{text-align:center;padding:3rem 2rem;color:var(--text-muted)}.timeline-no-bookings svg{margin-bottom:1rem;opacity:.5}.timeline-no-bookings p{margin:0 0 1rem}.timeline-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:var(--text-muted)}.timeline-empty-state svg{margin-bottom:1.5rem;opacity:.5}.timeline-empty-state h2{margin:0 0 .5rem;color:var(--text-primary);font-size:1.25rem}.timeline-empty-state p{margin:0 0 1.5rem;max-width:320px}.timeline-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.timeline-modal{background:var(--bg-card);border-radius:16px;width:100%;max-width:420px;box-shadow:0 24px 48px #0003;border:1px solid var(--border-subtle)}.timeline-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-subtle)}.timeline-modal-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.timeline-modal-close{width:36px;height:36px;border-radius:8px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.timeline-modal-close:hover{background:var(--bg-card-muted);color:var(--text-primary)}.timeline-modal-body{padding:1.5rem}.timeline-detail-row{display:flex;flex-direction:column;gap:.25rem;margin-bottom:1rem}.timeline-detail-row:last-child{margin-bottom:0}.timeline-detail-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.timeline-detail-phone{display:inline-flex;align-items:center;gap:.5rem;color:var(--accent);text-decoration:none;font-weight:500}.timeline-detail-phone:hover{text-decoration:underline}.timeline-status-badge{display:inline-block;padding:.25rem .75rem;border-radius:99px;font-size:.75rem;font-weight:600;text-transform:capitalize}.timeline-status-badge.status-confirmed{background:#10b98126;color:#10b981}.timeline-status-badge.status-pending{background:#f59e0b26;color:#f59e0b}.timeline-status-badge.status-cancelled{background:#ef444426;color:#ef4444}.timeline-status-badge.status-completed{background:#6366f126;color:#6366f1}.timeline-modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-subtle);background:var(--bg-card-muted);border-radius:0 0 16px 16px}.timeline-modal-footer .timeline-btn-secondary{flex:1;justify-content:center}.timeline-create-modal{max-width:440px}.timeline-create-form{padding:1.5rem}.timeline-form-error{padding:.75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;border-radius:8px;font-size:.875rem;margin-bottom:1rem}.timeline-form-group{margin-bottom:1rem}.timeline-form-group label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.timeline-form-group input{width:100%;padding:.65rem 1rem;border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--text-primary);font-size:.95rem}.timeline-form-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.timeline-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.timeline-create-form .timeline-modal-footer{margin:0 -1.5rem -1.5rem;padding:1rem 1.5rem;border-radius:0 0 16px 16px}.bookings-timeline-embed{display:flex;flex-direction:column;gap:1rem}.bookings-timeline-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:0;row-gap:.75rem;padding:1rem 1.25rem;background:var(--bg-card);border-radius:12px;border:1px solid var(--border-subtle)}.bookings-timeline-main{flex:1;min-height:400px;position:relative;background:var(--bg-card);border-radius:16px;border:1px solid var(--border-subtle);overflow:visible}.timeline-cluster-popover{position:absolute;top:10%;left:10%;right:10%;z-index:100;background:var(--bg-card);border:1px solid var(--border-strong);border-radius:12px;box-shadow:0 10px 25px #0000004d;animation:popover-fade-in .2s ease-out;pointer-events:auto}@keyframes popover-fade-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.cluster-popover-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle);background:var(--bg-card-muted);border-radius:12px 12px 0 0}.cluster-popover-header span{font-size:.85rem;font-weight:700;color:var(--text-primary)}.cluster-popover-header button{background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;padding:2px}.cluster-popover-list{max-height:300px;overflow-y:auto}.cluster-popover-item{padding:.75rem 1rem;border-bottom:1px solid var(--border-subtle);display:grid;grid-template-columns:80px 1fr 60px;gap:.5rem;align-items:center;cursor:pointer;transition:background .2s}.cluster-popover-item:last-child{border-bottom:none}.cluster-popover-item:hover{background:var(--accent-soft)}.popover-item-resource{font-size:.75rem;font-weight:800;color:var(--accent);text-transform:uppercase}.popover-item-name{font-size:.85rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.popover-item-time{font-size:.75rem;color:var(--text-muted);text-align:right}.bookings-page{padding:24px;background-color:var(--bg-body);min-height:100vh;display:flex;flex-direction:column;gap:24px;color:var(--text-primary)}.bookings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.bookings-header h1{font-size:1.875rem;font-weight:700;color:var(--text-primary);letter-spacing:-.025em;margin:0}.custom-service-selector{width:auto;min-width:220px}.custom-service-selector .service-dropdown-trigger{background:var(--accent);color:#fff;border:1px solid var(--accent-hover);padding:0 16px;height:48px;border-radius:12px;box-shadow:0 4px 12px var(--accent-soft)}.custom-service-selector .service-dropdown-trigger:hover{background:var(--accent-hover)}.custom-service-selector .selected-service-name{font-size:15px;font-weight:700}.custom-service-selector .service-dropdown-menu{background:var(--bg-card);border:1px solid var(--border-strong);box-shadow:0 10px 25px #0000001a;margin-top:8px;border-radius:12px}.custom-service-selector .service-option{color:var(--text-primary);border-bottom:1px solid var(--border-subtle);font-weight:500}.custom-service-selector .service-option:hover{background:var(--bg-card-muted)}.custom-service-selector .service-option.selected{background:var(--accent-soft);color:var(--accent);font-weight:700}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.metric-card{background:var(--bg-card);border-radius:16px;padding:24px;display:flex;align-items:flex-start;justify-content:space-between;box-shadow:0 2px 4px #00000005,0 8px 16px #0000000a;transition:transform .2s ease,box-shadow .2s ease;position:relative;overflow:hidden;border:1px solid var(--border-subtle)}.metric-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}.metric-content{display:flex;flex-direction:column;gap:8px;z-index:2}.metric-value{font-size:36px;font-weight:700;color:var(--text-primary);line-height:1.1;letter-spacing:-.02em}.metric-label{font-size:14px;font-weight:500;color:var(--text-secondary);letter-spacing:.01em}.metric-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;z-index:2}.metric-card.confirmed .metric-icon-wrapper{background:linear-gradient(135deg,#f0fdf480,#dcfce780);color:#16a34a}.metric-card.cancelled .metric-icon-wrapper{background:linear-gradient(135deg,#fef2f280,#fee2e280);color:#dc2626}.metric-card.no-show .metric-icon-wrapper{background:linear-gradient(135deg,#fff7ed80,#ffedd580);color:#ca8a04}:root[data-theme=dark] .metric-card.confirmed .metric-icon-wrapper{background:#16a34a26;color:#4ade80}:root[data-theme=dark] .metric-card.cancelled .metric-icon-wrapper{background:#dc262626;color:#f87171}:root[data-theme=dark] .metric-card.no-show .metric-icon-wrapper{background:#ca8a0426;color:#facc15}.bookings-toolbar{background:var(--bg-card);padding:16px 20px;border-radius:16px;display:flex;flex-wrap:wrap;gap:16px;align-items:center;border:1px solid var(--border-subtle);box-shadow:0 1px 2px #0000000a}.bookings-view-toggle{display:flex;gap:0;border-radius:10px;overflow:hidden;border:1px solid var(--border-subtle)}.bookings-view-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-card-muted);border:none;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.bookings-view-btn:first-child{border-right:1px solid var(--border-subtle)}.bookings-view-btn:hover{background:var(--bg-card);color:var(--text-primary)}.bookings-view-btn.active{background:var(--accent);color:#fff}.bookings-view-btn.active:hover{background:var(--accent-hover);color:#fff}.search-wrapper{position:relative;flex:1;min-width:280px}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:16px;pointer-events:none}.search-input{width:100%;padding:12px 14px 12px 42px;border:1px solid var(--input-border);border-radius:10px;font-size:14px;color:var(--text-primary);transition:all .2s ease;background:var(--bg-body)}.search-input:focus{outline:none;border-color:var(--accent);background:var(--input-bg);box-shadow:0 0 0 3px var(--accent-soft)}.filters-group{display:flex;gap:12px;flex-wrap:wrap}.filter-wrapper{position:relative;min-width:160px}.filter-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:14px;pointer-events:none}.filter-select,.filter-date{width:100%;padding:10px 12px 10px 36px;border:1px solid var(--input-border);border-radius:10px;font-size:14px;color:var(--text-primary);background:var(--input-bg);cursor:pointer;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:42px}.filter-select:hover,.filter-date:hover{border-color:var(--border-strong)}.filter-select:focus,.filter-date:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.bookings-button-secondary{padding:10px 18px;background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);font-weight:600;border-radius:10px;transition:all .2s ease;height:42px;display:flex;align-items:center;gap:8px;cursor:pointer}.bookings-button-secondary:hover{background:var(--bg-canvas);color:var(--text-primary);border-color:var(--border-strong)}.bookings-button-danger{padding:6px 12px;background:#ef44441a;color:#ef4444;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.bookings-button-danger:hover{background:#ef444433;color:#dc2626}.reservations-section{background:var(--bg-card);border-radius:16px;box-shadow:0 1px 2px #0000000a;padding:20px;flex:1;display:flex;flex-direction:column;min-height:0;border:1px solid var(--border-subtle)}.table-container{overflow:auto;border-radius:8px;border:1px solid var(--border-subtle)}.reservations-table{width:100%;border-collapse:separate;border-spacing:0}.reservations-table thead{background:var(--bg-card-muted);position:sticky;top:0;z-index:10}.reservations-table th{padding:14px 16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-subtle);white-space:nowrap}.reservations-table tbody tr{transition:background-color .15s ease;background:var(--bg-card)}.reservations-table tbody tr:hover{background:var(--bg-card-muted)}.reservations-table td{padding:16px;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--border-subtle);vertical-align:middle}.reservations-table tbody tr:last-child td{border-bottom:none}.reservations-table td:first-child{font-family:Geist Mono,Roboto Mono,monospace;font-size:13px;color:var(--text-muted)}.status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap}.status-badge.pending{background:#fff7ed;color:#c2410c;border:1px solid #ffedd5}.status-badge.verified,.status-badge.confirmed{background:#f0fdf4;color:#15803d;border:1px solid #dcfce7}.status-badge.cancelled{background:#fef2f2;color:#b91c1c;border:1px solid #fee2e2}.status-badge.completed{background:var(--bg-canvas);color:var(--text-secondary);border:1px solid var(--border-subtle)}.status-badge.on-going,.status-badge.no-show{background:#eff6ff;color:#1d4ed8;border:1px solid #dbeafe}.status-select-badge{display:inline-flex;align-items:center;padding:4px 24px 4px 10px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;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 6px center;background-repeat:no-repeat;background-size:1rem;outline:none;transition:all .2s ease}.status-select-badge:focus{box-shadow:0 0 0 2px var(--accent-soft)}.status-select-badge.pending{background-color:#fff7ed;color:#c2410c;border:1px solid #ffedd5}.status-select-badge.verified,.status-select-badge.confirmed{background-color:#f0fdf4;color:#15803d;border:1px solid #dcfce7}.status-select-badge.cancelled{background-color:#fef2f2;color:#b91c1c;border:1px solid #fee2e2}.status-select-badge.completed{background-color:var(--bg-canvas);color:var(--text-secondary);border:1px solid var(--border-subtle)}.status-select-badge.on-going,.status-select-badge.no-show{background-color:#eff6ff;color:#1d4ed8;border:1px solid #dbeafe}:root[data-theme=dark] .status-select-badge.pending{background-color:#fff7ed1a;color:#fb923c;border-color:#ffedd51a}:root[data-theme=dark] .status-select-badge.verified,:root[data-theme=dark] .status-select-badge.confirmed{background-color:#f0fdf41a;color:#4ade80;border-color:#dcfce71a}:root[data-theme=dark] .status-select-badge.cancelled{background-color:#fef2f21a;color:#f87171;border-color:#fee2e21a}:root[data-theme=dark] .status-select-badge.on-going,:root[data-theme=dark] .status-select-badge.no-show{background-color:#eff6ff1a;color:#60a5fa;border-color:#dbeafe1a}:root[data-theme=dark] .status-badge.pending{background:#fff7ed1a;color:#fb923c;border-color:#ffedd51a}:root[data-theme=dark] .status-badge.verified,:root[data-theme=dark] .status-badge.confirmed{background:#f0fdf41a;color:#4ade80;border-color:#dcfce71a}:root[data-theme=dark] .status-badge.cancelled{background:#fef2f21a;color:#f87171;border-color:#fee2e21a}:root[data-theme=dark] .status-badge.on-going,:root[data-theme=dark] .status-badge.no-show{background:#eff6ff1a;color:#60a5fa;border-color:#dbeafe1a}.pagination-controls{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-subtle);display:flex;justify-content:flex-end;align-items:center;gap:12px}.pagination-controls span{font-size:13px;color:var(--text-secondary);font-weight:500}.bookings-table-empty{text-align:center;padding:48px;color:var(--text-muted);font-size:14px}.bookings-message{text-align:center;padding:32px;background:var(--bg-card);border-radius:12px;color:var(--text-primary);box-shadow:0 1px 2px #0000000a}@media(max-width:768px){.bookings-page{padding:16px}.bookings-toolbar{flex-direction:column;align-items:stretch}.search-wrapper{min-width:0}.filters-group{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.filter-wrapper{flex:1;min-width:140px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s cubic-bezier(.16,1,.3,1)}.modal-content{background:var(--bg-card);border-radius:20px;padding:32px;max-width:440px;width:90%;box-shadow:0 20px 60px #0006;position:relative;animation:slideUp .3s cubic-bezier(.34,1.56,.64,1);border:1px solid var(--border-subtle)}@keyframes slideUp{0%{transform:translateY(24px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal-close{position:absolute;top:20px;right:20px;background:transparent;border:none;color:var(--text-muted);font-size:18px;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.modal-title{font-size:1.375rem;font-weight:700;color:var(--text-primary);margin:0 0 12px;letter-spacing:-.02em}.modal-message{font-size:.975rem;color:var(--text-secondary);margin:0;line-height:1.6}.confirm-modal{text-align:center;padding:40px 32px 32px}.confirm-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px;font-size:32px;box-shadow:0 8px 24px #0000000d}.confirm-icon-purple{background:var(--accent-soft);color:var(--accent);border:1.5px solid rgba(139,92,246,.35)}.confirm-modal-actions{display:flex;gap:12px;justify-content:center;margin-top:28px}.confirm-button{padding:12px 24px;border:none;border-radius:12px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);min-width:120px;display:inline-flex;align-items:center;justify-content:center}.confirm-button-cancel:hover{background:var(--bg-card);border-color:var(--accent);transform:translateY(-1px)}.confirm-button-info{background:var(--accent);color:#fff;box-shadow:0 4px 12px var(--accent-soft)}.confirm-button-info:hover{background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 6px 16px var(--accent-soft)}.confirm-button-info:active{transform:translateY(0)}.theme-toggle-container{display:flex;align-items:center;justify-content:center}.theme-toggle-circular{width:40px;height:40px;border-radius:50%;border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;padding:0;box-shadow:var(--shadow-soft)}.theme-toggle-circular:hover{background:var(--bg-card-muted);transform:scale(1.05);border-color:var(--accent);color:var(--accent)}.theme-toggle-circular:active{transform:scale(.95)}.theme-icon-circular{transition:transform .3s ease}.theme-toggle-circular svg{stroke:currentColor}.settings{padding:40px;max-width:1200px;margin:0 auto}.settings-header{margin-bottom:36px}.settings-header h1{font-size:36px;font-weight:700;color:var(--text-primary);margin:0 0 8px;letter-spacing:-.5px}.settings-header p{font-size:17px;color:var(--text-muted);margin:0}.settings-header .organisation-name{font-size:15px;color:var(--text-secondary);margin-top:.5rem}.settings-tabs-container{display:flex;flex-direction:column;gap:0}.settings-tabs{display:flex;gap:8px;border-bottom:2px solid var(--border-subtle);margin-bottom:32px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.settings-tabs::-webkit-scrollbar{display:none}.settings-tab{display:flex;align-items:center;gap:10px;padding:16px 24px;border:none;background:transparent;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:15px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;position:relative;font-family:inherit;margin-bottom:-2px}.settings-tab:hover{color:var(--text-primary);background:var(--bg-card-muted)}.settings-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.settings-tab-icon{font-size:18px;width:20px;display:flex;align-items:center;justify-content:center}.settings-tab-label{font-size:15px}.settings-tab-content{display:flex;flex-direction:column;gap:24px}.settings-tab-header{margin-bottom:8px}.settings-tab-header h2{font-size:28px;font-weight:700;color:var(--text-primary);margin:0 0 8px;letter-spacing:-.3px}.settings-tab-header p{font-size:16px;color:var(--text-muted);margin:0}.settings-tab-body{display:flex;flex-direction:column;gap:24px}.settings-column{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;align-items:start}.settings-column-header{display:none}.settings-card{background:var(--bg-card);padding:24px;border-radius:16px;box-shadow:var(--shadow-soft);border:1px solid var(--border-subtle);transition:all .2s ease}.settings-card:hover{border-color:var(--accent);box-shadow:0 8px 24px #8b5cf626}.settings-card h3{margin:0 0 20px;font-size:18px;font-weight:700;color:var(--text-primary)}.settings-form-inline{display:flex;flex-direction:column;gap:20px}.alert{padding:1rem 1.25rem;border-radius:12px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;font-size:15px;font-weight:500;border:1px solid;transition:all .2s ease}.alert-error{background-color:#ef44441a;color:#dc2626;border-color:#ef444433}.alert-success{background-color:#22c55e1a;color:#16a34a;border-color:#22c55e33}.alert-warning{background-color:#fbbf241a;color:#ca8a04;border-color:#fbbf2433}.event-selector-card{background:var(--bg-card);padding:1.5rem;border-radius:16px;margin-bottom:1.5rem;border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft);transition:all .2s ease}.event-selector-card:hover{border-color:var(--accent);box-shadow:0 8px 24px #8b5cf626}.event-selector-label{display:block;margin-bottom:.75rem;font-weight:600;color:var(--text-secondary);font-size:15px}:root[data-theme=dark] .event-selector-label{color:var(--text-secondary)}.event-selector-select{width:100%;padding:.75rem 1rem;border:1px solid var(--input-border);border-radius:8px;font-size:15px;background:var(--input-bg);color:var(--text-primary);cursor:pointer;transition:all .2s ease}:root[data-theme=dark] .event-selector-select{background:var(--bg-card-muted);border-color:var(--border-subtle);color:var(--text-primary)}:root[data-theme=dark] .event-selector-select:focus{background:var(--bg-card-muted);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.event-selector-select:hover{border-color:var(--accent)}.event-selector-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.settings-form{background:var(--bg-card);padding:2.5rem;border-radius:20px;box-shadow:var(--shadow-soft);border:1px solid var(--border-subtle)}.form-group,.settings-form-inline .form-group{margin-bottom:0}.form-group-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-secondary);font-size:15px}:root[data-theme=dark] .form-label{color:var(--text-secondary)}.form-label-required:after{content:" *";color:#ef4444}.form-input,.form-select,.form-textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--input-border);border-radius:8px;font-size:15px;background:var(--input-bg);color:var(--text-primary);transition:all .2s ease;font-family:inherit}:root[data-theme=dark] .form-input,:root[data-theme=dark] .form-select,:root[data-theme=dark] .form-textarea{background:var(--bg-card-muted);border-color:var(--border-subtle);color:var(--text-primary)}:root[data-theme=dark] .form-input:focus,:root[data-theme=dark] .form-select:focus,:root[data-theme=dark] .form-textarea:focus{background:var(--bg-card-muted);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-radio-group{display:flex;gap:1.5rem;flex-wrap:wrap}.form-radio-label{display:flex;align-items:center;cursor:pointer;font-size:15px;color:var(--text-primary);font-weight:500;padding:.5rem 0;transition:color .2s ease}.form-radio-label:hover{color:var(--accent)}.form-radio-input{margin-right:.5rem;width:18px;height:18px;cursor:pointer;accent-color:var(--accent);background-color:var(--bg-card);border:2px solid var(--border-subtle);-moz-appearance:none;appearance:none;-webkit-appearance:none;border-radius:50%;position:relative;transition:all .2s ease}.form-radio-input:checked{border-color:var(--accent);background-color:var(--bg-card)}.form-radio-input:checked:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background-color:var(--accent)}.form-radio-input:hover{border-color:var(--accent)}:root[data-theme=dark] .form-radio-input{background-color:var(--bg-card-muted);border-color:var(--border-strong)}:root[data-theme=dark] .form-radio-input:checked{border-color:var(--accent);background-color:var(--bg-card-muted)}:root[data-theme=dark] .form-radio-input:hover{border-color:var(--accent)}:root[data-theme=dark] .form-radio-label{color:var(--text-primary)}.form-help-text{font-size:14px;color:var(--text-muted);margin-top:.5rem;line-height:1.5}.section-card{margin-bottom:1.5rem;padding:1.5rem;background:var(--bg-card-muted);border-radius:12px;border:1px solid var(--border-subtle)}.section-card h3{margin:0 0 1rem;font-size:18px;font-weight:700;color:var(--text-primary)}.date-grid,.checkbox-grid{display:flex;flex-wrap:wrap;gap:.75rem;max-height:200px;overflow-y:auto;padding:.5rem;border-radius:8px;background:var(--bg-card)}.checkbox-item{display:flex;align-items:center;padding:.625rem 1rem;border:2px solid var(--border-subtle);border-radius:8px;background:var(--bg-card);cursor:pointer;transition:all .2s ease;font-size:14px;color:var(--text-primary);font-weight:500}.checkbox-item:hover{border-color:var(--accent);background:var(--accent-soft)}.checkbox-item.checked{border-color:#22c55e;background:#22c55e1a;color:#16a34a}.checkbox-item input[type=checkbox]{margin-right:.5rem;width:16px;height:16px;cursor:pointer;accent-color:#22c55e}.form-submit-button{padding:.875rem 2rem;background:var(--accent);color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #8b5cf64d;min-width:140px}.form-submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf666}.form-submit-button:active:not(:disabled){transform:translateY(0)}.form-submit-button:disabled{opacity:.6;cursor:not-allowed;background:var(--text-muted);box-shadow:none}.settings-loading{text-align:center;padding:3rem;color:var(--text-muted);font-size:16px}.user-info-display{margin-bottom:20px;padding:16px;background:var(--bg-card-muted);border-radius:12px;border:1px solid var(--border-subtle)}.info-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:15px}.info-row:not(:last-child){border-bottom:1px solid var(--border-subtle)}.info-label{font-weight:600;color:var(--text-secondary)}.info-value{color:var(--text-primary);font-weight:500}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize;letter-spacing:.3px}.status-pending{background-color:#fbbf2426;color:#ca8a04;border:1px solid rgba(251,191,36,.3)}.status-approved{background-color:#22c55e26;color:#16a34a;border:1px solid rgba(34,197,94,.3)}.status-rejected{background-color:#ef444426;color:#dc2626;border:1px solid rgba(239,68,68,.3)}.team-section-divider{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid var(--border-subtle)}.team-section-divider:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.team-section-divider h4{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 20px}.icon-button{background:transparent;border:1px solid var(--border-subtle);color:var(--text-secondary);cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.icon-button:hover{background:var(--bg-card-muted);border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.users-list{display:flex;flex-direction:column;gap:12px}.user-item{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;background:var(--bg-card-muted);border-radius:12px;border:1px solid var(--border-subtle);transition:all .2s ease}.user-item:hover{border-color:var(--accent);background:var(--bg-card)}.user-item-info{flex:1;display:flex;flex-direction:column;gap:6px}.user-item-name{font-size:16px;font-weight:600;color:var(--text-primary)}.user-item-email{font-size:14px;color:var(--text-secondary)}.user-item-meta{display:flex;align-items:center;gap:12px;margin-top:4px}.user-item-role{font-size:13px;color:var(--text-muted);text-transform:capitalize;padding:2px 8px;background:var(--bg-card);border-radius:6px}.user-item-reason{font-size:13px;color:var(--text-muted);font-style:italic;margin-top:4px}.user-item-actions{display:flex;gap:8px;align-items:center}.action-button{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.action-approve{background-color:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.3)}.action-approve:hover{background-color:#22c55e33;transform:translateY(-1px)}.action-reject{background-color:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.3)}.action-reject:hover{background-color:#ef444433;transform:translateY(-1px)}.action-delete{background-color:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.3)}.action-delete:hover{background-color:#ef444433;transform:translateY(-1px)}.action-delete:disabled{opacity:.5;cursor:not-allowed;transform:none}.users-list-compact{display:flex;flex-direction:column;gap:8px}.user-item-compact{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;transition:all .2s ease}.user-item-compact:hover{border-color:var(--accent);background:var(--bg-card-muted)}.user-item-compact-avatar{width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}.user-item-compact-info{flex:1;min-width:0}.user-item-compact-name{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.user-item-compact-email{font-size:13px;color:var(--text-secondary)}.user-item-compact-delete{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1px solid var(--border-subtle);border-radius:8px;color:#dc2626;cursor:pointer;transition:all .2s ease;flex-shrink:0}.user-item-compact-delete:hover:not(:disabled){background:#ef44441a;border-color:#dc2626;transform:translateY(-1px)}.user-item-compact-delete:disabled{opacity:.5;cursor:not-allowed}.user-item-compact-main-badge{padding:4px 10px;background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:6px;font-size:12px;font-weight:600;color:#ca8a04;white-space:nowrap;flex-shrink:0}.confirm-modal{text-align:center;max-width:420px}.confirm-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:32px}.confirm-icon-danger{background:#ef44441a;color:#dc2626;border:2px solid rgba(239,68,68,.3)}.confirm-icon-warning{background:#fbbf241a;color:#ca8a04;border:2px solid rgba(251,191,36,.3)}.confirm-icon-info{background:#3b82f61a;color:#2563eb;border:2px solid rgba(59,130,246,.3)}.confirm-modal-actions{display:flex;gap:12px;justify-content:center;margin-top:24px}.confirm-button{padding:12px 24px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:100px}.confirm-button-cancel{background:var(--bg-card-muted);color:var(--text-primary);border:1px solid var(--border-subtle)}.confirm-button-cancel:hover{background:var(--bg-card);border-color:var(--accent)}.confirm-button-danger{background:#dc2626;color:#fff}.confirm-button-danger:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.confirm-button-warning{background:#ca8a04;color:#fff}.confirm-button-warning:hover{background:#a16207;transform:translateY(-1px)}.confirm-button-info{background:#2563eb;color:#fff}.confirm-button-info:hover{background:#1d4ed8;transform:translateY(-1px)}.event-settings-container,.event-settings-form{display:flex;flex-direction:column;gap:24px;width:100%}.event-settings-grid{display:grid;grid-template-columns:1fr 2fr;gap:24px;width:100%}.event-settings-column{display:flex;flex-direction:column;gap:20px}.event-settings-form .form-submit-button{align-self:flex-start;margin-top:8px;margin-bottom:32px}@media(max-width:1024px){.settings-column,.event-settings-grid{grid-template-columns:1fr}}@media(max-width:768px){.settings{padding:24px}.settings-header h1{font-size:28px}.settings-tabs{gap:4px;margin-bottom:24px}.settings-tab{padding:12px 16px;font-size:14px}.settings-tab-icon{font-size:16px;width:18px}.settings-tab-label{font-size:14px}.settings-tab-header h2{font-size:24px}.settings-tab-header p{font-size:14px}.settings-column{grid-template-columns:1fr;gap:20px}.settings-form{padding:1.5rem}.form-group-grid{grid-template-columns:1fr;gap:1rem}.form-radio-group{flex-direction:column;gap:.75rem}.user-item{flex-direction:column;gap:12px}.user-item-actions{width:100%;justify-content:flex-end}.action-button{flex:1;justify-content:center}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-card);border-radius:20px;padding:32px;max-width:480px;width:90%;box-shadow:0 20px 60px #0000004d;position:relative;animation:slideUp .3s ease;border:1px solid var(--border-subtle)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:16px;right:16px;background:transparent;border:none;color:var(--text-muted);font-size:20px;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center;width:32px;height:32px}.modal-close:hover{background:var(--bg-card-muted);color:var(--text-primary)}.success-modal{text-align:center}.modal-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:32px}.success-icon{background:#22c55e1a;color:#16a34a;border:2px solid rgba(34,197,94,.3)}.modal-title{font-size:24px;font-weight:700;color:var(--text-primary);margin:0 0 12px;letter-spacing:-.3px}.modal-message{font-size:16px;color:var(--text-secondary);margin:0;line-height:1.6}@media(max-width:768px){.modal-content{padding:24px;max-width:90%}.modal-icon{width:56px;height:56px;font-size:28px}.modal-title{font-size:20px}.modal-message{font-size:15px}}.settings-card.danger-zone{background:var(--bg-card)}.settings-card.danger-zone:hover{box-shadow:0 8px 24px #0000001a}.settings-card.danger-zone.danger-zone-half-width{max-width:50%}.settings-card.danger-zone h3{color:#dc2626;margin-bottom:16px}.danger-zone-content{display:flex;flex-direction:column;gap:16px}.danger-zone-warning{display:flex;gap:12px;padding:16px;background:#ef44440d;border:1px solid rgba(239,68,68,.2);border-radius:12px;color:var(--text-primary)}.danger-zone-warning svg{color:#dc2626;font-size:20px;flex-shrink:0;margin-top:2px}.danger-zone-warning strong{display:block;color:#dc2626;font-size:16px;font-weight:600;margin-bottom:8px}.danger-zone-warning p{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.5}.danger-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;background:#dc2626;color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #dc26264d;align-self:flex-start}.danger-button:hover:not(:disabled){background:#b91c1c;transform:translateY(-2px);box-shadow:0 6px 20px #dc262666}.danger-button:active:not(:disabled){transform:translateY(0)}.danger-button:disabled{opacity:.6;cursor:not-allowed;background:var(--text-muted);box-shadow:none;transform:none}.danger-button svg{font-size:16px}.button-danger{padding:12px 24px;background:#dc2626;color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #dc26264d}.button-danger:hover:not(:disabled){background:#b91c1c;transform:translateY(-2px);box-shadow:0 6px 20px #dc262666}.button-danger:active:not(:disabled){transform:translateY(0)}.button-danger:disabled{opacity:.6;cursor:not-allowed;background:var(--text-muted);box-shadow:none;transform:none}.modal-warning{display:flex;gap:12px;padding:16px;background:#ef44440d;border:1px solid rgba(239,68,68,.2);border-radius:12px;color:var(--text-primary);margin-bottom:20px}.modal-warning svg{color:#dc2626;font-size:20px;flex-shrink:0;margin-top:2px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.button-secondary{padding:12px 24px;background:var(--bg-card-muted);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.button-secondary:hover:not(:disabled){background:var(--bg-canvas);border-color:var(--border-strong)}.button-secondary:disabled{opacity:.6;cursor:not-allowed}.occurrence-table-section{margin-top:24px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:20px}.occurrence-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.occurrence-table-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.occurrence-add-form{display:flex;gap:12px;align-items:flex-end;margin-bottom:16px;padding:16px;background:var(--bg-canvas);border-radius:8px;border:1px solid var(--border-subtle)}.occurrence-add-form .form-input{flex:1;max-width:200px}.occurrence-add-actions{display:flex;gap:8px}.occurrence-table-container{max-height:400px;overflow-y:auto;overflow-x:auto;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card)}.occurrence-table-container::-webkit-scrollbar{width:8px;height:8px}.occurrence-table-container::-webkit-scrollbar-track{background:var(--bg-canvas);border-radius:4px}.occurrence-table-container::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.occurrence-table-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.occurrence-table{width:100%;border-collapse:collapse;font-size:14px}.occurrence-table thead{position:sticky;top:0;background:var(--bg-card);z-index:10;box-shadow:0 2px 4px #0000000d}.occurrence-table th{padding:16px 20px;text-align:left;font-weight:600;color:var(--text-secondary);border-bottom:2px solid var(--border-strong);font-size:14px;background:var(--bg-card-muted);white-space:nowrap}.occurrence-table td{padding:16px 20px;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:middle}.occurrence-table tbody tr{transition:background-color .2s ease}.occurrence-table tbody tr:hover{background-color:var(--bg-canvas)}.occurrence-table tbody tr.has-override{background-color:#3b82f60d}.occurrence-table tbody tr.has-override:hover{background-color:#3b82f61a}.occurrence-table tbody tr.has-reservations{background-color:#ef44440d}.occurrence-table tbody tr.has-reservations:hover{background-color:#ef44441a}.occurrence-table tbody tr.is-past{opacity:.6;background-color:var(--bg-canvas)}.occurrence-table tbody tr.is-past:hover{background-color:var(--bg-canvas)}.occurrence-past-indicator{font-size:11px;color:var(--text-muted);font-style:italic;margin-left:8px}.occurrence-date{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--text-primary)}.occurrence-override-indicator{color:#3b82f6;font-size:12px;display:inline-flex;align-items:center}.occurrence-reservation-indicator{color:#ef4444;font-size:12px;display:inline-flex;align-items:center}.occurrence-time-input-wrapper{display:flex;align-items:center;gap:8px}.occurrence-time-input{padding:8px 12px;border:1px solid var(--border-subtle);border-radius:8px;font-size:14px;background:var(--bg-card-muted);color:var(--text-primary);min-width:100px;transition:all .2s ease}.occurrence-time-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f61a}.occurrence-time-input:disabled{opacity:.6;cursor:not-allowed;background:var(--bg-canvas)}.occurrence-reset-btn{padding:4px 8px;font-size:12px;background:var(--bg-card-muted);color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:4px;cursor:pointer;transition:all .2s ease}.occurrence-reset-btn:hover{background:var(--bg-canvas);color:var(--text-primary);border-color:var(--border-strong)}.occurrence-actions{display:flex;gap:8px;align-items:center}.occurrence-empty{text-align:center;padding:40px 20px;color:var(--text-muted);font-style:italic}.btn-sm{padding:6px 12px;font-size:13px}.btn-secondary{background:var(--bg-card-muted);color:var(--text-primary);border:1px solid var(--border-subtle)}.btn-secondary:hover:not(:disabled){background:var(--bg-canvas);border-color:var(--border-strong)}.btn-danger{background:#ef4444;color:#fff;border:1px solid #ef4444}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff;border:1px solid var(--primary)}.btn-primary:hover:not(:disabled){background:var(--primary-dark);border-color:var(--primary-dark)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.event-settings-form-fields{display:flex;flex-direction:column}.event-settings-grid{display:grid;grid-template-columns:1fr 2fr;gap:24px;align-items:start}.event-settings-column{display:flex;flex-direction:column;gap:0}.event-settings-column .form-group{margin-bottom:20px}.event-settings-column .section-card{margin-top:0;margin-bottom:20px}@media(max-width:768px){.occurrence-table-container{max-height:300px}.occurrence-table{font-size:12px}.occurrence-table th,.occurrence-table td{padding:8px 12px}.occurrence-time-input{min-width:80px;font-size:12px}.occurrence-add-form{flex-direction:column;align-items:stretch}.occurrence-add-form .form-input{max-width:100%}}.settings-page-wrapper{padding:40px;max-width:1600px;margin:0 auto;width:100%}.event-settings-wrapper{width:100%}.event-settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.event-settings-wide{grid-template-columns:1fr 2fr}@media(max-width:768px){.event-settings-wide{grid-template-columns:1fr}}.settings-card{height:100%;display:flex;flex-direction:column}.settings-card-content{flex:1}.danger-zone-card{margin-top:2rem;padding:1.5rem;border-radius:12px;background:var(--bg-card);border:1px solid rgba(239,68,68,.3);box-shadow:var(--shadow-soft)}:root[data-theme=dark] .danger-zone-card{background:var(--bg-card-muted);border-color:#ef444466}.danger-zone-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;color:#dc2626}.danger-zone-header h3{margin:0;font-size:1.1rem;font-weight:700;color:#dc2626}.danger-zone-description{color:var(--text-muted);margin-bottom:1.5rem;font-size:.95rem}.form-card-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-size:1.2rem;font-weight:600}.card-icon{color:var(--accent);font-size:1.4rem}.occurrence-list{display:flex;flex-direction:column;gap:.75rem;max-height:500px;overflow-y:auto;padding-right:.5rem}.occurrence-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:8px;transition:all .2s ease}.occurrence-item:hover{border-color:var(--accent);transform:translate(2px)}.occurrence-details{display:flex;flex-direction:column;gap:.25rem}.occurrence-date{font-weight:600;color:var(--text-primary)}.occurrence-time{font-size:.85rem;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem}.occurrence-actions{display:flex;gap:.5rem}.occurrence-empty-state{text-align:center;padding:2rem;color:var(--text-muted);background:var(--bg-card-muted);border-radius:8px;border:1px dashed var(--border-subtle)}.event-status-label{margin-left:1rem;padding:.25rem .75rem;border-radius:999px;font-size:.875rem;font-weight:600}.event-status-active{background-color:#22c55e1a;color:#16a34a}.event-status-archived{background-color:#ef44441a;color:#dc2626}.section-divider-top{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--border-subtle)}.danger-text-header{font-size:15px;font-weight:600;color:#dc2626;margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.help-text{font-size:14px;color:var(--text-muted);margin-bottom:1rem;line-height:1.5}.action-row-right{display:flex;gap:.75rem;align-items:center;justify-content:flex-end}.danger-button-small{background-color:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.3);padding:.5rem 1rem;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.danger-button-small:hover:not(:disabled){background-color:#ef444433}.secondary-button-small{background-color:var(--bg-card-muted);color:var(--text-secondary);border:1px solid var(--border-subtle);padding:.5rem 1rem;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease}.secondary-button-small:hover:not(:disabled){border-color:var(--text-muted)}.form-input,.form-select,.form-textarea{font-size:15px!important}body{font-size:15px}.layout-chatbot-fab{position:fixed;bottom:32px;right:32px;width:60px;height:60px;border-radius:20px;background:linear-gradient(135deg,var(--accent) 0%,#8b5cf6 100%);color:#fff;border:1px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #8b5cf666,0 4px 12px #0000001a,inset 0 1px 1px #ffffff4d;cursor:pointer;font-size:24px;display:flex;align-items:center;justify-content:center;z-index:1001;transition:all .4s cubic-bezier(.175,.885,.32,1.275);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.layout-chatbot-fab:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:22px;padding:2px;background:linear-gradient(135deg,#fff6,#fff0);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.layout-chatbot-fab svg{transition:transform .4s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.layout-chatbot-fab:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 36px #8b5cf680,0 6px 16px #00000026,inset 0 1px 1px #fff6}.layout-chatbot-fab:hover svg{transform:rotate(15deg) scale(1.1)}.layout-chatbot-fab:active{transform:translateY(0) scale(.95)}.layout-chatbot-fab--open{background:var(--bg-card);border-color:var(--border-subtle);color:var(--text-primary);box-shadow:var(--shadow-soft);transform:rotate(90deg);border-radius:50%}.layout-chatbot-fab--open:hover{background:var(--bg-hover);transform:rotate(90deg) scale(.95);box-shadow:var(--shadow-soft)}.layout-chatbot-window{position:fixed;bottom:110px;right:32px;width:400px;max-width:90vw;height:600px;max-height:75vh;background:#141419d9;background:var(--bg-card);border-radius:24px;box-shadow:0 20px 40px #0003,0 0 0 1px #ffffff0d;display:flex;flex-direction:column;z-index:1000;overflow:hidden;animation:chatbot-pop-in .4s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-subtle)}@supports (backdrop-filter: blur(16px)){.layout-chatbot-window{background:color-mix(in srgb,var(--bg-card) 85%,transparent);-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%)}}@keyframes chatbot-pop-in{0%{opacity:0;transform:translateY(40px) scale(.9);filter:blur(8px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.layout-chatbot-header{padding:20px;background:transparent;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-subtle);position:relative}.layout-chatbot-header:before{content:"";position:absolute;top:0;left:0;right:0;height:100%;background:linear-gradient(90deg,rgba(139,92,246,.1) 0%,rgba(139,92,246,.05) 50%,transparent 100%);z-index:-1;opacity:.8}.layout-chatbot-header-content{display:flex;align-items:center;gap:16px}.layout-chatbot-header-icon{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--accent) 0%,#7c3aed 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 12px #7c3aed4d}.layout-chatbot-close-button{width:32px;height:32px;border-radius:10px;background:transparent;border:1px solid transparent;color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.layout-chatbot-close-button:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-subtle)}.layout-chatbot-title{margin:0;font-size:16px;font-weight:600;letter-spacing:-.01em;color:var(--text-primary)}.layout-chatbot-subtitle{margin:2px 0 0;font-size:12px;color:var(--text-muted)}.layout-chatbot-messages{flex:1;overflow-y:auto;padding:24px 20px;display:flex;flex-direction:column;gap:20px;scroll-behavior:smooth}.layout-chatbot-messages::-webkit-scrollbar{width:6px}.layout-chatbot-messages::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:10px}.layout-chatbot-message{display:flex;flex-direction:column;align-items:flex-start;max-width:85%;animation:message-slide-up .3s ease-out backwards}@keyframes message-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.layout-chatbot-message--user{align-self:flex-end;align-items:flex-end}.layout-chatbot-message-content{padding:14px 18px;border-radius:18px;font-size:14px;line-height:1.5;position:relative;box-shadow:0 2px 8px #0000000d}.layout-chatbot-message--assistant .layout-chatbot-message-content{background:var(--bg-body);color:var(--text-primary);border:1px solid var(--border-subtle);border-top-left-radius:4px}.layout-chatbot-message--user .layout-chatbot-message-content{background:linear-gradient(135deg,var(--accent) 0%,#7c3aed 100%);color:#fff;border-top-right-radius:4px;box-shadow:0 4px 12px #7c3aed40;font-weight:500}.layout-chatbot-typing{display:flex;gap:6px;padding:4px 2px;align-items:center}.layout-chatbot-typing-dot{width:6px;height:6px;border-radius:50%;background:var(--text-muted);animation:typing-bounce 1.4s infinite ease-in-out both}.layout-chatbot-typing-dot:nth-child(1){animation-delay:-.32s}.layout-chatbot-typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typing-bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}.layout-chatbot-input-container{padding:16px 20px 24px;background:transparent;border-top:1px solid var(--border-subtle);position:relative}.layout-chatbot-input-wrapper{display:flex;gap:12px;align-items:center;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:16px;padding:6px 6px 6px 16px;transition:all .2s ease;box-shadow:inset 0 2px 4px #00000005}.layout-chatbot-input-wrapper:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft),inset 0 2px 4px #00000005;background:var(--bg-card)}.layout-chatbot-input{flex:1;background:transparent;border:none;font-size:14px;color:var(--text-primary);outline:none;font-family:inherit;min-height:24px}.layout-chatbot-input::placeholder{color:var(--text-muted)}.layout-chatbot-send-button{width:36px;height:36px;border-radius:12px;background:var(--accent);color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:16px}.layout-chatbot-send-button:disabled{background:var(--bg-hover);color:var(--text-disabled);cursor:default}.layout-chatbot-send-button:not(:disabled):hover{background:#7c3aed;transform:scale(1.05);box-shadow:0 4px 12px #7c3aed4d}.layout-chatbot-send-button:not(:disabled):active{transform:scale(.95)}@media(max-width:480px){.layout-chatbot-window{right:0;left:0;bottom:0;width:100vw;height:80vh;max-width:100vw;border-radius:20px 20px 0 0;border-bottom:none}.layout-chatbot-fab{bottom:24px;right:24px}}.number-stepper{display:flex;align-items:center;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;overflow:hidden;width:100%}.stepper-btn{display:flex;align-items:center;justify-content:center;width:28px;height:32px;background:transparent;border:none;color:var(--text-primary);cursor:pointer;transition:all .2s;padding:0;flex-shrink:0}.stepper-btn:hover:not(:disabled){background:#ffffff0d}.stepper-btn:active:not(:disabled){background:#ffffff1a}.stepper-btn:disabled{color:var(--text-muted);cursor:not-allowed;opacity:.5}.stepper-input{flex:1;min-width:0;height:32px;border:none;background:transparent;text-align:center;color:var(--text-primary);font-size:14px;font-weight:600;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.stepper-input::-webkit-outer-spin-button,.stepper-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stepper-input:focus{outline:none}.furniture-editor-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-main);z-index:9999;display:flex;flex-direction:column;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.editor-header{height:64px;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;padding:0 24px;flex-shrink:0}.editor-header-left{display:flex;align-items:center;gap:16px}.editor-header-left h2{margin:0;font-size:18px;font-weight:600;color:#1e293b}.btn-back{background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:8px;padding:8px;cursor:pointer;color:var(--text-primary);display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-back:hover{background:var(--border-subtle)}.editor-main{flex:1;display:flex;overflow:hidden;height:calc(100vh - 64px)}.editor-sidebar-left{width:140px;background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;padding:20px 12px;overflow-y:auto;gap:20px}.editor-sidebar-right{width:320px;background:#fff;border-left:1px solid #e2e8f0;display:flex;flex-direction:column;padding:16px;overflow-y:auto;gap:16px}.settings-group{display:flex;flex-direction:column;gap:8px}.settings-group-title{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:2px}.editor-canvas-area{flex:1;background:#f1f5f9;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;overflow:hidden;position:relative}.canvas-preview-wrapper{background:#fff;border-radius:16px;box-shadow:0 10px 25px -5px #0000000d,0 8px 10px -6px #0000000d;padding:24px;display:flex;flex-direction:column;align-items:center;gap:16px;width:700px;max-width:95%;border:1px solid rgba(255,255,255,.8)}.preview-svg-wrapper{width:100%;max-width:600px;height:400px;background:#fff;display:flex;align-items:center;justify-content:center;padding:0;overflow:hidden}.furniture-svg-main{width:380px;height:380px;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.custom-instructions{font-size:.8rem;color:var(--text-muted);text-align:center;min-height:20px;margin-top:4px}.modern-input-group{display:flex;flex-direction:column;gap:3px;margin-bottom:0;min-width:0;width:100%}.modern-input-group label{font-size:.8rem;font-weight:600;color:var(--text-primary)}.modern-input{background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:6px;padding:6px 10px;font-size:.85rem;color:var(--text-primary);transition:border-color .2s;width:100%;box-sizing:border-box;min-width:0}.modern-input:focus{outline:none;border-color:#2563eb}textarea.modern-input{min-height:80px;resize:none}.shape-grid-compact{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.shape-option-mini{background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:8px;padding:6px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;transition:all .2s}.shape-option-mini svg{width:32px;height:24px}.shape-option-mini.selected{border-color:#2563eb;background:#2563eb0d}.shape-name-mini{font-size:.75rem;font-weight:500}.color-presets-row{display:flex;flex-wrap:wrap;gap:8px}.color-swatch{width:24px;height:24px;border-radius:6px;cursor:pointer;border:2px solid transparent;transition:transform .1s}.color-swatch:hover{transform:scale(1.1)}.color-swatch.selected{border-color:#fff;box-shadow:0 0 0 2px #2563eb}.color-swatch-custom{width:24px;height:24px;border-radius:6px;background:var(--bg-card-muted);border:1px dashed var(--border-subtle);position:relative;display:flex;align-items:center;justify-content:center;cursor:pointer}.color-input-field{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2;border:none;padding:0;margin:0}.icon-picker-container{border:1px solid var(--border-subtle);border-radius:8px;background:#fff;overflow:hidden;margin-top:8px}.icon-search-wrapper{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-card-muted);border-bottom:1px solid var(--border-subtle)}.search-icon-mini{color:#94a3b8}.icon-search-input{flex:1;border:none;background:transparent;font-size:13px;color:var(--text-primary);padding:0}.icon-search-input:focus{outline:none}.clear-icon-mini{color:#94a3b8;cursor:pointer}.clear-icon-mini:hover{color:#64748b}.icon-grid-viewport{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:2px;padding:8px;max-height:180px;overflow-y:auto;overflow-x:hidden;width:100%;box-sizing:border-box}.icon-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 2px;border:1px solid transparent;border-radius:6px;background:transparent;cursor:pointer;transition:all .15s ease;color:#64748b;min-width:0}.icon-option:hover{background:#f1f5f9;color:#1e293b}.icon-option.selected{background:#f0f9ff;border-color:#0ea5e9;color:#0284c7}.icon-option span{font-size:9px;font-weight:500;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.preview-toolbar{display:flex;gap:8px;background:var(--bg-card-muted);padding:6px;border-radius:8px;align-self:center}.tool-divider{width:1px;background:var(--border-subtle);margin:0 4px}.tool-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:none;background:none;cursor:pointer;color:var(--text-muted);transition:all .2s}.tool-btn:hover:not(:disabled){background:var(--border-subtle);color:var(--text-primary)}.tool-btn.active{background:#2563eb;color:#fff}.tool-btn.danger{color:#ef4444}.tool-btn.danger:hover{background:#fee2e2}.tool-btn:disabled{opacity:.5;cursor:not-allowed}.checkbox-card{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .2s}.checkbox-card:hover{border-color:#2563eb}.checkbox-card span{font-size:.85rem;font-weight:500}.image-upload-preview{aspect-ratio:16/9;background:var(--bg-card-muted);border:2px dashed var(--border-subtle);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;overflow:hidden}.image-upload-preview img{width:100%;height:100%;object-fit:cover}.upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0006;opacity:0;display:flex;align-items:center;justify-content:center;color:#fff;transition:opacity .2s}.image-upload-preview:hover .upload-overlay{opacity:1}.category-badge{font-size:.65rem;font-weight:700;text-transform:uppercase;padding:2px 6px;border-radius:4px}.category-badge.table{background:#2563eb1a;color:#2563eb}.category-badge.resource{background:#10b9811a;color:#10b981}.category-badge.special{background:#f59e0b1a;color:#f59e0b}.btn-modern{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid transparent}.btn-modern.primary{background:#2563eb;color:#fff}.btn-modern.primary:hover{background:#1d4ed8}.btn-modern.primary:disabled{opacity:.6;cursor:not-allowed}.btn-modern.secondary{background:var(--bg-card-muted);border-color:var(--border-subtle);color:var(--text-primary)}.btn-modern.secondary:hover{background:var(--border-subtle)}.btn-modern.btn-danger{background:#dc26261a;color:#dc2626;border-color:#dc262633}.btn-modern.btn-danger:hover{background:#dc2626;color:#fff}.properties-panel{width:100%;box-sizing:border-box;overflow-x:hidden}.properties-panel .form-row{display:flex;gap:8px;min-width:0}.properties-panel .form-row>.modern-input-group.flex-1{flex:1 1 0;min-width:0;overflow:hidden}.bt-layout-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;width:100%;min-height:100vh;background:var(--bg-body);padding:20px;box-sizing:border-box}.bt-editor-header{display:flex;justify-content:space-between;align-items:center;background:var(--bg-card);padding:20px 30px;border-radius:12px;box-shadow:var(--shadow-soft);margin-bottom:20px}.bt-editor-header h1{margin:0;font-size:28px;font-weight:700;color:var(--text-primary)}.bt-editor-actions{display:flex;gap:12px}.bt-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit}.bt-btn-primary{background:var(--accent);color:#fff}.bt-btn-primary:hover:not(:disabled){background:var(--accent);opacity:.9}.bt-btn-primary:disabled{background:var(--text-muted);opacity:.6;cursor:not-allowed}.bt-btn-secondary{background:var(--bg-card-muted);color:var(--text-primary);border:1px solid var(--border-subtle)}.bt-btn-secondary:hover:not(:disabled){background:var(--bg-canvas);border-color:var(--border-strong)}.bt-btn-danger{background:#d32f2f;color:#fff}.bt-btn-danger:hover{background:#b71c1c}.bt-btn-small{padding:8px 16px;font-size:12px}.bt-editor-container{display:flex;gap:20px;height:100%}.resource-layout-editor-wrapper{height:100%;display:flex;flex-direction:column;overflow:hidden}.resource-layout-editor-toolbar-container{flex-shrink:0;padding:20px 20px 0;background:var(--bg-body)}.resource-layout-editor-content{flex:1;min-height:0;display:flex;gap:20px;overflow:hidden}.bt-toolbar{background:var(--bg-card);padding:14px 20px;border-radius:14px;margin-bottom:12px;display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-soft);width:100%;box-sizing:border-box;gap:16px;flex-shrink:0}.bt-toolbar-left{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px;min-width:0}.bt-toolbar-metrics{display:flex;gap:10px;align-items:baseline;font-size:13px}.bt-toolbar-metric{display:inline-flex;align-items:baseline;gap:4px;padding:4px 8px;border-radius:999px;background-color:var(--bg-card-muted);border:1px solid var(--border-subtle)}.bt-toolbar-metric-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.bt-toolbar-metric-value{font-weight:700;color:var(--accent)}.bt-toolbar-date-label{font-size:13px;color:var(--text-secondary);white-space:nowrap}.bt-toolbar-date-pills-container{display:flex;align-items:center;gap:8px}.bt-toolbar-date-pills{display:flex;gap:8px;align-items:center;padding:2px 0}.bt-toolbar-date-nav{padding:5px 8px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--bg-card);color:var(--text-primary);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;transition:background-color .15s ease,border-color .15s ease,transform .1s ease}.bt-toolbar-date-nav:hover:not(:disabled){background:var(--bg-canvas);border-color:var(--border-strong);transform:translateY(-1px)}.bt-toolbar-date-nav:disabled{opacity:.4;cursor:not-allowed;transform:none}.bt-toolbar-date-pill{padding:5px 10px;border-radius:999px;border:1px solid var(--border-subtle);background:transparent;color:var(--text-primary);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .1s ease}.bt-toolbar-date-pill:hover:not(:disabled){background-color:var(--bg-card-muted);transform:translateY(-1px)}.bt-toolbar-date-pill--active,.bt-toolbar-date-pill:disabled{background:var(--accent);color:#fff;border-color:var(--accent);cursor:default;transform:none}.bt-toolbar-right{display:flex;gap:16px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.bt-toolbar-actions{display:flex;gap:8px}.bt-toolbar-button{padding:10px 16px;border-radius:10px;border:1px solid transparent;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--text-primary);transition:all .2s ease;min-height:40px}.bt-toolbar-button-compact{padding:6px 12px;min-height:32px;font-size:13px;border-radius:8px;gap:6px}.bt-toolbar-button-primary{background:var(--accent);color:#fff;box-shadow:0 4px 12px #8b5cf64d}.bt-toolbar-button-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf666}.bt-toolbar-button-secondary{background:var(--bg-card-muted);color:var(--text-primary);border-color:var(--border-subtle)}.bt-toolbar-button-secondary:hover:not(:disabled){background:var(--bg-canvas);border-color:var(--border-strong);transform:translateY(-1px)}.bt-toolbar-button:disabled{cursor:not-allowed;opacity:.65;box-shadow:none;transform:none}.bt-toolbar-zoom{display:flex;gap:8px;align-items:center}.bt-toolbar-zoom-btn{padding:6px 10px;border-radius:999px;border:1px solid var(--border-subtle);background:var(--bg-card-muted);color:var(--text-primary);font-weight:600;font-size:13px;cursor:pointer;min-width:32px;text-align:center;transition:background-color .15s ease,border-color .15s ease,transform .1s ease}.bt-toolbar-zoom-btn:hover:not(:disabled){background:var(--bg-canvas);transform:translateY(-1px)}.bt-toolbar-zoom-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.bt-toolbar-zoom-label{font-size:13px;font-weight:600;min-width:52px;text-align:center;color:var(--text-secondary)}.bt-canvas-zoom-controls{position:absolute;bottom:20px;left:50%;transform:translate(-50%);z-index:10;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:999px;padding:8px 12px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;gap:8px}.bt-canvas-zoom-controls .bt-toolbar-zoom{margin:0}.bt-toolbar-zoom-reset{padding:6px 12px;border-radius:999px;border:1px dashed var(--border-subtle);background:transparent;color:var(--text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.bt-toolbar-zoom-reset:hover{background:var(--bg-card-muted);border-color:var(--accent);color:var(--accent)}.bt-resource-type-panel{width:320px;background:var(--bg-card);border-radius:12px;padding:20px;box-shadow:var(--shadow-soft);overflow-y:auto;display:flex;flex-direction:column;gap:20px}.bt-resource-type-panel h2{margin:0 0 16px;font-size:20px;font-weight:600;color:var(--text-primary)}.bt-resource-type-list{display:flex;flex-direction:column;gap:12px}.bt-resource-type-item{cursor:grab;transition:transform .2s}.bt-resource-type-item:active{cursor:grabbing}.bt-resource-type-item:hover{transform:translateY(-2px)}.bt-resource-type-preview{background:var(--bg-card-muted);border:2px solid var(--border-subtle);border-radius:8px;padding:16px;text-align:center;transition:all .2s}.bt-resource-type-preview:hover{border-color:#9370db;background:#9370db14}.bt-resource-type-label{font-weight:600;font-size:14px;color:var(--text-primary);margin-bottom:8px}.bt-resource-type-info{font-size:12px;color:var(--text-muted)}.bt-resource-properties{background:var(--bg-card-muted);border-radius:8px;padding:16px;margin-top:20px}.bt-resource-properties h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary)}.bt-property-group{margin-bottom:16px}.bt-property-group label{display:block;font-size:12px;font-weight:600;color:var(--text-muted);margin-bottom:6px}.bt-property-group input,.bt-property-group select{width:100%;padding:8px 12px;border:1px solid var(--input-border);border-radius:6px;font-size:14px;font-family:inherit;box-sizing:border-box}.bt-property-group input:focus,.bt-property-group select:focus{outline:none;border-color:#9370db}.bt-editor-info{margin-top:auto;padding-top:20px;border-top:1px solid var(--border-subtle);font-size:12px;color:var(--text-muted)}.bt-editor-info p{margin:0 0 8px}.bt-editor-info ul{margin:8px 0;padding-left:20px}.bt-editor-info li{margin-bottom:4px}.bt-resource-count{margin-top:12px;font-size:14px}.bt-editor-canvas-wrapper{flex:1;background:var(--bg-card);border-radius:12px;box-shadow:var(--shadow-soft);border:1px solid var(--border-subtle);overflow:hidden;position:relative}.bt-editor-canvas{width:3000px;height:2000px;min-width:3000px;min-height:2000px;background:#0f172a14;position:relative;overflow:auto}.bt-grid-tile{border:1px solid var(--border-subtle);background:#ffffff0f;box-sizing:border-box;pointer-events:none;transition:all .1s}.bt-grid-tile.bt-tile-occupied{background:#d32f2f33;border-color:#d32f2f66}.bt-grid-tile.bt-tile-hovered{background:#9370db4d;border-color:#9370db99;z-index:5}.bt-drag-preview{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#9370dbe6;color:#fff;padding:20px 40px;border-radius:12px;font-weight:600;font-size:18px;pointer-events:none;z-index:1000;box-shadow:0 4px 12px #0000004d}.bt-editor-canvas>div>div.bt-resource-visual{transition:all .2s}.bt-editor-canvas>div>div.bt-resource-visual:hover{transform:scale(1.05);z-index:10}@media(max-width:1024px){.bt-editor-container{flex-direction:column;height:auto}.bt-resource-type-panel{width:100%;max-height:300px}.bt-editor-canvas-wrapper{min-height:500px}}.bt-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1200;padding:16px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.bt-modal-content{background:var(--bg-card);border-radius:12px;box-shadow:0 12px 40px #00000038;width:100%;max-width:640px;max-height:90vh;display:flex;flex-direction:column;border:1px solid var(--border-subtle)}.bt-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-subtle)}.bt-modal-title{margin:0;font-size:18px;font-weight:700;color:var(--text-primary)}.bt-modal-close-button{border:none;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:18px;padding:6px;border-radius:6px}.bt-modal-close-button:hover{background:var(--bg-card-muted)}.bt-modal-form{padding:16px 20px 20px;display:flex;flex-direction:column;gap:16px}.bt-modal-error{background:#ef53501f;color:#d32f2f;padding:12px;border-radius:8px;border:1px solid rgba(239,83,80,.4);font-weight:600}.bt-form-group{display:flex;flex-direction:column;gap:6px}.bt-form-group label{font-weight:600;color:var(--text-primary)}.bt-form-input{width:100%;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-input, var(--bg-card));color:var(--text-primary);font-size:14px}.bt-form-input:focus{outline:2px solid rgba(147,112,219,.35);border-color:var(--accent)}.bt-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding-top:8px}.bt-modal-section{border:1px solid var(--border-subtle);border-radius:10px;padding:12px;background:var(--bg-card-muted)}.bt-modal-section-title{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--text-primary)}.floor-manager{background:var(--bg-card);border-radius:12px;padding:20px;box-shadow:var(--shadow-soft);max-height:400px;display:flex;flex-direction:column;margin-top:20px}.floor-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.floor-manager-header h3{margin:0;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px;color:var(--text-primary)}.floor-add-btn{background:var(--accent);color:#fff;border:none;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.floor-add-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.floor-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;flex:1;min-height:100px}.floor-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .2s}.floor-item:hover{background:var(--bg-canvas)}.floor-item.active{background:#9370db26;border-color:var(--accent)}.floor-name{font-weight:500;font-size:14px}.floor-actions{display:flex;gap:4px;opacity:.6;transition:opacity .2s}.floor-item:hover .floor-actions{opacity:1}.floor-action-btn{background:transparent;border:none;color:var(--text-secondary);padding:0;width:32px;height:32px;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s}.floor-action-btn:disabled{opacity:.3;cursor:not-allowed}.floor-action-btn:hover{background:#0000001a;color:var(--text-primary)}.floor-action-btn.delete:hover{color:#d32f2f;background:#d32f2f1a}.floor-action-btn.confirm{color:#4caf50}.floor-action-btn.cancel{color:#f44336}.floor-edit-input{display:flex;gap:6px;width:100%}.floor-edit-input input{flex:1;padding:4px 8px;border:1px solid var(--accent);border-radius:4px;font-size:14px;background:var(--bg-input);color:var(--text-primary);width:auto}.floor-empty-state{text-align:center;padding:20px 0;color:var(--text-muted);font-size:13px}.floor-empty-state a{color:var(--accent);cursor:pointer;text-decoration:underline}.floor-manager.toolbar{background:transparent;box-shadow:none;border:none;margin:0;padding:0;display:flex;flex-direction:row;align-items:center;gap:8px;max-width:none;max-height:none}.floor-manager.toolbar .floor-manager-header{margin:0}.floor-manager.toolbar .floor-list{flex-direction:row;overflow-y:hidden;overflow-x:auto;min-height:auto;flex:0 1 auto}.floor-manager.toolbar .floor-item{flex-direction:row;padding:4px 10px;white-space:nowrap;border-radius:20px;background:var(--bg-card-muted);border:1px solid var(--border-subtle);font-size:13px}.floor-manager.toolbar .floor-item.active{background:var(--accent);color:#fff;border-color:var(--accent)}.floor-manager.toolbar .floor-item.active .floor-name{color:#fff}.floor-manager.toolbar .floor-item.active .floor-action-btn{color:#fffc}.floor-manager.toolbar .floor-item.active .floor-action-btn:hover{background:#fff3;color:#fff}.floor-manager.toolbar .floor-empty-state{display:flex;gap:8px;align-items:center;font-size:13px;padding:0 8px}.floor-manager.toolbar .floor-add-btn{width:24px;height:24px}.floor-manager.canvas-overlay{position:absolute;bottom:24px;left:24px;background:transparent;box-shadow:none;padding:0;border-radius:0;z-index:20;margin:0;min-width:140px;border:none;max-height:none}.floor-manager.canvas-overlay .floor-manager-header{display:none}.floor-manager.canvas-overlay .floor-list{display:flex;flex-direction:column-reverse;gap:10px;overflow:visible;max-height:none;min-height:0;align-items:flex-start}.floor-manager.canvas-overlay .floor-item{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-secondary);padding:12px 16px;border-radius:12px;width:140px;height:48px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:flex-start;font-weight:500;position:relative;box-shadow:var(--shadow-soft);font-size:13px}.floor-manager.canvas-overlay .floor-item:hover{background:var(--bg-card-muted);transform:translate(4px);color:var(--text-primary);border-color:var(--border-strong)}.floor-manager.canvas-overlay .floor-item.active{width:180px;background:var(--bg-card);border:2px solid var(--accent);color:var(--text-primary);font-weight:600;box-shadow:0 8px 20px #0000001f;z-index:2}.floor-manager.canvas-overlay .floor-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.floor-manager.canvas-overlay .floor-item .floor-actions{position:absolute;left:100%;top:50%;transform:translateY(-50%);margin-left:12px;background:var(--bg-card);padding:6px;border-radius:8px;border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft);display:flex;visibility:hidden;opacity:0;transition:all .2s ease;z-index:10}.floor-manager.canvas-overlay .floor-item:hover .floor-actions{visibility:visible;opacity:1;transform:translateY(-50%) translate(4px)}.floor-manager.canvas-overlay .floor-item .floor-edit-input{width:100%;display:flex;gap:4px}.floor-manager.canvas-overlay .floor-item .floor-edit-input input{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--accent)}.floor-manager.canvas-overlay .floor-overlay-add-btn{background:rgba(var(--bg-card-rgb),.5);background:var(--bg-card-muted);border:1px dashed var(--border-strong);color:var(--text-muted);width:140px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;cursor:pointer;transition:all .2s;margin-bottom:8px;font-size:14px}.floor-manager.canvas-overlay .floor-overlay-add-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--bg-card)}.floor-manager.dropdown{position:relative;background:transparent;box-shadow:none;padding:0;border-radius:0;margin:0;flex-direction:column;align-items:flex-start;min-width:auto}.floor-dropdown-trigger{display:flex;align-items:center;gap:10px;background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:10px;padding:8px 14px;cursor:pointer;font-size:14px;font-weight:600;color:var(--text-primary);transition:all .2s ease;min-width:160px;justify-content:space-between;height:40px}.floor-dropdown-trigger:hover{background:var(--bg-canvas);border-color:var(--border-strong)}.floor-dropdown-trigger.open{border-color:var(--accent);background:var(--bg-card);box-shadow:0 0 0 2px #8b5cf633}.floor-dropdown-trigger .floor-icon{color:var(--text-muted);font-size:14px}.floor-dropdown-trigger .chevron{color:var(--text-secondary);font-size:12px;transition:transform .2s}.floor-dropdown-trigger .chevron.open{transform:rotate(180deg)}.floor-manager.dropdown .floor-manager-content{position:absolute;top:100%;left:0;margin-top:8px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;box-shadow:0 10px 25px #00000026;padding:8px;min-width:220px;z-index:1000;display:flex;flex-direction:column;animation:slideDown .15s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.floor-manager.dropdown .floor-list{display:flex;flex-direction:column;gap:4px;max-height:300px;overflow-y:auto}.floor-manager.dropdown .floor-item{width:100%;padding:8px 12px;border:1px solid transparent;background:transparent;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:all .15s}.floor-manager.dropdown .floor-item:hover{background:var(--bg-card-muted)}.floor-manager.dropdown .floor-item.active{background:#8b5cf614;color:var(--accent);font-weight:600}.floor-manager.dropdown .floor-item .floor-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s}.floor-manager.dropdown .floor-item:hover .floor-actions{opacity:1}.floor-dropdown-add-btn{margin-top:8px;width:100%;padding:8px;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--bg-card-muted);border:1px dashed var(--border-subtle);border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-muted);transition:all .2s}.floor-dropdown-add-btn:hover{border-color:var(--accent);color:var(--accent);background:#8b5cf60d}.schedule-pills{display:flex;gap:4px;align-items:center;margin-left:12px;padding-left:12px;border-left:1px solid var(--border-subtle);height:32px}.schedule-pill{font-size:11px;font-weight:600;padding:4px 8px;border-radius:12px;background:var(--primary-light);color:var(--primary);white-space:nowrap;cursor:help}.schedule-pills-loading,.schedule-pills-empty{font-size:12px;color:var(--text-muted);margin-left:12px;font-style:italic}.services-page{padding:2rem;max-width:1400px;margin:0 auto}.services-header{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:1rem}.services-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary)}.services-header .header-title{min-width:0}.services-header .header-actions{display:flex;flex-wrap:nowrap;align-items:center;gap:.5rem;flex-shrink:0}.services-loading{display:flex;justify-content:center;align-items:center;min-height:300px;color:var(--text-secondary)}.services-error{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:1.5rem}.services-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:var(--bg-card-muted);border-radius:12px;text-align:center}.services-empty>svg{color:var(--text-muted);margin-bottom:1.5rem}.services-empty .btn-primary:hover{background:var(--accent-hover)!important;color:#fff!important}.services-empty h2{color:var(--text-primary);margin-bottom:.5rem}.services-empty p{color:var(--text-secondary);margin-bottom:1.5rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.resource-cards-list{display:flex;flex-direction:column;gap:1rem}.resource-card-horizontal{display:flex;align-items:stretch;width:100%;background:var(--bg-card);border-radius:12px;overflow:hidden;border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft);transition:transform .2s,box-shadow .2s}.resource-card-horizontal:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001f}.resource-card-image{flex-shrink:0;width:140px;min-height:100px;overflow:hidden;background:var(--bg-tertiary)}.resource-card-image img{width:100%;height:100%;min-height:100px;object-fit:cover}.resource-card-image-placeholder{width:100%;height:100%;min-height:100px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);opacity:.5}.resource-card-content{flex:1;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem 1.5rem;min-width:0}.resource-card-main{flex:1;min-width:0}.resource-card-header{display:flex;flex-direction:column;gap:.25rem}.resource-card-header h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.resource-card-details{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.resource-detail-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;color:var(--text-secondary);background:var(--bg-tertiary);padding:.25rem .5rem;border-radius:6px}.resource-detail-badge svg{flex-shrink:0;opacity:.8}.resource-detail-pricing{color:#10b981;background:#10b9811a}.resource-state{text-transform:capitalize}.resource-state-available,.resource-state-free{color:#10b981;background:#10b9811a}.resource-state-booked,.resource-state-occupied{color:#f59e0b;background:#f59e0b1a}.resource-state-unavailable{color:var(--text-muted);background:var(--bg-tertiary)}.resource-card-id{display:block;font-size:.7rem;color:var(--text-muted);font-family:monospace;margin-top:.5rem}.resource-card-description{font-size:.875rem;color:var(--text-muted);margin:.5rem 0 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-clamp:2;overflow:hidden}.resource-card-actions{display:flex;gap:.5rem;flex-shrink:0}.services-list{display:flex;flex-direction:column;gap:1.25rem}.service-card-horizontal{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);border-radius:20px;padding:1.5rem 2.25rem;border:1px solid var(--border-subtle);box-shadow:0 4px 20px #00000008;transition:all .3s cubic-bezier(.4,0,.2,1);gap:2.5rem;cursor:pointer;position:relative;overflow:hidden}.service-card-horizontal:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--accent);opacity:0;transition:opacity .3s}.service-card-horizontal:hover{transform:translate(6px);box-shadow:0 12px 40px #00000014;border-color:var(--accent-soft)}.service-card-horizontal:hover:before{opacity:1}.service-card-header-wide{display:flex;align-items:center;gap:2rem;flex:1;min-width:0}.service-icon{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 8px 24px #0000001f}.service-info h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.service-meta-inline{display:flex;align-items:center;gap:1rem}.service-type-badge{padding:.35rem .75rem;border-radius:8px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;border:1px solid rgba(0,0,0,.05)}.meta-item{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--text-secondary);font-weight:500}.meta-item svg{color:var(--text-muted);opacity:.6}.service-card-actions-wide{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.service-card-actions-wide .btn-secondary-outline,.service-card-actions-wide .btn-danger-outline{height:42px;padding:0 1rem;border-radius:10px;font-weight:500;font-size:.9rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.service-card-actions-wide .btn-secondary-outline:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 12px var(--accent-soft)}.service-card-actions-wide .btn-danger-outline:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444433}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--bg-card);border-radius:16px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.modal-content form{padding:1.5rem}.services-page .form-group,.create-service-page .form-group{margin-bottom:1.5rem}.services-page .form-group label,.create-service-page .form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.services-page .form-group input,.create-service-page .form-group input{width:100%;padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:1rem}.services-page .form-group input:focus,.create-service-page .form-group input:focus{outline:none;border-color:var(--accent)}.type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.type-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .2s;color:var(--text-secondary)}.type-option:hover{border-color:var(--type-color);color:var(--type-color)}.type-option.selected{border-color:var(--type-color);background:color-mix(in srgb,var(--type-color) 10%,transparent);color:var(--type-color)}.type-option span{font-size:.75rem;font-weight:500}.mode-options{display:flex;gap:1rem}.mode-option{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:10px;cursor:pointer;transition:all .2s;color:var(--text-secondary)}.mode-option:hover{border-color:var(--accent);color:var(--accent)}.mode-option.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent)}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;border-top:1px solid var(--border-color);margin-top:1rem}.resource-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem;animation:resource-modal-fade-in .2s ease-out}@keyframes resource-modal-fade-in{0%{opacity:0}to{opacity:1}}.resource-modal{background:var(--bg-card);border-radius:20px;width:100%;max-width:720px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 24px 48px #00000026;border:1px solid var(--border-subtle);animation:resource-modal-slide-in .25s ease-out}@keyframes resource-modal-slide-in{0%{opacity:0;transform:translateY(-12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.resource-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.5rem 1.75rem;border-bottom:1px solid var(--border-subtle)}.resource-modal-title-wrap{display:flex;align-items:flex-start;gap:1rem}.resource-modal-icon{width:44px;height:44px;border-radius:12px;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.resource-modal-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.resource-modal-subtitle{font-size:.875rem;color:var(--text-muted);margin:.25rem 0 0}.resource-modal-close{width:40px;height:40px;border-radius:10px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.resource-modal-close:hover{background:var(--bg-card-muted);color:var(--text-primary)}.resource-modal-body{display:grid;grid-template-columns:200px 1fr;gap:0;overflow-y:auto;flex:1;min-height:0}@media(max-width:640px){.resource-modal-body{grid-template-columns:1fr}}.resource-modal-image-section{padding:1.5rem 1.75rem;border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;align-items:center;gap:.75rem}@media(max-width:640px){.resource-modal-image-section{border-right:none;border-bottom:1px solid var(--border-subtle);padding-bottom:1.25rem}}.resource-modal-image-drop{width:160px;height:160px;border-radius:16px;border:2px dashed var(--border-strong);background:var(--bg-card-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;cursor:pointer;transition:all .2s;overflow:hidden;position:relative}.resource-modal-image-drop:hover,.resource-modal-image-drop.drag-over{border-color:var(--accent);background:var(--accent-soft)}.resource-modal-image-drop.has-image{border-style:solid;padding:0}.resource-modal-image-drop.has-image img{width:100%;height:100%;object-fit:cover}.resource-modal-image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#fff;font-size:.8rem;opacity:0;transition:opacity .2s}.resource-modal-image-drop.has-image:hover .resource-modal-image-overlay{opacity:1}.resource-modal-image-drop.uploading .resource-modal-image-overlay{opacity:1;background:#000000b3}.resource-modal-image-placeholder-icon{color:var(--text-muted);opacity:.6}.resource-modal-image-text{font-size:.8rem;color:var(--text-secondary);text-align:center;padding:0 .5rem}.resource-modal-image-hint{font-size:.7rem;color:var(--text-muted)}.resource-modal-image-remove{font-size:.75rem;color:#ef4444;background:none;border:none;padding:0;cursor:pointer;text-decoration:underline}.resource-modal-image-remove:hover{color:#dc2626}.resource-modal-form{padding:1.5rem 1.75rem;display:flex;flex-direction:column;gap:1.5rem}.resource-modal-section{display:flex;flex-direction:column;gap:1rem}.resource-modal-section-title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--text-primary);margin:0}.resource-modal-section-title svg{color:var(--text-muted)}.resource-modal-section-pricing{padding-top:1rem;border-top:1px solid var(--border-subtle)}.resource-form-group{display:flex;flex-direction:column;gap:.5rem}.resource-form-group label{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.resource-input{padding:.75rem 1rem;border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--text-primary);font-size:.95rem;transition:border-color .2s,box-shadow .2s}.resource-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.resource-input::placeholder{color:var(--text-muted)}.resource-textarea{resize:vertical;min-height:80px}.resource-id-preview{font-size:.75rem;color:var(--text-muted);margin:-.25rem 0 0}.resource-id-preview code{font-family:ui-monospace,monospace;background:var(--bg-card-muted);padding:.15rem .4rem;border-radius:4px}@media(max-width:480px){.resource-form-row{grid-template-columns:1fr}}.resource-type-chips{display:flex;gap:.5rem;flex-wrap:wrap}.resource-type-chip{padding:.5rem 1rem;border-radius:8px;border:1px solid var(--input-border);background:var(--bg-card-muted);color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.resource-type-chip:hover{border-color:var(--accent);color:var(--accent)}.resource-type-chip.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.resource-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.75rem;border-top:1px solid var(--border-subtle);background:var(--bg-card-muted);border-radius:0 0 20px 20px}.resource-modal-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.resource-modal-btn-secondary{background:var(--bg-card);border:1px solid var(--input-border);color:var(--text-primary)}.resource-modal-btn-secondary:hover{background:var(--bg-card-muted)}.resource-modal-btn-primary{background:var(--accent);border:none;color:#fff}.resource-modal-btn-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.resource-modal-btn-primary:disabled{opacity:.6;cursor:not-allowed}.resource-modal-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:resource-modal-spin .7s linear infinite}@keyframes resource-modal-spin{to{transform:rotate(360deg)}}.resource-modal-section .pricing-editor{gap:1rem}.resource-modal-section .modern-input-group{display:flex;flex-direction:column;gap:.35rem;margin-bottom:0}.resource-modal-section .modern-input-group label{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.resource-modal-section .modern-input{padding:.65rem 1rem;border:1px solid var(--input-border);border-radius:10px;background:var(--input-bg);color:var(--text-primary);font-size:.9rem;transition:border-color .2s,box-shadow .2s}.resource-modal-section .modern-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.resource-modal-section select.modern-input{cursor:pointer}.delete-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0c1e66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem;animation:deleteModalFadeIn .3s cubic-bezier(.16,1,.3,1) forwards}.delete-confirm-modal{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:24px!important;width:90%;max-width:440px!important;padding:2.25rem 2rem!important;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a,0 0 0 1px var(--border-subtle),inset 0 1px #ffffff0d!important;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;overflow:visible!important;max-height:none!important;animation:deleteModalScaleIn .35s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes deleteModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes deleteModalScaleIn{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.delete-confirm-modal .modal-close{position:absolute;top:1.25rem;right:1.25rem;background:var(--bg-card-muted);border:none;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.delete-confirm-modal .modal-close:hover{background:var(--border-subtle);color:var(--text-primary);transform:rotate(90deg)}.delete-confirm-modal .confirm-icon-purple{width:64px;height:64px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem;box-shadow:0 8px 20px #8b5cf626;border:1px solid rgba(139,92,246,.1)}.delete-confirm-modal .modal-title{font-size:1.25rem;font-weight:650;color:var(--text-primary);margin:0 0 .75rem;letter-spacing:-.01em}.delete-confirm-modal .modal-message{font-size:.925rem;color:var(--text-secondary);line-height:1.5;margin:0 0 1.75rem}.delete-confirm-modal .confirm-modal-actions{display:flex;gap:.75rem;width:100%}.delete-confirm-modal .confirm-modal-actions button{flex:1;height:44px;border-radius:12px;font-weight:600;font-size:.925rem;transition:all .2s cubic-bezier(.4,0,.2,1);cursor:pointer}.delete-confirm-modal .confirm-modal-actions .btn-secondary{background:var(--bg-card-muted);border:1px solid var(--border-subtle);color:var(--text-primary)}.delete-confirm-modal .confirm-modal-actions .btn-secondary:hover{background:var(--border-subtle);transform:translateY(-1.5px)}.delete-confirm-modal .confirm-modal-actions .confirm-button-info{background:var(--accent);border:none;color:#fff}.delete-confirm-modal .confirm-modal-actions .confirm-button-info:hover{background:var(--accent-hover);transform:translateY(-1.5px);box-shadow:0 8px 20px var(--accent-soft)}.create-service-page{width:100%;max-width:none;margin:0;padding:2rem}.create-service-loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--text-secondary)}.create-service-header{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem}.create-service-back{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000a;flex-shrink:0}.create-service-back:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:scale(1.08);box-shadow:0 4px 12px var(--accent-soft)}.create-service-header h1{flex:1;margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary)}.create-service-header-actions{display:flex;align-items:center;gap:.75rem}.create-service-header-actions .btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:background .2s}.create-service-header-actions .btn-primary:disabled{opacity:.7;cursor:not-allowed}.create-service-header-actions .btn-secondary{display:inline-flex;align-items:center;padding:.625rem 1.25rem;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-subtle);border-radius:8px;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s}.create-service-header-actions .btn-secondary:hover{background:var(--bg-card-muted);border-color:var(--border-strong)}.create-service-error{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;margin-bottom:1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#ef4444;font-size:.95rem}.create-service-error svg{flex-shrink:0}.create-service-form{display:block}.create-service-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:768px){.create-service-grid{grid-template-columns:1fr}}.create-service-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:1.5rem}.create-service-card-full{grid-column:1 / -1}.create-service-card-title{margin:0 0 1.25rem;font-size:1rem;font-weight:600;color:var(--text-primary)}.create-service-card .form-group{margin-bottom:1.25rem}.create-service-card .form-group:last-child{margin-bottom:0}.create-service-card label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}.create-service-card .form-input,.create-service-card input,.create-service-card select{width:100%;padding:.625rem .875rem;border:1px solid #d1d5db!important;border-radius:8px;background:var(--input-bg);color:var(--text-primary);font-size:.95rem;transition:border-color .2s,box-shadow .2s}:root[data-theme=dark] .create-service-card .form-input,:root[data-theme=dark] .create-service-card input,:root[data-theme=dark] .create-service-card select{border-color:#94a3b859!important}.create-service-card .form-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.create-service-card .form-help{margin:.5rem 0 0;font-size:.8rem;color:var(--text-muted);line-height:1.4}.template-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.5rem}.template-card{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.6rem;background:var(--bg-card-muted);border:2px solid var(--border-subtle);border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.template-card:hover{border-color:var(--accent);background:var(--accent-soft)}.template-card.selected{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.template-card-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:#fff}.template-card-name{font-size:.8rem;font-weight:600;color:var(--text-primary)}.template-card-desc{font-size:.65rem;color:var(--text-muted)}.mode-options{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.mode-option{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;padding:1rem;background:var(--bg-card-muted);border:2px solid var(--border-subtle);border-radius:10px;cursor:pointer;transition:all .2s;text-align:left}.mode-option:hover,.mode-option.selected{border-color:var(--accent);background:var(--accent-soft)}.mode-option svg{color:var(--text-muted)}.mode-option.selected svg{color:var(--accent)}.mode-option span{font-size:.95rem;font-weight:600;color:var(--text-primary)}.mode-option small{font-size:.8rem;color:var(--text-muted)}.payment-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;background:var(--bg-card-muted);border-radius:10px;border:1px solid var(--border-subtle)}.payment-toggle-label{display:flex;align-items:center;gap:1rem}.payment-toggle-label svg{color:var(--text-muted)}.payment-toggle-label span{display:block;font-weight:600;color:var(--text-primary)}.payment-toggle-label small{display:block;font-size:.8rem;color:var(--text-muted);margin-top:.15rem}.toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border-strong);border-radius:999px;cursor:pointer;transition:background .2s}.toggle-slider:before{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .2s}.toggle-switch input:checked+.toggle-slider{background:var(--accent)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.payment-currency-row{margin-top:1rem}.payment-currency-row .form-input{max-width:140px}.schedule-scope-select{min-width:200px;max-width:280px}.schedule-manager-content{display:flex;flex-direction:column;gap:24px}.event-settings-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:24px;align-items:start}@media(max-width:1024px){.event-settings-grid{grid-template-columns:1fr}}.recurrence-builder{background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:12px;padding:20px}.builder-header{margin-bottom:16px}.builder-header h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.builder-header p{font-size:13px;color:var(--text-muted);margin:0}.day-selector-grid{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.day-selector-item{display:flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-card);cursor:pointer;transition:all .2s ease;font-size:14px;color:var(--text-primary);font-weight:500;min-width:48px;-webkit-user-select:none;user-select:none}.day-selector-item:hover{border-color:var(--accent);background:var(--accent-soft)}.day-selector-item.selected{border-color:var(--primary);background:rgba(var(--primary-rgb),.1);color:var(--primary);font-weight:600}.time-controls{display:flex;align-items:center;gap:16px;margin-bottom:20px;background:var(--bg-surface);padding:12px;border-radius:8px}.time-input-group{display:flex;align-items:center;gap:8px}.time-input-group label{font-size:13px;font-weight:500;color:var(--text-secondary)}.time-input-group input[type=time]{padding:8px 12px;border:1px solid var(--border-subtle);border-radius:6px;background:var(--bg-card);color:var(--text-primary);font-family:inherit;font-size:14px}.apply-btn{margin-left:auto;padding:8px 16px;background:var(--primary);color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.apply-btn:hover{background:var(--primary-dark)}.weekly-summary{border:1px solid var(--border-subtle);border-radius:12px;overflow:hidden}.summary-row{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-subtle);background:var(--bg-card)}.summary-row:last-child{border-bottom:none}.summary-row.inactive{opacity:.6;background:var(--bg-card-muted)}.summary-day{width:120px;font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:8px}.summary-hours{flex:1;color:var(--text-secondary);font-size:14px}.closed-badge{background:var(--bg-surface);color:var(--text-muted);padding:2px 8px;border-radius:4px;font-size:12px;border:1px solid var(--border-subtle)}.edit-day-btn{padding:4px 8px;background:transparent;border:1px solid transparent;color:var(--text-muted);border-radius:4px;cursor:pointer}.edit-day-btn:hover{color:var(--primary);background:var(--accent-soft)}.inline-edit-row{background:var(--bg-surface);padding:12px 16px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;gap:16px}.occurrence-table{width:100%;border-collapse:collapse}.occurrence-table th{text-align:left;padding:12px 16px;color:var(--text-secondary);font-size:13px;font-weight:600;border-bottom:1px solid var(--border-subtle)}.occurrence-table td{padding:12px 16px;border-bottom:1px solid var(--border-subtle);vertical-align:middle}.occurrence-table tr:last-child td{border-bottom:none}.occurrence-table .inactive-row{opacity:.5;background:var(--bg-card-muted)}.occurrence-table .overnight-row{background:rgba(var(--accent-rgb),.02)}.time-group{display:flex;align-items:center;gap:8px}.time-input{width:120px!important}.overnight-badge{display:inline-flex;align-items:center;gap:4px;background:var(--accent-soft);color:var(--accent);padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600;white-space:nowrap}.overnight-badge svg{opacity:.8}.checkbox-label{-webkit-user-select:none;user-select:none;transition:opacity .2s}.checkbox-label:hover{opacity:.8}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.section-header-flex{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.override-modal{width:100%;max-width:500px;background:var(--bg-card);border-radius:12px;padding:0;border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft)}.override-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-subtle)}.override-modal .modal-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.override-form{padding:24px}.override-form .form-group{margin-bottom:20px}.override-form .form-group:last-of-type{margin-bottom:0}.override-form .form-group label{display:block;font-size:14px;font-weight:500;color:var(--text-secondary);margin-bottom:8px}.override-form .form-input{width:100%;padding:10px 14px;border:1px solid var(--input-border, #d1d5db);border-radius:8px;font-size:14px;background:var(--bg-card-muted);color:var(--text-primary);font-family:inherit;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none}.override-form .form-input[type=date],.override-form .form-input[type=time]{-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:40px}.override-form .form-input:hover{border-color:var(--border-strong)}.override-form .form-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.override-form .form-input::placeholder{color:var(--text-muted)}.override-form .form-check{margin-bottom:20px}.override-form .form-check label{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;color:var(--text-primary);cursor:pointer}.toggle-switch.mini{width:32px;height:18px;flex-shrink:0}.occurrence-table th:last-child{text-align:right}.occurrence-table td .time-group{flex:0 0 auto}.override-form .time-range-group{display:flex;align-items:center;gap:12px}.override-form .time-range-group .form-input{flex:1;min-width:0}.override-form .time-range-group span{font-size:14px;font-weight:500;color:var(--text-secondary);flex-shrink:0}.override-form .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-subtle)}.override-form .modal-actions .btn-secondary{border:1px solid var(--border-subtle);background:var(--bg-card)}.override-form .modal-actions .btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.overrides-list{max-height:480px;overflow-y:auto;padding-right:8px;margin-bottom:24px}.override-item{display:flex;align-items:center;gap:16px;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:12px;padding:16px;margin-bottom:12px;transition:all .2s ease}.override-item:hover{border-color:var(--accent);background:var(--bg-card);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.override-date-badge{background:var(--bg-card-muted);border:1px solid var(--border-subtle);border-radius:8px;padding:8px 12px;text-align:center;min-width:60px}.override-date-badge .day{display:block;font-size:18px;font-weight:700;color:var(--text-primary);line-height:1}.override-date-badge .month{display:block;font-size:11px;text-transform:uppercase;color:var(--text-secondary);margin-top:2px;font-weight:600}.override-details{flex:1}.override-status{margin-bottom:4px}.status-badge{font-size:12px;font-weight:600;padding:4px 8px;border-radius:6px}.status-badge.closed{background:#ef44441a;color:#ef4444}.status-badge.open{background:#22c55e1a;color:#22c55e}.override-reason{font-size:13px;color:var(--text-muted);font-style:italic}.resource-edit-page{width:100%;padding:1rem 2rem}.resource-edit-loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--text-secondary)}.resource-edit-header{display:flex;align-items:center;gap:1.25rem;margin-bottom:1rem}.resource-edit-back{display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:50%;color:var(--text-secondary);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000a;flex-shrink:0}.resource-edit-back:hover{background:var(--accent);color:#fff;border-color:var(--accent);transform:scale(1.08);box-shadow:0 4px 12px var(--accent-soft)}.resource-edit-header h1{flex:1;margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary)}.resource-edit-header-actions{display:flex;align-items:center;gap:.75rem}.resource-edit-error{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;margin-bottom:1.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#ef4444}.resource-edit-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:1rem;align-items:stretch}.resource-edit-grid.has-pricing{grid-template-columns:1.2fr 1fr 1fr}@media(max-width:992px){.resource-edit-grid,.resource-edit-grid.has-pricing{grid-template-columns:1fr}}.resource-edit-column{display:flex;flex-direction:column;gap:1rem}.resource-edit-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:12px;padding:1rem}.resource-edit-card-title{margin:0 0 .75rem;font-size:.95rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;opacity:.8}.form-group{margin-bottom:.75rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;margin-bottom:.35rem;font-size:.85rem;font-weight:500;color:var(--text-secondary)}.form-input{width:100%;padding:.5rem .75rem;border:1px solid var(--border-subtle)!important;border-radius:8px;background:var(--input-bg);color:var(--text-primary);font-size:.95rem;transition:all .2s}.form-input:focus{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-soft)}.form-help{margin-top:.5rem;font-size:.8rem;color:var(--text-muted)}.resource-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.resource-type-chips{display:flex;gap:.5rem}.resource-type-chip{flex:1;padding:.625rem;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.resource-type-chip:hover{border-color:var(--accent);color:var(--text-primary)}.resource-type-chip.active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.resource-image-upload{width:100%}.resource-image-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;aspect-ratio:16 / 9;background:var(--bg-body);border:2px dashed var(--border-subtle);border-radius:12px;cursor:pointer;transition:all .2s;position:relative;overflow:hidden}.resource-image-drop:hover{border-color:var(--accent);background:var(--bg-hover)}.resource-image-drop.has-image{border-style:solid}.resource-image-drop img{width:100%;height:100%;object-fit:cover}.resource-image-placeholder{display:flex;flex-direction:column;align-items:center;gap:.25rem;color:var(--text-muted)}.resource-image-placeholder span{font-size:.85rem}.resource-image-placeholder small{font-size:.7rem}.resource-image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#fff;opacity:0;transition:opacity .2s}.resource-image-drop:hover .resource-image-overlay{opacity:1}.btn-link-danger{display:flex;align-items:center;justify-content:center;gap:.5rem;background:none;border:none;color:#ef4444;font-size:.875rem;font-weight:500;cursor:pointer;padding:.5rem;border-radius:6px;transition:background .2s}.btn-link-danger:hover{background:#ef44441a}.wpe-root{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-body);font-family:Inter,-apple-system,sans-serif}.wpe-topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;background:var(--bg-card);border-bottom:1px solid var(--border-color);box-shadow:0 1px 4px #0000000f;flex-shrink:0;z-index:100}.wpe-topbar-left{display:flex;align-items:center;gap:14px}.wpe-topbar-icon{font-size:28px}.wpe-topbar-title{margin:0;font-size:18px;font-weight:700;color:var(--text-primary, #111827)}.wpe-topbar-sub{margin:2px 0 0;font-size:13px;color:var(--text-secondary, #6b7280)}.wpe-topbar-right{display:flex;align-items:center;gap:12px}.wpe-btn-preview{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500;background:transparent;border:1px solid var(--input-border);color:var(--text-primary, #111827);text-decoration:none;cursor:pointer;transition:background .2s,border-color .2s}.wpe-btn-preview:hover{background:var(--bg-hover);border-color:var(--text-secondary, #6b7280)}.wpe-btn-save{display:inline-flex;align-items:center;gap:6px;padding:8px 20px;border-radius:8px;font-size:14px;font-weight:600;background:var(--primary);color:#fff;border:none;cursor:pointer;transition:background .2s,transform .1s,opacity .2s}.wpe-btn-save:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.wpe-btn-save:disabled{opacity:.6;cursor:not-allowed}.wpe-body{display:flex;flex:1;min-height:0;overflow:hidden}.wpe-panel{width:400px;min-width:340px;flex-shrink:0;background:var(--bg-card);border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.wpe-panel-scroll{flex:1;overflow-y:auto;padding:16px 16px 40px;display:flex;flex-direction:column;gap:8px}.wpe-accordion{border:1px solid var(--border-color);border-radius:12px;overflow:hidden;transition:box-shadow .2s}.wpe-accordion-open{box-shadow:0 2px 8px #0000000d}.wpe-accordion-header{display:flex;align-items:center;width:100%;padding:12px 16px;background:var(--bg-body);border:none;cursor:pointer;text-align:left;gap:10px;font-weight:600;font-size:14px;color:var(--text-primary, #111827);transition:background .15s}.wpe-accordion-header:hover{background:var(--bg-hover, #f0f0f5)}.wpe-accordion-icon{font-size:16px}.wpe-accordion-title{flex:1}.wpe-accordion-chevron{font-size:10px;color:var(--text-secondary, #9ca3af)}.wpe-accordion-body{padding:16px;display:flex;flex-direction:column;gap:14px;background:var(--bg-card)}.wpe-field{display:flex;flex-direction:column;gap:6px}.wpe-field-label{font-size:13px;font-weight:600;color:var(--text-secondary, #374151)}.wpe-field-hint{font-size:11px;color:var(--text-secondary, #9ca3af)}.wpe-input{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--input-border);font-size:14px;font-family:inherit;background:var(--input-bg);color:var(--text-primary, #111827);outline:none;transition:border-color .2s;box-sizing:border-box}.wpe-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.wpe-select{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--input-border);font-size:14px;font-family:inherit;background:var(--input-bg);color:var(--text-primary, #111827);outline:none;cursor:pointer;box-sizing:border-box}.wpe-textarea{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--input-border);font-size:14px;font-family:inherit;background:var(--input-bg);color:var(--text-primary, #111827);outline:none;resize:vertical;transition:border-color .2s;box-sizing:border-box}.wpe-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-light)}.wpe-row{display:flex;gap:10px;align-items:flex-end}.wpe-col{flex:1;min-width:0}.wpe-col-auto{flex-shrink:0}.wpe-toggle{position:relative;display:inline-block;width:42px;height:24px;flex-shrink:0}.wpe-toggle input{opacity:0;width:0;height:0}.wpe-toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--input-border);border-radius:999px;cursor:pointer;transition:background .2s}.wpe-toggle-slider:before{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px #0003}.wpe-toggle input:checked+.wpe-toggle-slider{background:var(--primary)}.wpe-toggle input:checked+.wpe-toggle-slider:before{transform:translate(18px)}.wpe-toggle-row{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--text-primary, #111827);padding:4px 0}.wpe-color-row{display:flex;gap:8px;align-items:center}.wpe-color-swatch{width:40px;height:36px;border:1px solid var(--input-border);border-radius:8px;padding:2px;cursor:pointer;flex-shrink:0;background:none}.wpe-radio-group{display:flex;flex-wrap:wrap;gap:8px}.wpe-radio-option{display:flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid var(--input-border);border-radius:8px;font-size:13px;cursor:pointer;transition:border-color .15s,background .15s;color:var(--text-primary)}.wpe-radio-option input{display:none}.wpe-radio-option-active{border-color:var(--primary);background:var(--primary-light);color:var(--primary);font-weight:600}.wpe-image-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.wpe-image-slot{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;border:2px dashed var(--input-border);transition:border-color .2s}.wpe-image-slot-hero{grid-column:span 3;aspect-ratio:16/7}.wpe-image-slot:hover{border-color:var(--primary)}.wpe-image-thumb{width:100%;height:100%;object-fit:cover;display:block}.wpe-image-actions{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;gap:8px;opacity:0;transition:opacity .2s}.wpe-image-slot:hover .wpe-image-actions{opacity:1}.wpe-image-change-btn,.wpe-image-remove-btn{background:#ffffffe6;border:none;border-radius:6px;padding:6px 10px;cursor:pointer;font-size:14px;transition:background .15s}.wpe-image-change-btn:hover,.wpe-image-remove-btn:hover{background:#fff}.wpe-image-upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:6px;cursor:pointer;font-size:12px;color:var(--text-secondary, #9ca3af);transition:color .2s}.wpe-image-upload-label:hover{color:var(--primary)}.wpe-upload-plus{font-size:24px;line-height:1}.wpe-image-hero-badge{position:absolute;top:8px;left:8px;background:#5a5ce5e6;color:#fff;font-size:11px;font-weight:700;padding:3px 8px;border-radius:4px;letter-spacing:.5px;text-transform:uppercase}.wpe-upload-spinner{display:inline-block;width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:var(--primary);border-radius:50%;animation:wpe-spin .6s linear infinite}@keyframes wpe-spin{to{transform:rotate(360deg)}}.wpe-hours-list{display:flex;flex-direction:column;gap:8px;max-height:280px;overflow-y:auto;padding-right:4px}.wpe-hours-row{display:flex;gap:8px;align-items:center}.wpe-hours-remove{flex-shrink:0;background:#fef2f2;color:#dc2626;border:none;border-radius:6px;padding:6px 10px;cursor:pointer;font-size:14px;transition:background .15s}.wpe-hours-remove:hover{background:#fee2e2}.wpe-btn-add{display:inline-flex;align-items:center;gap:6px;padding:10px 14px;border-radius:8px;font-size:13px;font-weight:600;background:var(--primary-light);color:var(--primary);border:1px dashed #a5b4fc;cursor:pointer;transition:background .2s;width:100%;justify-content:center;position:sticky;bottom:-8px;z-index:10;box-shadow:0 -4px 12px #595ce51a}.wpe-btn-add:hover{background:#e8e8ff}.wpe-preview-pane{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bg-canvas);overflow:hidden}.wpe-preview-header{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;background:var(--input-bg);border-bottom:1px solid var(--border-color);font-size:14px;font-weight:600;color:var(--text-secondary, #374151);flex-shrink:0}.wpe-preview-viewport-btns{display:flex;gap:4px;background:var(--bg-hover);border-radius:8px;padding:3px}.wpe-viewport-btn{padding:5px 14px;border-radius:6px;border:none;font-size:13px;font-weight:500;cursor:pointer;background:transparent;color:var(--text-secondary, #6b7280);transition:background .15s,color .15s}.wpe-viewport-btn:hover{background:var(--bg-hover, #e5e7eb)}.wpe-viewport-active{background:#fff;color:var(--text-primary, #111827);box-shadow:0 1px 3px #0000001a}.wpe-preview-frame-wrapper{flex:1;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:20px}.wpe-preview-frame{width:100%;height:100%;min-height:700px;border:none;border-radius:12px;box-shadow:0 8px 40px #00000026;background:#fff;transition:width .3s ease}.wpe-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:var(--text-secondary, #6b7280)}:root[data-theme=dark] .wpe-save-msg--success{background:#05966933;color:#34d399;border-color:#05966966}:root[data-theme=dark] .wpe-save-msg--error{background:#dc262633;color:#f87171;border-color:#dc262666}:root[data-theme=dark] .wpe-hours-remove{background:#dc262633;color:#f87171}:root[data-theme=dark] .wpe-hours-remove:hover{background:#dc26264d}:root[data-theme=dark] .wpe-btn-add{background:#8b5cf626;color:var(--primary);border:1px dashed var(--border-strong)}:root[data-theme=dark] .wpe-btn-add:hover{background:#8b5cf640}:root[data-theme=dark] .wpe-image-change-btn,:root[data-theme=dark] .wpe-image-remove-btn{background:#1f2937cc;color:#f9fafb}:root[data-theme=dark] .wpe-image-change-btn:hover,:root[data-theme=dark] .wpe-image-remove-btn:hover{background:#1f2937}:root[data-theme=dark] .wpe-viewport-active{background:var(--bg-card)}:root[data-theme=dark] .wpe-preview-viewport-btns{background:var(--bg-body)}:root[data-theme=dark] .wpe-preview-frame{background:#fff}.wpe-upload-progress-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:100%;height:100%}.wpe-upload-percent{font-size:14px;font-weight:700;color:var(--primary)}.wpe-upload-bar{position:absolute;bottom:0;left:0;height:4px;background:var(--primary);transition:width .2s ease}.mte-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1200;display:flex;align-items:stretch;justify-content:flex-end}.mte-modal{background:var(--bg-card);width:min(780px,90vw);height:100vh;display:flex;flex-direction:column;border-left:1px solid var(--border-subtle);box-shadow:-8px 0 40px #0003;animation:mte-slide-in .25s cubic-bezier(.4,0,.2,1)}@keyframes mte-slide-in{0%{transform:translate(40px);opacity:0}to{transform:translate(0);opacity:1}}.mte-header{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 28px 20px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.mte-title{font-size:1.2rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.mte-subtitle{font-size:.84rem;color:var(--text-muted);margin:0}.mte-close{background:none;border:none;font-size:1.6rem;color:var(--text-muted);cursor:pointer;padding:0 4px;line-height:1;transition:color .15s}.mte-close:hover{color:var(--text-primary)}.mte-type-tabs{display:flex;gap:4px;padding:16px 28px 0;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.mte-type-tab{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-bottom:3px solid transparent;background:none;font-size:.875rem;font-weight:500;color:var(--text-muted);cursor:pointer;transition:all .15s;white-space:nowrap}.mte-type-tab:hover{color:var(--text-primary)}.mte-type-tab-active{color:var(--accent);border-bottom-color:var(--accent)}.mte-channel-tabs{display:flex;align-items:center;gap:8px;padding:14px 28px;border-bottom:1px solid var(--border-subtle);flex-shrink:0}.mte-channel-tab{padding:6px 14px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-body);font-size:.84rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s}.mte-channel-tab:hover{border-color:var(--accent);color:var(--accent)}.mte-channel-tab-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.mte-reset-btn{margin-left:auto;padding:6px 12px;border:1px dashed var(--border-subtle);border-radius:8px;background:none;font-size:.82rem;color:var(--text-muted);cursor:pointer;transition:all .15s}.mte-reset-btn:hover{color:var(--text-primary);border-color:var(--text-muted)}.mte-body{flex:1;overflow-y:auto;padding:20px 28px}.mte-field{margin-bottom:20px}.mte-label{display:block;font-size:.84rem;font-weight:600;color:var(--text-secondary);margin-bottom:8px;text-transform:uppercase;letter-spacing:.04em}.mte-subject-input{width:100%;padding:10px 14px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:10px;font-size:.95rem;color:var(--text-primary);transition:border-color .15s;box-sizing:border-box}.mte-subject-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.mte-variables-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px}.mte-var-label{font-size:.78rem;color:var(--text-muted);white-space:nowrap}.mte-var-chip{padding:3px 10px;border-radius:20px;border:1px solid var(--border-subtle);background:var(--bg-body);font-size:.75rem;font-family:Courier New,monospace;color:var(--accent);cursor:pointer;transition:all .15s}.mte-var-chip:hover{background:var(--accent-soft);border-color:var(--accent)}.mte-editor-wrapper{border:1px solid var(--border-subtle);border-radius:10px;overflow:hidden}.mte-toolbar{display:flex;flex-wrap:wrap;gap:2px;padding:8px 10px;background:var(--bg-body);border-bottom:1px solid var(--border-subtle)}.mte-toolbar-btn{padding:5px 9px;border:none;border-radius:6px;background:transparent;font-size:.8rem;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s;line-height:1.2}.mte-toolbar-btn:hover{background:var(--bg-card);color:var(--text-primary)}.mte-toolbar-btn-active{background:var(--accent-soft);color:var(--accent)}.mte-toolbar-divider{width:1px;background:var(--border-subtle);margin:2px 4px;align-self:stretch}.mte-editor-content{min-height:280px;max-height:420px;overflow-y:auto;background:var(--bg-card)}.mte-editor-content .ProseMirror{padding:16px;outline:none;font-size:.92rem;color:var(--text-primary);line-height:1.65;min-height:280px}.mte-editor-content .ProseMirror p{margin:0 0 10px}.mte-editor-content .ProseMirror h1{font-size:1.5rem;font-weight:700;margin:16px 0 8px}.mte-editor-content .ProseMirror h2{font-size:1.25rem;font-weight:700;margin:14px 0 8px}.mte-editor-content .ProseMirror h3{font-size:1.1rem;font-weight:600;margin:12px 0 6px}.mte-editor-content .ProseMirror ul,.mte-editor-content .ProseMirror ol{padding-left:24px;margin:8px 0}.mte-editor-content .ProseMirror li{margin-bottom:4px}.mte-editor-content .ProseMirror a{color:var(--accent);text-decoration:underline}.mte-editor-content .ProseMirror hr{border:none;border-top:1px solid var(--border-subtle);margin:16px 0}.mte-editor-content .ProseMirror table{border-collapse:collapse;width:100%}.mte-editor-content .ProseMirror td,.mte-editor-content .ProseMirror th{border:1px solid var(--border-subtle);padding:6px 10px}.mte-sms-editor{display:flex;flex-direction:column;gap:10px}.mte-sms-textarea{width:100%;padding:12px 14px;background:var(--bg-body);border:1px solid var(--border-subtle);border-radius:10px;font-size:.9rem;color:var(--text-primary);font-family:Courier New,monospace;resize:vertical;transition:border-color .15s;box-sizing:border-box}.mte-sms-textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.mte-sms-meta{display:flex;justify-content:space-between;font-size:.78rem;color:var(--text-muted)}.mte-char-warn{color:#f59e0b;font-weight:600}.mte-footer{display:flex;justify-content:flex-end;gap:12px;padding:18px 28px;border-top:1px solid var(--border-subtle);flex-shrink:0;background:var(--bg-card)}.mte-editor-content .ProseMirror img{max-width:100%;height:auto;border-radius:8px;margin:12px 0;display:block}.booking-settings-single-column{display:grid;grid-template-columns:minmax(480px,560px);gap:24px}.booking-settings-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.booking-settings-row .form-input{flex-shrink:0}.booking-settings-toggle{position:relative;display:inline-block;width:44px;height:26px;flex-shrink:0}.booking-settings-toggle input{opacity:0;width:0;height:0}.booking-settings-toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border-subtle);border-radius:999px;cursor:pointer;transition:background .2s,box-shadow .2s}.booking-settings-toggle-slider:before{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px #0003}.booking-settings-toggle input:checked+.booking-settings-toggle-slider{background:var(--accent);box-shadow:0 0 0 2px #8b5cf633}.booking-settings-toggle input:checked+.booking-settings-toggle-slider:before{transform:translate(18px)}.booking-settings-toggle:hover .booking-settings-toggle-slider{border:1px solid var(--border-strong)}.booking-settings-toggle input:disabled+.booking-settings-toggle-slider{opacity:.5;cursor:not-allowed}@media(max-width:640px){.booking-settings-row{flex-direction:column;align-items:flex-start;gap:.75rem}.booking-settings-row .form-input{width:100%;max-width:120px}}.booking-settings-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:24px;width:100%;align-items:start}@media(max-width:1024px){.booking-settings-grid{grid-template-columns:1fr}}.create-booking-page{padding:24px;background-color:var(--bg-main, #f8fafc);color:var(--text-main, #0f172a);min-height:100vh;display:flex;flex-direction:column;gap:24px;animation:cb-fadeIn .4s ease-out}.create-booking-page.iframe-active{padding:0;gap:0;height:100vh;overflow:hidden}.create-booking-page.iframe-active .create-booking-iframe-container{min-height:100vh;border:none;border-radius:0;box-shadow:none}@keyframes cb-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.create-booking-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.create-booking-header-left{display:flex;align-items:center;gap:16px}.create-booking-header h1{font-size:1.875rem;font-weight:700;margin:0;letter-spacing:-.025em;color:var(--text-primary)}.create-booking-header p{color:var(--text-secondary);font-size:1rem;margin:4px 0 0}.create-booking-back{background:var(--bg-card);border:1px solid var(--border-subtle);color:var(--text-muted);border-radius:12px;width:42px;height:42px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:all .2s ease;flex-shrink:0}.create-booking-back:hover{background:var(--bg-hover);color:var(--text-primary);transform:translate(-2px);border-color:var(--border-strong)}.create-booking-selection-body{flex:1;display:flex;flex-direction:column}.create-booking-subtitle{color:var(--text-secondary);font-size:1rem;margin:0 0 24px;font-weight:500}.create-booking-selector-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px;width:100%}.create-booking-selector-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:16px;padding:28px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;box-shadow:var(--shadow-soft);transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.create-booking-selector-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:16px;border:2px solid transparent;transition:border-color .25s ease;pointer-events:none}.create-booking-selector-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #8b5cf61f}.create-booking-selector-card:hover:before{border-color:var(--accent)}.create-booking-card-icon-wrapper{color:#fff;border-radius:14px;width:52px;height:52px;display:flex;justify-content:center;align-items:center;margin-bottom:16px;transition:transform .25s ease}.create-booking-selector-card:hover .create-booking-card-icon-wrapper{transform:scale(1.08)}.create-booking-selector-card h3{font-size:1.1rem;font-weight:650;color:var(--text-primary);margin:0 0 8px}.create-booking-type-badge{font-size:.7rem;font-weight:700;text-transform:uppercase;padding:3px 10px;border-radius:99px;letter-spacing:.05em;margin-bottom:12px}.create-booking-type-badge.list{background:var(--success-soft);color:var(--success)}.create-booking-type-badge.grid{background:var(--accent-soft);color:var(--accent)}.create-booking-card-desc{font-size:.84rem;color:var(--text-muted);margin:0;line-height:1.5}.create-booking-no-services{grid-column:1 / -1;text-align:center;padding:60px 24px;background:var(--bg-card);border-radius:16px;border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft)}.create-booking-no-services p{color:var(--text-muted);font-size:.95rem;margin:0}.create-booking-iframe-container{flex:1;position:relative;width:100%;background:var(--bg-card);border-radius:16px;border:1px solid var(--border-subtle);box-shadow:var(--shadow-soft);overflow:hidden;min-height:calc(100vh - 130px)}.create-booking-iframe{width:100%;height:100%;border:none;display:block;position:absolute;top:0;left:0}.create-booking-loader-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--bg-card);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:10;gap:16px;border-radius:16px}.create-booking-loader-overlay p{color:var(--text-muted);font-size:.9rem;font-weight:500;margin:0}.create-booking-spinner{width:40px;height:40px;border:3.5px solid var(--accent-soft);border-top-color:var(--accent);border-radius:50%;animation:cb-spin .8s linear infinite}@keyframes cb-spin{to{transform:rotate(360deg)}}:root[data-theme=dark] .create-booking-selector-card:hover{box-shadow:0 12px 32px #8b5cf633}:root{--bg-body: #f3f4f6;--bg-sidebar: #8b5cf6;--bg-sidebar-elevated: #7c3aed;--bg-card: #ffffff;--bg-card-muted: #f3f4f6;--bg-canvas: #f5f5f5;--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #6b7280;--text-on-sidebar: #f9fafb;--accent: #8b5cf6;--accent-hover: #7c3aed;--accent-soft: rgba(139, 92, 246, .15);--primary: #8b5cf6;--primary-light: rgba(139, 92, 246, .12);--border-subtle: rgba(15, 23, 42, .08);--border-strong: rgba(15, 23, 42, .16);--border-color: #e5e7eb;--shadow-soft: 0 4px 16px rgba(0, 0, 0, .06);--input-bg: #ffffff;--input-border: #d1d5db;--nav-item-hover-bg: rgba(255, 255, 255, .15);--nav-item-active-bg: rgba(255, 255, 255, .2);--bg-hover: rgba(0, 0, 0, .05);--success: #10b981;--success-soft: rgba(16, 185, 129, .1);--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .1);--warning: #f59e0b;--warning-soft: rgba(245, 158, 11, .1)}:root[data-theme=light]{--bg-body: #f3f4f6;--bg-sidebar: #8b5cf6;--bg-sidebar-elevated: #7c3aed;--bg-card: #ffffff;--bg-card-muted: #f3f4f6;--bg-canvas: #f5f5f5;--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #6b7280;--text-on-sidebar: #f9fafb;--accent: #8b5cf6;--accent-hover: #7c3aed;--accent-soft: rgba(139, 92, 246, .15);--primary: #8b5cf6;--primary-light: rgba(139, 92, 246, .12);--border-subtle: rgba(15, 23, 42, .08);--border-strong: rgba(15, 23, 42, .16);--border-color: #e5e7eb;--shadow-soft: 0 4px 16px rgba(0, 0, 0, .06);--input-bg: #ffffff;--input-border: #d1d5db;--nav-item-hover-bg: rgba(255, 255, 255, .15);--nav-item-active-bg: rgba(255, 255, 255, .2);--bg-hover: rgba(0, 0, 0, .05);--success: #10b981;--success-soft: rgba(16, 185, 129, .1);--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .1);--warning: #f59e0b;--warning-soft: rgba(245, 158, 11, .1)}:root[data-theme=dark]{--bg-body: #050609;--bg-sidebar: #050609;--bg-sidebar-elevated: #0b0e13;--bg-card: #101318;--bg-card-muted: #181c23;--bg-canvas: #050609;--text-primary: #f9fafb;--text-secondary: #d1d5db;--text-muted: #9ca3af;--text-on-sidebar: #e5e7eb;--accent: #8b5cf6;--accent-hover: #7c3aed;--accent-soft: rgba(139, 92, 246, .24);--primary: #8b5cf6;--primary-light: rgba(139, 92, 246, .2);--border-subtle: rgba(148, 163, 184, .18);--border-strong: rgba(148, 163, 184, .35);--border-color: rgba(148, 163, 184, .2);--shadow-soft: 0 4px 20px rgba(0, 0, 0, .5);--input-bg: #181c23;--input-border: rgba(148, 163, 184, .4);--nav-item-hover-bg: rgba(31, 41, 55, .9);--nav-item-active-bg: rgba(139, 92, 246, .35);--bg-hover: rgba(255, 255, 255, .1);--success: #10b981;--success-soft: rgba(16, 185, 129, .2);--danger: #f87171;--danger-soft: rgba(248, 113, 113, .2);--warning: #fb923c;--warning-soft: rgba(251, 146, 60, .2)}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-body);color:var(--text-primary)}*::-webkit-scrollbar{width:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background-color:#94a3b899;border-radius:999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background-color:#94a3b8e6}*{scrollbar-color:rgba(148,163,184,.8) transparent;scrollbar-width:thin}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{border:1px solid var(--input-border)!important}input[type=time]{min-width:108px}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--accent);color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn-primary:hover{background:var(--accent-hover)!important;color:#fff!important;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf633}.btn-primary:active{transform:translateY(0)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color);border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.btn-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:all .2s}.btn-icon:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-icon.btn-danger:hover{background:#ef44441a;color:#ef4444}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-secondary-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn-secondary-outline:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.btn-danger-outline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;background:transparent;color:#ef4444;border:1px solid rgba(239,68,68,.2);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn-danger-outline:hover{background:#ef44440d;border-color:#ef4444}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-switch .slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-strong, #ccc);transition:.4s}.toggle-switch .slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;box-shadow:0 1px 3px #0003}.toggle-switch input:checked+.slider{background-color:var(--accent)}.toggle-switch input:checked+.slider:before{transform:translate(20px)}.toggle-switch .slider.round{border-radius:34px}.toggle-switch .slider.round:before{border-radius:50%}.toggle-switch.mini{width:32px;height:18px}.toggle-switch.mini .slider:before{height:14px;width:14px;left:2px;bottom:2px}.toggle-switch.mini input:checked+.slider:before{transform:translate(14px)}
