:root{--bg-primary:#1a1a1a;--bg-secondary:#242424;--bg-tertiary:#2d2d2d;--bg-card:#242424;--bg-hover:#333;--bg-active:#3d3d3d;--border-color:#3d3d3d;--border-light:#2d2d2d;--border:var(--border-color);--text-primary:#fff;--text-secondary:#a0a0a0;--text-muted:#666;--accent:#4ade80;--accent-hover:#22c55e;--accent-bg:#4ade801a;--accent-muted:#4ade8033;--warning:#fbbf24;--success:#22c55e;--danger:#ef4444;--danger-hover:#dc2626;--danger-muted:#ef444433;--text-on-warning:#000;--text-on-success:#fff;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--font-sans:-apple-system, blinkmacsystemfont, "Segoe UI", roboto, sans-serif;--text-xs:11px;--text-sm:13px;--text-base:15px;--text-lg:17px;--text-xl:20px;--sidebar-width:240px;--topbar-height:56px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--transition-fast:.15s ease;--transition:.2s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%;overflow:hidden}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);background:var(--bg-primary);-webkit-font-smoothing:antialiased;line-height:1.5}.auth-loading{background:var(--bg-primary);justify-content:center;align-items:center;height:100%;display:flex}.auth-spinner{border:3px solid var(--border-color);border-top-color:var(--text-primary);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite spin}.wizard-container{background:var(--bg-primary);z-index:9999;position:fixed;inset:0;overflow:hidden auto}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-hover);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-color)}*{scrollbar-width:thin;scrollbar-color:var(--bg-hover) var(--bg-primary)}button{cursor:pointer;font-family:inherit}a{color:var(--accent);text-decoration:none}.btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);font-size:var(--text-sm);border-radius:var(--radius-md);transition:all var(--transition-fast);border:1px solid #0000;font-weight:500;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);color:var(--bg-primary)}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover{background:var(--bg-hover)}.btn-sm{padding:var(--space-xs) var(--space-md);font-size:var(--text-xs)}.input{width:100%;padding:var(--space-md) var(--space-lg);font-size:var(--text-sm);color:var(--text-primary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:border-color var(--transition-fast)}.input:focus{border-color:var(--accent);outline:none}.input::placeholder{color:var(--text-muted)}.card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.card-header{padding:var(--space-lg);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;display:flex}.card-title{font-size:var(--text-base);font-weight:600}.card-body{padding:var(--space-lg)}.empty-state{padding:var(--space-2xl);text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state-icon{margin-bottom:var(--space-lg);opacity:.5;font-size:48px}.empty-state-title{font-size:var(--text-lg);color:var(--text-primary);margin-bottom:var(--space-sm);font-weight:600}.empty-state-text{font-size:var(--text-sm);max-width:300px}.grid{gap:var(--space-lg);display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (width<=767px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}@media (width>=768px) and (width<=1023px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}.admin-app{height:100vh;display:flex;overflow:hidden}.overlay{z-index:90;background:#0009;position:fixed;inset:0}.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:100;flex-direction:column;flex-shrink:0;height:100vh;display:flex}.sidebar.mobile,.sidebar.tablet{position:fixed;top:0;bottom:0;left:0}.sidebar-header{padding:var(--space-lg);border-bottom:1px solid var(--border-color);min-height:var(--topbar-height);justify-content:space-between;align-items:center;display:flex}.logo{align-items:center;gap:var(--space-md);min-width:0;display:flex}.logo-icon{flex-shrink:0;font-size:24px}.logo-text{min-width:0}.property-name{font-size:var(--text-base);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.property-subtitle{font-size:var(--text-xs);color:var(--text-muted)}.close-btn{width:32px;height:32px;color:var(--text-secondary);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.close-btn:hover{color:var(--text-primary)}.sidebar-nav{padding:var(--space-lg) 0;flex:1;overflow-y:auto}.nav-section{margin-bottom:var(--space-xl)}.nav-section-label{padding:0 var(--space-lg) var(--space-sm);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);align-items:center;gap:var(--space-sm);font-weight:600;display:flex}.drag-hint{text-transform:none;letter-spacing:normal;opacity:.6;font-size:10px;font-weight:400}.nav-list{flex-direction:column;display:flex}.nav-item.draggable{cursor:grab}.nav-item.draggable:active{cursor:grabbing}.drag-grip{color:var(--text-muted);opacity:.5;transition:all var(--transition-fast);-webkit-user-select:none;user-select:none;letter-spacing:-3px;margin-right:var(--space-xs);font-size:14px}.nav-item:hover .drag-grip{opacity:1;color:var(--accent)}.nav-item-locked{border-top:1px solid var(--border-color);margin-top:var(--space-sm);padding-top:var(--space-md)}.lock-badge{opacity:.5;font-size:12px}.ghost{opacity:.5;background:var(--accent-bg);border-radius:var(--radius-md)}.dragging{background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000004d}.nav-item{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) var(--space-lg);color:var(--text-secondary);font-size:var(--text-sm);text-align:left;transition:all var(--transition-fast);background:0 0;border:none;display:flex}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--accent-bg);color:var(--accent)}.nav-icon{text-align:center;flex-shrink:0;width:20px;font-size:16px}.nav-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.nav-count{font-size:var(--text-xs);background:var(--bg-tertiary);color:var(--text-secondary);text-align:center;border-radius:10px;flex-shrink:0;min-width:24px;padding:2px 8px}.nav-count.empty{opacity:.4;background:var(--bg-hover)}.nav-item.active .nav-count{background:var(--accent);color:var(--bg-primary)}.nav-item.active .nav-count.empty{opacity:.6}.sidebar-footer{padding:var(--space-lg);border-top:1px solid var(--border-color);gap:var(--space-sm);flex-direction:column;display:flex}.preview-link,.logout-btn{align-items:center;gap:var(--space-sm);padding:var(--space-md);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);transition:all var(--transition-fast);background:0 0;border:none;text-decoration:none;display:flex}.preview-link:hover,.logout-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.main-content{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.topbar{align-items:center;gap:var(--space-md);height:var(--topbar-height);padding:0 var(--space-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0;display:flex}.menu-btn{width:40px;height:40px;color:var(--text-primary);border-radius:var(--radius-md);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;display:flex}.menu-btn:hover{background:var(--bg-hover)}.topbar-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.topbar-status{flex:1;justify-content:center;display:flex}.status-unsaved{align-items:center;gap:var(--space-sm);color:var(--warning);font-size:var(--text-sm);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);background:#fbbf2426;font-weight:500;animation:2s ease-in-out infinite pulse-bg;display:flex}.pulse-dot{background:var(--warning);border-radius:50%;width:8px;height:8px;animation:1.5s ease-in-out infinite pulse-dot}@keyframes pulse-bg{0%,to{background:#fbbf2426}50%{background:#fbbf2440}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.status-saved{align-items:center;gap:var(--space-xs);color:var(--accent);font-size:var(--text-sm);opacity:.8;display:flex}.topbar-actions{gap:var(--space-sm);flex-shrink:0;display:flex}.topbar-overlord{border-bottom-color:#4ade8033}.topbar-overlord .topbar-title{color:var(--accent);font-weight:600}.topbar-overlord .topbar-overlord-icon{margin-right:var(--space-sm);opacity:.9}.main-content-overlord .page-content{background:var(--bg-primary)}.btn-icon{font-size:14px}.btn-warning{background:var(--warning);color:var(--text-on-warning);transition:filter var(--transition-fast)}.btn-warning:hover:not(:disabled){filter:brightness(1.1)}.btn-success{background:var(--success);color:var(--text-on-success)}.btn-saving{background:var(--bg-tertiary);color:var(--text-secondary)}.saving-spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.modal-overlay{z-index:1000;padding:var(--space-lg);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-2xl);text-align:center;width:100%;max-width:400px}.modal-icon{margin-bottom:var(--space-md);font-size:48px}.modal-title{font-size:var(--text-lg);margin-bottom:var(--space-sm);font-weight:600}.modal-text{color:var(--text-secondary);font-size:var(--text-sm);margin-bottom:var(--space-xl)}.modal-actions{gap:var(--space-sm);justify-content:center;display:flex}.modal-actions .btn{min-width:120px}.page-content{padding:var(--space-lg);flex:1;overflow-y:auto}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:transform var(--transition)}.slide-enter-from,.slide-leave-to{transform:translate(-100%)}@media (width<=767px){.topbar-title{display:none}.topbar-status{justify-content:flex-start}.btn-text{display:none}.btn-sm{padding:var(--space-sm)}}@media (width>=768px) and (width<=1023px){:root{--sidebar-width:260px}.page-content{padding:var(--space-xl)}}@media (width>=1024px){:root{--sidebar-width:280px}.page-content{padding:var(--space-2xl)}}@media (width>=1440px){:root{--sidebar-width:300px}.page-content{padding:var(--space-2xl) 48px}}.toast-container{bottom:var(--space-xl);gap:var(--space-sm);z-index:10000;pointer-events:none;flex-direction:column;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-lg);pointer-events:auto;min-width:280px;max-width:400px;display:flex;box-shadow:0 8px 32px #0006}.toast-message{font-size:var(--text-sm);color:var(--text-primary);flex:1}.toast-info{border-left:3px solid var(--accent)}.toast-success{border-left:3px solid var(--success)}.toast-warning{border-left:3px solid var(--warning)}.toast-error{border-left:3px solid var(--danger)}.toast-undo-btn{padding:var(--space-xs) var(--space-md);background:var(--accent);color:var(--bg-primary);border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;border:none;font-weight:600;transition:all .15s}.toast-undo-btn:hover{background:var(--accent-hover)}.toast-close{width:24px;height:24px;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);opacity:.5;background:0 0;border:none;justify-content:center;align-items:center;font-size:16px;transition:all .15s;display:flex}.toast-close:hover{opacity:1;background:var(--bg-hover)}.toast-enter-active,.toast-leave-active{transition:all .3s}.toast-enter-from{opacity:0;transform:translateY(20px)}.toast-leave-to{opacity:0;transform:translate(100px)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#dc2626}.modal-delete .modal-icon{font-size:32px}.user-profile-button[data-v-2cca5517]{position:relative}.profile-trigger[data-v-2cca5517]{border:1px solid var(--border-color,#3d3d3d);color:var(--text-primary,#fff);cursor:pointer;background:0 0;border-radius:.375rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;transition:all .2s;display:flex}.profile-trigger[data-v-2cca5517]:hover{background:var(--bg-hover,#333);border-color:var(--border-color,#3d3d3d)}.avatar[data-v-2cca5517],.avatar-placeholder[data-v-2cca5517]{object-fit:cover;background:var(--bg-active,#3d3d3d);width:1.5rem;height:1.5rem;color:var(--text-secondary,#a0a0a0);border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;font-weight:600;display:flex}.user-name[data-v-2cca5517]{display:none}@media (width>=640px){.user-name[data-v-2cca5517]{display:inline}}.profile-menu[data-v-2cca5517]{z-index:50;background:var(--bg-card,#242424);border:1px solid var(--border-color,#3d3d3d);border-radius:.5rem;width:280px;margin-top:.5rem;padding:0;animation:.15s ease-out slideDown-2cca5517;position:absolute;top:100%;right:0;box-shadow:0 10px 15px -3px #0000001a}@keyframes slideDown-2cca5517{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}.menu-header[data-v-2cca5517]{gap:1rem;padding:1rem;display:flex}.menu-avatar[data-v-2cca5517],.menu-avatar-placeholder[data-v-2cca5517]{object-fit:cover;background:var(--bg-active,#3d3d3d);width:2rem;height:2rem;color:var(--text-secondary,#a0a0a0);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.menu-info[data-v-2cca5517]{flex:1;min-width:0}.menu-name[data-v-2cca5517]{color:var(--text-primary,#fff);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.875rem;font-weight:600;overflow:hidden}.menu-email[data-v-2cca5517]{color:var(--text-secondary,#a0a0a0);white-space:nowrap;text-overflow:ellipsis;margin:.25rem 0 0;font-size:.75rem;overflow:hidden}.menu-divider[data-v-2cca5517]{background:var(--border-color,#3d3d3d);height:1px;margin:0}.menu-item[data-v-2cca5517]{width:100%;color:var(--text-primary,#fff);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;transition:background-color .2s;display:flex}.menu-item[data-v-2cca5517]:hover{background:var(--bg-hover,#333)}.menu-sign-out[data-v-2cca5517]{color:var(--text-secondary,#a0a0a0)}.menu-sign-out[data-v-2cca5517]:hover{color:var(--text-primary,#fff)}.icon[data-v-2cca5517]{font-size:.75rem;display:inline-block}.breadcrumb[data-v-c52c0e50]{padding:var(--space-sm) var(--space-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-light);font-size:var(--text-sm)}.breadcrumb-list[data-v-c52c0e50]{align-items:center;gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.breadcrumb-item[data-v-c52c0e50]{align-items:center;gap:var(--space-xs);display:flex}.breadcrumb-link[data-v-c52c0e50]{color:var(--accent);align-items:center;gap:var(--space-xs);transition:color var(--transition-fast);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);text-decoration:none;display:flex}.breadcrumb-link[data-v-c52c0e50]:hover{color:var(--accent-hover);background:var(--bg-tertiary)}.breadcrumb-current[data-v-c52c0e50]{align-items:center;gap:var(--space-xs);color:var(--text-primary);font-weight:500;display:flex}.breadcrumb-icon[data-v-c52c0e50]{font-size:var(--text-lg);align-items:center;display:inline-flex}.breadcrumb-label[data-v-c52c0e50]{white-space:nowrap}.breadcrumb-separator[data-v-c52c0e50]{color:var(--text-muted);margin:0 var(--space-xs)}@media (width<=768px){.breadcrumb[data-v-c52c0e50]{padding:var(--space-sm)}.breadcrumb-list[data-v-c52c0e50]{gap:0}.breadcrumb-separator[data-v-c52c0e50]{font-size:var(--text-xs);margin:0 2px}.breadcrumb-link[data-v-c52c0e50],.breadcrumb-current[data-v-c52c0e50]{padding:var(--space-xs) 2px}}
