/* BinderWorth Scanner v2 / Scan Tray visual layer, loaded last.
   No external animation libraries or paid services. */
#scanView .bw-scanner-glyph{position:relative;width:90px;height:98px;margin:0 auto 17px;display:grid;place-items:center;isolation:isolate;}
#scanView .bw-scanner-glyph::before{content:"";position:absolute;inset:4px 0;z-index:-1;border:1px solid rgba(101,230,200,.3);background:linear-gradient(140deg,rgba(94,224,196,.13),rgba(56,113,186,.08));border-radius:24px;box-shadow:0 0 0 6px rgba(98,211,212,.035),0 0 44px rgba(38,207,200,.13);}
#scanView .bw-scanner-glyph::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:25px;border:1px solid rgba(130,227,219,.12);transform:rotate(-8deg);}
#scanView .bw-scanner-glyph svg{width:61px;height:61px;fill:none;stroke:#9cf4e0;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 10px rgba(67,233,208,.26));}
#scanView .bw-scan-kicker{display:block!important;color:#70d9d0!important;font-size:9px!important;letter-spacing:.18em!important;font-weight:900!important;margin:0 0 10px!important;white-space:nowrap;}
#scanView .scan-placeholder strong{font-weight:900!important;letter-spacing:-.04em!important;color:#eff9fb!important;}
#scanView .scan-placeholder em{display:none!important;}
#scanView .bw-camera-hud{position:absolute;top:14px;left:14px;right:14px;z-index:5;display:none;align-items:center;gap:8px;color:#c9fff0;letter-spacing:.1em;font-size:9px;font-weight:850;text-shadow:0 1px 3px #0c101c;pointer-events:none}
#scanView .bw-camera-hud b{margin-left:auto;color:#f5f7fc;font-size:9px;font-weight:700;letter-spacing:.06em;}
#scanView .bw-live-dot{display:block;width:8px;height:8px;border-radius:100%;background:#57e6ba;box-shadow:0 0 0 5px rgba(61,223,184,.15),0 0 10px rgba(70,248,193,.8);}
#scanView .camera-active .bw-camera-hud{display:flex;}
#scanView .capture-stage{isolation:isolate;overflow:hidden;}
#scanView .capture-stage::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(129,229,226,.027) 1px,transparent 1px),linear-gradient(90deg,rgba(129,229,226,.027) 1px,transparent 1px);background-size:29px 29px;mask-image:linear-gradient(to bottom,transparent 5%,#000 60%,transparent 99%);}
#scanView .capture-stage::after{content:"";position:absolute;inset:9px;z-index:3;pointer-events:none;border:1px solid rgba(105,224,203,.12);border-radius:14px;box-shadow:inset 0 0 24px rgba(12,136,140,.07);}
#scanView .capture-stage.camera-active .card-guide .bw-guide-sweep{position:absolute;z-index:2;pointer-events:none;left:4px;right:4px;top:calc(100% - 7px);bottom:auto;width:auto;min-width:0;max-width:none;transform:none;padding:0;margin:0;display:block;height:3px;border-radius:99px;background:linear-gradient(90deg,transparent,#54e4ca 15%,#b4fff1 50%,#54e4ca 85%,transparent);box-shadow:0 0 13px rgba(55,246,185,.75),0 0 28px rgba(108,248,223,.35);animation:bwGuideSweep 3s ease-in-out infinite alternate;will-change:top;}
#scanView .capture-stage.camera-active .card-guide{z-index:4;box-shadow:0 0 0 800px rgba(0,7,12,.19),inset 0 0 18px rgba(94,234,217,.1);border-color:rgba(117,255,227,.8)!important;}
#scanView .capture-stage.camera-active .card-guide::before,#scanView .capture-stage.camera-active .card-guide::after{filter:drop-shadow(0 0 10px rgba(54,228,195,.45));}
#scanView .scan-stepper .active b{box-shadow:0 0 0 4px rgba(91,212,178,.1),0 0 14px rgba(86,235,206,.12);}
#scanView .scan-intro{position:relative;overflow:hidden;}
#scanView .scan-intro::after{content:"";position:absolute;right:-90px;top:-100px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(67,204,207,.14),transparent 70%);pointer-events:none;}
#scanView .scan-capture-heading .service-pill.ready{border-color:rgba(92,228,188,.38);color:#a9f0d5;}
#scanView .scan-actions .button.primary:not(.hidden){box-shadow:inset 0 1px rgba(255,255,255,.35),0 10px 28px rgba(47,123,103,.21);}
#scanView .pokeum-card-option{transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;}
#scanView .pokeum-card-option:first-child{box-shadow:0 2px 0 rgba(101,230,203,.04),inset 3px 0 #67e4c3; }
#scanView .pokeum-card-option .pokeum-card-action button{font-weight:900;box-shadow:0 4px 18px rgba(72,208,183,.16);}
#scanView .pokeum-result-banner{background:linear-gradient(135deg,#15382f,#0c2530 55%,#101d2c);border-color:#376e67;position:relative;overflow:hidden;}
#scanView .pokeum-result-banner::before{content:"MATCH REVIEW";position:absolute;right:11px;top:10px;opacity:.45;font-size:8px;letter-spacing:.16em;font-weight:900;}
#scanView .pokeum-result-banner strong{padding-right:74px;}
#scanView .pokeum-legacy-button{border-color:#43545d;}

.bw-tray-dock.hidden{display:none!important;}
.bw-tray-dock{position:fixed;z-index:10002;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:calc(100px + env(safe-area-inset-bottom,0px));max-width:600px;margin-inline:auto;border:1px solid #3f8c83;border-radius:18px;background:linear-gradient(115deg,rgba(13,45,43,.98),rgba(15,30,39,.99));box-shadow:0 18px 55px #0009,0 0 0 1px rgba(105,222,191,.05);backdrop-filter:blur(20px);padding:7px;color:#f0fff9;}
.bw-tray-dock-open{display:flex;align-items:center;text-align:left;gap:12px;min-height:68px;width:100%;border:0;border-radius:13px;padding:5px 12px 5px 8px;background:transparent;color:inherit;cursor:pointer;}
.bw-tray-stack{position:relative;display:block;width:75px;min-width:75px;height:60px;}
.bw-tray-stack i{position:absolute;left:16px;top:6px;width:40px;height:52px;border:2px solid #a8f4df;border-radius:5px;background:linear-gradient(145deg,#27545a,#0d1d2b 70%);box-shadow:0 4px 12px #0008;}
.bw-tray-stack i:first-child{transform:translate(-9px,2px) rotate(-17deg);opacity:.52;}
.bw-tray-stack i:nth-child(2){transform:translate(2px,-2px) rotate(10deg);opacity:.7;}
.bw-tray-stack i:nth-child(3){transform:translate(0,0) rotate(-2deg);border-color:#d1fff3;background:linear-gradient(130deg,#386d5d,#133246 75%);}
.bw-tray-stack img{width:100%;height:100%;object-fit:contain;border-radius:3px;background:#0b1d24;}
.bw-tray-stack .bw-tray-no-art{display:grid;place-items:center;width:100%;height:100%;font-style:normal;color:#84e4c8;font-size:18px;}
.bw-tray-dock-label{display:grid;gap:2px;flex:1;min-width:0;}
.bw-tray-dock-label small{color:#79e1c3;font-size:10px;letter-spacing:.15em;font-weight:850;}
.bw-tray-dock-label strong{font-size:17px;line-height:1.24;letter-spacing:-.02em;}
.bw-tray-dock-label b{font-variant-numeric:tabular-nums;}
.bw-tray-open-prompt{background:#72e5c1;color:#08251b;padding:10px 12px;border-radius:11px;font-size:12px;font-weight:900;white-space:nowrap;}
.bw-tray-pulse{animation:bwTrayPulse .6s ease-out;}
.bw-tray-dialog{position:fixed;inset:auto 0 0 0;max-width:670px;width:100%;max-height:min(86svh,790px);margin:0 auto;color:#effdf7;border:1px solid rgba(117,225,197,.45);border-bottom:0;border-radius:22px 22px 0 0;padding:0;background:#101e27;box-shadow:0 -15px 70px #0008;overflow:hidden;z-index:15000;}
.bw-tray-dialog[open]{display:block;animation:bwSheetRise .3s cubic-bezier(.18,.8,.18,1) both;}
.bw-tray-dialog::backdrop{background:rgba(2,10,15,.72);backdrop-filter:blur(8px);}
.bw-tray-sheet{display:flex;flex-direction:column;max-height:min(86svh,790px);}
.bw-tray-head{flex:none;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:21px 20px 15px;background:radial-gradient(circle at 15% 0%,#1c594c 0,#112a2a 42%,#10202b 100%);border-bottom:1px solid rgba(113,224,200,.2);}
.bw-tray-head small{color:#7de1c1;letter-spacing:.18em;font-weight:900;font-size:9px;}
.bw-tray-head h2{margin:4px 0 4px;font-size:24px;line-height:1.2;letter-spacing:-.03em;color:#f7fffc;}
.bw-tray-head h2 span{font-size:16px;color:#93dcc6;}
.bw-tray-head p{font-size:12px;line-height:1.35;margin:0;color:#bfd4d2;}
.bw-tray-x{border:1px solid #3c655e;background:#142b2c;color:#e9fff9;border-radius:11px;min-width:43px;min-height:43px;font-size:24px;cursor:pointer;}
.bw-tray-rows{overflow-y:auto;flex:1;min-height:0;padding:12px 14px;display:grid;align-content:start;gap:10px;overscroll-behavior:contain;}
.bw-tray-row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;border-radius:15px;background:#152733;border:1px solid #31454c;padding:11px;color:#f4fcfd;}
.bw-tray-art{width:72px;height:103px;position:relative;border-radius:7px;background:#0b1620;box-shadow:0 4px 16px #0005;}
.bw-tray-art>img,.bw-tray-art>.bw-tray-no-art{display:grid;place-items:center;width:100%;height:100%;border-radius:7px;object-fit:contain;color:#a8ebd5;}
.bw-tray-art em{position:absolute;right:-6px;bottom:-6px;font-size:11px;font-style:normal;color:#102019;background:#70e2bc;border-radius:7px;padding:3px 7px;border:2px solid #10242b;font-weight:900;}
.bw-tray-row-main{min-width:0;display:grid;align-content:start;gap:4px;}
.bw-tray-row-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.bw-tray-ownership{display:block;color:#8bffcd;font-size:9px;letter-spacing:.08em;font-weight:900;}
.bw-tray-remove{min-width:27px;height:27px;border-radius:7px;border:1px solid #43515a;background:transparent;color:#d8e5e7;font-size:19px;cursor:pointer;}
.bw-tray-row-main>strong{font-size:16px;letter-spacing:-.015em;line-height:1.2;}
.bw-tray-row-main>small{font-size:11px;color:#b5c9cc;overflow-wrap:anywhere;}
.bw-tray-selectors{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:6px;}
.bw-tray-selectors label{font-size:10px;color:#a9ccc7;font-weight:700;display:grid;gap:4px;min-width:0;}
.bw-tray-selectors select{width:100%;max-width:100%;font-size:12px;background:#0d1a22;border:1px solid #45646b;color:#eafff9;border-radius:8px;min-height:39px;padding:7px 6px;}
.bw-tray-caution{color:#ffcd8e;font-size:11px;line-height:1.3;}
.bw-tray-qty{display:flex;align-items:center;gap:7px;justify-content:flex-end;margin-top:6px;}
.bw-tray-qty span{margin-right:auto;font-size:10px;color:#abc6c3;}
.bw-tray-qty button{border:1px solid #46615d;background:#0a2024;border-radius:9px;color:#bcf4e2;width:32px;height:32px;font-size:19px;cursor:pointer;}
.bw-tray-qty b{width:27px;text-align:center;font-size:13px;}
.bw-tray-footer{flex:none;border-top:1px solid #355258;padding:12px 16px calc(14px + env(safe-area-inset-bottom,0px));background:#101c24;}
.bw-tray-ack{display:flex;align-items:center;gap:9px;color:#d7e9e5;font-size:12px;line-height:1.35;margin-bottom:12px;}
.bw-tray-ack input{accent-color:#60dcbb;min-width:20px;width:20px;height:20px;}
.bw-tray-footer-buttons{display:grid;grid-template-columns:.7fr 1.3fr;gap:9px;}
.bw-tray-footer-buttons .button,.bw-tray-commit{font-size:13px;font-weight:900;border-radius:11px;min-height:48px;border:1px solid #3a625a;padding:9px;cursor:pointer;line-height:1.2;}
.bw-tray-commit{border-color:#73f0c7;background:#67d6b6;color:#0d2d24;}
.bw-tray-commit:disabled{opacity:.4;cursor:not-allowed;filter:grayscale(.4);}
.bw-tray-footer p{margin:9px 0 0;color:#83a19e;font-size:10px;line-height:1.3;text-align:center;}
.bw-tray-empty{padding:28px 12px;color:#b6d5cb;font-size:14px;text-align:center;line-height:1.5;}
.bw-scan-reveal{position:fixed;z-index:15050;width:145px;pointer-events:none;display:grid;justify-items:center;gap:13px;filter:drop-shadow(0 18px 35px #000a);}
.bw-scan-reveal-card{position:relative;width:132px;height:188px;transform-style:preserve-3d;border-radius:9px;box-shadow:0 0 0 4px rgba(82,253,201,.2),0 0 45px rgba(49,235,197,.6),0 0 85px rgba(47,175,236,.24);background:#10202c;}
.bw-scan-reveal-card img,.bw-scan-reveal-card>.bw-tray-no-art{display:grid;place-items:center;width:100%;height:100%;object-fit:contain;border-radius:8px;background:linear-gradient(150deg,#2a6c5e,#142033);font-size:36px;color:#cbffef;}
.bw-reveal-check{position:absolute;top:-12px;right:-12px;background:#6df0bd;display:grid;place-items:center;color:#082b1d;width:37px;height:37px;border-radius:50%;font-size:23px;font-weight:900;box-shadow:0 0 20px #71ebbd77;}
.bw-scan-reveal-caption{display:grid;gap:2px;text-align:center;text-shadow:0 1px 5px #000;}
.bw-scan-reveal-caption b{color:#eafff7;font-size:16px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis;}
.bw-scan-reveal-caption span{color:#7ff5ce;font-size:10px;font-weight:900;letter-spacing:.14em;}
.bw-tray-saved-pop{position:fixed;z-index:15500;left:50%;top:42%;width:245px;min-height:226px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:18px;background:radial-gradient(circle,#215948 0%,#132f2c 55%,#0d1e28 100%);border:2px solid #9af7d2;border-radius:27px;box-shadow:0 0 0 12px rgba(97,235,193,.08),0 0 75px rgba(58,232,184,.34),0 26px 100px #000b;text-align:center;pointer-events:none;animation:bwSavedPop 1.05s cubic-bezier(.2,.9,.25,1) both;overflow:visible;}
.bw-tray-saved-pop .bw-saved-ring{display:grid;place-items:center;width:83px;height:83px;border-radius:50%;font-size:50px;color:#0c3727;font-weight:900;background:#90f0c5;box-shadow:0 0 38px #76f0c177;}
.bw-tray-saved-pop strong{font-size:20px;letter-spacing:.11em;color:#f0fff9;}
.bw-tray-saved-pop small{font-size:10px;letter-spacing:.07em;color:#bde7d7;font-weight:800;}
.bw-saved-spark{position:absolute;display:block;width:13px;height:13px;background:#9bffe2;transform:rotate(45deg);box-shadow:0 0 15px #7fffd7;}
.bw-saved-spark.one{top:19px;left:16px;}
.bw-saved-spark.two{bottom:30px;right:-7px;width:9px;height:9px;}
.bw-saved-spark.three{top:17px;right:13px;width:7px;height:7px;}
@keyframes bwSavedPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.55) rotate(-9deg)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.08) rotate(3deg)}65%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}100%{opacity:0;transform:translate(-50%,-63%) scale(.92)}}
@keyframes bwTrayPulse{0%{transform:scale(.95);box-shadow:0 0 0 0 #73ebc677}55%{transform:scale(1.03);box-shadow:0 0 0 12px #73ebc600}100%{transform:scale(1);}}
@keyframes bwSheetRise{from{transform:translateY(35px);opacity:.5}to{transform:translateY(0);opacity:1}}
@keyframes bwGuideSweep{from{top:calc(100% - 7px);opacity:.9}to{top:4px;opacity:1}}
@media(prefers-reduced-motion:reduce){#scanView .capture-stage.camera-active .card-guide .bw-guide-sweep{animation:none;top:50%;}}

@media(max-width:780px){
 html body #scanView .capture-stage{height:clamp(280px,42svh,367px)!important;min-height:280px!important;max-height:367px!important;border-radius:18px!important;background:radial-gradient(ellipse at 50% 45%,#1c3038 0,#101f29 46%,#07131d 100%)!important;}
 html body #scanView .scan-placeholder{width:min(100%,320px)!important;max-width:320px!important;padding:12px 16px!important;gap:0!important;}
 html body #scanView .scan-placeholder strong{font-size:23px!important;line-height:1.15!important;margin:0 0 9px!important;}
 html body #scanView .scan-placeholder>span:not(.bw-scan-kicker){font-size:12px!important;line-height:1.45!important;max-width:28ch!important;color:#b1c8cd!important;}
 html body #scanView .bw-scanner-glyph{width:76px;height:80px;margin-bottom:10px!important;}
 html body #scanView .bw-scanner-glyph svg{width:49px;height:49px;}
 html body #scanView .scan-intro{padding:12px 14px 11px!important;}
 html body #scanView .scan-intro h2{font-size:25px!important;}
 html body #scanView .scan-intro p{font-size:11px!important;}
 html body #scanView .scan-help,html body #scanView .scan-warning.compact{display:none!important;}
 html body #scanView .capture-panel{padding:9px!important;}
 html body #scanView .scan-capture-heading{margin-bottom:8px!important;}
 html body #scanView .scan-actions{padding:7px!important;margin-top:8px!important;}
 html body #scanView .scan-actions .button,html body #scanView .scan-actions .file-button{min-height:52px!important;}
 html body #scanView.bw-has-tray{padding-bottom:calc(175px + env(safe-area-inset-bottom,0px))!important;}
 html body #scanView.bw-has-tray .scan-actions{bottom:calc(188px + env(safe-area-inset-bottom,0px))!important;}
 html body #scanView.scan-ux-results .capture-stage{height:94px!important;min-height:94px!important;max-height:94px!important;}
 html body #scanView .bw-camera-hud{font-size:8px;left:10px;right:10px;top:12px;}
 html body #scanView .bw-camera-hud b{font-size:8px;}
}
@media(max-width:370px){
 .bw-tray-dock{left:9px;right:9px;bottom:calc(94px + env(safe-area-inset-bottom,0px))}
 .bw-tray-dock-open{gap:7px;}
 .bw-tray-stack{width:57px;min-width:57px;}
 .bw-tray-stack i{left:10px;}
 .bw-tray-dock-label strong{font-size:15px;}
 .bw-tray-open-prompt{padding:8px 9px;font-size:11px;}
 .bw-tray-row{grid-template-columns:59px minmax(0,1fr);gap:9px;padding:9px;}
 .bw-tray-art{width:59px;height:83px;}
}
@media(min-width:781px){.bw-tray-dock{bottom:17px;max-width:510px;}}
@media(prefers-reduced-motion:reduce){
 html body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-actions #captureCardBtn{transition:none!important;}
 .bw-tray-dock,.bw-tray-dialog[open],.bw-tray-saved-pop,#scanView .capture-stage.camera-active::before{animation:none!important;}
 #scanView .pokeum-card-option{transition:none!important;}
}


/* Scanner 2.0: mobile camera owns the screen while capturing.
   Preview scope is enforced by the bw-scanner-v2 class in scan-tray.js;
   Challenge Mode and the original scanner keep their existing layout. */
#scanView .bw-camera-exit { display:none; }
.bw-tray-split {
  width:max-content;max-width:100%;justify-self:end;margin-top:4px;
  min-height:35px;padding:6px 10px;border:1px dashed rgba(130,220,193,.46);
  border-radius:9px;background:#112e32;color:#a9eed8;font-size:11px;font-weight:800;
  cursor:pointer;text-align:center;
}
.bw-tray-split:focus-visible,.bw-camera-exit:focus-visible {
  outline:3px solid #92f3d7;outline-offset:3px;
}
@media (max-width:780px) {
  body.bw-scan-immersive {overflow:hidden!important;overscroll-behavior:none;}
  body.bw-scan-immersive #scanView.bw-scanner-v2 .capture-panel {
    position:fixed!important;inset:0!important;z-index:12000!important;
    width:100vw!important;max-width:none!important;height:100dvh!important;
    max-height:none!important;min-height:0!important;margin:0!important;
    padding:0!important;border:0!important;border-radius:0!important;
    background:linear-gradient(180deg,#0a181d 0%,#080f19 100%)!important;
    overflow:hidden!important;box-sizing:border-box!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-capture-heading {
    position:absolute!important;z-index:4!important;top:0;left:0;right:0;
    height:65px;min-height:65px;margin:0!important;padding:13px 63px 8px 17px!important;
    display:flex!important;align-items:center!important;
    background:linear-gradient(180deg,rgba(6,20,27,.96),rgba(6,20,27,.56))!important;
    border-bottom:1px solid rgba(102,213,182,.12)!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-capture-heading h3 {
    font-size:17px!important;line-height:1.1!important;margin:0!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-capture-heading .service-pill {
    font-size:9px!important;max-width:155px!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .bw-camera-exit {
    display:grid!important;place-items:center;position:absolute!important;z-index:7!important;
    top:calc(12px + env(safe-area-inset-top,0px));right:14px;
    width:44px;min-width:44px;height:44px;border-radius:13px;
    border:1px solid rgba(125,221,204,.38);
    background:rgba(17,43,51,.9);color:#d5fff3;font-size:29px;
    line-height:1;cursor:pointer;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .capture-stage {
    position:absolute!important;display:block!important;
    top:calc(65px + env(safe-area-inset-top,0px))!important;
    left:9px!important;right:9px!important;bottom:calc(111px + env(safe-area-inset-bottom,0px))!important;
    width:calc(100% - 18px)!important;height:auto!important;
    min-height:0!important;max-height:none!important;
    border-radius:18px!important;border:1px solid #37535d!important;
    background:#09151a!important;overflow:hidden!important;
    box-shadow:inset 0 0 50px #0009,0 0 0 1px rgba(78,226,194,.09)!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .capture-stage video {
    display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .card-guide {
    top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;
    transform:translate(-50%,-50%)!important;
    width:min(72%,290px)!important;max-height:calc(100% - 32px)!important;
    border:2px solid rgba(147,246,218,.92)!important;
    box-shadow:0 0 0 999px rgba(3,10,15,.28),0 0 24px rgba(76,241,198,.22)!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .bw-camera-hud {
    top:12px;left:12px;right:12px;font-size:9px!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-actions {
    position:absolute!important;left:11px!important;right:11px!important;
    bottom:calc(12px + env(safe-area-inset-bottom,0px))!important;
    z-index:5!important;display:grid!important;
    grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)!important;
    align-items:center!important;margin:0!important;padding:8px 10px!important;
    border:1px solid rgba(114,201,187,.35)!important;
    border-radius:20px!important;background:rgba(10,25,31,.98)!important;
    box-shadow:0 -12px 40px #020e16a8!important;
  }
  /* More specific than legacy .scan-ux-camera .scan-actions rules.
     A labelled span is suppressed, rather than leaving the label as a
     second anonymous CSS-grid cell that pushes the shutter disc outside. */
  html body.bw-scan-immersive #scanView.bw-scanner-v2.scan-ux-camera .scan-actions #captureCardBtn {
    display:flex!important;align-items:center!important;justify-content:center!important;
    justify-self:center!important;grid-column:1!important;
    width:74px!important;height:74px!important;min-width:74px!important;min-height:74px!important;
    max-width:74px!important;max-height:74px!important;padding:0!important;margin:0!important;
    border:3px solid #a7ffe4!important;border-radius:50%!important;
    font-size:0!important;line-height:0!important;letter-spacing:0!important;
    color:transparent!important;white-space:nowrap!important;
    background:radial-gradient(circle at 35% 25%,#9dffe1,#56d5b3 74%)!important;
    box-shadow:0 0 0 4px #082c29,0 0 25px rgba(91,243,201,.3)!important;
    transition:transform .13s ease,box-shadow .13s ease!important;
    -webkit-tap-highlight-color:transparent;
  }
  html body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-actions #captureCardBtn .bw-shutter-label {display:none!important;}
  html body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-actions #captureCardBtn .bw-shutter-inner {
    display:block!important;flex:none!important;width:39px!important;height:39px!important;
    border-radius:50%!important;border:3px solid #0c5f52!important;background:#ecfff8!important;
    box-shadow:inset 0 1px 6px rgba(0,0,0,.16)!important;pointer-events:none;
  }
  html body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-actions #captureCardBtn::after {
    content:none!important;display:none!important;
  }
  html body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-actions #captureCardBtn:active {transform:scale(.91)!important;}
  html body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-actions #captureCardBtn:focus-visible {
    outline:3px solid #fff!important;outline-offset:6px!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-gallery-button {
    min-height:51px!important;grid-column:2!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    padding:10px 8px!important;font-size:12px!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 #startCameraBtn,
  body.bw-scan-immersive #scanView.bw-scanner-v2 #identifyCardBtn,
  body.bw-scan-immersive #scanView.bw-scanner-v2 .pokeum-admin-tools,
  body.bw-scan-immersive #scanView.bw-scanner-v2 .crop-tools,
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-privacy {
    display:none!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2.bw-has-tray .capture-stage {
    bottom:calc(200px + env(safe-area-inset-bottom,0px))!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .bw-tray-dock {
    z-index:12050!important;
  }
  body.bw-scan-immersive .bw-tray-dock {
    z-index:12050!important;
    bottom:calc(105px + env(safe-area-inset-bottom,0px))!important;
  }
  /* Card art and collector number must remain unobstructed in live view.
     The top LIVE VIEWFINDER HUD already communicates the frame guidance. */
  body.bw-scan-immersive #scanView.bw-scanner-v2 .capture-stage.camera-active .scan-stage-cta {
    display:none!important;
  }
}
@media (max-width:380px) {
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-capture-heading {
    padding-left:13px!important;padding-right:61px!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-capture-heading .service-pill {font-size:8px!important;max-width:115px!important;}
  html body.bw-scan-immersive #scanView.bw-scanner-v2.scan-ux-camera .scan-actions #captureCardBtn {
    width:66px!important;height:66px!important;min-width:66px!important;min-height:66px!important;
    max-width:66px!important;max-height:66px!important;
  }
  body.bw-scan-immersive #scanView.bw-scanner-v2 .scan-actions {grid-template-columns:1fr 1fr!important;}
}
