:root{font-family:Arial,Helvetica,sans-serif;color:#142b45;background:#f3f6fa;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0}header{height:86px;background:#002147;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.brand{color:white;text-decoration:none;font-size:28px;font-weight:800;letter-spacing:-1px}.brand span{color:#69c5f1}.brand small{font-size:12px;letter-spacing:3px;margin-left:24px;font-weight:400}.private{font-size:14px;color:#c4d6e7}.demo{padding:11px 5vw;background:#FFE58A;color:#744817;font-size:12px;font-weight:bold;letter-spacing:.8px}.demo span{font-size:14px;letter-spacing:0;font-weight:400;margin-left:16px}main{max-width:1280px;margin:auto;padding:42px 28px 70px}h1{font-size:36px;letter-spacing:-1.3px;margin:0 0 6px}h2{font-size:22px;margin:0 0 14px}h3{font-size:17px}p{margin:8px 0 20px}.muted{color:#64748b}.eyebrow{font-size:12px;letter-spacing:2px;color:#55728e;font-weight:bold;margin-bottom:8px}.row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:28px 0}.card,.panel{background:white;border:1px solid #dce3ec;border-radius:12px;padding:24px}.card b{display:block;font-size:32px;margin-top:6px}.card small{color:#617085;font-size:14px}.card:first-child{border-top:4px solid #002147}.panel{margin:18px 0}.controls{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.controls label{min-width:160px;flex:1}label{display:block;font-size:14px;font-weight:600}input:not([type=checkbox]),select{width:100%;padding:12px;border:1px solid #bbc8d7;border-radius:6px;font:inherit;font-weight:400;color:#142b45;background:white;margin-top:6px}input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid #5cb6e6;outline-offset:2px}button{border:0;border-radius:6px;padding:12px 18px;background:#002147;color:white;font-size:14px;font-weight:bold;cursor:pointer}button:hover{filter:brightness(1.2)}button:disabled{opacity:.4;cursor:not-allowed}.secondary{background:#eaf0f6;color:#163d64}.textbtn{background:none;color:#245c93;padding:6px 0}.orange{background:#f79320;color:#102640}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;font-size:12px;letter-spacing:.7px;text-transform:uppercase;color:#62758a;background:#f7f9fc}td,th{padding:17px 14px;border-bottom:1px solid #e6ebf1}td small{display:block;font-size:13px;color:#64748b}input[type=checkbox]{width:19px;height:19px;accent-color:#002147;vertical-align:middle}.badge{padding:6px 10px;border-radius:20px;font-size:13px;display:inline-block;background:#edf1f5;color:#52677d}.waiting{background:#FFE58A;color:#805114}.done{background:#BFE6C8;color:#226343}.toolbar{padding:18px 14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.footnote{font-size:14px;color:#64748b;margin-top:16px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}.steps{display:flex;gap:24px;margin:22px 0;color:#718198;font-size:14px}.steps .active{color:#002147;font-weight:bold;border-bottom:3px solid #f79320;padding-bottom:10px}.narrow{max-width:860px;margin:auto}.signature{width:100%;height:170px;background:#fafcff;border:1px dashed #879bb1;border-radius:8px;touch-action:none}.consent{display:flex;gap:12px;font-size:14px;font-weight:400;align-items:start;margin:18px 0}.consent input{flex-shrink:0}.terms{font-size:15px;line-height:1.65}.terms h3{margin-bottom:4px}.summary{background:#edf4fb;border-left:4px solid #5cb6e6;padding:18px;margin:20px 0}.notice{background:#FFE58A;padding:16px;border-radius:8px;font-size:14px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#002147;color:white;padding:13px 22px;border-radius:8px;display:none;box-shadow:0 5px 25px #0002;max-width:90vw}img.sig{width:260px;max-width:100%;height:95px;object-fit:contain;border-bottom:1px solid #8898aa}.log{font-size:14px;padding:12px 0;border-bottom:1px solid #e4eaf1}.error{color:#a52727;font-size:14px}.packet{background:white;padding:38px;border:1px solid #dce3ec;border-radius:10px}.packet h1{font-size:28px}.packet .formgrid p{margin:0 0 12px}.signpair{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}@media(max-width:700px){header{padding:0 20px;height:72px}.brand small,.private{display:none}.demo{padding:10px 20px}.demo span{display:block;margin:4px 0}main{padding:25px 16px}h1{font-size:29px}.cards{grid-template-columns:1fr 1fr;gap:10px}.card{padding:15px}.panel{padding:16px}.formgrid,.signpair{grid-template-columns:1fr}.packet{padding:20px}.toolbar{align-items:stretch;flex-direction:column}.steps{gap:12px;font-size:12px}.full{grid-column:auto}}@media print{header,.demo,.no-print,#toast{display:none!important}body{background:white;color:black}main{padding:0;max-width:none}.packet{border:none;padding:0}.packet h2{break-after:avoid}.signpair{break-inside:avoid}.log{font-size:11px}.notice{border:1px solid #aaa}.packet{font-size:12px}}

.housegrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.housecard{background:white;color:#142b45;text-align:left;border:1px solid #ccd7e3;padding:18px;min-width:0}.housecard:hover{filter:none;background:#f2f8fd}.housecard.chosen{border:2px solid #002147;background:#edf4fb;padding:17px}.housecard .row{gap:8px}.completion{font-size:20px;margin-top:14px}.housemeta{font-size:14px;font-weight:400;line-height:1.7;color:#52677d}.housecard progress{width:100%;height:8px;accent-color:#002147;margin:10px 0}.lastperson{margin-top:10px;border-top:1px solid #cad7e4;padding-top:10px;font-size:14px;color:#805114}summary{cursor:pointer;font-size:16px}input[readonly]{background:#f2f5f9}@media(max-width:1000px){.housegrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.housegrid{grid-template-columns:1fr}}

.cards.compactstats{gap:10px;margin:12px 0 18px}.compactstats .card{padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-radius:8px}.compactstats .card:first-child{border-top:1px solid #dce3ec;border-left:3px solid #002147}.compactstats .card b{font-size:24px;margin:0;line-height:1.2}.compactstats .card small{font-size:14px;line-height:1.25}.houserent h3{margin:8px 0}.houserent .formgrid{margin-top:10px!important}.sharedsettings .formgrid{grid-template-columns:2fr 1fr 1fr 1fr}.sharedsettings h2{font-size:18px}@media(max-width:950px){.sharedsettings .formgrid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.sharedsettings .formgrid{grid-template-columns:1fr}.compactstats .card{padding:10px}.compactstats .card b{font-size:22px}}

.leasebutton{display:inline-block;background:#002147;color:white;padding:12px 18px;border-radius:6px;text-decoration:none;font-weight:bold}.sharedsettings .full{grid-column:1/-1}

.sharedsettings .formgrid{grid-template-columns:2fr 1fr 1fr}@media(max-width:950px){.sharedsettings .formgrid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.sharedsettings .formgrid{grid-template-columns:1fr}}

dialog#textDialog{width:min(620px,calc(100% - 28px));max-height:90vh;overflow:auto;border:1px solid #ccd7e3;border-radius:12px;padding:24px;color:#142b45}dialog::backdrop{background:#00214788}#textDialog h2{margin:0}#textDialog textarea{display:block;box-sizing:border-box;width:100%;margin-top:8px;padding:12px;font:inherit;line-height:1.5;color:#142b45;border:1px solid #bbc8d7;border-radius:6px;resize:vertical}#textDialog textarea:focus{outline:3px solid #5cb6e6}#copyResult{margin:8px 0 0;font-size:14px}
.gap{margin-top:18px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px}textarea{width:100%;padding:12px;border:1px solid #bbc8d7;border-radius:6px;font:inherit;color:#142b45;margin-top:6px}dialog{width:min(960px,calc(100% - 28px));max-height:90vh;overflow:auto;border:1px solid #ccd7e3;border-radius:12px;padding:24px;color:#142b45}dialog .close{float:right;margin-left:12px}fieldset{border:1px solid #ccd7e3;border-radius:8px;padding:18px;margin:18px 0}legend{font-weight:bold}.csvtable{max-height:50vh}.working{cursor:progress}.working button{pointer-events:none;opacity:.6}a{color:#245c93}.working dialog button.close{pointer-events:auto}.signature-controls{display:flex;justify-content:space-between;align-items:center;gap:12px}.signing-error{padding:14px;border:1px solid #be4141;color:#8f1818;background:#fff6f6}.signature{display:block}.sr-status{min-height:24px}.signerhead{margin:24px 0}.packet-preview{max-height:none}.pending-note{border-left:4px solid #f79320;padding-left:16px}@media(max-width:600px){header .private{display:block;font-size:11px;max-width:120px}.actions{gap:10px}dialog{padding:16px}}
.lease-entry{border-top:1px solid #dce3ec;margin-top:20px;padding-top:12px}.lease-entry pre{white-space:pre-wrap;font:14px/1.6 Arial,sans-serif;background:#f5f8fc;padding:14px;border-radius:6px;overflow-wrap:anywhere}button[hidden]{display:none!important}
.house-switcher{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:#f3f6faf5;border:1px solid #dce3ec;border-radius:10px;padding:12px 18px;margin:20px 0 14px;box-shadow:0 3px 10px #0021470a}.house-switcher>label{flex:1;min-width:220px;max-width:440px;font-size:12px;text-transform:uppercase;letter-spacing:.8px}.house-switcher select{font-size:17px;font-weight:700;margin-top:4px;padding:10px 12px;letter-spacing:normal;text-transform:none}.house-workspace,.house-overview,.sharedsettings{scroll-margin-top:115px}.house-workspace:focus,.house-overview:focus,.sharedsettings:focus{outline:none}.house-overview{margin-top:32px}.house-overview h2{margin-bottom:5px}.house-overview .housegrid{margin-top:14px}.send-column label{font-size:12px;white-space:nowrap}.house-workspace{margin-top:0}@media(max-width:600px){.house-switcher{gap:9px;padding:10px 12px}.house-switcher>label{min-width:100%;max-width:none}.house-switcher>.actions{width:100%;justify-content:space-between}.house-switcher button{padding-top:8px;padding-bottom:8px}.house-workspace,.house-overview,.sharedsettings{scroll-margin-top:155px}}@media print{.house-switcher{display:none!important}}
/* Update 2.3: visible year groups and review queue. */
.group-ready{background:#BFE6C8;color:#226343;padding:12px 16px;border-radius:8px;font-weight:bold}.lease-note{font-size:14px;color:#52677d;background:#f3f6fa;padding:12px 16px;border-left:3px solid #729bbf}.member-actions{max-width:255px;white-space:normal;gap:8px 14px}.remove-button{color:#8a3940}.returning-label{color:#226343}.roster-list{border-top:1px solid #dce3ec}.roster-line{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 4px;border-bottom:1px solid #e6ebf1;flex-wrap:wrap}.roster-line small{display:block;font-size:13px;color:#64748b}.roster-line input{margin-right:8px}.roster-line .muted{font-size:13px;font-weight:400}.inquiry-card{border:1px solid #d5e1ed;border-left:4px solid #69b9e8;border-radius:8px;margin:14px 0;padding:18px;background:#fafdff;overflow-wrap:anywhere}.inquiry-card h3{margin:0 0 6px}.inquiry-card p{font-size:14px;margin:5px 0 12px}.inquiry-card .actions{margin-top:12px}.inquiry-card .eyebrow{font-size:10px}.inquiry-changed{border-left-color:#f79320}.replacement-banner{border:2px solid #f79320;background:#FFE58A;padding:16px;border-radius:8px;margin:16px 0}.inquiry-editor{background:#f3f7fb;border:1px solid #c8d8e8;padding:20px;border-radius:8px;margin:20px 0}.empty-note{padding:16px;background:#f6f8fb;color:#64748b;border-radius:6px}.renewal-section{border-top:3px solid #729bbf}.year-form{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:12px 0 24px}.year-form label{max-width:180px}#incomingInquiries,#renewalSection{scroll-margin-top:115px}#incomingInquiries:focus{outline:none}@media(max-width:600px){#incomingInquiries,#renewalSection{scroll-margin-top:155px}.inquiry-editor{padding:12px}.roster-line{align-items:flex-start}.member-actions{min-width:160px}.year-form{gap:8px}}

/* Update 2.4: house sections keep every prospective group together. */
.chosen-strip{margin:18px 0 24px}.chosen-strip h2{font-size:17px;margin:0 0 10px}.chosen-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.group-card-name{display:block;font-size:18px;margin:5px 0 12px;overflow-wrap:anywhere}.housecard small{display:block;white-space:normal;overflow-wrap:anywhere}.housecard{height:100%;min-width:0}.compact-group{padding:14px}.compact-group .group-card-name{font-size:16px;margin:4px 0 8px}.chosen-rental{border-top:4px solid #26825a}.house-family{background:#fff;border:1px solid #d5e1ed;border-radius:12px;padding:20px;margin:20px 0}.house-family h3{font-size:21px;margin:0}.house-family>.row{margin-bottom:16px}.group-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.prospect-card{border-top:4px solid #5cb6e6}.group-grid .housecard p{margin:12px 0 8px}.empty-house{background:#f7f9fc}.group-choice{padding:16px;background:#f0f6fa;border-radius:8px;margin:16px 0}.group-choice h3{margin:0 0 12px;font-size:24px}.group-choice form{display:flex;align-items:end;flex-wrap:wrap;gap:12px}.group-choice label{flex:1;max-width:400px}.prospect-section{border:1px solid #c6daea;border-radius:10px;margin:20px 0;padding:18px;scroll-margin-top:120px}.prospect-section:focus{outline:3px solid #5cb6e6}.prospect-section>.row h3{font-size:21px;margin:0}.prospect-section>.row p{margin:4px 0}.prospect-section .inquiry-card{background:white}.house-workspace .group-choice+.group-ready{margin-top:18px}@media(max-width:850px){.group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.group-grid{grid-template-columns:1fr}.chosen-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chosen-grid .badge{white-space:normal}.house-family,.prospect-section{padding:12px}.prospect-section{scroll-margin-top:160px}.group-choice form button{width:100%}}@media(max-width:380px){.chosen-grid{grid-template-columns:1fr}}

#otherInquiries{scroll-margin-top:140px}#otherInquiries:focus{outline:3px solid #5cb6e6}

.prospect-card-wrap{display:flex;flex-direction:column;min-width:0;gap:8px}.prospect-card-wrap>.housecard{height:auto;flex:1}.prospect-card-wrap>.move-group{align-self:flex-start;text-align:left;padding:8px}.set-aside-group{background:#f7f8fa}.set-aside-group:focus{outline:3px solid #5cb6e6}

.group-card-actions{display:flex;gap:4px 12px;flex-wrap:wrap}.group-card-actions .textbtn{text-align:left;padding:8px;font-size:13px}

/* Each application group has its own visible workspace selector. */
.house-group-selector{margin:1rem 0 1.25rem;padding-bottom:1rem;border-bottom:1px solid #dce3ec}
.house-group-selector .group-grid{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:.65rem}
.house-group-selector .housecard{padding:.9rem;text-align:left;min-width:0}
.house-group-selector .housecard p{margin:.45rem 0;font-size:.92rem}
.group-choice .actions{flex-wrap:wrap}
@media(max-width:600px){.house-group-selector .group-grid{grid-template-columns:1fr}.group-choice{display:block}.group-choice .actions{margin-top:.75rem}}

.communication-choice{border:1px solid #cbd5e1;border-radius:14px;padding:20px;margin:24px 0;background:#f8fafc}.communication-choice legend{font-size:1.2rem;font-weight:700;padding:0 8px}.communication-choice .consent{align-items:flex-start;padding:16px;background:white;border:1px solid #dbe3ed;border-radius:10px;line-height:1.55}.communication-choice input[type=radio]{flex:0 0 auto;width:20px;height:20px;margin-top:4px}.policy-page{max-width:820px;margin:auto;padding:24px}.policy-page p,.policy-page li{line-height:1.7}.policy-page nav{display:flex;gap:20px;flex-wrap:wrap}
