.mg-visit-board{display:grid;grid-template-columns:60px minmax(180px,1fr) auto;gap:16px 22px;align-items:center;padding:26px 30px;margin:20px 0;border:1px solid #bdd9f3;border-left:5px solid #ffd128;border-radius:16px;background:linear-gradient(115deg,#fff 40%,#edf6ff);color:#12385e;font-family:inherit}
.mg-visit-bolt{display:grid;place-items:center;width:60px;height:76px;color:#f0b900;background:#fff6d3;border-radius:14px}.mg-visit-bolt svg{width:33px;height:45px}.mg-visit-eyebrow{font-size:.65rem;font-weight:850;letter-spacing:.13em;line-height:1.6}.mg-visit-copy h2{margin:7px 0;font-size:clamp(1.2rem,2.4vw,1.65rem);line-height:1.2}.mg-visit-copy p{margin:0;color:#526b82;font-size:.84rem}.mg-visit-display{display:flex;flex-direction:column;text-align:right;gap:3px}.mg-visit-display>span{font-size:.75rem;font-weight:750}.mg-visit-display>strong{color:#075eb5;font-size:clamp(2.6rem,5vw,4rem);line-height:1.05;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.mg-visit-display>small{font-size:.66rem;color:#526b82}.mg-visit-controls{grid-column:2/-1;display:flex;flex-wrap:wrap;gap:10px}.mg-visit-controls button{padding:9px 13px;border:1px solid #bdd9f3;border-radius:8px;background:white;color:#075eb5;font-family:inherit;font-size:.76rem;font-weight:750;cursor:pointer}.mg-visit-controls button[aria-pressed=true]{background:#e4f4ed;color:#126444;border-color:#a5d3bc}.mg-visit-base{grid-column:1/-1;margin:0;font-size:.7rem;line-height:1.6;color:#526b82}.mg-visit-status:empty{display:none}.mg-visit-status{grid-column:1/-1;font-size:.75rem;color:#126444}
.mg-visit-welcome{position:fixed;inset:0;width:min(500px,calc(100vw - 28px));max-height:calc(100dvh - 32px);margin:auto;padding:34px 30px 26px;overflow:auto;border:1px solid #4294cf;border-radius:24px;background:radial-gradient(ellipse at 50% 18%,#174d80 0,#0b2d51 45%,#07192d 100%);color:white;text-align:center;box-shadow:0 24px 100px #0006;font-family:inherit}.mg-visit-welcome::backdrop{background:#04182bc4;backdrop-filter:blur(5px)}.mg-visit-welcome:not([open]){display:none}.mg-welcome-close{position:absolute;right:13px;top:9px;border:0;background:none;color:#d2e9fc;font-size:1.8rem;cursor:pointer;padding:2px 10px}.mg-welcome-spark{position:relative;display:grid;place-items:center;width:108px;height:108px;margin:0 auto 16px;border:1px solid #56b3f855;border-radius:50%;background:#122f4f;color:#ffd128}.mg-welcome-spark svg{width:46px;height:63px;filter:drop-shadow(0 0 16px #ffd12888)}.mg-visit-welcome[open] .mg-welcome-spark{animation:mg-spark-arrive .8s ease-out both}.mg-welcome-spark>span{position:absolute;inset:-7px;border:1px solid #67c6fc55;border-radius:50%;pointer-events:none}.mg-welcome-spark>span:nth-of-type(2){inset:-16px;opacity:.5}.mg-welcome-spark>span:nth-of-type(3){inset:-26px;opacity:.2}.mg-visit-welcome .mg-visit-eyebrow{color:#a7d8ff}.mg-visit-welcome h2{font-size:clamp(1.6rem,5vw,2.2rem);line-height:1.2;margin:12px 0}.mg-visit-welcome p{font-size:.87rem;line-height:1.5;color:#bbd6ec;margin:12px 0 5px}.mg-welcome-number{display:block;margin:6px 0 10px;color:#ffd128;font-size:clamp(3.6rem,15vw,6.3rem);font-weight:900;font-variant-numeric:tabular-nums;line-height:1;letter-spacing:-.05em;overflow-wrap:anywhere}.mg-visit-welcome p.mg-welcome-thanks{margin:14px 0 22px}.mg-welcome-enter{display:block;width:100%;padding:15px;border:0;border-radius:11px;background:#ffd128;color:#17344f;font-size:.9rem;font-weight:850;cursor:pointer}.mg-welcome-sound{display:block;margin:14px auto;padding:8px 12px;border:1px solid #6394ba55;border-radius:8px;background:transparent;color:#cce7fc;font-size:.8rem;cursor:pointer}.mg-visit-welcome>small{display:block;font-size:.68rem;line-height:1.6;color:#a5c2d9}.mg-visit-board button:focus-visible,.mg-visit-welcome button:focus-visible{outline:3px solid #54b8ff;outline-offset:3px}@keyframes mg-spark-arrive{from{transform:scale(.85);opacity:.35}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.mg-visit-welcome[open] .mg-welcome-spark{animation:none}}@media(max-width:600px){.mg-visit-board{grid-template-columns:42px minmax(0,1fr);padding:19px 16px;gap:15px}.mg-visit-bolt{width:42px;height:55px}.mg-visit-bolt svg{width:25px;height:35px}.mg-visit-eyebrow{font-size:.57rem}.mg-visit-display{grid-column:1/-1;text-align:left;padding-left:57px}.mg-visit-display>strong{font-size:3.5rem}.mg-visit-controls{grid-column:1/-1}.mg-visit-controls button{font-size:.71rem}.mg-visit-welcome{padding:28px 22px 21px}.mg-welcome-spark{width:84px;height:84px}.mg-welcome-spark svg{width:38px;height:51px}}
