html,body,#root{height:100%}body.bw{margin:0;font-size:16px}h1,h2,h3{letter-spacing:-.01em}.muted{color:var(--bw-color-text)}.big{font-size:1.15rem}.small{font-size:.82rem}.mono{font-family:var(--bw-font-family-mono)}.pad{padding:16px}.center{display:grid;place-items:center;text-align:center}.row{display:flex;align-items:center}.row.gap{gap:10px}.row.end{justify-content:flex-end}.row.between{justify-content:space-between}.row.center{justify-content:center}.wrap{flex-wrap:wrap}.link{background:none;border:0;color:var(--bw-color-link);font-weight:700;text-decoration:underline;cursor:pointer;font:inherit;padding:0}.bw-alert{margin:8px 0}.reg-site{font-weight:800;color:var(--bw-color-on-appbar-muted)}.reg-staff{margin-left:4px}@media (max-width:560px){.reg-site,.reg-staff{display:none}}.kiosk{min-height:100%;display:flex;flex-direction:column}.panel{flex:1;max-width:720px;width:100%;margin:0 auto;padding:26px 22px}.panel.center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px}.home .welcome{font-size:2rem;margin:0}.home-actions{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px;width:100%;max-width:560px}.tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px;border:2px solid var(--bw-color-line-2);background:var(--bw-color-surface);cursor:pointer;font-size:22px;font-weight:900;color:var(--bw-color-accent);font-family:inherit;clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%);transition:background-color var(--bw-motion-fast),border-color var(--bw-motion-fast)}.tile:hover{border-color:var(--bw-color-blue-l);background:var(--bw-color-tint-3)}.tile.checkin{background:var(--bw-color-primary);color:var(--bw-color-on-primary);border-color:var(--bw-color-primary)}.tile.checkin:hover{background:var(--bw-color-primary-hover);border-color:var(--bw-color-primary-hover)}.tile.checkout{background:var(--bw-color-yellow-ui);border-color:var(--bw-color-yellow-ui);color:var(--bw-color-on-yellow)}.tile.checkout:hover{background:var(--bw-color-yellow-d);border-color:var(--bw-color-yellow-d)}.tile-ic{width:40px;height:40px}.form h2{margin-top:0}label{display:block;font-weight:700;font-size:14px;color:var(--bw-color-accent);margin:12px 0 0}input:not([type=checkbox]):not([type=radio]),textarea,select{font:inherit;color:var(--bw-color-ink);background:var(--bw-color-surface);border:1px solid var(--bw-color-line-2);border-radius:0;padding:0 12px;box-sizing:border-box;height:var(--bw-size-control);vertical-align:middle}textarea{height:auto;min-height:70px;padding:10px 12px;resize:vertical}input[type=checkbox],input[type=radio]{width:auto;height:auto;margin:0;vertical-align:middle;accent-color:var(--bw-color-primary)}label input:not([type=checkbox]):not([type=radio]),label select,label textarea{display:block;width:100%;margin-top:6px}.bw label :is(input,select,textarea){font-weight:var(--bw-font-weight-regular);color:var(--bw-color-ink)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--bw-color-focus-ring);box-shadow:0 0 0 1px var(--bw-color-focus-ring),0 0 0 4px var(--bw-color-focus)}.host-picker .bw-combo__box input{height:auto;border:0;box-shadow:none;padding:4px}.host-picker{margin-top:6px}.host-name{font-weight:700}.host-role{color:var(--bw-color-text);font-size:13px;margin-left:10px}.bw-combo__list li{display:flex;justify-content:space-between;gap:10px}.bw-combo__list li.host-add{color:var(--bw-color-accent);font-weight:700}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.toolbar>*{margin:0}.toolbar .bw-btn,.toolbar input,.toolbar select{min-height:var(--bw-size-control);height:var(--bw-size-control);box-sizing:border-box}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ack{display:flex;gap:10px;align-items:flex-start;margin-top:16px;font-weight:500;color:var(--bw-color-ink);min-height:24px}.ack input{width:auto;margin-top:3px}.row.gap.end{gap:12px;justify-content:flex-end;margin-top:22px}.cam{display:flex;flex-direction:column;align-items:center;gap:16px}.cam-frame{width:min(360px,80vw);height:min(360px,80vw);background:#000;overflow:hidden;border:3px solid var(--bw-color-primary)}.cam-frame video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.done .tick{width:84px;height:84px;border-radius:var(--bw-radius-round);background:var(--bw-color-success-bg);color:var(--bw-color-success-text);display:grid;place-items:center;border:3px solid var(--bw-color-success)}.done .tick .bw-icon{width:44px;height:44px;stroke-width:3}.colist{display:flex;flex-direction:column;gap:8px;margin:14px 0;max-height:60vh;overflow:auto}.corow{display:flex;justify-content:space-between;gap:10px;background:var(--bw-color-surface);border:1px solid var(--bw-color-line-2);padding:16px 18px;cursor:pointer;font:inherit;font-size:18px;font-weight:700}.corow:hover{background:var(--bw-color-tint-2);border-color:var(--bw-color-blue-l)}.admin{min-height:100%;display:flex;flex-direction:column}.tabs{display:flex;gap:2px;background:var(--bw-color-surface);border-bottom:1px solid var(--bw-color-line-2);padding:0 12px;overflow-x:auto}.tab{font:inherit;font-weight:800;border:0;border-bottom:3px solid transparent;background:none;padding:12px 16px;color:var(--bw-color-text);cursor:pointer;white-space:nowrap;flex:0 0 auto}@media (max-width:560px){.tabs{padding:0 4px}.tab{padding:12px 10px}}.tab:hover{color:var(--bw-color-accent)}.tab.on{color:var(--bw-color-accent);border-bottom-color:var(--bw-color-yellow)}.tab:focus-visible{outline:2px solid var(--bw-color-focus-ring);outline-offset:-4px}@media (pointer:coarse){.tab{min-height:var(--bw-size-target)}}.admin-main{padding:18px 20px;max-width:1200px;width:100%;margin:0 auto}.admin-main h2{margin:6px 0 12px}.bw-table-wrap{margin-top:10px}.bw-table td.actions{white-space:nowrap;text-align:right}.bw-table td.actions .bw-btn{margin-left:6px}.filters{align-items:flex-end}.filters label{display:flex;flex-direction:column;font-size:12px}.filters input,.filters select{margin-top:4px}.site-select{font-size:13px;font-weight:700}.qrmodal{text-align:center}.qr-img{width:280px;height:280px;max-width:100%}.qr-url{margin:10px 0;padding:8px;background:var(--bw-color-bg);border:1px solid var(--bw-color-line);word-break:break-all}.qrmodal .row{justify-content:center;flex-wrap:wrap}.chk{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--bw-color-ink);min-height:24px}.chk input{width:auto;margin:0}@media (pointer:coarse){.ack,.chk{min-height:var(--bw-size-target);align-items:center}.ack input{margin-top:0}}a.link{display:inline-block;padding:3px 0}@media (pointer:coarse){a.link{display:inline-flex;align-items:center;justify-content:center;min-height:var(--bw-size-target);min-width:var(--bw-size-target)}}.settings label{margin-top:14px}.settings h3{margin-top:22px}.fieldset{margin-top:12px}.fs-label{font-size:13px;font-weight:700;color:var(--bw-color-accent)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--bw-color-line-2);padding:5px 10px;font-size:13px;cursor:pointer;font-weight:700;color:var(--bw-color-ink);margin:0}.chip.on{border-color:var(--bw-color-accent);color:var(--bw-color-accent);background:var(--bw-color-tint-1)}.chip input{width:auto;margin:0;height:auto}.ph-hint{margin:4px 0 0}.agent-card{border:1px solid var(--bw-color-line-2);background:var(--bw-color-surface);padding:14px 16px;margin-top:10px}.toggle{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--bw-color-line-2);background:var(--bw-color-surface);font:inherit;font-size:12px;font-weight:800;padding:7px 13px;cursor:pointer;border-radius:0}.toggle:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}.toggle.on{background:var(--bw-color-success-bg);color:var(--bw-color-success-text);border-color:var(--bw-color-success)}.toggle.off{background:var(--bw-color-panel);color:var(--bw-color-text)}.toggle:hover{filter:brightness(.97)}.dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex:none}.dot.up{background:var(--bw-color-success)}.dot.down{background:var(--bw-color-error)}.printers{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.qr{min-height:100%;display:flex;flex-direction:column}.qr-body{flex:1;display:flex;flex-direction:column}.qr .panel{max-width:560px}.badge-print{position:absolute;left:-9999px;top:-9999px}.badge{box-sizing:border-box;padding:2mm 3mm;display:flex;align-items:center;gap:3mm;color:#000;background:#fff;overflow:hidden}.badge-photo{width:23mm;height:23mm;object-fit:cover;flex:none;border:.3mm solid #999}.badge-main{min-width:0;flex:1}.badge-row{display:flex;align-items:center;justify-content:space-between;gap:2mm}.badge-tag{font-weight:800;font-size:3.4mm;letter-spacing:.4mm;color:#154c97}.badge-logo{height:4mm;width:auto;display:block}.badge-name{font-weight:800;font-size:5mm;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-co{font-size:3.2mm;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge-meta{font-size:2.5mm;line-height:1.2;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge.no-photo .badge-name{font-size:7mm}.badge.no-photo .badge-co{font-size:4.4mm}.badge.no-photo .badge-meta{font-size:3.4mm}@media (max-width:560px){.home-actions,.grid2{grid-template-columns:1fr}.filters{align-items:stretch}}
