.guest-passes{border:1px solid var(--border,#dce2e7);border-radius:16px;background:var(--surface,#fff);padding:24px;margin-block:20px;color:var(--text,#18252d);overflow-wrap:anywhere}
.guest-passes h2,.guest-passes h3,.guest-passes p{margin-block:0 12px}
.guest-pass-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.guest-pass-header h2{font-size:1.3rem}
.guest-passes fieldset{border:0;padding:0;margin:0;min-width:0}
.guest-passes form{margin-block:20px}
.guest-pass-fields{display:grid;grid-template-columns:minmax(150px,1.25fr) repeat(2,minmax(155px,1fr));gap:16px}
.guest-passes label{display:flex;flex-direction:column;gap:8px;font-size:.93rem;font-weight:600}
.guest-passes input:not([type=checkbox]),.guest-passes textarea{box-sizing:border-box;min-width:0;width:100%;min-height:44px;border:1px solid var(--border,#bcc8cf);border-radius:8px;background:var(--surface,#fff);color:inherit;padding:10px 12px;font:inherit}
.guest-passes input:focus-visible,.guest-passes textarea:focus-visible,.guest-passes button:focus-visible{outline:3px solid #0d716b;outline-offset:3px}
.guest-passes input[type=checkbox]{width:20px;height:20px;flex:0 0 auto;accent-color:#0d716b}
.guest-passes .guest-pass-confirm{display:flex;flex-direction:row;align-items:center;font-weight:400;margin-block-end:16px}
.guest-pass-actions{display:flex;flex-wrap:wrap;gap:10px}
.guest-passes .button{min-height:44px;cursor:pointer}
.guest-passes button:disabled,.guest-passes fieldset:disabled{opacity:.65;cursor:wait}
.guest-pass-help{font-size:.86rem;line-height:1.55;color:var(--muted,#52636d);margin-block-start:10px!important}
.guest-pass-issued{background:var(--surface-alt,#f1f8f6);border:1px solid #96bfb6;border-radius:12px;padding:20px;margin-block:16px}
.guest-pass-code{font-family:ui-monospace,Consolas,monospace!important;font-size:.92rem!important;overflow-wrap:anywhere;resize:vertical}
.guest-pass-code-label{margin-block:16px}
.guest-pass-qr{display:block;max-width:100%;height:auto;max-height:328px;background:#fff;flex-shrink:0}
.guest-pass-window{display:flex;flex-wrap:wrap;gap:12px 28px;margin-block:12px;font-size:.9rem}
.guest-pass-window dt{font-size:.8rem;color:var(--muted,#52636d)}
.guest-pass-window dd{margin:4px 0 0}
.guest-pass-list{list-style:none;margin:20px 0 0;padding:0}
.guest-pass-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-block-start:1px solid var(--border,#dce2e7);padding-block:16px}
.guest-pass-row strong{display:block;font-size:1rem}
.guest-pass-status{display:inline-block;margin-block-start:6px;padding:3px 9px;border-radius:20px;background:var(--surface-alt,#edf3f2);font-size:.82rem}
.guest-pass-error{background:#fff0ef;color:#912e29;border-inline-start:3px solid #b03932;padding:12px;border-radius:6px}
.guest-pass-notice{background:#ebf6ee;color:#255e37;border-inline-start:3px solid #357348;padding:12px;border-radius:6px}
.guest-passes [hidden]{display:none!important}
@media(max-width:680px){.guest-passes{padding:16px}.guest-pass-header,.guest-pass-row{flex-direction:column}.guest-pass-fields{grid-template-columns:1fr}.guest-pass-header>.button,.guest-pass-row>.button{align-self:flex-start}.guest-pass-window{gap:12px}.guest-pass-window>div{flex:1 1 180px}.guest-pass-actions .button{flex:1 1 auto}}
