@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_f367f3{font-family:Inter,Inter Fallback;font-style:normal}.__variable_f367f3{--font-inter:"Inter","Inter Fallback"}*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}html{line-height:1.5;-webkit-text-size-adjust:100%}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}small{font-size:80%}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;color:inherit;margin:0;padding:0}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}ol,ul{list-style:none;margin:0;padding:0}textarea{resize:vertical}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[role=button],button{cursor:pointer}:root{--blue:#1b5fbf;--blue-dark:#154c9b;--blue-soft:#e3edfb;--ink:#1a1d21;--muted:#5a6270;--line:#dde1e7;--canvas:#f6f7f9;--surface:#fff;--green:#1e7a46;--green-soft:#e8f5ee;--amber:#a85b00;--amber-soft:#fdf3e5;--red:#c0342b;--red-soft:#fbecea}*{box-sizing:border-box}body,html{margin:0;min-height:100%;font-family:var(--font-inter),Inter,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--canvas)}button,input,select{font:inherit}button{cursor:pointer}.landing{min-height:100vh;display:grid;place-items:center;padding:24px}.hero{max-width:620px;text-align:center}.hero h1{font-size:48px;letter-spacing:-.05em;margin:12px 0}.hero>p{color:var(--muted);font-size:18px;line-height:1.55}.eyebrow{color:var(--blue);font-size:13px;font-weight:700;letter-spacing:.08em}.button,.primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:10px;min-height:44px;padding:10px 18px;font-weight:600;text-decoration:none}.button:hover,.primary:hover{background:var(--blue-dark)}.preview{display:none}.app-shell{min-height:100vh;background:var(--canvas)}.side-nav{position:fixed;inset:0 auto 0 0;width:240px;background:white;border-right:1px solid var(--line);display:flex;flex-direction:column;overflow-y:auto;z-index:4}.brand-row{height:64px;padding:0 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px}.brand-icon{width:28px;height:28px;border-radius:8px;background:var(--blue);color:white;display:grid;place-items:center;font-weight:800}.brand-row strong{font-size:16px}.brand-row small{display:block;font-size:11px;color:var(--muted);margin-top:1px}.nav-links{padding:12px 0}.nav-link{width:100%;height:48px;border:0;background:white;color:#4b5563;display:flex;gap:12px;align-items:center;padding:0 18px;text-align:left;font-size:14px}.nav-link.active{background:var(--blue-soft);color:var(--blue-dark);font-weight:600;border-left:3px solid var(--blue);padding-left:15px}.nav-symbol{width:20px;text-align:center;font-size:17px}.side-bottom{margin-top:auto;border-top:1px solid var(--line);padding:12px}.property-mini{margin-top:10px;border:1px solid var(--line);border-radius:9px;padding:9px;font-size:12px}.property-mini small{display:block;color:var(--muted);margin-top:3px}.nav-backdrop{position:fixed;inset:0;background:rgb(26 29 33/.45);z-index:6}.nav-close,.nav-toggle{display:none}.topbar{height:64px;position:fixed;left:240px;right:0;top:0;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;z-index:3}.crumb{font-size:14px}.crumb span{color:var(--muted)}.top-actions{display:flex;align-items:center;gap:12px}.search{width:280px;height:40px;border:1px solid var(--line);border-radius:9px;padding:0 12px;color:var(--muted);font-size:13px}.profile{font-size:13px;border-left:1px solid var(--line);padding-left:12px}.profile small{display:block;color:var(--muted)}.app-main{margin-left:240px;padding:88px 28px 48px;max-width:1540px}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.kicker{font-size:11px;color:var(--blue);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:5px}.page-head h1{font-size:26px;letter-spacing:-.03em;margin:0}.page-head p{font-size:14px;color:var(--muted);margin:5px 0 0}.head-actions{display:flex;gap:10px}.secondary-button{background:white;border:1px solid var(--line);color:var(--ink)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px}.metric{background:white;border:1px solid #edf0f4;border-radius:13px;padding:18px;min-height:158px}.metric-label{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.metric-value{font-size:30px;letter-spacing:-.04em;line-height:1.1;margin:13px 0}.metric-foot{font-size:12px;color:var(--muted);margin-top:22px}.metric-foot.good{color:var(--green)}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;grid-gap:20px;gap:20px;margin-top:20px}.panel{background:white;border:1px solid #edf0f4;border-radius:13px;padding:19px}.panel-head{display:flex;justify-content:space-between;align-items:start}.panel h2{font-size:19px;margin:0}.panel-sub{font-size:12px;color:var(--muted);margin-top:4px}.filter-row{display:flex;flex-wrap:wrap;gap:8px;margin:19px 0 13px}.filter{border:0;border-radius:8px;background:#f1f3f6;color:#3f4752;padding:8px 11px;font-size:12px;min-height:36px}.filter.active{background:var(--blue);color:white}.legend{background:#f6f7f9;border-radius:8px;padding:10px 12px;font-size:11px;color:var(--muted);display:flex;gap:14px;flex-wrap:wrap}.legend b{color:var(--ink);font-size:11px}.dot{width:7px;height:7px;border-radius:50%;display:inline-block;margin-right:5px}.floor-title{display:flex;align-items:center;gap:8px;margin:18px 0 10px;font-size:14px;font-weight:700}.floor-pill{background:var(--blue-soft);color:var(--blue);padding:4px 7px;border-radius:5px;font-size:11px}.room-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.room-tile{border:1px solid #edf0f4;background:white;border-radius:10px;padding:12px;min-height:139px;text-align:left;color:var(--ink);display:flex;flex-direction:column}.room-tile:hover{border-color:#9bbce8;box-shadow:0 3px 10px #1b5fbf12}.room-tile.is-overdue{background:#fffafa;border-color:#fee1df}.room-tile.is-vacant{background:#fafbfc}.room-top{display:flex;align-items:start;justify-content:space-between;gap:5px}.room-no{font-size:18px;font-weight:700}.room-name{font-size:12px;font-weight:600;margin-top:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-rent{font-size:11px;color:var(--muted);margin-top:4px}.room-bottom{font-size:11px;margin-top:auto;color:var(--green);padding-top:10px}.room-bottom.alert{color:var(--red)}.badge{font-size:11px;padding:4px 7px;border-radius:5px;white-space:nowrap}.paid{background:var(--green-soft);color:var(--green)}.pending{background:var(--amber-soft);color:var(--amber)}.overdue{background:var(--red-soft);color:var(--red)}.vacant{background:#eef0f3;color:#414b56}.attention-list{display:grid;grid-gap:10px;gap:10px;margin-top:17px}.attention{padding:13px;border-radius:9px;background:#fff7f6;border:1px solid #feeae8}.attention h3{font-size:13px;margin:0}.attention p{font-size:12px;margin:4px 0;color:var(--red)}.attention-action{width:100%;margin-top:8px;height:35px;background:white;border:1px solid var(--line);border-radius:7px;color:var(--green);font-size:12px;font-weight:600}.reminder-reason{display:block;font-size:12px;margin:4px 0;color:var(--amber)}.reminder-reason.overdue{color:var(--red)}.reminder-preview{display:block;font-size:11px;color:var(--muted);background:#f6f7f9;border-radius:7px;padding:8px 10px;line-height:1.5;margin-bottom:4px}.reminder-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.reminder-actions .attention-action{width:auto;margin-top:0}.reminder-sent{color:var(--green);font-size:11px;font-weight:600}.reminder-editor-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.reminder-editor-toggle small{color:var(--muted)}.reminder-editor{display:grid;grid-gap:12px;gap:12px;margin-top:12px}.activation{margin-bottom:20px;border-color:var(--blue)}.activation-steps{display:grid;grid-gap:8px;gap:8px}.activation-step{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;background:#f6f7f9;font-size:13px}.activation-step i{width:20px;height:20px;border-radius:50%;border:1px solid var(--line);background:white;display:grid;place-items:center;font-style:normal;font-size:12px;color:var(--green);flex-shrink:0}.activation-step.done i{background:var(--green-soft);border-color:var(--green-soft)}.activation-step.done span{color:var(--muted)}.activation-step .text-action{margin-left:auto}.sub-banner{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:13px 16px;border-radius:9px;margin-bottom:18px;font-size:13px;line-height:1.55}.sub-banner.pending{background:var(--amber-soft);border:1px solid #f0dcc2;color:var(--amber)}.sub-banner.readonly{background:var(--red-soft);border:1px solid #f2d3d0;color:var(--red)}.sub-banner .button{margin-left:auto}.reminder-history{margin-top:20px}.reminder-history h3{font-size:14px;font-weight:700;margin:0 0 8px}.portfolio{margin-top:18px}.portfolio-row{padding:11px;border-radius:8px;background:#f6f7f9;margin-top:8px;font-size:12px}.portfolio-row span{float:right;font-weight:700}.bar{background:#d9e6f8;margin:8px 0}.bar,.bar i{height:5px;border-radius:5px}.bar i{display:block;background:var(--blue)}.modal-bg{position:fixed;z-index:9;inset:0;background:#18202b52;display:flex;justify-content:flex-end}.drawer{height:100%;width:min(500px,100vw);background:white;padding:25px;overflow:auto;box-shadow:-12px 0 30px #1720331c}.drawer-head{display:flex;justify-content:space-between}.drawer h2{margin:6px 0;font-size:24px}.close{font-size:21px}.section{border-top:1px solid var(--line);padding-top:20px;margin-top:22px}.section h3{font-size:15px;margin:0 0 13px}.details,.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.detail{padding:10px;background:#f6f7f9;border-radius:8px;font-size:13px}.detail span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}.label{font-size:12px;font-weight:600}.input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;margin:5px 0 12px;background:white}.note{font-size:13px;border-bottom:1px solid var(--line);padding:10px 0}.note small{display:block;color:var(--muted);margin-top:3px}@media (max-width:1023px){.side-nav{transform:translateX(-100%);visibility:hidden;transition:transform .16s ease,visibility 0s .16s}.side-nav.nav-open{transform:translateX(0);visibility:visible;z-index:7;transition:transform .16s ease,visibility 0s}.side-nav.nav-open .nav-close{display:grid;place-items:center;position:absolute;top:10px;right:10px;width:44px;height:44px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:21px}.side-nav.nav-open~.nav-toggle{display:none}.nav-toggle{display:grid;place-items:center;position:fixed;top:10px;left:8px;width:44px;height:44px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:21px;z-index:8}.topbar{left:0;padding:0 16px 0 62px}.profile,.top-actions .search{display:none}.app-main{margin:0;padding:84px 16px 88px}.content-grid{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}.room-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:639px){.page-head{align-items:start;flex-direction:column;gap:14px}.head-actions{width:100%}.head-actions .button{flex:1 1}.metrics{grid-template-columns:1fr 1fr;gap:10px}.metric{min-height:128px;padding:14px}.metric-value{font-size:23px}.metric-foot{margin-top:14px}.room-grid{grid-template-columns:1fr 1fr}.content-grid{margin-top:12px}.panel{padding:14px}.topbar{height:58px}.nav-toggle{top:7px}.app-main{padding-top:74px}.crumb{font-size:12px}.drawer{padding:20px}.details,.form-row{grid-template-columns:1fr}.filter-row{overflow:auto;flex-wrap:nowrap}.filter{white-space:nowrap}}.skeleton{height:14px;border-radius:6px;background:#e8eaee;margin:10px 0}.skeleton-title{height:22px;width:40%}.empty-floor .button{margin-top:10px}.empty-floor .text-action{margin-top:6px}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.attention-action,.button,.close,.filter,.inline-back,.nav-close,.nav-link,.nav-toggle,.property-mini,.property-option,.room-tile,.text-action{transition:background-color .12s ease,color .12s ease,border-color .12s ease}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:14px;background:var(--ink);color:white;padding:12px 18px;border-radius:10px;font-size:14px;z-index:50;box-shadow:0 8px 24px rgb(0 0 0/.18)}.toast button{background:none;border:0;color:#9ec3f7;font-weight:600;min-height:32px}.empty-floor{margin-top:10px;border:1px dashed var(--line);border-radius:10px;padding:18px;color:var(--muted);font-size:13px}.form-backdrop{position:fixed;inset:0;z-index:12;background:#18202b70;display:grid;place-items:center;padding:16px}.form-modal{width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:14px;padding:24px;box-shadow:0 12px 32px #10182824}.form-modal h2{font-size:22px;margin:5px 0}.field-help{display:block;font-weight:400;color:var(--muted);font-size:12px;line-height:1.45;margin:-4px 0 12px}.form-error{background:var(--red-soft);color:var(--red);border-radius:8px;padding:10px 12px;font-size:13px}.form-actions{border-top:1px solid var(--line);margin-top:22px;padding-top:16px;justify-content:flex-end}.drawer-actions,.form-actions{display:flex;gap:10px}.danger-button{background:var(--red);border-color:var(--red)}.danger-button:hover{background:#a52720}.floor-row-actions,.inline-actions,.inline-form{display:flex;gap:10px;align-items:center}.simple-list{padding:0}.list-row{padding:18px;border-bottom:1px solid var(--line);font-size:14px}.floor-row{border-top:1px solid var(--line);padding:16px 0}.floor-row-actions{justify-content:space-between}.move-floor{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:12px}.move-floor .input{width:auto;min-width:150px;margin:0}@media (max-width:639px){.floor-row-actions,.inline-actions,.inline-form{align-items:stretch;flex-direction:column}.floor-row-actions .button,.inline-actions .button,.inline-form .button{width:100%}.move-floor{flex-direction:column;align-items:stretch}.move-floor .input{width:100%}.form-backdrop{padding:0;align-items:end}.form-modal{border-radius:14px 14px 0 0;max-height:92vh;padding:20px}.form-actions{position:-webkit-sticky;position:sticky;bottom:0;background:white}.form-actions .button{flex:1 1}}.resident-page{min-height:100vh;background:#f6f7f9;color:#1a1d21}.resident-top{height:64px;background:#fff;border-bottom:1px solid #dde1e7;padding:0 max(24px,calc((100% - 1200px) / 2));display:flex;align-items:center;justify-content:space-between}.back,.inline-back{border:0;background:none;color:#1b5fbf;text-decoration:none;font-size:14px;padding:0}.resident-brand{display:flex;align-items:center;gap:8px}.resident-brand span{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;background:#1b5fbf;color:#fff}.resident-heading{max-width:1200px;margin:0 auto;padding:40px 24px 24px;display:flex;justify-content:space-between;align-items:end;gap:20px}.resident-kicker{margin:0 0 8px;color:#1b5fbf;font-size:11px;font-weight:800;letter-spacing:.09em}.resident-heading h1{font-size:32px;letter-spacing:-.04em;margin:0}.form-help,.resident-heading p:last-child,.unit-title p{color:#5a6270;font-size:14px;margin:7px 0 0}.resident-detail,.resident-directory{max-width:1200px;margin:0 auto 48px;background:#fff;border:1px solid #e5e9ee;border-radius:14px;padding:22px}.directory-summary{display:flex;gap:38px;padding:0 5px 20px}.directory-summary b,.directory-summary span{display:block}.directory-summary b{font-size:25px}.directory-summary span{margin-top:3px;font-size:12px;color:#5a6270}.directory-head>div,.directory-row{display:grid;grid-template-columns:1fr 1.5fr .95fr .6fr 20px;grid-gap:14px;gap:14px;align-items:center}.directory-head{padding:12px;background:#f3f5f8;color:#5a6270;font-size:11px}.directory-row{width:100%;padding:17px 12px;border:0;border-bottom:1px solid #edf0f4;background:#fff;text-align:left;color:#1a1d21}.directory-row:hover{background:#f7faff}.directory-row b,.directory-row small{display:block}.directory-row b{font-size:13px}.directory-row small{margin-top:4px;font-size:11px;color:#5a6270}.directory-row i{font-style:normal;font-size:25px;color:#1b5fbf}.person-name span,.status-chip,.template-ok{display:inline-block;border-radius:6px;padding:5px 8px;background:#e8f5ee;color:#1e7a46;font-size:11px;font-weight:700}.ending{background:#fdf3e5;color:#a85b00}.empty{background:#eef0f3;color:#414b56}.detail-heading{padding-bottom:18px}.inline-back{display:block;margin-bottom:16px}.detail-actions{display:flex;gap:10px;flex-wrap:wrap}.danger-button{background:#c0342b;border-color:#c0342b}.resident-detail{padding:24px}.unit-title{display:flex;justify-content:space-between;align-items:start;gap:16px}.unit-title h2{margin:0;font-size:22px}.resident-tabs{display:flex;gap:20px;margin:25px 0 18px;border-bottom:1px solid #dde1e7}.resident-tabs button{border:0;background:transparent;padding:0 0 11px;color:#5a6270;font-size:13px}.resident-tabs .selected{border-bottom:2px solid #1b5fbf;color:#1b5fbf;font-weight:700}.info-banner{margin-bottom:13px;padding:12px 13px;border:1px solid #d7e6fb;border-radius:9px;background:#f0f5fd;font-size:13px}.people-list{display:grid;grid-gap:10px;gap:10px}.person{display:flex;align-items:start;gap:13px;padding:16px;border:1px solid #e5e9ee;border-radius:12px;background:#fff}.person-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e3edfb;color:#1b5fbf;font-weight:800}.person-main{flex:1 1}.person-name{display:flex;align-items:center;gap:8px}.person h3{margin:0;font-size:15px}.person p,.person small{margin:4px 0;color:#5a6270;font-size:12px}.identity-row{margin:8px 0 3px;font-size:12px}.identity-row b{margin-right:6px;padding:3px 5px;border-radius:4px;background:#f1f3f6}.text-action{border:0;background:none;color:#1b5fbf;font-size:12px;font-weight:700}.empty-state{padding:42px 18px;border:1px dashed #bdc9d7;border-radius:10px;text-align:center}.empty-state p{font-size:13px;color:#5a6270}.pay-card,.template-card{padding:18px;border:1px solid #e5e9ee;border-radius:12px;background:#fff}.template-card{display:flex;justify-content:space-between;gap:14px}.contract h3,.template-card h3{margin:0 0 7px}.template-card p{margin:0;color:#5a6270;font-size:12px}.contract-grid,.payments{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin:15px 0}.contract-grid>div{padding:15px;border:1px solid #e5e9ee;border-radius:10px}dl{margin:0}dt{margin-top:8px;color:#5a6270;font-size:11px}dd{margin:2px 0;font-size:13px;font-weight:700}.occupant-clause p{padding-top:8px;border-top:1px solid #edf0f4;font-size:13px}.occupant-clause small{color:#5a6270}.pay-card h3{margin:0 0 15px;font-size:24px}.pay-card div{display:flex;justify-content:space-between;padding:6px 0;font-size:13px}.pay-card p,.pay-card small{color:#5a6270;font-size:12px;line-height:1.5}.resident-modal{position:fixed;z-index:20;inset:0;overflow:auto;padding:30px;background:#17203388}.resident-form{max-width:760px;margin:0 auto;padding:25px;border-radius:14px;background:#fff}.form-actions,.form-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.form-head h2{margin:0}.close{width:44px;height:44px;border:0;border-radius:50%;background:#f0f2f5;font-size:20px}.resident-form fieldset{margin:16px 0;padding:16px;border:1px solid #dde1e7;border-radius:10px}.resident-form legend{padding:0 6px;font-size:13px;font-weight:800}.resident-form label{font-size:12px;font-weight:700}.resident-form input,.resident-form select,.resident-form textarea{display:block;width:100%;margin-top:5px;padding:9px;border:1px solid #dde1e7;border-radius:7px;background:#fff}.resident-form textarea{min-height:72px;resize:vertical}.resident-form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.choice,.primary-check{display:flex;align-items:center;gap:7px;margin-top:12px}.choice input,.primary-check input{width:auto!important;margin:0!important}.settlement{display:grid;grid-template-columns:1fr auto;grid-gap:9px;gap:9px;align-items:center;font-size:13px}.settlement input{width:110px!important;margin:0!important}@media (max-width:700px){.resident-top{padding:0 16px}.resident-heading{padding:28px 16px 20px;align-items:start;flex-direction:column}.resident-detail,.resident-directory{margin:0 16px 32px;padding:14px}.directory-summary{gap:16px}.directory-summary b{font-size:19px}.directory-head{display:none}.directory-row{grid-template-columns:1fr auto;gap:8px}.directory-row>div:nth-child(2),.directory-row>div:nth-child(3){grid-column:1}.directory-row>div:nth-child(4){grid-column:2;grid-row:1}.directory-row>i{grid-column:2;grid-row:2}.detail-actions{width:100%}.detail-actions .button{flex:1 1}.contract-grid,.payments,.resident-form-grid{grid-template-columns:1fr}.resident-modal{padding:10px}.resident-form{padding:17px}.template-card{align-items:start;flex-direction:column}}.resident-floor{margin-top:16px}.resident-floor-title{display:flex;align-items:center;gap:9px;margin:0 0 10px;font-size:14px}.resident-floor-title span{border-radius:5px;background:#e3edfb;color:#1b5fbf;padding:5px 7px;font-size:11px;font-weight:700}.resident-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.resident-unit-card{min-height:154px;display:flex;flex-direction:column;width:100%;padding:13px;border:1px solid #e4e8ee;border-radius:10px;background:#fff;color:#1a1d21;text-align:left}.resident-unit-card:hover{border-color:#9bbce8;box-shadow:0 3px 10px #1b5fbf12}.resident-unit-card.is-ending{border-color:#f7d7c2;background:#fffdf9}.resident-card-top{display:flex;justify-content:space-between;align-items:start;gap:6px}.resident-card-top>b{font-size:18px}.resident-unit-card>strong{margin-top:14px;font-size:13px}.resident-unit-card>small{margin-top:5px;color:#5a6270;font-size:11px}.resident-unit-card footer{margin-top:auto;padding-top:11px;color:#1e7a46;font-size:11px}.resident-unit-card.is-ending footer{color:#a85b00}@media (max-width:900px){.resident-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:600px){.resident-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.resident-app-page{margin-left:240px;padding-top:64px}.resident-app-page .resident-top{position:fixed;z-index:5;top:0;left:240px;right:0;padding:0 28px}.resident-app-page .resident-heading{padding-top:32px}.resident-app-page .resident-detail,.resident-app-page .resident-directory,.resident-app-page .resident-heading{max-width:none;margin-left:28px;margin-right:28px}.resident-app-page .resident-heading{padding-left:0;padding-right:0}.side-nav .nav-link{text-decoration:none}@media (max-width:1023px){.resident-app-page{margin-left:0}.resident-app-page .resident-top{left:0;padding-left:62px}.resident-app-page .resident-detail,.resident-app-page .resident-directory,.resident-app-page .resident-heading{margin-left:16px;margin-right:16px}}.profile-panel{max-width:900px}.profile-preview{display:grid;grid-template-columns:240px 1fr;grid-gap:22px;gap:22px;align-items:center;padding-bottom:22px;border-bottom:1px solid var(--line)}.profile-cover{min-height:150px;border-radius:11px;background:linear-gradient(135deg,#195ab5,#86b5ef);display:grid;place-items:center;color:#fff;font-size:40px}.profile-cover span{display:block;font-size:11px;align-self:end;padding:10px}.profile-address{font-size:13px;margin:8px 0}.profile-form{margin-top:22px}.profile-textarea{min-height:88px;resize:vertical}.upload-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin:8px 0 16px}.upload-box{border:1px dashed #9bbce8;border-radius:8px;padding:12px;color:var(--blue);display:block}.upload-box input{display:block;margin:8px 0;color:var(--ink)}.upload-box small{color:var(--muted);font-size:11px}.profile-saved{margin:16px 0 0;color:var(--green);font-size:13px;font-weight:600}.team-panel{max-width:900px}.team-invite{display:grid;grid-gap:12px;gap:12px;max-width:460px;padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:16px}.team-invite .button{justify-self:start}.member-list{display:grid;grid-gap:8px;gap:8px}.member-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px;border-radius:8px;background:#f6f7f9;font-size:13px;flex-wrap:wrap}.member-row b{display:block;font-size:13px}.member-row small{color:var(--muted);font-size:11px}.member-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.member-actions .input{width:130px;margin:0;padding:8px 10px}@media (max-width:640px){.profile-preview,.upload-grid{grid-template-columns:1fr}.profile-cover{min-height:110px}}.finance-metrics{grid-template-columns:repeat(3,1fr);margin-bottom:20px}.finance-table{max-width:100%}.payment-row{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.45fr auto;grid-gap:16px;gap:16px;align-items:center;padding:14px 0;border-top:1px solid var(--line);font-size:13px}.payment-row b,.payment-row small{display:block}.payment-row small,.payment-row span{color:var(--muted);font-size:11px;margin-top:4px}.payment-row .badge{color:inherit;width:max-content}.payment-summary{display:grid;grid-template-columns:1fr auto;grid-gap:8px;gap:8px;align-items:center;margin:14px 0;padding:13px;border-radius:8px;background:#f6f7f9;font-size:13px}.payment-summary .input{width:150px;margin:0}.finance-due{color:var(--amber)}.finance-ok{color:var(--green)}.receipt-upload{display:block;margin:10px 0 0;padding:13px;border:1px dashed #9bbce8;border-radius:8px;color:var(--blue)}.receipt-upload input{display:block;margin:8px 0}.receipt-upload small{color:var(--muted);font-size:11px}@media (max-width:700px){.finance-metrics,.payment-row{grid-template-columns:1fr 1fr}.payment-row{gap:10px}.payment-row>button{justify-self:start}.payment-summary .input{width:120px}}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#edf4ff,#f6f7f9)}.auth-card{width:min(440px,100%);padding:34px;border:1px solid #e5e9ee;border-radius:16px;background:#fff;box-shadow:0 12px 35px #1b5fbf12}.auth-brand{display:inline-flex;gap:8px;align-items:center;color:var(--ink);text-decoration:none}.auth-card h1{margin:9px 0;font-size:28px;letter-spacing:-.04em}.auth-copy{color:var(--muted);font-size:14px;line-height:1.5}.auth-card form{display:grid;grid-gap:14px;gap:14px;margin-top:24px}.auth-card label{font-size:12px;font-weight:700}.auth-card input{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid var(--line);border-radius:8px}.auth-message{margin:0;padding:10px;border-radius:8px;background:var(--amber-soft);color:var(--amber);font-size:12px}.auth-switch{font-size:13px;text-align:center;color:var(--muted)}.auth-switch a{color:var(--blue);font-weight:700}.kos-page{min-height:100vh;background:#f6f7f9}.kos-nav{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1160px) / 2));background:#fff;border-bottom:1px solid var(--line)}.kos-hero{max-width:1160px;margin:0 auto;padding:72px 24px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;grid-gap:50px;gap:50px}.kos-hero h1{margin:8px 0;font-size:48px;letter-spacing:-.05em}.kos-hero p{max-width:540px;color:var(--muted);font-size:17px;line-height:1.55;margin:0 0 22px}.kos-cover{min-height:310px;border-radius:18px;background:linear-gradient(140deg,#164e99,#8cc1ed);display:grid;place-items:center;color:#fff;font-size:70px}.kos-cover span{font-size:12px;align-self:end;padding:20px}.kos-content{max-width:1160px;margin:0 auto;padding:0 24px 60px;display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.kos-content>div{padding:20px;border:1px solid #e5e9ee;border-radius:13px;background:#fff}.kos-content h2{margin:0 0 12px;font-size:18px}.kos-content p{font-size:13px;color:var(--muted);line-height:1.5}.facility-grid{display:grid;grid-gap:9px;gap:9px;font-size:13px;color:var(--green)}@media (max-width:700px){.kos-content,.kos-hero{grid-template-columns:1fr}.kos-hero{padding-top:38px;gap:24px}.kos-hero h1{font-size:36px}.kos-cover{min-height:220px}}.auth-divider{display:flex;align-items:center;gap:10px;margin:14px 0 2px;color:var(--muted);font-size:12px}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--line)}.auth-card>.button{width:100%}.kos-nav-links{display:flex;gap:20px}.kos-nav-links a{color:var(--muted);text-decoration:none;font-size:14px;min-height:44px;display:inline-flex;align-items:center}.kos-nav-links a:hover{color:var(--ink)}.kos-demo-note{margin:0;background:var(--blue-soft);color:var(--blue-dark);border-bottom:1px solid #cfe0f5;padding:10px 28px;font-size:13px}@media (max-width:700px){.kos-nav{height:auto;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:8px 16px}.kos-nav-links{order:3;width:100%;flex-wrap:wrap;gap:6px 16px}}.onboard-page{min-height:100vh;background:#f6f7f9}.onboard-nav{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1000px) / 2));background:#fff;border-bottom:1px solid var(--line)}.onboard-wrap{max-width:800px;margin:0 auto;padding:52px 24px}.onboard-wrap h1{font-size:34px;letter-spacing:-.04em;margin:8px 0}.onboard-copy{max-width:620px;color:var(--muted);line-height:1.55}.kos-created,.onboard-form{margin-top:26px;padding:22px;background:#fff;border:1px solid #e5e9ee;border-radius:13px}.kos-created h2,.onboard-form h2{margin:0 0 10px;font-size:18px}.onboard-form h2:not(:first-child){margin-top:24px}.onboard-textarea{min-height:80px;resize:vertical}.onboard-message{padding:10px;background:#e8f5ee;color:var(--green);border-radius:8px;font-size:13px}.created-list{display:grid;grid-gap:9px;gap:9px}.created-list article{padding:13px;border:1px solid var(--line);border-radius:9px}.created-list b,.created-list span{display:block}.created-list span{margin-top:4px;color:var(--muted);font-size:12px}@media (max-width:640px){.onboard-nav{padding:0 16px}.onboard-wrap{padding:34px 16px}.onboard-wrap h1{font-size:28px}}.property-switcher{width:100%;text-align:left;background:#fff}.property-switcher:hover{border-color:#9bbce8}.property-modal{max-width:500px}.property-options{display:grid;grid-gap:9px;gap:9px;margin:20px 0}.property-option{position:relative;padding:14px;text-align:left;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink)}.property-option.selected{border-color:#7da9df;background:var(--blue-soft)}.property-option b,.property-option small{display:block}.property-option small{margin-top:4px;color:var(--muted);font-size:12px}.property-option span{position:absolute;right:12px;top:13px;color:var(--blue);font-size:11px;font-weight:700}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:14px;gap:14px}.plan-card{border:1px solid var(--line);border-radius:11px;padding:16px;display:flex;flex-direction:column;gap:10px}.plan-card.current{border-color:var(--blue);background:var(--blue-soft)}.plan-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.plan-head h3{font-size:16px;font-weight:700;margin:0}.plan-price{font-size:15px;font-weight:700;margin:0}.plan-features{margin:0;padding-left:16px;color:var(--muted);font-size:13px;display:grid;grid-gap:4px;gap:4px}.plan-card .button{margin-top:auto;width:100%}.billing-pay{border-color:var(--blue)}.pay-amount{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border-radius:9px;background:var(--blue-soft);margin:14px 0}.pay-amount span{display:block;font-size:11px;color:var(--muted)}.pay-amount b{font-size:22px}.bank-box,.qris-box{display:grid;grid-gap:6px;gap:6px;padding:14px;border:1px dashed #9bbce8;border-radius:9px;margin-bottom:12px;font-size:13px}.qris-image{width:100%;max-width:260px;border-radius:8px;background:#fff}.bank-box small,.qris-box small{color:var(--muted);font-size:11px}.bank-box span{font-size:16px;font-weight:700}.bank-box .text-action,.qris-box .text-action{justify-self:start}.billing-actions{display:flex;align-items:center;gap:14px;margin-top:14px}.billing-row{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.2fr;grid-gap:16px;gap:16px;align-items:center;padding:14px 0;border-top:1px solid var(--line);font-size:13px}.billing-row b,.billing-row small{display:block}.billing-row small,.billing-row span{color:var(--muted);font-size:11px;margin-top:4px}.billing-row .badge{width:max-content}@media (max-width:700px){.billing-row{grid-template-columns:1fr 1fr;gap:10px}.pay-amount{flex-direction:column;align-items:start}}.legal-page{max-width:760px;margin:0 auto;padding:48px 20px 64px;min-height:100vh;background:var(--canvas)}.legal-page h1{font-size:30px;letter-spacing:-.02em;margin:10px 0 6px;font-weight:800}.legal-updated{color:var(--muted);font-size:12px;margin-bottom:28px}.legal-page h2{font-size:16px;font-weight:700;margin:26px 0 8px}.legal-page li,.legal-page p{font-size:14px;color:#3a424d;line-height:1.65}.legal-page ul{padding-left:18px;margin:8px 0}.legal-page li{margin:4px 0}.legal-note{margin-top:32px;padding:12px 14px;border-radius:9px;background:var(--amber-soft);color:var(--amber);font-size:12px;line-height:1.6}.legal-foot{margin-top:28px;font-size:13px}.legal-links{margin-top:22px;font-size:12px}.legal-links a{color:var(--muted)}