:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{width:100%;max-width:100%;min-height:100svh}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}.page{flex-direction:column;width:100vw;height:100vh;font-family:system-ui,Segoe UI,sans-serif;display:flex;position:relative;left:50%;overflow:hidden;transform:translate(-50%)}.bg{background-image:url(/assets/hero-CLDdwZDr.png);background-position:bottom;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.bg:after{content:"";background:linear-gradient(160deg,#080c1cb8 0%,#0e16308c 45%,#0a1224a6 100%);position:absolute;inset:0}.nav{z-index:10;-webkit-backdrop-filter:blur(12px);background:#ffffff0a;border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding:20px 48px;display:flex;position:relative}.logo{color:#fff;align-items:center;gap:10px;display:flex}.logoIcon{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;display:flex}.logoText{letter-spacing:2px;color:#f0f0f5;font-size:20px;font-weight:600}.loginBtn{color:#fff;letter-spacing:1px;cursor:pointer;-webkit-backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #ffffff59;border-radius:24px;padding:9px 28px;font-size:15px;font-weight:500;transition:background .2s,border-color .2s,transform .15s}.loginBtn:hover{background:#fff3;border-color:#fff9;transform:translateY(-1px)}.loginBtn:active{transform:translateY(0)}.hero{z-index:10;text-align:center;flex-direction:column;flex:1;justify-content:space-between;align-items:center;padding:40px 24px;display:flex;position:relative;overflow:hidden}.heroContent{flex-direction:column;flex:1;justify-content:center;align-items:center;display:flex}.badge{color:#a5b4fc;letter-spacing:1.5px;background:#6366f133;border:1px solid #6366f166;border-radius:20px;align-items:center;gap:6px;margin-bottom:28px;padding:5px 16px;font-size:13px;display:inline-flex}.badgeDot{background:#6366f1;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite pulse;box-shadow:0 0 6px #6366f1}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.title{letter-spacing:6px;color:#fff;text-shadow:0 4px 32px #0006;margin:0 0 16px;font-size:clamp(48px,7vw,88px);font-weight:700;line-height:1.1}.titleAccent{background:linear-gradient(90deg,#818cf8,#c084fc);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.subtitle{color:#dcdcf0bf;letter-spacing:3px;margin:0 0 52px;font-size:clamp(16px,2vw,20px);font-weight:300}.actions{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.primaryBtn{color:#fff;letter-spacing:1px;cursor:pointer;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:32px;padding:14px 40px;font-size:16px;font-weight:600;transition:transform .2s,box-shadow .2s;box-shadow:0 8px 32px #6366f173}.primaryBtn:hover{transform:translateY(-2px);box-shadow:0 12px 40px #6366f199}.secondaryBtn{color:#ffffffe6;letter-spacing:1px;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff40;border-radius:32px;padding:14px 40px;font-size:16px;font-weight:500;transition:background .2s,transform .2s}.secondaryBtn:hover{background:#ffffff26;transform:translateY(-2px)}.stats{flex-shrink:0;gap:1px;display:flex}.statItem{-webkit-backdrop-filter:blur(16px);text-align:center;color:#fff;background:#ffffff0f;border:1px solid #ffffff1a;padding:16px 40px}.statItem:first-child{border-radius:12px 0 0 12px}.statItem:last-child{border-radius:0 12px 12px 0}.statNum{letter-spacing:1px;font-size:28px;font-weight:700}.statLabel{color:#c8c8dca6;letter-spacing:1.5px;margin-top:4px;font-size:12px}@media (width<=640px){.nav{padding:16px 20px}.stats{width:100%}.statItem{flex:1;padding:12px 20px}.statNum{font-size:22px}}.loginPage{background:linear-gradient(135deg,#1677ff 0%,#0a3d8f 100%);justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.loginPage:before{content:"";background:#ffffff0f;border-radius:50%;width:500px;height:500px;position:absolute;top:-150px;right:-150px}.loginPage:after{content:"";background:#ffffff0a;border-radius:50%;width:300px;height:300px;position:absolute;bottom:-100px;left:-100px}.loginCard{z-index:1;background:#fff;border-radius:20px;width:100%;max-width:420px;padding:48px 40px;position:relative;box-shadow:0 24px 64px #0003}.loginLogo{align-items:center;gap:12px;margin-bottom:32px;display:flex}.loginLogoIcon{font-size:40px}.loginLogoText{flex-direction:column;display:flex}.loginLogoName{color:#1a1a2e;font-size:20px;font-weight:700;line-height:1.2}.loginLogoSub{color:#999;font-size:12px}.loginTitle{color:#1a1a2e;margin:0 0 6px;font-size:24px;font-weight:700}.loginSubtitle{color:#888;margin:0 0 28px;font-size:14px}.loginForm{flex-direction:column;gap:18px;display:flex}.formGroup{flex-direction:column;gap:7px;display:flex}.formLabel{color:#333;font-size:14px;font-weight:500}.formInput{color:#1a1a2e;border:1.5px solid #e5e7eb;border-radius:10px;outline:none;padding:12px 16px;font-size:15px;transition:border-color .2s,box-shadow .2s}.formInput:focus{border-color:#1677ff;box-shadow:0 0 0 3px #1677ff1a}.formOptions{justify-content:space-between;align-items:center;margin-top:-4px;font-size:13px;display:flex}.rememberMe{color:#666;cursor:pointer;align-items:center;gap:6px;display:flex}.forgotPassword{color:#1677ff;cursor:pointer}.forgotPassword:hover{text-decoration:underline}.loginSubmitBtn{color:#fff;cursor:pointer;background:#1677ff;border:none;border-radius:10px;margin-top:4px;padding:14px;font-size:16px;font-weight:600;transition:background .2s,transform .1s}.loginSubmitBtn:hover{background:#0958d9}.loginSubmitBtn:active{transform:scale(.98)}.sidebar{background:#fff;flex-direction:column;width:220px;min-width:220px;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto;box-shadow:2px 0 8px #0000000f}.sidebarLogo{border-bottom:1px solid #f0f0f0;align-items:center;gap:10px;padding:24px 20px 20px;display:flex}.sidebarLogoIcon{font-size:32px}.sidebarLogoText{flex-direction:column;display:flex}.sidebarLogoName{color:#1a1a2e;font-size:16px;font-weight:700;line-height:1.3}.sidebarLogoSub{color:#999;font-size:11px}.sidebarNav{flex-direction:column;flex:1;gap:2px;padding:12px 12px 0;display:flex}.navItem{cursor:pointer;color:#555;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;transition:background .15s,color .15s;display:flex}.navItem:hover{color:#1677ff;background:#f0f4ff}.navItemActive{color:#fff;background:#1677ff;font-weight:500}.navItemActive:hover{color:#fff;background:#0958d9}.navIcon{text-align:center;flex-shrink:0;width:20px;font-size:16px}.navLabel{flex:1}.sidebarApp{background:linear-gradient(135deg,#e8f0fe 0%,#dbeafe 100%);border-radius:12px;margin:12px;padding:12px}.appCard{flex-direction:column;gap:10px;display:flex}.appInfo{align-items:center;gap:8px;display:flex}.appEmoji{font-size:24px}.appTitle{color:#1a1a2e;margin:0;font-size:13px;font-weight:600}.appSub{color:#888;margin:0;font-size:11px}.qrCode{color:#aaa;letter-spacing:1px;background:#fff;border-radius:8px;justify-content:center;align-items:center;height:70px;font-size:12px;font-weight:500;display:flex}.announceCard{position:relative}.announceList{min-height:120px}.carouselFooter{border-top:1px solid #f5f5f5;justify-content:center;align-items:center;gap:8px;margin-top:8px;padding-top:12px;display:flex}.carouselDots{align-items:center;gap:6px;display:flex}.carouselDot{cursor:pointer;background:#ddd;border-radius:50%;width:6px;height:6px;transition:background .2s,transform .2s}.carouselDot:hover{background:#bbb}.carouselDotActive{background:#1677ff;transform:scale(1.3)}.carouselNavBtn{color:#888;cursor:pointer;opacity:0;pointer-events:none;background:#fff;border:1px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:16px;line-height:1;transition:opacity .2s,background .15s;display:flex}.carouselNavBtnVisible{opacity:1;pointer-events:auto}.carouselNavBtn:hover{color:#1677ff;background:#f0f4ff;border-color:#1677ff}.dashboardPage{background:#f0f4ff;height:100vh;display:flex;overflow:hidden}.dashboardMain{flex-direction:column;flex:1;display:flex;overflow:hidden}.dashboardHeader{background:#fff;border-bottom:1px solid #eef0f5;justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.welcomeTitle{color:#1a1a2e;margin:0 0 2px;font-size:20px;font-weight:700}.welcomeSub{color:#888;margin:0;font-size:13px}.headerRight{align-items:center;gap:16px;display:flex}.notifBtn{cursor:pointer;background:#f5f5f5;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:flex;position:relative}.notifBadge{color:#fff;background:#ff4d4f;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:700;display:flex;position:absolute;top:-2px;right:-2px}.userInfo{cursor:pointer;color:#333;align-items:center;gap:8px;font-size:14px;display:flex}.userAvatar{color:#fff;background:linear-gradient(135deg,#1677ff,#0958d9);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:600;display:flex}.userName{font-weight:500}.dashboardContent{flex:1;align-items:flex-start;gap:20px;padding:20px 28px;display:flex;overflow-y:auto}.contentLeft{flex-direction:column;flex:1;gap:16px;min-width:0;display:flex}.contentRight{flex-direction:column;gap:16px;width:300px;min-width:300px;display:flex}.card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 4px #0000000f}.cardHeader{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.cardTitle{color:#1a1a2e;margin:0 0 14px;font-size:15px;font-weight:600}.cardHeader .cardTitle{margin:0}.cardMore{color:#1677ff;cursor:pointer;font-size:12px}.propertyCard{color:#fff;background:linear-gradient(135deg,#1677ff 0%,#0a3d8f 100%);border-radius:14px;justify-content:space-between;align-items:center;min-height:180px;padding:28px;display:flex;position:relative;overflow:hidden}.propertyCard:before{content:"";background:#ffffff0f;border-radius:50%;width:200px;height:200px;position:absolute;top:-60px;right:120px}.propertyInfo{z-index:1;position:relative}.propertyBadge{color:#ffffffe6;background:#fff3;border-radius:20px;margin-bottom:10px;padding:3px 10px;font-size:12px;display:inline-block}.propertyName{color:#fff;margin:0 0 4px;font-size:22px;font-weight:700}.linkIcon{opacity:.7;font-size:16px}.propertyType{color:#ffffffbf;margin:0 0 16px;font-size:13px}.propertyMeta{align-items:center;gap:12px;margin-bottom:20px;display:flex}.metaItem{flex-direction:column;gap:2px;display:flex}.metaLabel{color:#fff9;font-size:11px}.metaValue{color:#fff;font-size:13px;font-weight:500}.metaSep{background:#fff3;width:1px;height:28px}.setDefaultBtn{color:#fff;cursor:pointer;z-index:2;background:#fff3;border:1px solid #fff6;border-radius:6px;padding:5px 12px;font-size:12px;transition:background .2s;position:absolute;top:16px;right:16px}.setDefaultBtn:hover{background:#ffffff59}.propertyImgArea{opacity:.3;z-index:1;font-size:100px;position:relative}.servicesGrid{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.serviceItem{cursor:pointer;flex-direction:column;align-items:center;gap:6px;display:flex}.serviceIcon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:700;transition:transform .15s;display:flex}.serviceItem:hover .serviceIcon{transform:scale(1.08)}.serviceLabel{color:#555;text-align:center;font-size:12px}.announceItem{cursor:pointer;border-bottom:1px solid #f5f5f5;align-items:center;gap:10px;padding:10px 0;display:flex}.announceItem:last-child{border-bottom:none;padding-bottom:0}.announceIcon{flex-shrink:0;font-size:14px}.announceTitle{color:#333;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;overflow:hidden}.announceDate{color:#aaa;flex-shrink:0;font-size:12px}.propItem{cursor:pointer;border-radius:8px;align-items:center;gap:10px;margin-bottom:6px;padding:10px;transition:background .15s;display:flex}.propItem:last-of-type{margin-bottom:0}.propItem:hover{background:#f5f7ff}.propItemActive{background:#f0f4ff;border:1px solid #d0e0ff}.propItemIcon{background:#e8f0fe;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.propItemInfo{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.propItemName{color:#1a1a2e;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.propItemRole{color:#888;font-size:11px}.defaultTag{color:#fff;background:#1677ff;border-radius:4px;flex-shrink:0;padding:2px 7px;font-size:10px}.addProp{text-align:center;color:#1677ff;cursor:pointer;border:1px dashed #d0e0ff;border-radius:8px;margin-top:8px;padding:10px;font-size:13px;transition:background .15s}.addProp:hover{background:#f0f4ff}.todoItem{border-bottom:1px solid #f5f5f5;align-items:center;gap:10px;padding:10px 0;display:flex}.todoItem:last-child{border-bottom:none;padding-bottom:0}.todoIcon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:700;display:flex}.todoInfo{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.todoLabel{color:#333;font-size:13px;font-weight:500}.todoDetail{color:#888;font-size:11px}.todoAmount{color:#fa8c16;flex-shrink:0;font-size:13px;font-weight:600}.todoAction{color:#1677ff;cursor:pointer;white-space:nowrap;background:#f0f4ff;border:none;border-radius:6px;padding:5px 10px;font-size:12px;transition:background .15s}.todoAction:hover{background:#dbeafe}.placeholderPage{flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.placeholderBox{color:#aaa;flex-direction:column;align-items:center;gap:12px;display:flex}.placeholderIcon{font-size:48px}.placeholderTitle{color:#555;margin:0;font-size:18px;font-weight:600}.placeholderSub{color:#aaa;margin:0;font-size:13px}.feeTotalRow{border-bottom:1px solid #f5f5f5;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 0;display:flex}.feeTotalLabel{color:#888;margin:0 0 4px;font-size:12px}.feeTotalAmount{color:#1a1a2e;margin:0;font-size:22px;font-weight:700}.payBtn{color:#fff;cursor:pointer;background:#1677ff;border:none;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600;transition:background .2s}.payBtn:hover{background:#0958d9}.feeItem{align-items:center;gap:8px;padding:8px 0;font-size:13px;display:flex}.feeItemIcon{font-size:16px}.feeItemName{color:#555;flex:1}.feeItemVal{color:#333;font-weight:500}
