:root{font-family: 'Avenir Next',Avenir,system-ui,sans-serif;color:#183a47;background:#f5f8fa;font-size:15px}*{box-sizing:border-box}body{margin:0}header{height:90px;display:flex;align-items:center;gap:30px;border-bottom:1px solid #dae4e8;padding:0 6%}.brand{font-size:27px;font-weight:750;text-decoration:none;color:#183a47}header span,.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700}header #logout{margin-left:auto;width:auto}main{max-width:1400px;margin:auto;display:grid;grid-template-columns:44% 56%;min-height:calc(100vh - 155px)}aside{padding:70px 12%;background:#dfedf0;position:relative;overflow:hidden}h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(45px,5vw,76px);line-height:1.05;letter-spacing:-3px;margin:26px 0}p{line-height:1.7}aside p{color:#456672}aside small{display:block;font-size:10px;margin-top:35px;color:#456672}.door{height:260px;width:165px;background:#709ba5;margin:40px auto 0;border:9px solid #c0d5d9;border-bottom:0;border-radius:85px 85px 0 0;box-shadow:14px 8px 0 #cfdee2;position:relative}.number{text-align:center;font-size:9px;letter-spacing:3px;margin-top:100px;color:#fff}.handle{width:29px;height:5px;background:#e6bb75;position:absolute;right:14px;top:160px}section{padding:65px 10%;min-width:0}h2{font-family:Georgia,serif;font-size:36px;line-height:1.15;font-weight:400;margin:18px 0}h3{margin-top:30px;font-size:17px}label{display:block;font-size:12px;font-weight:650;margin:20px 0 0}input,select{font:inherit;width:100%;padding:13px;border:1px solid #bbcdd3;background:white;border-radius:7px;color:#183a47;margin-top:8px;min-width:0}button{background:#245d70;color:white;border:0;border-radius:7px;font:inherit;font-weight:600;padding:13px 18px;cursor:pointer;margin-top:20px}form>button{width:100%}button:hover{background:#183f4d}button:disabled{opacity:.55;cursor:wait}:focus-visible{outline:3px solid #ce963f;outline-offset:3px}.muted{font-size:12px;color:#607b85;line-height:1.65}.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.check{display:flex;gap:9px;align-items:center}.check input{width:auto;margin:0}nav{display:flex;gap:10px}nav button{background:#e0eaee;color:#183a47;font-size:12px}.row{border-bottom:1px solid #d8e4e8;padding:16px 0;overflow-wrap:anywhere}.row button{font-size:11px;padding:7px 10px;margin:10px 8px 0 0}.row small{display:block;color:#607b85;margin-top:5px}.code{font:42px ui-monospace,monospace;letter-spacing:6px;padding:30px 15px;background:#dfedf0;border-radius:10px;margin-top:25px;overflow-wrap:anywhere}#notice:not(:empty){padding:13px;background:#fff0d8;border-radius:7px;font-size:13px;margin-bottom:22px}footer{height:65px;padding:20px 6%;border-top:1px solid #dae4e8;font-size:12px;display:flex;justify-content:space-between;color:#607b85}[hidden]{display:none!important}@media(max-width:850px){header{height:70px}header span{display:none}main{grid-template-columns:1fr}aside{padding:30px 7%}h1{font-size:45px;margin:16px 0}aside .door,aside small{display:none}aside p{margin-bottom:0}section{padding:35px 7%}footer span{display:none}.grid{grid-template-columns:1fr}}
textarea{font:inherit;width:100%;padding:13px;border:1px solid #bbcdd3;background:white;border-radius:7px;color:#183a47;margin-top:8px;resize:vertical}nav{flex-wrap:wrap}.house-card{border:1px solid #d1dfe5;border-radius:12px;overflow:hidden;margin:22px 0;background:white}.house-card>img{width:100%;height:230px;object-fit:cover;display:block}.house-body{padding:20px}.house-body h3{margin:0 0 8px}.house-body p{margin:8px 0}.house-facts{font-size:13px;font-weight:650;color:#245d70}.house-body a{font-size:12px;color:#245d70}.house-card>button{margin:0 0 18px 20px}#resetHouse{background:#e0eaee;color:#183a47}#housePreview:empty{display:none}#importHouse button{background:#356d58}
nav button:hover{color:white}nav button[aria-pressed="true"]{background:#245d70;color:white}details{border:1px solid #d1dfe5;border-radius:8px;padding:14px;margin:20px 0}summary{cursor:pointer;font-size:13px;font-weight:600}details a{font-size:12px;color:#245d70}
.person-card{background:white;border:1px solid #d1dfe5;border-radius:10px;padding:18px;margin:18px 0}.person-card>strong{font-size:14px}.user-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end}.user-controls label{margin-top:14px}.user-controls button{width:auto;margin:0;padding:13px 12px;font-size:12px}.person-card details{margin-bottom:0}.person-card details .row:last-child{border-bottom:0}.person-card .muted{margin-bottom:0}select:disabled{opacity:.65}@media(max-width:600px){.user-controls{grid-template-columns:1fr 1fr}.user-controls button{grid-column:1/-1}}
#viewSwitch{display:flex;gap:6px;margin-left:auto}#viewSwitch button{margin:0;padding:10px 12px;background:#e0eaee;color:#183a47;font-size:12px}#viewSwitch button[aria-pressed="true"]{background:#245d70;color:white}#viewSwitch+#logout{margin-left:0}#myInvitations{margin-bottom:28px}@media(max-width:600px){header{padding:0 4%;gap:10px}.brand{font-size:20px}#viewSwitch button{font-size:11px;padding:9px}header #logout{padding:9px;font-size:11px}}

/* Keep account actions on a shared centerline and outside form-button spacing. */
.header-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-left:auto;flex-shrink:0}
header .header-actions button{display:inline-flex;align-items:center;justify-content:center;height:40px;margin:0;padding:0 14px;line-height:1;font-size:12px;white-space:nowrap}
header .header-actions #viewSwitch{align-items:center;margin:0;gap:6px}
header .header-actions #logout{margin:0}
@media(max-width:600px){
 header{height:auto;min-height:70px;padding:14px 4%;flex-wrap:wrap;gap:12px}
 header .brand{flex:1}
 .header-actions{gap:8px}
 header .header-actions button{height:38px;padding:0 10px;font-size:11px}
}
@media(max-width:480px){
 header .header-actions{width:100%;justify-content:space-between}
}
