/* QRZen UI 0.5.1. App themes set tokens; page-specific layouts stay in the app. */
:root{--qz-primary:#2858d8;--qz-primary-hover:#1742b4;--qz-tint:#eef3ff;--qz-text:#17233a;--qz-muted:#5d6a7e;--qz-border:#dce2ec;--qz-surface:#fff;--qz-danger:#a32b3d;--qz-radius:8px;--qz-panel-radius:16px;--qz-panel-padding:26px}
.qz-theme-service{--qz-primary:#1e674d;--qz-primary-hover:#154c38;--qz-tint:#eaf3ed;--qz-panel-radius:14px;--qz-panel-padding:24px}
:where(.qz-ui) label{display:block;font-weight:600}
:where(.qz-ui) :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=file]),textarea,select){display:block;width:100%;min-width:0;padding:12px;margin:8px 0 16px;font:inherit;border:1px solid #aebacf;border-radius:var(--qz-radius);background:var(--qz-surface);color:var(--qz-text)}
.qz-ui input[type=checkbox],.qz-ui input[type=radio]{width:auto;accent-color:var(--qz-primary)}
.qz-ui textarea{resize:vertical}
:where(.qz-ui) button,:where(.qz-ui) .button{display:inline-block;font:inherit;font-weight:600;color:white;background:var(--qz-primary);border:0;border-radius:var(--qz-radius);padding:12px 20px;cursor:pointer;text-decoration:none}
:where(.qz-ui) button:hover,:where(.qz-ui) .button:hover{background:var(--qz-primary-hover)}
.qz-ui button:disabled{opacity:.55;cursor:not-allowed}
.qz-ui .qz-button--secondary{background:var(--qz-tint);color:var(--qz-primary)}
.qz-ui .qz-button--danger,.qz-ui .danger{background:var(--qz-danger)}
:where(.qz-ui) .panel{background:var(--qz-surface);border:1px solid var(--qz-border);border-radius:var(--qz-panel-radius);padding:var(--qz-panel-padding);margin-top:24px}
.qz-ui :focus-visible{outline:3px solid #779cff;outline-offset:4px}
:where(.qz-ui) .muted,:where(.qz-ui) .helptext{color:var(--qz-muted)}
:where(.qz-ui) .helptext{display:block;font-size:14px}
:where(.qz-ui) .errorlist{color:var(--qz-danger)}
.qz-field{margin-bottom:18px}.qz-field--invalid input,.qz-field--invalid textarea,.qz-field--invalid select{border-color:var(--qz-danger)}
.qz-ui .qz-checkbox{display:flex;align-items:baseline;gap:10px}.qz-checkbox input{flex:none}
.qz-ui .qz-switch{display:flex;align-items:center;gap:10px;min-height:46px;width:fit-content;padding:6px 10px;border:1px solid #cbd5e3;border-radius:8px;background:#f8fafc;cursor:pointer;font-size:14px}
.qz-switch-control,.contact-switch{position:relative;width:40px;height:24px;flex:0 0 40px}
.qz-switch .qz-switch-control input,.contact-visibility .contact-switch input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}
.qz-switch-track,.contact-switch-track{display:block;width:40px;height:24px;border:1px solid #748298;border-radius:24px;background:#748298;transition:background .15s ease,border-color .15s ease}
.qz-switch-track::before,.contact-switch-track::before{content:'';display:block;position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:white;transition:transform .15s ease}
.qz-switch-control input:checked + .qz-switch-track,.contact-switch input:checked + .contact-switch-track{background:var(--qz-primary);border-color:var(--qz-primary)}
.qz-switch-control input:checked + .qz-switch-track::before,.contact-switch input:checked + .contact-switch-track::before{transform:translateX(16px)}
.qz-switch:has(input:checked){border-color:var(--qz-primary);background:var(--qz-tint);color:var(--qz-primary)}
.qz-switch:has(input:focus-visible){outline:3px solid #779cff;outline-offset:3px}.qz-switch input:focus-visible{outline:none}
.qz-switch:has(input:disabled){opacity:.55;cursor:not-allowed}.qz-switch input:disabled{cursor:not-allowed}
.qz-switch-text{display:grid;line-height:18px}.qz-switch-state{font-size:12px;line-height:14px;font-weight:400;color:var(--qz-muted)}.qz-switch-on{display:none}.qz-switch:has(input:checked) .qz-switch-on{display:inline}.qz-switch:has(input:checked) .qz-switch-off{display:none}
@media(prefers-reduced-motion:reduce){.qz-switch-track,.qz-switch-track::before,.contact-switch-track,.contact-switch-track::before{transition:none}}
@media(forced-colors:active){.qz-switch-track,.contact-switch-track{forced-color-adjust:none;border-color:ButtonText;background:Canvas}.qz-switch-track::before,.contact-switch-track::before{background:ButtonText}.qz-switch-control input:checked + .qz-switch-track,.contact-switch input:checked + .contact-switch-track{border-color:Highlight;background:Highlight}.qz-switch-control input:checked + .qz-switch-track::before,.contact-switch input:checked + .contact-switch-track::before{background:HighlightText}}
.qz-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
.qz-ui .qz-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:150px;padding:20px;font-size:18px;font-weight:650;white-space:normal;background:var(--qz-surface);color:var(--qz-primary);border:1px solid var(--qz-border);border-radius:16px}
.qz-ui .qz-choice:hover{background:var(--qz-tint);border-color:var(--qz-primary)}
.qz-choice svg{width:56px;height:56px;flex:none}
.qz-ui .qz-dialog{width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:24px;border:1px solid var(--qz-border);border-radius:16px;background:var(--qz-surface);color:var(--qz-text);box-shadow:0 20px 60px #0004}
.qz-dialog::backdrop{background:#17233a99}
.qz-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.qz-dialog-heading h2{margin:0}
.qz-ui .qz-dialog-close{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:10px;background:var(--qz-tint);color:var(--qz-text)}.qz-dialog-close svg{width:24px;height:24px}
.qz-notice{border:1px solid var(--qz-border);border-radius:8px;background:var(--qz-tint);padding:14px 16px;margin:16px 0;overflow-wrap:anywhere}.qz-notice--error{background:#fff0f2;color:#8a2031;border-color:#e9b9c2}.qz-notice--success{background:#e6f5ed;color:#216343}.qz-notice--warning{background:#fff6df;color:#795500}
.qz-ui [hidden]{display:none!important}
@media(max-width:500px){:where(.qz-ui) .panel{padding:20px}.qz-choices{gap:10px}.qz-ui .qz-choice{min-height:130px;padding:14px;font-size:16px}.qz-ui .qz-dialog{padding:18px}.qz-dialog-heading{gap:10px}}
@media(prefers-reduced-motion:reduce){.qz-ui{scroll-behavior:auto}}
.qz-qr-selector video{width:100%;max-height:45dvh;border-radius:10px}.qz-qr-selector iframe{width:100%;height:clamp(180px,40dvh,340px);border:0}.qz-qr-selector [data-qr-role=status]{overflow-wrap:anywhere}
.qz-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:24px 0}.qz-pagination span{color:var(--qz-muted)}.qz-field fieldset{min-width:0;border:1px solid var(--qz-border);border-radius:8px;padding:16px}.qz-field legend{font-weight:600}.qz-field fieldset label{display:flex;align-items:center;gap:10px;margin:10px 0}.qz-copy{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.qz-copy input{flex:1;min-width:160px}.qz-copy [role=status]{flex-basis:100%}.qz-error-summary h2{font-size:20px;margin-top:0}

.qz-theme-service .panel{margin-bottom:24px}
.qz-camera-frame{position:relative;display:grid;place-items:center;aspect-ratio:4/3;max-height:360px;overflow:hidden;border:1px solid var(--qz-border);border-radius:12px;background:var(--qz-tint)}.qz-camera-placeholder{display:flex;flex-direction:column;align-items:center;gap:16px;padding:20px;color:var(--qz-muted);text-align:center}.qz-camera-placeholder svg{width:56px;height:56px;color:var(--qz-primary)}.qz-camera-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#17233a}.qz-camera-frame:has(video:not([hidden])) .qz-camera-placeholder{visibility:hidden}.qz-qr-selector[data-presentation=inline] .qz-choices{margin-top:16px}.qz-qr-selector h3{margin:20px 0 12px}
.qz-table-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0}.qz-table-toolbar label{flex:1;min-width:180px}.qz-table-toolbar input{margin-bottom:0}.qz-table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--qz-border);border-radius:10px}.qz-table{width:100%;border-collapse:collapse;font-size:14px}.qz-table caption{text-align:left;padding:14px;font-weight:650}.qz-table th,.qz-table td{padding:12px;text-align:left;border-bottom:1px solid var(--qz-border);vertical-align:middle}.qz-table th{background:var(--qz-tint)}.qz-table td[data-sort-value]{overflow-wrap:anywhere;min-width:100px}.qz-table tbody tr:hover{background:var(--qz-tint)}.qz-ui .qz-table th button{background:transparent;color:var(--qz-text);padding:4px;white-space:nowrap}.qz-ui .qz-table td button{padding:8px 12px;width:auto}.qz-table input[type=checkbox]{width:18px;height:18px;margin:0}.qz-table-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.qz-table-pagination p{margin:0;font-size:14px}.qz-ui .qz-table-pagination button{width:auto}.qz-badge{display:inline-block;border-radius:24px;padding:4px 10px;font-size:13px;font-weight:600;background:#edf0f4;color:var(--qz-muted);white-space:nowrap}.qz-badge--success{background:#e6f5ed;color:#216343}.qz-badge--warning{background:#fff6df;color:#795500}.qz-badge--error{background:#fff0f2;color:#8a2031}
@media(max-width:500px){.qz-table-toolbar{gap:10px}.qz-table-toolbar label{flex-basis:100%}.qz-table-pagination{flex-wrap:wrap}.qz-table-pagination p{order:3;flex-basis:100%;text-align:center}}
