.dashboard-sidebar{-webkit-backdrop-filter:blur(20px);z-index:1000;background:linear-gradient(#fffffffa,#fffffff2);border-right:1px solid #e2e8f0cc;flex-direction:column;width:280px;height:100vh;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:4px 0 24px #00000014,2px 0 8px #0000000a}.dashboard-sidebar.open{transform:translate(0)}.sidebar-overlay{z-index:999;opacity:0;visibility:hidden;background:#00000080;transition:all .3s;display:block;position:fixed;inset:0}.sidebar-overlay.visible{opacity:1;visibility:visible}.sidebar-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:20px 16px;display:flex}.sidebar-logo{border-radius:12px;width:42px;height:42px}.sidebar-title h2{background:linear-gradient(135deg, var(--primary), var(--gradient-end));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.3rem;font-weight:700}.sidebar-title p{color:var(--text-secondary);margin:0;font-size:.8rem}.sidebar-user{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:16px;display:flex}.user-avatar{background:linear-gradient(135deg, var(--primary), var(--gradient-end));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.1rem;font-weight:700;transition:all .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #1ca8a84d,0 2px 4px #1ca8a833}.user-avatar:before{content:"";background:linear-gradient(45deg,#0000,#ffffff4d,#0000);width:200%;height:200%;transition:all .5s;position:absolute;top:-50%;left:-50%;transform:rotate(45deg)}.sidebar-user:hover .user-avatar{transform:scale(1.05);box-shadow:0 6px 20px #1ca8a866,0 4px 8px #1ca8a84d}.sidebar-user:hover .user-avatar:before{animation:1s ease-in-out shine}@keyframes shine{0%{transform:translate(-100%)translateY(-100%)rotate(45deg)}to{transform:translate(100%)translateY(100%)rotate(45deg)}}.user-info{flex:1;min-width:0}.user-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px;font-size:.9rem;font-weight:600;overflow:hidden}.user-role{color:var(--primary);margin:0 0 2px;font-size:.75rem;font-weight:600}.user-condo{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.7rem;overflow:hidden}.sidebar-nav{flex:1;padding:16px 0;overflow-y:auto}.nav-item{color:var(--text);border-left:3px solid #0000;border-radius:12px;align-items:center;gap:12px;min-height:48px;margin:4px 8px;padding:14px 16px;font-size:.9rem;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.nav-item:before{content:"";background:linear-gradient(180deg, var(--primary), var(--gradient-end));width:3px;transition:transform .3s;position:absolute;top:0;bottom:0;left:0;transform:scaleY(0)}.nav-item:hover{color:var(--primary);background:linear-gradient(90deg,#1ca8a814,#1ca8a80a)}.nav-item:hover:before{transform:scaleY(1)}.nav-item.active{color:var(--primary);border-left-color:var(--primary);background:linear-gradient(90deg,#1ca8a826,#1ca8a814);font-weight:600;box-shadow:0 2px 8px #1ca8a826}.nav-item.active:before{transform:scaleY(1)}.nav-icon{width:22px;height:22px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;display:flex}.nav-label{font-size:.9rem}.sidebar-footer{border-top:1px solid var(--border);padding:16px}.logout-button{color:#dc2626;cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:48px;padding:14px 16px;font-size:.9rem;font-weight:600;transition:all .3s;display:flex}.logout-button:hover{background:#fee2e2}@media (min-width:768px){.dashboard-sidebar{width:260px}.sidebar-header{padding:24px 20px}.sidebar-logo{width:46px;height:46px}.sidebar-title h2{font-size:1.4rem}.sidebar-user{padding:18px 20px}.user-avatar{width:48px;height:48px;font-size:1.2rem}.user-name{font-size:.95rem}.user-role{font-size:.8rem}.user-condo{font-size:.75rem}.nav-item{min-height:44px;margin:4px 10px;padding:14px 18px}.sidebar-nav{padding:18px 0}.sidebar-footer{padding:18px}}@media (min-width:1024px){.dashboard-sidebar{width:280px;transform:translate(0)}.sidebar-overlay{display:none}.sidebar-header{padding:30px 20px}.sidebar-logo{width:50px;height:50px}.sidebar-title h2{font-size:1.5rem}.sidebar-title p{font-size:.85rem}.sidebar-user{padding:20px}.user-avatar{width:52px;height:52px;font-size:1.3rem}.nav-item{gap:14px;margin:4px 12px;padding:14px 20px}.nav-item:hover{transform:translate(4px)}.nav-icon{width:24px;height:24px}.nav-label{font-size:.95rem}.sidebar-nav{padding:20px 0}.sidebar-footer{padding:20px}.logout-button{padding:14px 20px}}
.dashboard-header{-webkit-backdrop-filter:blur(20px);z-index:100;background:linear-gradient(135deg,#fffffffa,#fffffff2);border-bottom:1px solid #e2e8f0cc;padding:14px 16px;position:sticky;top:0;box-shadow:0 4px 20px #0000000f,0 1px 3px #0000000a}.header-content{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.menu-toggle-button{background:linear-gradient(135deg, var(--primary), var(--gradient-end));color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:10px;transition:all .2s;display:flex;box-shadow:0 2px 8px #1ca8a84d}.menu-toggle-button:hover{transform:scale(1.05);box-shadow:0 4px 12px #1ca8a866}.menu-toggle-button:active{transform:scale(.95)}.header-info{flex:1;min-width:0}.header-title{background:linear-gradient(135deg, var(--text), var(--text-secondary));-webkit-text-fill-color:transparent;letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;-webkit-background-clip:text;background-clip:text;margin:0 0 2px;font-size:1.25rem;font-weight:800;overflow:hidden}.header-date{color:var(--text-secondary);text-transform:capitalize;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.75rem;overflow:hidden}.header-condo{order:1;width:100%;margin-top:8px}.condo-badge{background:linear-gradient(135deg, var(--primary), var(--gradient-end));color:#fff;text-align:center;border-radius:10px;width:100%;padding:8px 16px;font-size:.8rem;font-weight:600;transition:all .3s;display:block;position:relative;overflow:hidden;box-shadow:0 4px 12px #1ca8a84d,0 2px 4px #1ca8a833}.condo-badge:before{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.condo-badge:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1ca8a866,0 4px 8px #1ca8a84d}.condo-badge:hover:before{left:100%}@media (min-width:768px){.dashboard-header{padding:18px 24px}.header-content{flex-wrap:nowrap;gap:16px}.header-title{font-size:1.5rem}.header-date{font-size:.85rem}.header-condo{order:0;width:auto;margin-top:0}.condo-badge{border-radius:20px;width:auto;padding:10px 20px;font-size:.85rem;display:inline-block}}@media (min-width:1024px){.dashboard-header{padding:24px 30px}.menu-toggle-button{display:none}.header-title{margin:0 0 6px;font-size:1.9rem}.header-date{font-size:.9rem}.condo-badge{border-radius:24px;padding:10px 20px;font-size:.9rem}}
.dashboard-layout{background:linear-gradient(135deg,#f0fdfa33,#fffc);min-height:100vh;display:flex;position:relative}.dashboard-layout:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle at 20%,#1ca8a80d,#0000 50%),radial-gradient(circle at 80% 80%,#0ea5e90d,#0000 50%);position:fixed;inset:0}.dashboard-main{z-index:1;flex-direction:column;flex:1;width:100%;margin-left:0;transition:margin-left .3s;display:flex;position:relative}.dashboard-content{background:linear-gradient(135deg,#f0fdfa4d,#ffffff80);flex:1;min-height:100vh;padding:16px;overflow-y:auto}.dashboard-loading{flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;padding:20px;display:flex}.loading-spinner{border:3px solid #1ca8a81a;border-top-color:var(--primary);border-right-color:var(--gradient-end);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin;box-shadow:0 4px 12px #1ca8a833}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:768px){.dashboard-content{padding:24px}.dashboard-loading{gap:20px}.loading-spinner{border-width:4px;width:52px;height:52px}}@media (min-width:1024px){.dashboard-main{margin-left:280px}.dashboard-content{padding:32px}.loading-spinner{width:56px;height:56px}}
