:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0f172a;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-tooltip]{position:relative}[data-tooltip]:before{content:attr(data-tooltip);position:absolute;left:.75rem;top:calc(100% - 2px);background:#0f172af2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#f8fafc;padding:.5rem .75rem;border-radius:6px;font-size:.7rem;font-weight:500;white-space:normal;word-wrap:break-word;max-width:260px;line-height:1.5;opacity:0;visibility:hidden;pointer-events:none;transition:all .2s ease;box-shadow:0 4px 6px -1px #0000004d;border:1px solid rgba(255,255,255,.1);z-index:1000}[data-tooltip]:hover:before{opacity:1;visibility:visible;top:100%}body{margin:0;display:flex;min-height:100vh;background:radial-gradient(circle at top right,#1e293b,#0f172a);overflow:hidden}#app{display:flex;width:100%;height:100vh}.sidebar{width:280px;background:#0f172acc;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-right:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;padding:1.5rem 0;flex-shrink:0}.sidebar-header{padding:0 1.5rem 2rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:opacity .2s}.sidebar-header:hover{opacity:.8}.sidebar-logo{width:32px;height:32px;background:linear-gradient(135deg,#6366f1,#a855f7);border-radius:8px}.sidebar-header-text{display:flex;flex-direction:column}.sidebar-title{font-size:1.1rem;font-weight:800;background:linear-gradient(to right,#60a5fa,#a855f7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.project-info{font-size:.75rem;color:#64748b;font-weight:500;margin-top:-2px;line-height:1.2}.project-info.loaded{color:#94a3b8}.home-container{max-width:900px;margin:0 auto;animation:fadeIn .5s ease-out}.hero-section{position:relative;height:300px;border-radius:24px;overflow:hidden;margin-bottom:3rem;background:linear-gradient(135deg,#1e293b,#334155);display:flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.05)}.hero-image{width:100%;height:100%;object-fit:cover;opacity:.6}.hero-overlay{position:absolute;text-align:center;z-index:1}.hero-overlay h1{font-size:3rem;margin-bottom:.5rem;background:linear-gradient(135deg,#fff,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.benefit-card{background:#1e293b66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:1.5rem;transition:transform .2s}.benefit-card:hover{transform:translateY(-5px);border-color:#6366f14d}.benefit-icon{font-size:1.5rem;margin-bottom:1rem;display:block}.benefit-card h3{margin:0 0 .75rem;color:#f8fafc;font-size:1.1rem}.benefit-card p{margin:0;color:#94a3b8;font-size:.9rem;line-height:1.6}.welcome-text{font-size:1.1rem;color:#cbd5e1;line-height:1.8;margin-bottom:2rem;text-align:center}.sidebar-menu{flex:1;padding:0 .75rem;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(99,102,241,.2) transparent}.sidebar-menu::-webkit-scrollbar{width:4px}.sidebar-menu::-webkit-scrollbar-track{background:transparent}.sidebar-menu::-webkit-scrollbar-thumb{background:#6366f133;border-radius:10px}.sidebar-menu::-webkit-scrollbar-thumb:hover{background:#6366f166}.menu-item{margin-bottom:.25rem}.menu-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem;font-size:.8rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:color .2s;-webkit-user-select:none;user-select:none}.menu-header:hover{color:#94a3b8}.menu-arrow{font-size:.7rem;transition:transform .3s ease;color:#475569}.menu-item.expanded .menu-arrow{transform:rotate(180deg)}.sub-menu{padding-left:.5rem;overflow:hidden;max-height:0;transition:max-height .3s ease-out,opacity .3s ease;opacity:0}.menu-item.expanded .sub-menu{max-height:300px;opacity:1;margin-bottom:.5rem;overflow:visible}.nav-link{display:flex;align-items:center;padding:.75rem 1rem;color:#94a3b8;text-decoration:none;border-radius:10px;font-size:.9rem;font-weight:500;transition:all .2s;cursor:pointer;margin:2px 0}.nav-link:hover{background:#ffffff08;color:#fff}.nav-link.active{background:#6366f11a;color:#818cf8}.nav-link-icon{margin-right:.75rem;font-size:1.1rem}.main-content{flex:1;overflow-y:auto;padding:2rem 3rem;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:rgba(99,102,241,.2) transparent}.main-content::-webkit-scrollbar{width:6px}.main-content::-webkit-scrollbar-track{background:transparent}.main-content::-webkit-scrollbar-thumb{background:#6366f11a;border-radius:10px}.main-content::-webkit-scrollbar-thumb:hover{background:#6366f14d}.form-container{background:#1e293b66;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05);border-radius:24px;padding:2.5rem;max-width:600px;margin:0 auto;width:100%;box-shadow:0 25px 50px -12px #00000040}h1{font-size:2rem;font-weight:800;margin-bottom:2rem;text-align:center}.form-group{margin-bottom:1.5rem;text-align:left}label{display:block;margin-bottom:.5rem;font-size:.85rem;font-weight:600;color:#94a3b8}input,select,textarea{width:100%;padding:.75rem 1rem;background:#0f172a80;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.95rem;transition:all .2s;box-sizing:border-box}input:focus,select:focus,textarea:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 4px #6366f11a}button{width:auto;padding:.6rem 1.5rem;background:linear-gradient(to right,#6366f1,#a855f7);border:none;border-radius:10px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary{background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.btn-secondary:hover{background:#ffffff1a}.btn-danger{background:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.2)}.btn-danger:hover{background:#ef444433;color:#f87171}.btn-sm{padding:.35rem .75rem;font-size:.8rem;border-radius:8px}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:2rem}button:hover{filter:brightness(1.1);transform:translateY(-1px)}button:active{transform:scale(.98)}.status-message{margin-top:1.5rem;padding:1rem;border-radius:12px;font-size:.9rem;display:none}.status-message.success{display:block;background:#22c55e1a;color:#4ade80;border:1px solid rgba(34,197,94,.2)}.status-message.error{display:block;background:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.2)}.locations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;margin-top:1rem}.location-card{background:#1e293b66;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.05);border-radius:16px;padding:1.25rem;transition:all .3s ease;position:relative}.card-menu-btn{position:absolute;top:1rem;right:1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:8px;transition:background .2s;color:#64748b;font-size:1.2rem;padding:0;background:transparent}.card-menu-btn:hover{background:#ffffff0d;color:#fff}.dropdown-menu{position:absolute;top:3rem;right:1rem;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:12px;box-shadow:0 10px 15px -3px #00000080;z-index:100;min-width:140px;display:none;overflow:hidden}.dropdown-menu.show{display:block;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{width:100%;padding:.75rem 1rem;font-size:.85rem;cursor:pointer;transition:background .2s;display:flex;align-items:center;gap:.5rem;color:#cbd5e1;background:transparent;border:none;border-radius:0;margin:0;text-align:left;box-shadow:none}.dropdown-item:hover{background:#ffffff0d;transform:none;filter:none}.dropdown-item.delete{color:#f87171}.dropdown-item.delete:hover{background:#ef44441a}.location-status-container{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.05)}.status-label{font-size:.8rem;color:#94a3b8;font-weight:500}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;inset:0;background-color:#ffffff1a;transition:.4s;border-radius:24px}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%;box-shadow:0 2px 4px #0003}input:checked+.slider{background:linear-gradient(135deg,#6366f1,#a855f7)}input:focus+.slider{box-shadow:0 0 1px #6366f1}input:checked+.slider:before{transform:translate(20px)}.toggle-container{display:flex;align-items:center;justify-content:space-between;background:#0f172a4d;padding:.75rem 1rem;border-radius:12px;border:1px solid rgba(255,255,255,.05)}.label-text{font-size:.9rem;font-weight:500;color:#94a3b8}.location-card:hover{border-color:#6366f14d;background:#1e293b99}.location-name{font-size:1.1rem;font-weight:700;color:#fff;margin-bottom:.5rem}.location-info{font-size:.8rem;color:#64748b;margin-bottom:.2rem}.location-tag{display:inline-block;padding:.2rem .6rem;background:#6366f11a;color:#818cf8;border-radius:9999px;font-size:.7rem;font-weight:600;margin-top:.75rem}.loading-spinner{margin:4rem auto;width:32px;height:32px;border:2px solid rgba(99,102,241,.1);border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.table-container{background:#1e293b66;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05);border-radius:16px;overflow:hidden;margin-top:1rem}table{width:100%;border-collapse:collapse;text-align:left}th{background:#0f172a80;padding:1rem;font-size:.8rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.05)}td{padding:1rem;font-size:.9rem;color:#cbd5e1;border-bottom:1px solid rgba(255,255,255,.05)}tr:last-child td{border-bottom:none}tr:hover td{background:#ffffff05}.text-center{text-align:center}.badge{display:inline-block;padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:600}.badge-info{background:#6366f11a;color:#818cf8}.form-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.form-section:last-of-type{border-bottom:none}.form-section h3{font-size:1.1rem;color:#f8fafc;margin-bottom:1.25rem;font-weight:600}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.label-with-tooltip{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.label-with-tooltip label{margin-bottom:0}.info-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:#6366f1;color:#fff;border-radius:50%;font-size:12px;font-weight:700;cursor:help;transition:background .2s}.info-icon:hover{background:#4f46e5}.field-legend{display:block;font-size:.75rem;color:#64748b;margin-top:.25rem}@media(max-width:600px){.form-grid{grid-template-columns:1fr}}.form-section.collapsible{border:1px solid rgba(255,255,255,.05);border-radius:16px;background:#0f172a33;padding:0;overflow:hidden;transition:all .3s ease;margin-bottom:2rem}.form-section-header{padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.form-section-header:hover{background:#ffffff08}.form-section-header h3{margin:0!important;font-size:1rem!important;color:#f1f5f9!important}.section-arrow{font-size:.8rem;color:#64748b;transition:transform .3s ease}.form-section.collapsible.expanded .section-arrow{transform:rotate(180deg);color:#818cf8}.form-section-content{max-height:0;overflow:hidden;padding:0 1.5rem;opacity:0;transition:max-height .4s cubic-bezier(.4,0,.2,1),padding .4s ease,opacity .3s ease}.form-section.collapsible.expanded .form-section-content{max-height:1000px;padding:0 1.5rem 1.5rem;opacity:1}.required-mark{color:#f87171;margin-left:2px;font-weight:700}.card{background:#1e293b66;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.05);border-radius:20px;padding:2rem 2.5rem;width:100%;box-sizing:border-box}.view-header{margin-bottom:1.75rem}.view-header h2{font-size:1.6rem;font-weight:800;margin:0 0 .35rem;background:linear-gradient(to right,#f8fafc,#94a3b8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.view-header p{margin:0;color:#64748b;font-size:.9rem}.message{padding:.85rem 1rem;border-radius:12px;font-size:.88rem;white-space:pre-line;margin-bottom:1rem}.message.hidden{display:none}.message.success{background:#22c55e1a;color:#4ade80;border:1px solid rgba(34,197,94,.2)}.message.error{background:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.2)}.rb-day-card{background:#0f172a59;border:1px solid rgba(255,255,255,.05);border-radius:14px;margin-bottom:.75rem;overflow:hidden;transition:border-color .25s,background .25s;opacity:.55}.rb-day-card.rb-day-enabled{opacity:1;border-color:#6366f140;background:#1e293b80}.rb-day-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.04)}.rb-day-title{display:flex;align-items:center}.rb-day-name{font-size:.95rem;font-weight:600;color:#e2e8f0}.rb-slots-container{padding:.75rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.6rem}.rb-slot-inner{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.rb-slot-field{display:flex;flex-direction:column;flex:1;min-width:120px}.rb-slot-field label{font-size:.75rem;color:#64748b;margin-bottom:.3rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.rb-slot-field input[type=time]{padding:.55rem .85rem;font-size:.9rem}.rb-slot-sep{color:#475569;font-size:1.1rem;padding-bottom:.5rem;flex-shrink:0}.rb-day-card:not(.rb-day-enabled) input,.rb-day-card:not(.rb-day-enabled) button{opacity:.35;pointer-events:none}.rb-day-card:not(.rb-day-enabled) .switch{pointer-events:all;opacity:1}.dashboard-view{animation:fadeIn .5s ease-out}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#1e293b66;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:1.5rem;border-radius:1.25rem;display:flex;align-items:center;gap:1.25rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid rgba(255,255,255,.05);transition:transform .3s ease,box-shadow .3s ease;position:relative;overflow:hidden}.stat-card:hover{transform:translateY(-5px);box-shadow:0 10px 15px -3px #0003}.stat-icon{width:50px;height:50px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.stat-icon.locations{background:#3b82f626;color:#60a5fa}.stat-icon.resources{background:#10b98126;color:#34d399}.stat-icon.services{background:#f59e0b26;color:#fbbf24}.stat-icon.bookings{background:#8b5cf626;color:#a78bfa}.stat-info h3{font-size:1.75rem;margin:0;font-weight:700;color:#fff}.stat-label{display:block;font-size:.8rem;color:#94a3b8;margin-bottom:.2rem;text-transform:uppercase;letter-spacing:.05em}.dashboard-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:1.5rem}@media(max-width:1024px){.dashboard-grid{grid-template-columns:1fr}}.recent-list{min-height:250px}.simple-table{width:100%;border-collapse:collapse}.simple-table th{text-align:left;padding:.75rem 1rem;font-size:.7rem;text-transform:uppercase;color:#64748b;border-bottom:1px solid rgba(255,255,255,.05)}.simple-table td{padding:.85rem 1rem;border-bottom:1px solid rgba(255,255,255,.03)}.quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.action-btn{background:#0f172a4d;border:1px solid rgba(255,255,255,.05);padding:1.25rem 1rem;border-radius:16px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:.75rem;color:#cbd5e1;font-size:.8rem;text-align:center}.action-btn:hover{background:#1e293b99;border-color:#6366f1;color:#fff;transform:translateY(-2px)}.action-icon{width:32px;height:32px;background:#6366f1;color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.stat-trend{font-size:.7rem;padding:.15rem .5rem;border-radius:20px;margin-top:.25rem;display:inline-block}.stat-trend.positive{background:#34d3991a;color:#34d399}.stat-trend.neutral{background:#94a3b81a;color:#94a3b8}.empty-state{padding:3rem;text-align:center;color:#64748b}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-wrapper{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100vw;position:fixed;top:0;left:0;background:radial-gradient(circle at top right,#1e1b4b,#0f172a,#020617);z-index:9999;padding:1rem}.login-card{width:100%;max-width:440px;background:#0f172a66;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:2.5rem;box-shadow:0 25px 50px -12px #00000080,0 0 40px #a855f71a;animation:fadeIn .6s cubic-bezier(.16,1,.3,1) forwards}.login-header{text-align:center;margin-bottom:2rem}.login-logo{width:48px;height:48px;background:linear-gradient(135deg,#6366f1,#a855f7);border-radius:12px;margin:0 auto 1rem;box-shadow:0 0 20px #6366f166}.login-header h2{font-size:1.75rem;font-weight:800;margin:0 0 .5rem;background:linear-gradient(to right,#60a5fa,#a855f7);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.login-header p{color:#94a3b8;font-size:.875rem;margin:0}.login-tabs{display:flex;background:#0f172a99;padding:4px;border-radius:12px;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.05)}.login-tab{flex:1;padding:.5rem;text-align:center;border-radius:8px;font-size:.85rem;font-weight:600;color:#94a3b8;cursor:pointer;transition:all .2s;background:transparent;border:none;box-shadow:none}.login-tab:hover{color:#fff}.login-tab.active{background:#6366f126;color:#818cf8;box-shadow:0 1px 3px #0000001a}.input-icon-wrapper{position:relative}.input-icon-wrapper input,.input-icon-wrapper select{padding-left:2.75rem!important}.input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#64748b;font-size:1rem;pointer-events:none}.password-toggle{position:absolute;right:1rem;top:50%;transform:translateY(-50%);color:#64748b;cursor:pointer;background:none;border:none;padding:0;font-size:.9rem}.password-toggle:hover{color:#fff}.login-btn{width:100%;padding:.8rem;font-size:.95rem;margin-top:1.5rem;box-shadow:0 4px 12px #a855f733}
