*{box-sizing:border-box}body{margin:0;background:#edf4f1;color:#193d47;font:16px system-ui,sans-serif}main{max-width:640px;margin:48px auto;padding:0 20px}header{display:flex;align-items:center;gap:16px;margin-bottom:28px}header strong{font-size:23px}header p{margin:4px 0;color:#59757e}.logo{background:#08745a;color:white;border-radius:14px;padding:10px 17px;font-size:30px;font-weight:bold}#connection{margin-left:auto;font-size:13px}section{background:white;border:1px solid #d7e3df;border-radius:20px;padding:30px}h1{font-size:28px;margin:0 0 12px}p,footer{line-height:1.6}label{display:block;margin:20px 0 8px}input{display:block;width:100%;padding:14px;margin-top:8px;border:1px solid #c6d8d1;border-radius:9px;font:inherit}#qr{font-size:24px}button{width:100%;padding:15px;border:0;border-radius:10px;background:#08745a;color:white;font:600 16px system-ui;cursor:pointer;margin-top:20px}button:disabled{opacity:.55;cursor:wait}.secondary{background:#edf4f1;color:#193d47}article{margin-top:24px;padding:20px;border-radius:12px;white-space:pre-line;overflow-wrap:anywhere;background:#edf4f1}article.success{background:#dcf4e8;color:#095c43}article.error{background:#fff0ec;color:#8b3522}#access-error{color:#8b3522}footer{font-size:13px;text-align:center;margin:20px;color:#59757e}details{margin-top:18px}[hidden]{display:none!important}@media(max-width:600px){main{margin:24px auto}section{padding:22px}header{flex-wrap:wrap}#connection{margin-left:0}}

select{display:block;width:100%;padding:14px;margin-top:8px;border:1px solid #c6d8d1;border-radius:9px;font:inherit;background:white;color:#193d47}

#camera-video{width:100%;max-height:380px;border-radius:12px;background:#15382e;margin-top:16px}#camera-error{color:#8b3522}#install-panel{padding:0 20px;text-align:center}body{padding-bottom:env(safe-area-inset-bottom)}

.connection-controls{margin-left:auto;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.home-button{display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;margin:0;border:1px solid #cdded7;border-radius:12px;background:white;color:#08745a;cursor:pointer}.home-button:hover{background:#e0eee8}.home-button:focus-visible{outline:2px solid #08745a;outline-offset:3px}.connection-controls #connection{margin:0}@media(max-width:600px){.connection-controls{margin-left:auto}}

.header-actions{display:flex;gap:8px;align-items:center}

.brand-logo{display:block;width:72px;height:55px;object-fit:contain;flex-shrink:0;background:white;border-radius:8px}@media(max-width:600px){header{gap:10px}header strong{font-size:21px}header p{font-size:14px}.brand-logo{width:58px;height:44px}}
