:root{--blue:#1a73e8;--green:#34a853;--orange:#f29900;--red:#ea4335;--purple:#9c27b0;--teal:#00897b}*,:before,:after{box-sizing:border-box}html,body{background:#fafafa;height:100%;margin:0;font-family:Arial,sans-serif}.page{flex-direction:column;max-width:480px;min-height:100dvh;margin:auto;padding:24px 16px;display:flex}.header{background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:10px;margin-bottom:28px;padding:16px 18px;display:flex;box-shadow:0 1px 6px #00000014}.header-logo{width:auto;height:27px}.header-info{justify-content:space-between;align-items:center;width:100%;display:flex}.header-location{color:var(--blue);text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:700}.header-room{flex-direction:column;align-items:flex-end;display:flex}.header-room-label{color:#888;text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;font-weight:600}.header-room-number{color:var(--blue);font-size:.82rem;font-weight:700;line-height:1.2}.location-sub{text-align:center;color:#888;letter-spacing:.04em;margin-top:-18px;margin-bottom:20px;font-size:.8rem;font-weight:600}.section-title{color:#333;text-align:center;margin-bottom:14px;font-size:1rem;font-weight:700}.section-title-mr{color:#666;margin-top:3px;font-size:.82rem;font-weight:500}.dept-grid{grid-template-columns:1fr;gap:14px;margin-bottom:28px;display:grid}.dept-btn{cursor:pointer;text-align:left;background:#fff;border:2.5px solid #e0e0e0;border-radius:16px;align-items:center;gap:12px;padding:14px 16px;transition:all .18s;display:flex}.dept-icon{flex-shrink:0;font-size:1.6rem}.dept-text{flex-direction:column;gap:1px;display:flex}.dept-label{color:#333;font-size:1rem;font-weight:700;line-height:1.3}.dept-sub{color:#777;font-size:.72rem;font-weight:400}.dept-label-mr{color:#555;margin-top:4px;font-size:.88rem;font-weight:600;line-height:1.3}.dept-sub-mr{color:#999;font-size:.68rem;font-weight:400}.dept-btn.selected-Nursing{border-color:var(--blue);background:#e8f0fe}.dept-btn.selected-Nursing .dept-label,.dept-btn.selected-Nursing .dept-label-mr{color:var(--blue)}.dept-btn.selected-Housekeeping{border-color:var(--green);background:#e8f5e9}.dept-btn.selected-Housekeeping .dept-label,.dept-btn.selected-Housekeeping .dept-label-mr{color:var(--green)}.dept-btn.selected-Maintenance{border-color:var(--orange);background:#fff8e1}.dept-btn.selected-Maintenance .dept-label,.dept-btn.selected-Maintenance .dept-label-mr{color:#e65100}.dept-btn.selected-Billing{border-color:var(--purple);background:#f3e5f5}.dept-btn.selected-Billing .dept-label,.dept-btn.selected-Billing .dept-label-mr{color:var(--purple)}.dept-btn.selected-Diet{border-color:var(--teal);background:#e0f2f1}.dept-btn.selected-Diet .dept-label,.dept-btn.selected-Diet .dept-label-mr{color:var(--teal)}textarea{resize:vertical;background:#fff;border:1.5px solid #ddd;border-radius:12px;width:100%;min-height:100px;margin-bottom:6px;padding:14px;font-family:Arial,sans-serif;font-size:16px}textarea:focus{border-color:var(--blue);outline:none}.notes-wrapper{width:100%;position:relative}.notes-wrapper textarea{width:100%;padding-bottom:44px}.mic-btn{background:var(--blue);cursor:pointer;opacity:.85;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1rem;display:flex;position:absolute;bottom:10px;right:10px}.mic-btn.recording{background:var(--red);opacity:1;animation:1.2s infinite pulse}@keyframes pulse{0%{box-shadow:0 0 #ea433580}70%{box-shadow:0 0 0 8px #ea433500}to{box-shadow:0 0 #ea433500}}.char-count{text-align:right;color:#888;margin-bottom:24px;font-size:.75rem}.submit-btn{background:var(--blue);color:#fff;cursor:pointer;border:none;border-radius:16px;flex-direction:column;align-items:center;gap:2px;width:100%;margin-top:auto;padding:16px;font-size:1rem;font-weight:800;display:flex}.submit-btn-mr{opacity:.85;font-size:.78rem;font-weight:500}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.thankyou{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100dvh;padding:24px;display:flex}.thankyou .icon{font-size:4rem}.thankyou .msg{color:var(--blue);font-size:1.3rem;font-weight:800}.thankyou .sub{color:#888;font-size:.95rem}.status-check-btn{cursor:pointer;text-align:left;background:#f5f9ff;border:2.5px dashed #b0bec5;border-radius:16px;align-items:center;gap:12px;margin-bottom:28px;padding:14px 16px;transition:all .18s;display:flex}.status-check-btn:hover{border-color:var(--blue);background:#e8f0fe}.code-label{color:#888;text-transform:uppercase;letter-spacing:.08em;margin-top:16px;font-size:.75rem;font-weight:600}.code-value{letter-spacing:.18em;color:#333;margin-top:4px;font-family:monospace;font-size:1.6rem;font-weight:800}.status-link{background:var(--blue);color:#fff;border-radius:12px;margin-top:20px;padding:12px 28px;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-block}.submit-another-btn{color:var(--blue);border:2px solid var(--blue);cursor:pointer;background:#f0f6ff;border-radius:12px;min-width:220px;margin-top:8px;padding:12px 28px;font-size:.95rem;font-weight:700;display:inline-block}.status-page{flex-direction:column;max-width:480px;min-height:100dvh;margin:auto;padding:24px 16px;display:flex}.status-header{background:#fff;border-radius:16px;flex-direction:column;align-items:center;gap:6px;margin-bottom:20px;padding:16px 18px;display:flex;box-shadow:0 1px 6px #00000014}.status-room-label{color:var(--blue);font-size:1.1rem;font-weight:700}.status-refresh-label{color:#aaa;font-size:.72rem}.status-title{color:#333;text-align:center;margin:0 0 20px;font-size:1.1rem;font-weight:800}.status-loading{text-align:center;color:#888;padding:40px 0}.status-empty{text-align:center;flex-direction:column;align-items:center;padding:48px 0;display:flex}.status-list{flex-direction:column;gap:16px;display:flex}.status-card{border:2px solid #e0e0e0;border-left:5px solid var(--blue);background:#fff;border-radius:16px;padding:16px;box-shadow:0 1px 4px #0000000f}.status-card-dept{color:#555;align-items:center;gap:8px;margin-bottom:10px;font-size:.88rem;font-weight:700;display:flex}.status-dept-name{flex:1}.status-time{color:#aaa;font-size:.72rem;font-weight:400}.status-card-state{align-items:center;gap:8px;margin-bottom:8px;display:flex}.status-state-icon{font-size:1.4rem}.status-state-label{font-size:1rem;font-weight:800}.status-card-msg{color:#555;font-size:.88rem;line-height:1.5}.status-card-notes{color:#888;border-top:1px solid #f0f0f0;margin-top:10px;padding-top:8px;font-size:.8rem;font-style:italic}.error-page{text-align:center;min-height:100dvh;color:var(--red);justify-content:center;align-items:center;padding:24px;font-size:1rem;font-weight:700;display:flex}
