.entrance-panel{padding:14px;display:flex;flex-direction:column;gap:12px}.entrance-head{display:flex;gap:8px;align-items:center}.entrance-head select{min-width:0;flex:1;background:#201e1a;color:#ece5d6;border:1px solid #484034;padding:8px;border-radius:7px;font:inherit}.entrance-head button{white-space:nowrap}.entrance-screen{position:relative;aspect-ratio:16/9;background:#080a0d;border-radius:10px;overflow:hidden}.entrance-screen video,.entrance-screen canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.entrance-screen .entrance-empty{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:20px;font-size:12px;color:#938e82;pointer-events:none}.entrance-panel>.entrance-screen{cursor:zoom-in}.entrance-panel>.entrance-screen:focus-visible{outline:2px solid #ffaf24;outline-offset:3px}.entrance-door-open{width:100%;justify-content:center;min-height:40px}.entrance-panel strong{font-size:17px}.entrance-detail{font-size:12px;color:#a69e91;margin:0;line-height:1.65}.entrance-actions{display:flex;gap:8px}.entrance-actions button{flex:1;justify-content:center}.entrance-controls{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;color:#a99f90}.entrance-controls label{display:flex;gap:7px;align-items:center}.entrance-controls input[type=range]{width:100px;accent-color:#ffaf24}.entrance-panel.is-ringing{box-shadow:inset 0 0 0 2px #ffac24;border-radius:12px}.entrance-device-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.entrance-device-tabs button{background:#24211b;color:#b9afa0;border:1px solid #504431;border-radius:8px;padding:8px 12px;cursor:pointer}.entrance-device-tabs button.selected{color:#ffc566;border-color:#db9d36}.entrance-settings{display:grid;grid-template-columns:1fr 1fr;gap:17px 20px;margin:20px 0}.entrance-settings label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#c3b8a7}.entrance-settings input,.entrance-settings select{font:inherit;background:#191713;color:#efe5d7;border:1px solid #4a4133;border-radius:8px;padding:10px;min-width:0;width:100%}.entrance-settings .entrance-check{flex-direction:row-reverse;align-items:center;justify-content:flex-end;gap:9px}.entrance-settings input[type=checkbox]{width:17px;height:17px;accent-color:#ffae24}.entrance-settings-hint{grid-column:1/-1;font-size:12px;color:#948878;line-height:1.8}.entrance-settings-actions{display:flex;gap:12px;justify-content:space-between;margin:20px 0}.entrance-revoke p{font-size:13px;line-height:1.8;color:#e4b7a4}.entrance-revoke button{margin-right:12px}.entrance-zoom{width:min(1200px,95vw);background:#14120f;color:#eee;border:1px solid #5a4a32;border-radius:18px;padding:14px}.entrance-zoom::backdrop{background:#000d}.entrance-zoom>button{display:block;margin:0 0 10px auto;color:#ddd;background:#302a22;border:1px solid #554735;border-radius:8px;padding:8px 18px;cursor:pointer}.entrance-zoom .entrance-screen{width:100%}.entrance-panel [hidden],.entrance-zoom [hidden]{display:none!important}@media(max-width:600px){.entrance-settings{grid-template-columns:1fr}.entrance-controls{flex-wrap:wrap}}
.entrance-sip-settings{border:1px solid var(--line,#3b3830);border-radius:12px;padding:16px;margin:16px 0;background:var(--card,#191815)}.entrance-sip-settings summary{font-weight:700;cursor:pointer;color:var(--amber,#ffb400);padding:3px 0}.entrance-sip-settings .entrance-settings{margin-top:18px}.entrance-sip-settings .entrance-settings-hint{line-height:1.8}.entrance-sip-settings button{margin-top:12px}.um-grp>a+a{margin-left:8px}
.entrance-remote-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.entrance-remote-controls>span{flex:1 0 100%;font-size:11px}.entrance-remote-dialog{width:94vw;max-width:1600px;height:90vh;max-height:94vh;background:#14120f;color:#eee;border:1px solid #5a4a32;border-radius:14px;padding:16px}.entrance-remote-dialog[open]{display:flex;flex-direction:column;gap:12px}.entrance-remote-dialog::backdrop{background:#000c}.entrance-remote-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.entrance-remote-head strong{flex:1}.entrance-remote-head button{background:#302a22;color:#eee;border:1px solid #554735;border-radius:8px;padding:9px 14px;cursor:pointer}.entrance-remote-screen{min-height:0;flex:1;background:#050505;overflow:hidden}.entrance-remote-screen canvas{outline:none}
/* Printed entrance QR has a white quiet zone for paper and phone cameras. */
.entrance-printed-qr{width:min(480px,calc(100vw - 32px));box-sizing:border-box;border:1px solid #d6dce8;border-radius:20px;padding:24px;background:#fff;color:#18253b}
.entrance-printed-qr::backdrop{background:#0009}
.entrance-printed-qr p{line-height:1.7}
.entrance-printed-qr button{font:inherit;cursor:pointer;border:1px solid #ccd4e0;border-radius:10px;padding:10px 16px;background:#f4f6fa;color:#18253b}
.entrance-printed-qr button.is-amber{border-color:#e8b643;background:#ffcd67}
.entrance-printed-qr button.is-red{border-color:#c94e58;background:#b83240;color:#fff}
.entrance-printed-qr button:disabled{opacity:.5;cursor:default}
.entrance-printed-qr button:focus-visible{outline:3px solid #365fff;outline-offset:3px}
.entrance-printed-qr-image{width:min(280px,calc(100% - 56px));padding:28px;margin:16px auto;background:#fff;box-sizing:content-box}
.entrance-printed-qr-image canvas,.entrance-printed-qr-image img{max-width:100%;height:auto}
.entrance-print-frame{position:fixed;left:-10000px;top:0;width:794px;height:1123px;border:0}
