/* R61 QR Camera Pro — scoped camera experience. Global network header and navigation remain untouched. */
.qc61-camera-page .qc60-page{--qc61-blue:#178af0;--qc61-ink:#17385c;max-width:1250px}
.qc61-modes{display:flex;gap:7px;padding:5px 4px 13px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain}
.qc61-modes::-webkit-scrollbar{display:none}
.qc61-modes button{border:1px solid #d8e9f8;background:#f4f9ff;color:#3e628e;border-radius:13px;padding:11px 15px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:830;white-space:nowrap;min-width:max-content;cursor:pointer;transition:background .12s ease,border-color .12s ease}
.qc61-modes button span{font-size:18px;line-height:1}
.qc61-modes button.is-active{color:#fff;background:linear-gradient(120deg,#106fe5,#13aadb);border-color:#178fe6;box-shadow:0 5px 14px #067cd51c}
.qc61-modes button:disabled{opacity:.45;cursor:not-allowed}
.qc61-camera-page .qc60-workspace{grid-template-columns:minmax(0,1.1fr) minmax(295px,.8fr)}
.qc61-camera-page .qc60-viewfinder{height:min(63dvh,660px);min-height:330px;background:radial-gradient(circle at 48% 45%,#294a75,#07162b 82%)}
.qc61-camera-page .qc60-viewfinder video[data-qc60-live]{transform:none;object-fit:cover}
.qc61-camera-page .qc60-viewfinder video[data-qc60-live][data-qc61-mirror="true"]{transform:scaleX(-1)}
.qc61-camera-page .qc60-viewfinder canvas{object-fit:contain}
.qc61-camera-page .qc60-viewfinder video[data-qc60-recording]{object-fit:contain}
.qc61-camera-page .qc60-viewfinder .qc61-countdown[hidden],.qc61-camera-page .qc60-viewfinder .qc61-face-guide[hidden],.qc61-camera-page .qc60-viewfinder .qc61-scan-guide[hidden],.qc61-camera-page .qc60-viewfinder .qc61-screen-light[hidden],.qc61-camera-page .qc60-viewfinder .qc61-record-indicator[hidden],.qc61-camera-page .qc61-scan-manual[hidden],.qc61-camera-page .qc61-scan-result[hidden]{display:none!important}
.qc61-screen-light{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 75px 24px #fff;opacity:.75;z-index:4}
.qc61-countdown{position:absolute;inset:0;display:grid;place-items:center;z-index:9;font-size:clamp(95px,24vw,150px);font-weight:900;text-shadow:0 4px 30px #000b;color:white;background:#07162e36;pointer-events:none}
.qc61-face-guide{position:absolute;inset:15% 12% 15%;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none;z-index:3}
.qc61-face-outline{width:min(55%,200px);height:min(73%,290px);border:2px dashed #a8f4ffb0;border-radius:49% 49% 43% 43%;box-shadow:0 0 35px #23d4ff3a;transform:translateY(-7%)}
.qc61-face-guide span{position:absolute;bottom:2%;background:#061428ae;border:1px solid #8de3ff7d;border-radius:999px;padding:6px 11px;color:white;font-size:11px;font-weight:750;text-align:center}
.qc61-scan-guide{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;pointer-events:none;z-index:4}
.qc61-scan-target{width:min(70%,260px);aspect-ratio:1;position:relative;background:#05223816;border-radius:16px}
.qc61-scan-target span{position:absolute;width:38px;height:38px;border-color:#0ee1e1;border-style:solid;border-width:0}
.qc61-scan-target span:nth-child(1){left:0;top:0;border-top-width:5px;border-left-width:5px;border-radius:14px 0 0 0}
.qc61-scan-target span:nth-child(2){right:0;top:0;border-top-width:5px;border-right-width:5px;border-color:#ed5a69;border-radius:0 14px 0 0}
.qc61-scan-target span:nth-child(3){left:0;bottom:0;border-left-width:5px;border-bottom-width:5px;border-color:#238dff;border-radius:0 0 0 14px}
.qc61-scan-target span:nth-child(4){right:0;bottom:0;border-right-width:5px;border-bottom-width:5px;border-color:#fac34c;border-radius:0 0 14px 0}
.qc61-scan-guide b{font-size:12px;background:#071529ce;color:white;padding:7px 13px;border-radius:999px}
.qc61-record-indicator{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:5px;border:1px solid #ffbbc5;background:#a5213acb;color:#fff;border-radius:10px;padding:8px 11px;z-index:5;font-weight:850;font-size:12px;font-variant-numeric:tabular-nums}
.qc61-record-indicator>span{width:8px;height:8px;border-radius:50%;background:white;animation:qc61-rec-pulse 1s infinite}
.qc61-record-indicator small{font-size:10px;opacity:.8}
@keyframes qc61-rec-pulse{50%{opacity:.28}}
.qc61-camera-page .qc60-filters{padding:11px 0 6px;justify-content:flex-start;scrollbar-width:none}
.qc61-camera-page .qc60-filters button{padding:9px 13px;font-size:12px;min-height:38px}
.qc61-options{display:flex;justify-content:center;align-items:center;gap:8px;padding:7px 0 1px;flex-wrap:wrap}
.qc61-options button{border:1px solid #dce8f6;background:#f5faff;color:#35618d;display:flex;align-items:center;gap:6px;border-radius:9px;padding:7px 11px;font-size:11px;font-weight:800;min-height:34px;cursor:pointer}
.qc61-options button b{color:#0b83e8;font-weight:850}
.qc61-options button:disabled{opacity:.46;cursor:default}
.qc61-resolution{font-size:10px;color:#6884a2;padding:7px;font-weight:700}
.qc61-camera-page .qc60-capturebar{gap:clamp(26px,7vw,70px);padding:4px 0 6px}
.qc61-camera-page .qc60-shutter{width:76px;height:76px;transition:transform .16s}
.qc61-camera-page .qc60-shutter:active{transform:scale(.96)}
.qc61-camera-page .qc60-shutter.is-recording span{background:#e73858;border-radius:14px;width:28px;height:28px}
.qc61-camera-page .qc60-side-action.is-recording{color:#ed405c}
.qc61-camera-page .qc60-side-action svg{width:27px;height:27px}
.qc61-camera-page .qc60-side-action[hidden],.qc61-camera-page .qc60-shutter[hidden]{display:none!important}
.qc61-camera-page .qc60-page-head{margin-bottom:10px}
.qc61-camera-page .qc60-private-chip{z-index:3;bottom:13px}
.qc61-camera-page .qc60-status{font-size:12px}
.qc61-camera-page .qc60-destinations[data-qc61-ready="0"] .qc60-action-grid{display:none}
.qc61-camera-page .qc60-destinations[data-qc61-ready="1"] .qc61-capture-hint{display:none}
.qc61-capture-hint{padding:19px 14px;background:#eff7ff;border:1px dashed #a9cfee;border-radius:14px;font-size:12px;color:#6281a0;text-align:center;line-height:1.6}
.qc61-scan-manual,.qc61-scan-result{margin-top:12px;padding:12px;border:1px solid #b8d9f5;border-radius:14px;background:#f2f9ff;color:#224568}
.qc61-scan-manual label{display:block;font-size:12px;font-weight:800;margin-bottom:8px}
.qc61-scan-manual>div{display:flex;gap:7px;min-width:0}
.qc61-scan-manual input{flex:1;min-width:0;border:1px solid #c9dced;border-radius:9px;background:white;color:#263e59;padding:10px;font-size:12px}
.qc61-scan-manual button,.qc61-scan-result a,.qc61-scan-result button{border:1px solid #287fe8;border-radius:9px;background:#1576e9;color:white;padding:9px 11px;text-decoration:none;font-size:12px;font-weight:800}
.qc61-scan-manual p{font-size:11px;color:#647e9c;line-height:1.5;margin:9px 0 4px}
.qc61-scan-manual>a{font-size:12px;color:#187de1;font-weight:800}
.qc61-scan-result strong{display:block;font-size:13px;color:#176fc7}.qc61-scan-result p{font-size:12px;margin:7px 0 12px;overflow-wrap:anywhere}.qc61-scan-result>div{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.qc61-scan-result button{background:transparent;color:#1b67af}
.qc61-camera-page button:focus-visible,.qc61-camera-page a:focus-visible,.qc61-camera-page input:focus-visible{outline:3px solid #0dc8f4;outline-offset:2px}
html[data-theme="dark"] .qc61-modes button{background:#1c2c44;color:#c9dff8;border-color:#314d71}
html[data-theme="dark"] .qc61-modes button.is-active{color:white;background:linear-gradient(120deg,#076bd3,#00a9cb)}
html[data-theme="dark"] .qc61-options button{background:#1e3551;border-color:#344e6a;color:#d4e9ff}
html[data-theme="dark"] .qc61-options button b{color:#7dcfff}
html[data-theme="dark"] .qc61-resolution{color:#a5bed5}
html[data-theme="dark"] .qc61-capture-hint,html[data-theme="dark"] .qc61-scan-manual,html[data-theme="dark"] .qc61-scan-result{background:#19314c;color:#d4e9ff;border-color:#396083}
html[data-theme="dark"] .qc61-scan-manual input{background:#10243d;color:white;border-color:#406080}
html[data-theme="dark"] .qc61-scan-result strong{color:#a5dfff}
@media(max-width:750px){
 .qc61-camera-page .qc60-page{padding:8px 9px calc(106px + env(safe-area-inset-bottom,0px))}
 .qc61-camera-page .qc60-workspace{display:flex;flex-direction:column;gap:12px}
 .qc61-camera-page .qc60-viewfinder-card,.qc61-camera-page .qc60-destinations{padding:9px;width:100%;border-radius:19px}
 .qc61-camera-page .qc60-viewfinder{height:clamp(300px,56dvh,680px);min-height:300px;border-radius:14px}
 .qc61-camera-page .qc60-page-brand img{width:35px;height:35px}
 .qc61-camera-page .qc60-page-head{margin-bottom:7px}
 .qc61-camera-page .qc60-page-brand h1{font-size:21px}
 .qc61-camera-page .qc60-page-brand p{display:none}
 .qc61-camera-page .qc61-modes{gap:5px;padding:4px 2px 10px}
 .qc61-camera-page .qc61-modes button{padding:10px 12px;border-radius:12px;font-size:11px}
 .qc61-camera-page .qc60-capturebar{padding:3px 0 5px}
 .qc61-camera-page .qc60-filters{padding:8px 0 4px}
 .qc61-camera-page .qc60-camera-setup{gap:5px}
 .qc61-camera-page .qc60-primary,.qc61-camera-page .qc60-secondary{font-size:11px;padding:10px 11px}
 .qc61-camera-page .qc60-destinations[data-qc61-ready="0"]{display:none}
 .qc61-camera-page .qc60-destinations[data-qc61-ready="1"]{display:block}
}
@media(max-width:350px){.qc61-camera-page .qc60-viewfinder{height:49dvh;min-height:270px}.qc61-camera-page .qc61-modes button{padding:9px}.qc61-camera-page .qc61-resolution{display:none}}
@media(prefers-reduced-motion:reduce){.qc61-record-indicator>span{animation:none}.qc61-modes button{transition:none}}

.qc61-lens-link{display:none;margin:9px 0;padding:11px 12px;border-radius:12px;background:#eaf5ff;border:1px solid #c7e4fa;font-size:12px;font-weight:800}.qc61-lens-link a{color:#136bc7;text-decoration:none}.qc61-camera-page [data-qc61-mode="lens"] .qc61-lens-link{display:block}.qc61-camera-page [data-qc61-mode="scan"] .qc60-camera-setup label{display:none}.qc61-camera-page [data-qc61-mode="scan"] .qc60-filters{display:none}
html[data-theme="dark"] .qc61-lens-link{background:#1d3754;border-color:#396c99}html[data-theme="dark"] .qc61-lens-link a{color:#a8dfff}

/* Enforce hidden state even when buttons/labels have authored display styles. */
.qc61-camera-page .qc60-camera-setup [hidden],.qc61-camera-page .qc60-capturebar [hidden],.qc61-camera-page .qc60-viewfinder [hidden],.qc61-camera-page .qc61-options [hidden]{display:none!important}
.qc61-camera-page [data-qc61-captured="1"] .qc60-capturebar,.qc61-camera-page [data-qc61-captured="1"] .qc61-options{display:none}
.qc61-camera-page [data-qc61-captured="1"] .qc60-camera-setup{padding-top:9px}
