:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#193c42;background:#f3f6f5;font-size:15px;--accent:#126c63;--line:#dce6e3}*{box-sizing:border-box}body{margin:0}.notice{text-align:center;background:#fff0cb;color:#654400;padding:9px 16px;font-size:11px;font-weight:750;letter-spacing:.05em}header{background:#fff;border-bottom:1px solid var(--line);padding:22px 5%;display:flex;gap:28px;align-items:center;flex-wrap:wrap}.brand{display:flex;gap:13px;align-items:center}.brand strong{letter-spacing:.07em;font-size:17px}.brand small{display:block;color:#648078;margin-top:4px;font-size:12px}.mark{display:grid;place-items:center;width:43px;height:43px;background:var(--accent);color:white;border-radius:12px;font-size:28px}.tag{border:1px solid #bee0d3;background:#eef8f3;color:#246954;padding:7px 12px;border-radius:30px;font-size:12px}#session-info{margin-left:auto}main{max-width:1380px;padding:24px 4%;margin:auto}#status{padding:13px 17px;background:#e4f1eb;border-left:3px solid var(--accent);border-radius:5px;margin-bottom:24px;overflow-wrap:anywhere}#status.error{background:#fff0eb;border-color:#b4412f;color:#8c3024}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px;margin-bottom:20px;box-shadow:0 3px 15px #153a3505}.login{max-width:480px;margin:8vh auto}.eyebrow{font-size:11px;letter-spacing:.13em;font-weight:800;color:var(--accent);margin:0 0 12px}h1{font-size:28px;letter-spacing:-.03em;line-height:1.2;margin:0 0 12px}h2{font-size:19px;margin:0 0 14px}p{line-height:1.6}.muted{color:#637c7d;font-size:13px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:32px 0 24px}.section-head p{max-width:760px}.beds{display:grid;grid-template-columns:repeat(8,1fr);gap:10px;margin-bottom:24px}.bed{min-height:86px;text-align:left;background:#fff;color:#193c42;border:1px solid var(--line);border-radius:10px;padding:13px}.bed.active{border:2px solid var(--accent);background:#edf7f2}.bed strong{display:block;font-size:13px}.bed span{display:block;margin-top:9px;overflow:hidden;text-overflow:ellipsis;font-size:12px;color:#637c7d}.bed.occupied span{color:#126c63}.columns{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}label{display:block;font-size:13px;font-weight:650;margin-bottom:17px}input,textarea,select{display:block;width:100%;font:inherit;margin-top:7px;padding:11px 12px;border:1px solid #cbdad5;border-radius:6px;color:#193c42;background:#fff}textarea{resize:vertical;line-height:1.55}input:focus,textarea:focus,select:focus{outline:2px solid #76b7a2;outline-offset:1px}button{font:inherit;font-size:13px;cursor:pointer;border:1px solid transparent;background:var(--accent);color:#fff;padding:11px 16px;border-radius:6px;font-weight:650}button:hover{filter:brightness(.94)}button:disabled{opacity:.5;cursor:not-allowed}.secondary{background:#edf4f0;color:#235d52;border-color:#d1e1da}.ghost{background:transparent;color:#3b6962;border-color:var(--line)}.danger{color:#a23c30;background:#fff2ef;border-color:#f0c7bd}fieldset{border:0;margin:0;padding:0}.actions{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:20px 0}.actions label{margin:0}.idline{font-size:11px;overflow-wrap:anywhere}pre{font:11px/1.6 ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:470px;overflow:auto;background:#f6f8f7;padding:14px;border-radius:7px}.closed button{display:block;width:100%;text-align:left;margin:8px 0}.admin-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}#users>div{padding:12px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}footer{text-align:center;color:#69817d;font-size:11px;padding:30px 20px}body[aria-busy=true] button{pointer-events:none;opacity:.6}[hidden]{display:none!important}@media(max-width:850px){.beds{grid-template-columns:repeat(4,1fr)}.columns{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr}header{gap:15px}.section-head{align-items:start;flex-direction:column}.card{padding:20px}h1{font-size:25px}}@media(max-width:450px){.beds{grid-template-columns:repeat(2,1fr)}.brand strong{font-size:14px}.tag{display:none}}

.consent{display:flex;gap:10px;align-items:flex-start;font-weight:500}.consent input{width:auto;flex:none;margin-top:3px}#ai-lab{margin-top:22px}#ai-output{max-height:300px}
