@font-face{font-family:Proposal Fira;src:url('assets/FiraSans-Regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Proposal Fira;src:url('assets/FiraSans-Medium.woff2') format('woff2');font-weight:500 600;font-display:swap}@font-face{font-family:Proposal Fira;src:url('assets/FiraSans-Bold.woff2') format('woff2');font-weight:700 900;font-display:swap}
:root{--green:#10398e;--ink:#142c52;--muted:#5e6e85;--line:#dce4ef;--bg:#f3f6fb;--brand:#10398e;--accent:#e67c00;--success:#347017}body{background:var(--bg);font-family:Proposal Fira,Arial,sans-serif;font-size:16px}h1,h2,h3,.brand,.number,.amount{font-family:Proposal Fira,Arial,sans-serif}h1{font-size:34px;letter-spacing:-1px;line-height:1.15}h2{font-size:20px}h3{font-size:16px}p{line-height:1.6}button{font-weight:500;border-radius:8px;transition:background .15s,box-shadow .15s;min-height:40px}button:hover{background:#edf3fc}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #e67c00;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.55}.primary,.amenity-book,.poll button,.tabs button.selected,.time-slot.selected{background:var(--brand);border-color:var(--brand);color:#fff}.primary:hover,.amenity-book:hover,.poll button:hover{background:#0b2a6a}aside{width:260px;padding:26px 18px 20px;border:0;background:#0d2b63;color:#fff}.brand{background:#fff;border-radius:9px;padding:15px;display:flex;flex-direction:column;align-items:start;gap:12px}.brand img{width:160px;height:52px;object-fit:contain;object-position:left}.brand>span{font-size:11px;letter-spacing:2px;color:#10398e;text-transform:uppercase;border-top:1px solid #dce4ef;width:100%;padding-top:10px}.property{border-color:#ffffff22;background:#ffffff08;font-size:14px;margin:20px 0;padding:13px;line-height:1.4}.property small,.user small{color:#b9cbe8;font-size:12px}.navlabel{color:#a8bee0;font-size:11px;letter-spacing:1.6px}#nav a{color:#d2def1;border-radius:7px;font-size:14px;min-height:43px;padding:10px 12px;margin:3px 0;gap:12px}#nav a:hover{background:#ffffff10;color:#fff}#nav a.active{background:#fff;color:#10398e;box-shadow:inset 4px 0 #e67c00}#nav a em{background:#eaf0fa;color:#10398e}.asidebottom{border-top:1px solid #ffffff22;margin-top:auto}.sos{background:#ffffff09;border-color:#ffffff33;color:#ffdab0;font-size:12px}.sos:hover{background:#ffffff18}.user{background:transparent;color:white;font-size:14px}.user:hover{background:transparent}.avatar{background:#dce7fa;color:#10398e;font-weight:700}.shell{margin-left:260px}header{height:76px;background:#fff;padding:0 38px;border-bottom:1px solid var(--line);color:#526780}.demo{border:1px solid #e8c597;background:#fff5e6;color:#925000;font-size:12px;border-radius:30px;padding:6px 12px}.headeractions i{background:#e67c00}main{padding:34px 38px 30px;max-width:1600px}.heading{margin-bottom:26px;gap:20px}.heading p{font-size:16px;max-width:740px}.eyebrow{color:#10398e;font-size:12px;letter-spacing:1.8px;margin-bottom:11px}.date{font-size:13px;color:#526780}.card{border:1px solid #e0e7f0;box-shadow:0 4px 18px #15386405;border-radius:13px;padding:24px}.dashboardgrid{grid-template-columns:minmax(0,1fr) 320px;gap:24px}.stack{gap:24px}.balance{background:linear-gradient(120deg,#10398e,#1556af);border-radius:14px;padding:28px 30px;min-height:210px;box-shadow:0 8px 22px #10398e16}.balance .label,.balance p{color:#d9e8ff;font-size:14px}.balance .label{font-size:12px}.balance .amount{font-size:44px}.balance .badge{color:white;background:#ffffff20;font-size:12px}.balancebuttons button,.balance .balancebuttons button{color:#10398e;background:#fff;font-size:14px}.balancebuttons button+button{color:white!important;background:#ffffff10!important}.balance:after{border-color:#ffffff20}.number{color:#10398e}.textbutton{color:#10398e;font-size:14px}.actions{gap:12px}.action{font-size:14px;padding:19px 8px;gap:13px;border-color:#dde5f1;box-shadow:0 4px 10px #10398e04}.iconbox{background:#eaf1fc;color:#10398e;border-radius:10px}.card .row b{font-size:15px}.row p,.listrow p{font-size:14px}.sectionhead{gap:14px}.sectionhead h2{line-height:1.3}.badge,.status{font-size:12px;background:#edf5e8;color:#326819;padding:5px 9px}.reservation{background:#f3f6fc;border-color:#dce5f5}.reservationbottom{font-size:13px;border-color:#dce5f5;color:#536888}.letter{background:#eaf1fc;color:#10398e;font-size:12px}.package{background:#fff8ed;border-color:#efdfc6}.package .iconbox{background:#ffedcf;color:#9e5900}.parkingbar{background:#e5ebf4}.parkingbar span,.bar{background:#4f81cc}.parkingfoot{font-size:12px}.announcement p{font-size:14px}.announcement h3{font-size:15px}.announcement small{font-size:12px}.poll{background:#eaf1fc}.poll p{font-size:14px;color:#526780}.poll button{font-size:14px}.event{background:#f0f4fb}.eventdate{font-size:12px;color:#10398e}.eventdate b{color:#10398e}.event h3{font-size:15px}.event p{font-size:13px}.marketitem{border-radius:12px;border-color:#dce4ef}.marketitem section{padding:16px}.marketitem h3{font-size:15px}.marketitem p{font-size:13px}.productimage{background:#eaf0f9}.marketitem strong{font-size:16px}.notice{background:#eff4fc;border-color:#d8e4f5;color:#385276;font-size:14px;line-height:1.6}.metrics .card{border-top:3px solid #10398e}.metrics .card p{font-size:14px}.metrics .number{font-size:32px}.listrow{padding:22px 0}.listrow h3{font-size:16px}.listrow button{font-size:14px}.listrow .grow{min-width:0;overflow-wrap:anywhere}input,textarea,select{border-color:#bccbe0;border-radius:7px;font-size:16px;accent-color:#10398e}label{font-size:14px;color:#375071}input[type=checkbox],input[type=radio]{width:auto}dialog{border:0;border-top:5px solid #10398e;border-radius:13px;padding:30px;box-shadow:0 30px 100px #0d2b6345}dialog::backdrop{background:#071f4b80}.close{color:#10398e;background:#eef3fb;border-radius:50%;width:32px;height:32px;min-height:32px;font-size:23px;padding:0}.pass,.booking-total{background:#eef3fb;color:#153d7e}.slot{background:#edf5e8;color:#347017}.slot:disabled{background:#eef1f6;color:#6f7c90}.timeline{border-color:#cfdaec}.tag{font-size:13px;color:#5e6e85}#toast{background:#0d2b63;border-left:4px solid #e67c00}.amenity-summary,.amenity-details,.amenity-location,.amenity-note{color:#5e6e85}.amenity-summary b{color:#10398e}.booking-ribbon{background:#eaf1fc;border-color:#d5e0f0}.ribbon-info{color:#375071}.amenity-tabs{background:#e8eef8;border-color:#dae3f0}.amenity-tabs button{color:#526780;font-size:14px}.amenity-tabs .selected{background:#10398e;color:white}.amenity-card{border-color:#dce4ef;border-radius:14px;box-shadow:0 4px 16px #10398e06}.amenity-card:hover{box-shadow:0 12px 30px #10398e14}.amenity-photo{height:225px}.amenity-category{font-size:12px;color:#10398e}.photo-badge{color:#10398e;font-size:12px}.amenity-card h2{font-size:23px}.amenity-description{font-size:16px}.amenity-details,.amenity-location{font-size:14px}.occupancy b{color:#375071}.occupancy-track{background:#eaf0fa}.occupancy-track span{background:#53a700}.amenity-book{font-size:15px;padding:14px 17px}.compact-amenity .amenity-book{background:#10398e;color:white}.time-slot.selected{background:#10398e;border-color:#10398e}.cctv-card{border-color:#dce4ef!important;border-radius:14px!important}.cctv-disclaimer{background:#eaf1fc!important;color:#375071!important}.cctv-disclaimer p{color:#526780!important}.cctv-frame{background:#0d2349!important}.cctv-card h2{font-size:21px}.payment-methods-strip{background:#f0f4fb!important;border-color:#dce4ef!important}.method-option{border-color:#cbd7e9!important}.method-option:has(input:checked){background:#edf3ff!important;border-color:#10398e!important}.checkout-invoice{background:#eff4fc!important}footer{font-size:12px;letter-spacing:0;gap:14px;flex-wrap:wrap;color:#62738c;background:white;padding:22px 38px}.proposal-tag{font-size:11px;color:#8a520b;background:#fff2dc;padding:4px 8px;border-radius:4px}.community-scene{display:flex;align-items:end;min-height:180px;padding:26px 30px;border-radius:14px;margin-bottom:26px;background:linear-gradient(90deg,#092455de,#09245525),url('assets/pool.png') center 52%/cover;color:#fff}.community-scene h2{font-size:28px;color:white;margin:8px 0}.community-scene p{color:#e7efff;margin:0;max-width:480px;font-size:15px}.community-scene .eyebrow{color:#ffda99;margin:0;font-size:11px}.signed-out main{max-width:1180px;padding:48px 24px}.portal-login{position:relative;max-width:none;min-height:690px;padding:45px 46px 32px 55%;overflow:hidden;border-radius:20px;box-shadow:0 20px 70px #10398e16}.portal-login:before{content:'';position:absolute;inset:0 50% 0 0;background:linear-gradient(0deg,#082453e8,#08245308 75%),url('assets/pool.png') center/cover}.login-story{position:absolute;left:40px;bottom:50px;width:calc(50% - 80px);color:white}.login-story .eyebrow{color:#ffda99}.login-story h2{font-size:42px;line-height:1.13;color:white;margin-bottom:18px}.login-story p{color:#e2edff;font-size:16px}.login-brand{width:175px;height:70px;object-fit:contain;object-position:left}.portal-login h1{font-size:30px;margin-top:28px}.portal-login>p{font-size:16px}.portal-login .rolegrid button{font-size:13px;min-height:48px;background:#f3f6fc}.portal-login details{font-size:14px;line-height:1.6}.portal-login summary{color:#10398e}.portal-login .muted{font-size:12px}.mobile a{color:#526780}.mobile a.active{color:#10398e}
@media(max-width:1180px){aside{width:228px;padding:22px 14px}.shell{margin-left:228px}main{padding:28px 24px}.dashboardgrid{grid-template-columns:minmax(0,1fr) 280px}.card{padding:20px}.brand img{width:150px}.portal-login{padding-right:30px}}
@media(max-width:960px){.dashboardgrid{grid-template-columns:1fr}.heading h1{font-size:29px}.portal-login{padding:32px 30px 28px 53%}.login-story{left:30px;width:calc(50% - 60px)}.login-story h2{font-size:34px}}
@media(max-width:680px){aside{display:none}.shell{margin-left:0}header{padding:0 18px;height:66px}.headeractions{gap:10px}.demo{font-size:10px;padding:5px 8px}main{padding:24px 16px}.heading{flex-wrap:wrap;gap:16px}.heading h1{font-size:28px}.heading p{font-size:15px}.heading .primary{font-size:14px}.community-scene{min-height:180px;padding:24px}.community-scene h2{font-size:26px}.balance{padding:25px}.balance .amount{font-size:39px}.balance .badge{font-size:10px;right:18px}.actions{grid-template-columns:repeat(2,1fr)}.action{font-size:14px}.card{padding:20px}.amenity-photo{height:235px}.amenity-tabs{overflow:auto;justify-content:start}.amenity-tabs button{font-size:13px}.listrow .grow{min-width:100%}.listrow button{width:auto}.listrow{gap:12px}.metrics .number{font-size:28px}.markettiles{grid-template-columns:1fr}.productimage{height:150px}.marketitem section{padding:18px}.mobile{overflow:auto;justify-content:space-around;gap:14px;padding:14px 14px max(14px,env(safe-area-inset-bottom))}.mobile a{font-size:12px;min-width:fit-content}.signed-out main{padding:20px 12px}.portal-login{padding:260px 24px 28px;min-height:0}.portal-login:before{inset:0 0 auto;height:230px;background-position:center 50%}.login-story{top:38px;bottom:auto;left:24px;width:calc(100% - 48px)}.login-story h2{font-size:30px;max-width:280px;margin-bottom:10px}.login-story p{font-size:14px;max-width:310px}.login-brand{width:150px;height:60px}.portal-login h1{font-size:27px;margin-top:22px}footer{padding:22px 18px}.formactions{flex-wrap:wrap}.cctv-grid{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.balance .balancebuttons button:first-child{color:#10398e!important}#nav{scrollbar-width:thin;scrollbar-color:#5b77a6 transparent}.brand,.property,.asidebottom{flex-shrink:0}.signed-out .shell{margin-left:0}
