:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#152337;background:#f5f8fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #75d7d0;outline-offset:2px}.app{min-height:100vh}.sidebar{position:fixed;left:0;top:0;bottom:0;width:245px;background:#102b40;color:#eaf6fa;display:flex;flex-direction:column;padding:20px 12px;z-index:20}.brand{display:flex;align-items:center;gap:9px;padding:6px 9px 29px;font-size:24px;letter-spacing:-1px}.brand svg{color:#4bd7ca}.sidebar nav{display:grid;gap:5px}.nav{background:none;border:0;color:#d7e4ec;display:flex;align-items:center;gap:12px;text-align:left;padding:12px 14px;border-radius:9px;font-size:13px}.nav:hover,.nav.active{background:#167f8c;color:#fff}.residence{margin-top:auto;background:#20465e;border-radius:12px;padding:15px;display:flex;align-items:flex-start;gap:12px;font-size:12px}.residence span{display:grid;gap:4px}.residence strong{font-size:15px}.residence small{font-size:11px;color:#c5dce6}.support{border:1px solid #49697c;border-radius:8px;padding:12px;margin-top:14px;font-size:12px;display:flex;align-items:center;gap:9px}.main{margin-left:245px;min-height:100vh}.topbar{height:66px;background:#fff;border-bottom:1px solid #e3eaf0;display:flex;align-items:center;justify-content:flex-end;gap:20px;padding:0 32px}.topsearch{width:min(390px,40vw);border:1px solid #d5e1e9;background:#f8fafc;border-radius:10px;padding:9px 12px;display:flex;align-items:center;gap:9px;color:#708196}.topsearch input{width:100%;border:0;background:transparent;outline:0;font-size:13px;color:#172c42}.iconbutton{border:0;background:transparent;color:#23364a;position:relative;display:grid;place-items:center;padding:8px}.iconbutton i{position:absolute;right:5px;top:4px;background:#10a898;width:8px;height:8px;border-radius:50%}.profile{border-left:1px solid #e5edf1;padding-left:18px;display:flex;align-items:center;gap:10px;font-size:13px}.profile small{display:block;color:#6c7b8b;margin-top:2px}.avatar{background:#31536a;color:#fff;width:37px;height:37px;border-radius:50%;display:grid;place-items:center;font-weight:700}.content{max-width:1550px;margin:auto;padding:26px 30px 0}.banner{background:#eaf3f8;border:1px solid #d7e8ef;border-radius:10px;display:flex;align-items:center;gap:12px;padding:15px 18px;font-size:12px;color:#27485b}.banner svg{color:#087f8c;flex-shrink:0}.banner strong{font-size:14px;white-space:nowrap}.banner span{border-left:1px solid #91b9c4;padding-left:14px}.toolbar{display:flex;align-items:center;justify-content:space-between;margin:17px 0 20px;gap:12px}.crumb{display:flex;align-items:center;gap:8px;color:#68798b;font-size:13px}.crumb strong{color:#18283a}.role-select{display:flex;align-items:center;gap:8px;color:#607589;font-size:12px}.role-select select{background:#fff;border:1px solid #d7e2e9;border-radius:8px;padding:9px;color:#203447}.resident-heading{display:flex;align-items:center;gap:17px;margin-bottom:18px}.person-photo{width:91px;height:91px;flex-shrink:0;border-radius:15px;background:linear-gradient(140deg,#d9e9e8,#b7d2d4);display:grid;place-items:center;color:#2b6b77}.person-name h1{font-size:29px;letter-spacing:-.8px;margin:0 0 3px}.person-name>div{font-size:13px}.sep{color:#bbc9d0;padding:0 9px}.person-meta{display:flex;align-items:center;flex-wrap:wrap;gap:17px;margin-top:10px;font-size:13px}.person-meta>span{display:flex;align-items:center;gap:6px}.pill{border-radius:100px;padding:5px 10px;font-size:11px;display:inline-flex;align-items:center;gap:5px;font-weight:700;white-space:nowrap}.green{background:#d9f5e9;color:#087248}.amber{background:#fff0d5;color:#9d6500}.heading-actions{margin-left:auto;display:flex;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 15px;border-radius:9px;font-size:12px;font-weight:650;border:1px solid #bed0dc;min-height:40px}.btn.primary{background:#078b8c;color:#fff;border-color:#078b8c}.btn.primary:hover{background:#087579}.btn.ghost{background:#fff;color:#17344a}.btn.ghost:hover{background:#f1f7f8}.btn.square{padding:10px}.tabs{display:flex;gap:5px;border-bottom:1px solid #d4e0e8;overflow-x:auto;padding-bottom:4px}.tabs button{display:flex;align-items:center;justify-content:center;gap:9px;background:transparent;border:0;color:#35475a;padding:12px 18px;white-space:nowrap;border-radius:8px;font-size:13px}.tabs button.chosen{background:#087f8c;color:#fff;font-weight:650}.section-title{display:flex;justify-content:space-between;align-items:center;margin:22px 0 18px;gap:12px}.section-title h2{font-size:21px;margin:0 0 4px;letter-spacing:-.5px}.section-title p{font-size:12px;color:#657688;margin:0}.section-title>small{display:flex;align-items:center;gap:6px;color:#758495;font-size:11px}.dashboard-grid{display:grid;grid-template-columns:1.05fr 1.2fr 1.15fr;gap:15px}.stack{display:flex;flex-direction:column;gap:15px;min-width:0}.panel{background:#fff;border:1px solid #d8e4eb;border-radius:13px;padding:17px;box-shadow:0 3px 12px #112c4206;min-width:0}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:9px;font-weight:700;font-size:14px;margin-bottom:14px}.panel-title>span:first-child{display:flex;align-items:center;gap:8px}.panel-title svg{width:21px;height:21px;color:#078b8c}.panel-title .red-icon{color:#dc3c4b}.panel p{font-size:13px;line-height:1.65;color:#34475a;margin:10px 0 14px}.mini-btn{display:flex;align-items:center;gap:6px;border:1px solid #d6e2ea;border-radius:7px;padding:7px 9px;background:#fff;color:#294459;font-size:11px}.mini-btn svg{width:14px;height:14px;color:inherit}.data-rows>div{display:grid;grid-template-columns:42% 1fr;gap:8px;padding:8px 9px;font-size:12px}.data-rows>div:nth-child(odd){background:#f1f6f9;border-radius:5px}.data-rows b{font-weight:600}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips span{background:#e6f3f5;color:#246673;border-radius:40px;padding:7px 10px;font-size:11px}.small-muted{display:flex;align-items:center;gap:7px;color:#65788a;font-size:11px;margin-top:15px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.metrics>div{border:1px solid #dce7ed;background:#f9fbfc;border-radius:8px;padding:10px 7px;font-size:10px;color:#516b7d}.metrics strong{display:block;font-size:16px;color:#132b40;margin:7px 0 3px}.metrics small{font-size:9px;color:#8393a0}.link{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:#087f8c;font-size:11px;font-weight:650;padding:0;margin-top:12px}.panel-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf1f4;padding-top:10px;color:#708293;font-size:10px}.panel-footer .link{margin:0}.alert{padding:11px 13px;border-radius:8px;margin:8px 0;font-size:12px}.alert strong,.alert small{display:block}.alert small{margin-top:4px;font-size:10px}.danger{background:#ffedf0;color:#a92c39}.warn{background:#fff3e4;color:#8f5e13}.okay{background:#eaf7f4;color:#1a765b}.count{border-radius:30px;background:#cf3147;color:#fff;padding:4px 9px;font-size:11px}.action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.action-grid button{border:1px solid #d4e1e8;background:#f9fbfc;border-radius:9px;min-height:82px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;color:#213a4d;font-size:10px;text-align:center;padding:8px}.action-grid button:first-child{background:#e1f5f2}.action-grid button svg{color:#087f8c}.action-grid button:hover{border-color:#078b8c}.steps{display:flex;justify-content:space-between;padding:10px 0 28px;gap:6px}.steps>div{position:relative;width:29px;height:29px;display:grid;place-items:center;border:2px solid #a3b4c2;border-radius:50%;color:#60788b}.steps>div.done{background:#0c9290;border-color:#0c9290;color:#fff}.steps small{position:absolute;top:35px;left:50%;transform:translate(-50%);white-space:nowrap;font-size:10px;color:#334c5f}.timeline{border-left:2px solid #b8dcd8;margin-left:7px;padding-left:18px}.timeline>div{position:relative;font-size:12px;padding:4px 0 20px}.timeline i{position:absolute;width:10px;height:10px;border-radius:50%;background:#0a918b;left:-24px;top:7px}.timeline small{display:block;color:#8493a1;margin-top:5px;font-size:10px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.button-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.notice{background:#edf7f8;border-left:3px solid #11989a;border-radius:5px;padding:12px;color:#3b6470;font-size:12px;line-height:1.5;margin:15px 0}.restricted{display:flex;align-items:center;gap:10px;color:#6e7f8c;font-size:12px;padding:12px;background:#f2f5f7;border-radius:8px}.label{color:#7b8997!important;margin-bottom:2px!important}.doc-list>div{display:flex;align-items:center;gap:13px;border-bottom:1px solid #edf2f5;padding:13px 0}.doc-list>div>svg{color:#078b8c}.doc-list span{display:grid;gap:4px;flex:1;font-size:13px}.doc-list small{font-size:11px;color:#7e8e9c}.module-page{max-width:560px;margin:75px auto;text-align:center;background:#fff;padding:45px 30px;border:1px solid #dce7ed;border-radius:18px}.module-icon{color:#087f8c}.module-page h1{font-size:25px}.module-page p{color:#65798b;font-size:14px;line-height:1.7}.module-page .btn{margin-top:15px}footer{display:flex;justify-content:space-between;gap:12px;margin-top:42px;padding:20px 0;border-top:1px solid #dce5ec;color:#7b8a97;font-size:11px}footer strong{color:#087f8c}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1e31a8;display:flex;align-items:center;justify-content:center;padding:18px;z-index:50}.modal{width:min(490px,100%);max-height:90dvh;overflow:auto;background:#fff;border-radius:15px;box-shadow:0 25px 90px #08182b70}.modal-head{display:flex;align-items:start;justify-content:space-between;border-bottom:1px solid #e2ebf0;padding:21px 22px}.modal-head h2{font-size:18px;margin:0 0 6px}.modal-head small{color:#748697;font-size:11px}.modal-body{padding:21px 22px;display:grid;gap:15px}.field{display:grid;gap:7px;font-size:12px;font-weight:650;color:#2c4053}.field em{color:#d34450;font-style:normal}.field input,.field select,.field textarea{width:100%;border:1px solid #cbd9e3;border-radius:8px;padding:12px;background:#fff;color:#20374b;font-weight:400;font-size:13px;min-height:43px}.field textarea{resize:vertical;line-height:1.5}.error{color:#bd3345;font-weight:500}.modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:15px 22px 22px;border-top:1px solid #edf1f4}.info-card{background:#f2f7f9;padding:20px;border-radius:10px;display:grid;gap:10px;font-size:13px}.info-card p{margin:0;color:#63798a}.toast{position:fixed;bottom:24px;right:24px;z-index:60;background:#fff;border:1px solid #b7ddd1;border-left:5px solid #1a9c72;box-shadow:0 10px 40px #152f4730;border-radius:10px;padding:15px;max-width:420px;display:flex;align-items:center;gap:10px;font-size:12px;color:#205842}.toast>svg{flex-shrink:0}.toast button{background:none;border:0;margin-left:auto}.mobile-toggle,.scrim{display:none}@media(max-width:1280px){.dashboard-grid{grid-template-columns:1fr 1fr}.dashboard-grid>.stack:last-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr)}.dashboard-grid>.stack:last-child>.panel:last-child{grid-column:1/-1}.heading-actions .btn{padding:9px}.content{padding:22px}}@media(max-width:850px){.sidebar{transform:translate(-100%);transition:transform .2s;width:260px}.sidebar.opened{transform:translate(0)}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#071e2d80;z-index:19}.main{margin-left:0}.mobile-toggle{display:grid;place-items:center;border:0;background:none;color:#213b50}.topbar{padding:0 16px;gap:8px;height:60px;justify-content:space-between}.topsearch{flex:1;width:auto}.profile{padding-left:8px}.profile>div:not(.avatar),.profile>svg{display:none}.content{padding:14px}.banner{flex-wrap:wrap;gap:7px}.banner span{border-left:0;padding-left:0;flex-basis:100%;font-size:11px}.toolbar{align-items:flex-start}.resident-heading{flex-wrap:wrap}.heading-actions{width:100%;margin-left:0}.section-title>small{display:none}.dashboard-grid{grid-template-columns:1fr 1fr}.dashboard-grid>.stack:last-child{grid-column:1/-1}.tabs button{padding:11px 13px}}@media(max-width:580px){.topsearch{min-width:0}.topsearch input{font-size:12px}.topbar .iconbutton{display:none}.crumb{font-size:11px;flex-wrap:wrap}.role-select{align-items:flex-end;flex-direction:column;gap:3px}.role-select select{max-width:145px;font-size:11px}.person-photo{width:66px;height:66px;border-radius:12px}.person-name h1{font-size:22px}.person-name>div{font-size:11px}.person-meta{gap:8px;margin-top:8px}.person-meta>span{font-size:10px}.heading-actions .btn{flex:1}.tabs{margin:0 -14px;padding:0 14px 6px}.tabs button{font-size:12px}.section-title h2{font-size:20px}.dashboard-grid,.two-col,.dashboard-grid>.stack:last-child{display:flex;flex-direction:column}.panel{padding:15px}.metrics strong{font-size:14px}.action-grid{grid-template-columns:repeat(3,1fr)}footer{flex-direction:column;text-align:center}.modal-backdrop{align-items:flex-end;padding:0}.modal{width:100%;max-height:92dvh;border-radius:20px 20px 0 0}.modal-actions .btn{flex:1}.toast{bottom:12px;left:12px;right:12px;max-width:none}}
