/* MiKO News L6 — QR + Data Matrix camera button and private scanning dialog.
 * Loaded after existing lottery CSS to keep the compact search bar intact.
 */
.miko-results #miko-lottery-checker .miko-checker-controls {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(80px,112px) minmax(120px,205px)!important;
  align-items:stretch!important;gap:8px!important;
  width:100%!important;max-width:100%!important;min-width:0!important;
}
.miko-results #miko-lottery-checker .miko-checker-controls>input{
  min-width:0!important;width:100%!important;grid-column:1!important;
}
.miko-results #miko-lottery-checker .miko-checker-controls>button[type="submit"]{
  width:100%!important;grid-column:3!important;min-width:0!important;
}
.miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger{
  appearance:none!important;-webkit-appearance:none!important;
  position:relative!important;grid-column:2!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  width:100%!important;min-width:0!important;max-width:100%!important;
  height:48px!important;min-height:48px!important;max-height:none!important;
  margin:0!important;padding:9px 11px!important;
  border:1.5px solid #9fcaf5!important;border-radius:12px!important;
  background:linear-gradient(135deg,#eff7ff,#fff 65%,#fff1f9)!important;
  box-shadow:0 4px 13px rgba(36,99,175,.085)!important;
  color:#165b9c!important;-webkit-text-fill-color:#165b9c!important;
  font:900 12px/1.4 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  letter-spacing:0!important;opacity:1!important;visibility:visible!important;
  white-space:nowrap!important;cursor:pointer!important;
  transition:background .2s ease,box-shadow .2s ease,transform .2s ease!important
}
.miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger svg{
  display:block!important;width:21px!important;height:21px!important;flex:0 0 21px!important;
  stroke:#196eaf!important;stroke-width:1.9px!important;stroke-linecap:round!important;stroke-linejoin:round!important;
  fill:none!important;opacity:1!important
}
.miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger span{
  display:inline!important;color:#165b9c!important;-webkit-text-fill-color:#165b9c!important;
  font-size:12px!important;font-weight:900!important
}
.miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger:hover{
  transform:translateY(-2px)!important;border-color:#57a7ed!important;
  background:linear-gradient(125deg,#e3f2ff,#fff5fb)!important;
  box-shadow:0 8px 20px rgba(30,103,185,.16)!important
}
.miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger:focus-visible{
  outline:3px solid #5faefa!important;outline-offset:2px!important
}
/* Dialog resides on body to avoid clipped cameras and overlapped article UI. */
body.miko-scan-open {overflow:hidden!important}
body>.miko-lotto-scan-modal[hidden]{display:none!important}
body>.miko-lotto-scan-modal:not([hidden]){
  position:fixed!important;inset:0!important;z-index:2147483400!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  margin:0!important;padding:20px!important;
  overflow-y:auto!important;overscroll-behavior:contain;
  color:#183b69;font-family:"Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif
}
body>.miko-lotto-scan-modal,
body>.miko-lotto-scan-modal *{box-sizing:border-box}
body>.miko-lotto-scan-modal .miko-lotto-scan-shade{
  position:fixed!important;inset:0!important;background:rgba(9,25,55,.66)!important;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:0!important
}
body>.miko-lotto-scan-modal .miko-lotto-scan-panel{
  position:relative!important;z-index:1!important;isolation:isolate;
  flex:0 1 500px!important;width:min(100%,500px)!important;min-width:0!important;
  max-height:calc(100dvh - 40px)!important;overflow-y:auto!important;
  padding:19px 20px 17px!important;margin:auto!important;border-radius:24px!important;
  background:linear-gradient(165deg,#f4faff,#fff 45%,#fff4fb)!important;
  border:1.5px solid #ccdef6!important;
  box-shadow:0 26px 80px rgba(1,24,67,.27),0 0 0 3px rgba(255,255,255,.12)!important;
  text-align:center!important;outline:none
}
body>.miko-lotto-scan-modal .miko-lotto-scan-head{
  display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0
}
body>.miko-lotto-scan-modal .miko-lotto-scan-brand{
  display:inline-flex;gap:7px;align-items:center;flex-wrap:wrap;
  color:#2376bd;font-size:10px;font-weight:950;letter-spacing:.065em;text-align:left
}
body>.miko-lotto-scan-modal .miko-lotto-scan-brand b{color:#dd2a81;font-size:10px}
body>.miko-lotto-scan-modal button{appearance:none;-webkit-appearance:none;cursor:pointer;font-family:inherit}
body>.miko-lotto-scan-modal button:focus-visible,
body>.miko-lotto-scan-modal select:focus-visible{outline:3px solid #63b0fb!important;outline-offset:2px}
body>.miko-lotto-scan-modal .miko-lotto-scan-close{
  display:grid;place-items:center;flex:0 0 35px;width:35px;height:35px;
  border-radius:11px;border:1px solid #cce1f6;background:#f2f8ff;
  color:#1d5792;padding:7px;box-shadow:0 3px 9px rgba(37,99,162,.07)
}
body>.miko-lotto-scan-modal .miko-lotto-scan-close svg,
body>.miko-lotto-scan-modal .miko-lotto-scan-photo svg,
body>.miko-lotto-scan-modal .miko-lotto-scan-confirm svg,
body>.miko-lotto-scan-modal .miko-lotto-scan-emblem svg{
  display:block;width:21px;height:21px;stroke:currentColor;stroke-width:1.9px;
  stroke-linecap:round;stroke-linejoin:round;fill:none
}
body>.miko-lotto-scan-modal .miko-lotto-scan-heading{margin:7px 0 14px}
body>.miko-lotto-scan-modal .miko-lotto-scan-emblem{
  display:grid;place-items:center;width:47px;height:47px;margin:0 auto 8px;
  border-radius:16px;background:linear-gradient(130deg,#d8ecff,#ffe3f4);
  color:#1671ba;box-shadow:0 4px 13px rgba(39,105,190,.10)
}
body>.miko-lotto-scan-modal .miko-lotto-scan-emblem svg{width:27px;height:27px}
body>.miko-lotto-scan-modal .miko-lotto-scan-heading h2{
  margin:0 0 5px!important;color:#183c6d!important;
  font-size:clamp(21px,4.5vw,28px)!important;font-weight:950!important;line-height:1.4!important
}
body>.miko-lotto-scan-modal .miko-lotto-scan-heading h2 em{color:#e72c87;font-style:normal}
body>.miko-lotto-scan-modal .miko-lotto-scan-heading p{
  margin:0!important;color:#627f9c!important;font-size:12px!important;line-height:1.65!important
}
body>.miko-lotto-scan-modal .miko-lotto-scan-window{
  position:relative;overflow:hidden;isolation:isolate;min-height:235px;max-height:330px;
  border-radius:17px;border:2px solid #b7d9f8;
  background:linear-gradient(145deg,#1d426d,#0d2144);
  box-shadow:inset 0 0 25px rgba(5,24,62,.33),0 7px 23px rgba(41,91,164,.13)
}
body>.miko-lotto-scan-modal .miko-lotto-scan-reader{
  position:relative;z-index:1;width:100%!important;height:100%!important;
  min-height:235px;max-height:330px;overflow:hidden
}
body>.miko-lotto-scan-modal .miko-lotto-scan-reader video{
  width:100%!important;height:100%!important;min-height:235px!important;
  max-height:330px!important;object-fit:cover!important;border-radius:15px!important
}
body>.miko-lotto-scan-modal .miko-lotto-scan-frame{
  position:absolute;z-index:3;inset:12% 18%;pointer-events:none;opacity:.84
}
body>.miko-lotto-scan-modal .miko-lotto-scan-frame span{
  position:absolute;width:31px;height:31px;border-color:#77e6fb;border-style:solid;
  filter:drop-shadow(0 1px 4px rgba(0,14,45,.4))
}
body>.miko-lotto-scan-modal .miko-lotto-scan-frame span:nth-child(1){top:0;left:0;border-width:3px 0 0 3px;border-radius:12px 0 0 0}
body>.miko-lotto-scan-modal .miko-lotto-scan-frame span:nth-child(2){top:0;right:0;border-width:3px 3px 0 0;border-radius:0 12px 0 0}
body>.miko-lotto-scan-modal .miko-lotto-scan-frame span:nth-child(3){bottom:0;right:0;border-width:0 3px 3px 0;border-radius:0 0 12px 0}
body>.miko-lotto-scan-modal .miko-lotto-scan-frame span:nth-child(4){bottom:0;left:0;border-width:0 0 3px 3px;border-radius:0 0 0 12px}
body>.miko-lotto-scan-modal .miko-lotto-scan-wait{
  position:absolute;z-index:2;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:11px;color:#dcefff;text-align:center;font-size:12px;line-height:1.6;
  background:radial-gradient(circle at 50% 40%,rgba(76,138,206,.2),transparent 60%)
}
body>.miko-lotto-scan-modal .miko-lotto-scan-wait-icon{
  display:grid;place-items:center;width:63px;height:63px;border:1px solid #79c5ff;
  border-radius:20px;background:rgba(255,255,255,.12);font-size:40px;color:#a9ecff
}
body>.miko-lotto-scan-modal.is-reading .miko-lotto-scan-wait{display:none}
body>.miko-lotto-scan-modal.has-ticket .miko-lotto-scan-window{display:none}
body>.miko-lotto-scan-modal .miko-lotto-scan-info{
  display:block;padding:10px 13px;margin:12px 0!important;min-height:40px;
  border:1px solid #cae4f3;background:#eff9ff;border-radius:12px;
  color:#245d91;font-size:12px;line-height:1.6;text-align:center;font-weight:750
}
body>.miko-lotto-scan-modal .miko-lotto-scan-info.is-error{
  color:#8c5a39;background:#fff7ec;border-color:#ebd7b8
}
body>.miko-lotto-scan-modal .miko-lotto-scan-found[hidden],
body>.miko-lotto-scan-modal .miko-lotto-scan-retry[hidden]{display:none!important}
body>.miko-lotto-scan-modal .miko-lotto-scan-found{
  padding:16px;border:1px solid #c1e5d8;border-radius:16px;
  background:linear-gradient(140deg,#f1fff8,#f9fdff 65%,#fff4fb)
}
body>.miko-lotto-scan-modal .miko-lotto-scan-found-label{color:#257f63;font-size:13px;font-weight:900}
body>.miko-lotto-scan-modal .miko-lotto-scan-found-number{
  display:block;margin:5px 0 13px;color:#1c5093;
  font:950 clamp(32px,9vw,51px)/1.25 "Poppins",Tahoma,sans-serif;
  letter-spacing:.08em;font-variant-numeric:tabular-nums
}
body>.miko-lotto-scan-modal .miko-lotto-scan-found label{
  display:block;text-align:left;color:#37618d;font-size:11px;font-weight:900;margin-bottom:5px
}
body>.miko-lotto-scan-modal .miko-lotto-scan-draw{
  display:block;width:100%;max-width:100%;min-height:43px;padding:8px 12px;
  background:#fff;border:1px solid #b4d6f7;border-radius:10px;
  font:800 12px/1.5 "Noto Sans Thai",Tahoma,sans-serif;color:#1d4b80
}
body>.miko-lotto-scan-modal .miko-lotto-scan-warning{
  margin:9px 0!important;color:#597795!important;text-align:left;
  font-size:11px!important;line-height:1.7!important
}
body>.miko-lotto-scan-modal .miko-lotto-scan-confirm{
  display:flex;align-items:center;justify-content:center;gap:7px;
  min-height:47px;width:100%;margin-top:10px;padding:11px 16px;
  border:1px solid #df267c;border-radius:12px;
  background:linear-gradient(112deg,#fa4aa0,#e91e79);color:#fff;font-size:13px;font-weight:900;
  box-shadow:0 6px 17px rgba(232,33,123,.2)
}
body>.miko-lotto-scan-modal .miko-lotto-scan-actions{
  display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:10px
}
body>.miko-lotto-scan-modal .miko-lotto-scan-photo,
body>.miko-lotto-scan-modal .miko-lotto-scan-retry{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:11px 15px;min-height:43px;border:1px solid #b5d5f5;border-radius:12px;
  background:#f1f8ff;color:#215a92;font-size:12px;font-weight:900
}
body>.miko-lotto-scan-modal .miko-lotto-scan-retry{
  border-color:#f5bad8;background:#fff1f8;color:#ba2875
}
body>.miko-lotto-scan-modal .miko-lotto-scan-privacy{
  margin-top:14px;padding-top:12px;border-top:1px solid #e3eaf3;
  color:#7184a0;font-size:10px;line-height:1.65;text-align:center
}
@media(max-width:790px){
 .miko-results #miko-lottery-checker .miko-checker-controls{
   grid-template-columns:minmax(0,1fr) minmax(58px,92px) minmax(115px,160px)!important;
 }
}
@media(max-width:540px){
 .miko-results #miko-lottery-checker .miko-checker-controls{
   grid-template-columns:minmax(0,1fr) 49px minmax(105px,132px)!important;gap:6px!important
 }
 .miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger{
   height:45px!important;min-height:45px!important;padding:9px!important;border-radius:11px!important
 }
 .miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger span{
   position:absolute!important;width:1px!important;height:1px!important;
   overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important
 }
 .miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger svg{
   width:22px!important;height:22px!important;flex-basis:22px!important
 }
 body>.miko-lotto-scan-modal:not([hidden]){padding:10px!important}
 body>.miko-lotto-scan-modal .miko-lotto-scan-panel{
   width:100%!important;max-height:calc(100dvh - 20px)!important;
   border-radius:19px!important;padding:15px 13px 14px!important
 }
 body>.miko-lotto-scan-modal .miko-lotto-scan-window,
 body>.miko-lotto-scan-modal .miko-lotto-scan-reader{min-height:205px!important;max-height:290px}
 body>.miko-lotto-scan-modal .miko-lotto-scan-reader video{min-height:205px!important;max-height:290px!important}
}
@media(max-width:355px){
 .miko-results #miko-lottery-checker .miko-checker-controls{
   grid-template-columns:minmax(0,1fr) 45px minmax(101px,110px)!important;gap:5px!important
 }
 .miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger{
   padding:7px!important
 }
 .miko-results #miko-lottery-checker .miko-checker-controls>button[type="submit"]{
   font-size:11px!important;gap:5px!important;padding-inline:7px!important
 }
}
@media(max-width:295px){
 .miko-results #miko-lottery-checker .miko-checker-controls{
   grid-template-columns:minmax(0,1fr) 44px!important;gap:6px!important
 }
 .miko-results #miko-lottery-checker .miko-checker-controls>button[type="submit"]{
   grid-column:1/-1!important
 }
}
@media(prefers-reduced-motion:reduce){
 .miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger{transition:none!important}
 .miko-results #miko-lottery-checker .miko-checker-controls>button.miko-lotto-scan-trigger:hover{transform:none!important}
}

/* MiKO News Lottery Scan — Premium, single-frame mockup implementation.
 * Scoped to the scanner dialog; preserve scanner and original checking logic.
 */
body > #miko-lotto-scan-modal .miko-lotto-scan-panel {
  position:relative!important;
  isolation:isolate!important;
  flex:0 1 500px!important;
  width:min(100%,500px)!important;
  max-width:500px!important;
  max-height:calc(100dvh - 28px)!important;
  min-width:0!important;
  margin:auto!important;
  padding:18px 20px 17px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  border:1.5px solid rgba(181,213,249,.98)!important;
  border-radius:26px!important;
  background:
    radial-gradient(ellipse 88% 34% at 99% 1%,rgba(175,217,255,.47),transparent 84%),
    radial-gradient(ellipse 80% 32% at 105% 104%,rgba(255,196,236,.36),transparent 87%),
    linear-gradient(155deg,#f2f9ff 0%,#fff 53%,#fff6fb 100%)!important;
  box-shadow:0 24px 72px rgba(6,27,66,.33),0 0 0 3px rgba(217,238,255,.13),0 0 25px rgba(64,173,246,.14)!important;
  text-align:center!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-panel::before {
  content:"";position:absolute;top:0;left:-16%;width:128%;height:138px;
  border-radius:0 0 55% 42% / 0 0 75% 75%;
  background:linear-gradient(120deg,rgba(194,227,255,.38),rgba(245,252,255,.06) 60%,rgba(255,199,239,.28));
  pointer-events:none;z-index:0;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-panel > :not(.miko-lotto-scan-mascot) {
  position:relative;z-index:1;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-head {
  display:flex!important;justify-content:space-between!important;
  align-items:center!important;gap:10px!important;min-height:39px!important;
  margin:0!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-brand {
  display:inline-flex!important;align-items:center!important;
  flex-wrap:wrap!important;gap:6px!important;
  color:#173b78!important;
  font:900 11px/1.4 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  letter-spacing:.045em!important;text-align:left!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-brand b {
  color:#ee217c!important;font-size:11px!important;font-weight:850!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-close {
  appearance:none!important;-webkit-appearance:none!important;
  display:grid!important;place-items:center!important;
  flex:0 0 41px!important;width:41px!important;height:41px!important;
  margin:0!important;padding:9px!important;
  border:1.5px solid #aad2fb!important;border-radius:13px!important;
  background:linear-gradient(150deg,#e7f4ff,#f7fbff)!important;
  color:#193f77!important;-webkit-text-fill-color:#193f77!important;
  box-shadow:0 5px 12px rgba(42,127,208,.13)!important;
  opacity:1!important;visibility:visible!important;
  filter:none!important;transition:background .2s,transform .2s!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-close svg {
  display:block!important;width:22px!important;height:22px!important;
  color:#193f77!important;opacity:1!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-close svg path {
  stroke:#193f77!important;stroke-width:2.5px!important;
  stroke-linecap:round!important;fill:none!important;opacity:1!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-close:hover {
  background:#d9edff!important;transform:translateY(-1px)!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-heading {
  margin:3px 0 14px!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-emblem {
  display:grid!important;place-items:center!important;
  width:54px!important;height:54px!important;
  margin:0 auto 8px!important;
  border:1px solid rgba(255,255,255,.8)!important;
  border-radius:17px!important;
  background:linear-gradient(130deg,#d9eeff 0%,#e9ebff 55%,#ffe0f2 100%)!important;
  box-shadow:0 7px 17px rgba(46,130,209,.14),0 3px 7px rgba(228,69,153,.07)!important;
  color:#086cb9!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-emblem svg {
  display:block!important;width:28px!important;height:28px!important;
  stroke:#126dc3!important;stroke-width:1.9px!important;
  fill:none!important;opacity:1!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-heading h2 {
  margin:0 0 4px!important;
  color:#133b75!important;
  font:950 clamp(21px,4.8vw,27px)/1.35 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  letter-spacing:-.027em!important;
  text-wrap:balance!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-heading h2 em {
  color:#ed2180!important;font-style:normal!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-heading p {
  margin:0!important;
  color:#5b7394!important;
  font:650 12px/1.6 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  text-wrap:balance!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-heading p strong {
  color:#4e6b93!important;font-weight:800!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-window {
  position:relative!important;isolation:isolate!important;
  width:100%!important;height:clamp(220px,35dvh,284px)!important;
  min-height:0!important;max-height:none!important;
  overflow:hidden!important;
  border:2px solid #37c8fb!important;border-radius:18px!important;
  background:#02060e!important;
  box-shadow:0 0 0 2px rgba(99,213,255,.12),0 8px 22px rgba(24,112,211,.19),inset 0 0 8px rgba(31,151,238,.11)!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-reader {
  position:absolute!important;z-index:1!important;
  inset:0!important;
  display:block!important;width:100%!important;height:100%!important;
  min-height:0!important;max-height:none!important;
  overflow:hidden!important;border:0!important;border-radius:16px!important;
  background:transparent!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-reader video {
  display:block!important;width:100%!important;height:100%!important;
  min-height:0!important;max-height:none!important;
  object-fit:cover!important;
  border-radius:16px!important;
}
/* html5-qrcode inserts its own QR shading / corner marks. Hide that VISUAL
 * overlay so there is exactly one guide — the four corner marks below.
 * Decoding, camera video and image processing are not changed. */
body > #miko-lotto-scan-modal #qr-shaded-region,
body > #miko-lotto-scan-modal #miko-lotto-camera-reader #qr-shaded-region,
body > #miko-lotto-scan-modal #miko-lotto-camera-reader__dashboard {
  display:none!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-frame {
  display:block!important;position:absolute!important;z-index:4!important;
  inset:12% 20%!important;
  pointer-events:none!important;opacity:1!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-frame span {
  position:absolute!important;display:block!important;
  width:40px!important;height:40px!important;
  border-color:#7deefa!important;border-style:solid!important;
  filter:drop-shadow(0 0 5px rgba(79,238,255,.22))!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-frame span:nth-child(1) {
  top:0;left:0;border-width:4px 0 0 4px!important;border-radius:12px 0 0 0!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-frame span:nth-child(2) {
  top:0;right:0;border-width:4px 4px 0 0!important;border-radius:0 12px 0 0!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-frame span:nth-child(3) {
  right:0;bottom:0;border-width:0 4px 4px 0!important;border-radius:0 0 12px 0!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-frame span:nth-child(4) {
  left:0;bottom:0;border-width:0 0 4px 4px!important;border-radius:0 0 0 12px!important;
}
/* When the device has no usable camera, the status strip below explains it;
 * leave the lens black and keep the targeting guides visually uncluttered. */
body > #miko-lotto-scan-modal .miko-lotto-scan-wait {
  position:absolute!important;z-index:2!important;
  inset:0!important;
  display:flex!important;align-items:center!important;
  justify-content:flex-end!important;flex-direction:column!important;
  padding:12px!important;gap:3px!important;
  background:transparent!important;color:#b3d9f5!important;
  pointer-events:none!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-wait-icon,
body > #miko-lotto-scan-modal .miko-lotto-scan-wait strong {
  display:none!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-wait span:last-child {
  max-width:90%!important;
  color:rgba(195,229,252,.82)!important;
  font-size:10.5px!important;line-height:1.4!important;
  font-weight:600!important;text-shadow:0 1px 5px rgba(0,0,0,.8);
}
body > #miko-lotto-scan-modal.is-camera-ready .miko-lotto-scan-wait {
  display:none!important;
}
body > #miko-lotto-scan-modal.is-reading:not(.is-camera-ready) .miko-lotto-scan-wait {
  display:flex!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-info {
  display:flex!important;justify-content:center!important;align-items:center!important;
  gap:10px!important;width:100%!important;min-height:48px!important;
  margin:12px 0!important;padding:10px 13px!important;
  border:1px solid #badfff!important;border-radius:17px!important;
  background:linear-gradient(105deg,#e8f5ff,#f2faff)!important;
  color:#184b83!important;
  font:800 11.7px/1.55 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  text-align:center!important;box-shadow:0 2px 8px rgba(28,111,188,.035)!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-info::before {
  content:"";display:block;flex:0 0 9px!important;
  width:9px!important;height:9px!important;border-radius:50%;
  background:#068ce5!important;
  box-shadow:0 0 0 4px rgba(17,143,235,.14)!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-info.is-error {
  color:#915122!important;background:#fff6ed!important;border-color:#f0d0ad!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-info.is-error::before {
  background:#ef9b38!important;box-shadow:0 0 0 4px rgba(239,155,56,.13)!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-actions {
  display:grid!important;grid-template-columns:1fr!important;
  gap:9px!important;width:100%!important;margin:0!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-actions .miko-lotto-scan-photo {
  appearance:none!important;-webkit-appearance:none!important;
  display:inline-flex!important;justify-content:center!important;align-items:center!important;
  gap:11px!important;width:100%!important;min-width:0!important;
  min-height:54px!important;margin:0!important;padding:13px 18px!important;
  border:1.5px solid #1394eb!important;border-radius:16px!important;
  background:
    radial-gradient(ellipse 63% 120% at 101% -15%,rgba(34,234,255,.55),transparent 75%),
    linear-gradient(110deg,#0fb7ed 0%,#096fdc 35%,#0753bb 68%,#077def 100%)!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  font:900 16px/1.3 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  text-shadow:0 1px 2px rgba(0,45,107,.22)!important;
  opacity:1!important;visibility:visible!important;filter:none!important;
  box-shadow:0 9px 19px rgba(11,102,210,.25),inset 0 1px 0 rgba(255,255,255,.35)!important;
  cursor:pointer!important;
  transition:transform .2s ease,filter .2s ease,box-shadow .2s ease!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-photo svg {
  display:block!important;flex:0 0 24px!important;
  width:24px!important;height:24px!important;opacity:1!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-photo svg path,
body > #miko-lotto-scan-modal .miko-lotto-scan-photo svg circle {
  fill:none!important;stroke:#fff!important;stroke-width:2.1px!important;
  stroke-linejoin:round!important;stroke-linecap:round!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-photo span {
  color:#fff!important;-webkit-text-fill-color:#fff!important;
  font:inherit!important;opacity:1!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-photo:hover {
  filter:brightness(1.07)!important;transform:translateY(-2px)!important;
  box-shadow:0 12px 24px rgba(11,102,210,.32)!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-actions .miko-lotto-scan-retry {
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:8px!important;width:100%!important;min-height:44px!important;
  margin:0!important;padding:10px 13px!important;
  border:1.5px solid #f2b5d4!important;border-radius:13px!important;
  background:#fff2f9!important;color:#af286e!important;
  -webkit-text-fill-color:#af286e!important;
  font:850 12.5px/1.4 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  opacity:1!important;visibility:visible!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-retry[hidden] {
  display:none!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-retry svg {
  display:block!important;flex:0 0 19px!important;
  width:19px!important;height:19px!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-retry svg path {
  fill:none!important;stroke:#af286e!important;stroke-width:2!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-confirm {
  min-height:49px!important;
  background:linear-gradient(115deg,#f53690,#d81b6f)!important;
  border:1.5px solid #d81b6f!important;
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-confirm svg path {
  stroke:#fff!important;fill:none!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-close:focus-visible,
body > #miko-lotto-scan-modal .miko-lotto-scan-actions button:focus-visible,
body > #miko-lotto-scan-modal .miko-lotto-scan-confirm:focus-visible {
  outline:3px solid #5cb7f8!important;outline-offset:3px!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-privacy {
  display:flex!important;justify-content:center!important;align-items:flex-start!important;
  gap:8px!important;width:100%!important;
  margin-top:16px!important;padding:13px 4px 0!important;
  border-top:1px solid #d9e6f5!important;
  color:#6e819c!important;
  font:600 9.8px/1.6 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  text-align:left!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-privacy span {
  color:#6b7e99!important;max-width:100%!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-lock {
  display:block!important;flex:0 0 17px!important;
  width:17px!important;height:17px!important;
  fill:none!important;stroke:#ff9d22!important;stroke-width:2px!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-lock rect,
body > #miko-lotto-scan-modal .miko-lotto-scan-lock path {
  stroke:#ff9d22!important;fill:none!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-mascot {
  position:absolute!important;z-index:0!important;
  right:12px;bottom:36px;width:90px;height:55px;
  background:url("../images/miko-lotto-mascots.svg") center/contain no-repeat;
  opacity:.09!important;filter:saturate(.75)!important;
  pointer-events:none!important;
}
@media(max-width:540px){
  body > #miko-lotto-scan-modal:not([hidden]) {padding:9px!important;}
  body > #miko-lotto-scan-modal .miko-lotto-scan-panel {
    width:100%!important;max-height:calc(100dvh - 18px)!important;
    padding:14px 15px 13px!important;border-radius:21px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-brand {
    font-size:9.5px!important;gap:5px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-brand b {font-size:9.5px!important;}
  body > #miko-lotto-scan-modal .miko-lotto-scan-heading {
    margin:4px 0 12px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-emblem {
    width:49px!important;height:49px!important;margin-bottom:7px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-heading h2 {
    font-size:clamp(20px,5.3vw,24px)!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-heading p {
    font-size:11px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-window {
    height:clamp(210px,35dvh,260px)!important;border-radius:15px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-frame {
    inset:12% 19%!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-info {
    min-height:46px!important;margin:10px 0!important;
    padding:10px!important;font-size:11px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-photo {
    min-height:51px!important;font-size:15px!important;border-radius:13px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-privacy {
    margin-top:12px!important;padding-top:10px!important;
    font-size:9px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-mascot {
    right:12px;bottom:32px;width:76px;height:46px;opacity:.075!important;
  }
}
@media(max-width:355px){
  body > #miko-lotto-scan-modal .miko-lotto-scan-brand {font-size:8.5px!important;}
  body > #miko-lotto-scan-modal .miko-lotto-scan-brand b {font-size:8.5px!important;}
  body > #miko-lotto-scan-modal .miko-lotto-scan-heading h2 {
    font-size:19px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-window {
    height:clamp(184px,32dvh,225px)!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-frame span {
    width:32px!important;height:32px!important;
  }
}
@media(max-height:650px) and (max-width:540px){
  body > #miko-lotto-scan-modal .miko-lotto-scan-heading {
    margin:2px 0 9px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-window {
    height:clamp(174px,31dvh,220px)!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-info {
    min-height:40px!important;padding:7px 9px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  body > #miko-lotto-scan-modal button {transition:none!important;transform:none!important;}
}

/* Full-photo charity lottery support: always let the visitor review the
 * six printed digits. This field is intentionally easy to edit on mobile. */
/* Fast camera controls: small, visible, optional. Unsupported torch is hidden.
 * The live video and a single set of QR targeting corners remain unchanged. */
body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools {
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  flex-wrap:wrap!important;
  padding:8px 0 0!important;
  margin:0!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools[hidden],
body > #miko-lotto-scan-modal .miko-lotto-scan-torch[hidden] {
  display:none!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools button {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  min-width:114px!important;
  min-height:35px!important;
  padding:7px 12px!important;
  margin:0!important;
  border:1px solid #b4d8f5!important;
  border-radius:999px!important;
  background:#f0f8ff!important;
  color:#20558b!important;
  -webkit-text-fill-color:#20558b!important;
  font:800 11px/1.35 "Noto Sans Thai",Tahoma,sans-serif!important;
  opacity:1!important;
  box-shadow:0 2px 7px rgba(25,89,160,.06)!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools button[aria-pressed="true"] {
  background:#dcefff!important;border-color:#71b7fa!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools svg {
  display:block!important;width:17px!important;height:17px!important;
  stroke:#20558b!important;stroke-width:1.9px!important;
  fill:none!important;opacity:1!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools svg path,
body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools svg rect {
  stroke:#20558b!important;fill:none!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools button:focus-visible {
  outline:3px solid #60b4f5!important;outline-offset:2px!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-reader video.miko-lotto-native-video {
  display:block!important;position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;
  object-fit:cover!important;background:#030d1c!important;
}
/* Make the guidance concise: no second oversized box on the camera feed. */
body > #miko-lotto-scan-modal.is-camera-ready .miko-lotto-scan-wait {
  display:none!important;
}
@media(max-width:540px){
  body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools {
    padding-top:6px!important;gap:7px!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-camera-tools button{
    min-height:34px!important;min-width:110px!important;
    font-size:10.5px!important;
  }
}
body > #miko-lotto-scan-modal .miko-lotto-scan-number-label {
  display:block!important;
  margin:4px 0 8px!important;
  text-align:center!important;
  color:#315d91!important;
  font:850 12px/1.5 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
}
body > #miko-lotto-scan-modal input.miko-lotto-scan-found-number {
  appearance:none!important;-webkit-appearance:none!important;
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;max-width:100%!important;
  min-width:0!important;
  margin:0!important;padding:9px 12px!important;
  border:2px solid #98c9f7!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#164d93!important;-webkit-text-fill-color:#164d93!important;
  box-shadow:0 4px 15px rgba(18,95,180,.07)!important;
  font:950 clamp(29px,7vw,43px)/1.3 "Poppins",Tahoma,sans-serif!important;
  letter-spacing:.15em!important;
  font-variant-numeric:tabular-nums!important;
  text-align:center!important;
  opacity:1!important;
}
body > #miko-lotto-scan-modal input.miko-lotto-scan-found-number:focus {
  outline:3px solid rgba(64,169,246,.33)!important;
  outline-offset:2px!important;
  border-color:#238bec!important;
}
body > #miko-lotto-scan-modal input.miko-lotto-scan-found-number::placeholder {
  color:#aac1da!important;-webkit-text-fill-color:#aac1da!important;
  opacity:1!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-edit-note {
  margin:7px 0 12px!important;
  padding:0!important;
  color:#6e8097!important;
  font:700 11px/1.55 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  text-align:center!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-actions .miko-lotto-scan-manual {
  appearance:none!important;-webkit-appearance:none!important;
  display:inline-flex!important;
  justify-content:center!important;align-items:center!important;
  min-height:39px!important;width:100%!important;
  padding:8px 12px!important;margin:0!important;
  border:1px solid transparent!important;border-radius:10px!important;
  background:transparent!important;
  color:#356ba3!important;-webkit-text-fill-color:#356ba3!important;
  font:850 12px/1.4 "Noto Sans Thai","Leelawadee UI",Tahoma,sans-serif!important;
  text-decoration:underline!important;text-underline-offset:3px!important;
  cursor:pointer!important;box-shadow:none!important;
  opacity:1!important;visibility:visible!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-actions .miko-lotto-scan-manual:hover {
  color:#125591!important;-webkit-text-fill-color:#125591!important;
  background:#f2f8ff!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-actions .miko-lotto-scan-manual:focus-visible {
  outline:3px solid #63aff7!important;outline-offset:2px!important;
}
body > #miko-lotto-scan-modal .miko-lotto-scan-found[hidden] {display:none!important;}
body > #miko-lotto-scan-modal.has-ticket .miko-lotto-scan-found {
  display:block!important;
}
@media(max-width:540px){
  body > #miko-lotto-scan-modal input.miko-lotto-scan-found-number{
    font-size:clamp(28px,8.5vw,39px)!important;
    padding:10px 8px!important;
    letter-spacing:.11em!important;
  }
  body > #miko-lotto-scan-modal .miko-lotto-scan-number-label{
    font-size:11.5px!important;
  }
}


