:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#28372e;background:#f5f2eb}*{box-sizing:border-box}body{margin:0}.wrap{max-width:1320px;margin:auto;padding:0 30px}header{height:84px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d8d8cc}.back{font-size:13px;color:#3d664f;text-decoration:none}.back:hover{text-decoration:underline}.mark{font:700 34px Georgia;color:#294e3a}.mark span{color:#d29065}main{padding:58px 0 80px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:#70806e;margin:0 0 10px}.heading{display:flex;align-items:start;justify-content:space-between;gap:25px;margin-bottom:18px}h1{font:46px/1.1 Georgia;margin:0 0 12px}h2{font:28px/1.2 Georgia;margin:0 0 11px}p{line-height:1.55}.heading p{margin:0;color:#69766a;font-size:14px}.mode{border-radius:999px;padding:10px 16px;font-size:12px;font-weight:700;white-space:nowrap;background:#e5e9de;color:#4d5d50}.mode.active{background:#dcebd8;color:#255d34}.message{min-height:22px;font-size:13px;color:#526952}.message.error{color:#a13c35}.sign-in,.schedule,.floor,.cleanup{background:#fffefa;border:1px solid #dfdfd4;border-radius:15px;box-shadow:0 8px 30px #30452a0a}.sign-in{padding:25px}.sign-in a{color:#39624a}.schedule{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:26px;margin:31px 0}.schedule p{font-size:13px;color:#69766a;margin:0}.summary{font-weight:700!important;color:#385b44!important;margin-top:18px!important}.schedule form{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:center}.schedule label{font-size:12px;font-weight:700}.schedule input{display:block;width:100%;margin-top:7px;border:1px solid #cbd2c8;border-radius:8px;background:#fff;padding:12px;color:#26392a;font:inherit}.schedule-actions{display:flex;gap:10px;grid-column:1/-1}.schedule small{grid-column:1/-1;color:#829080;font-size:11px}.primary,.quiet{border-radius:8px;padding:12px 16px;font:700 12px Inter,-apple-system,sans-serif;cursor:pointer}.primary{background:#39654a;border:1px solid #39654a;color:white}.quiet{background:transparent;color:#39654a;border:1px solid #afc0b1}.quiet:disabled{opacity:.5;cursor:default}.floors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.floor{padding:16px;min-width:0}.floor-head{display:flex;justify-content:space-between;align-items:start;gap:8px;padding:7px 6px 15px}.floor h2{font:29px Georgia;margin:0}.state{font-size:10px;font-weight:700;padding:7px 9px;border-radius:999px;background:#edf0e9;color:#49624d;white-space:nowrap}.state.warn{background:#f9e8d1;color:#8c4b14}.state.off{background:#ecece7;color:#6f786c}.photo{aspect-ratio:4/3;background:#e7e9e1;border-radius:9px;overflow:hidden;display:flex;align-items:center;justify-content:center;color:#788374;text-align:center;font-size:13px;padding:14px}.photo img{width:100%;height:100%;object-fit:cover}.photo-caption{font-size:11px;color:#788374;min-height:18px;margin:12px 4px 18px}.reading{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid #e4e5dc;border-bottom:1px solid #e4e5dc;padding:18px 4px}.reading small{display:block;color:#81907e;font-size:10px;margin-bottom:5px}.reading strong{font-size:23px;font-weight:650;letter-spacing:-.5px}.floor-foot{padding:16px 4px 2px}.floor-foot p{font-size:11px;color:#738070;margin:0 0 12px}.floor-foot button{width:100%}.footnote{font-size:12px;color:#7a8276;max-width:720px;margin:28px 0}.cleanup{padding:17px 22px;max-width:440px}.cleanup summary{font-size:12px;font-weight:700;cursor:pointer}.cleanup p{font-size:12px;color:#6d796b}.danger{color:#a33e38;border-color:#d4a6a2}@media(max-width:900px){.floors{grid-template-columns:1fr 1fr}.schedule{grid-template-columns:1fr}}@media(max-width:620px){.wrap{padding:0 18px}header{height:68px}main{padding-top:37px}.heading{display:block}h1{font-size:38px}.mode{display:inline-block;margin-top:18px}.schedule{padding:20px;gap:25px}.schedule form{grid-template-columns:1fr}.floors{grid-template-columns:1fr}.floor{padding:15px}.photo{aspect-ratio:4/3}}
.photo-history{margin:0 4px 15px;font-size:11px;color:#39654a}.photo-history summary{cursor:pointer}.photo-choices{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.photo-choices .quiet{padding:7px 9px;font-size:10px}

/* Keep the camera cards foremost; monitoring setup sits below them. */
.heading-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.heading-actions .quiet{padding:9px 13px}
.floors{margin-top:27px}
.photo.has-image{padding:0}
.floor.waiting .photo{aspect-ratio:auto;min-height:105px}
.schedule{display:block;padding:0;margin:30px 0 18px}
.schedule[hidden]{display:none}
.schedule-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px 25px}
.schedule-title{font:24px/1.2 Georgia;color:#28372e}
.schedule .summary{margin:0!important;font-size:12px;color:#526952!important;font-weight:500!important}
.schedule-body{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:24px 25px;border-top:1px solid #e4e5dc}
.schedule-body>p{font-size:13px;max-width:370px}
@media(max-width:900px){.schedule-body{grid-template-columns:1fr;gap:19px}}
@media(max-width:620px){.heading-actions{justify-content:flex-start;margin-top:18px}.heading-actions .mode{margin-top:0}.schedule{padding:0}.schedule-head{padding:18px 20px}.schedule-title{font-size:22px}.schedule-body{padding:20px}.floors{margin-top:22px}}
.floor-head{padding-bottom:10px}
.floor .reading{border:0;padding:0 5px 14px;gap:12px}
.floor .reading strong{font-size:25px}
.floor.waiting .reading{padding-bottom:11px}
