/* Invisible region over Gary only. No scene geometry or background changes. */
#quickMart #garyHotspot,#quickMart #garyHotspot:hover,#quickMart #garyHotspot:active,#quickMart #garyHotspot:focus,#quickMart #garyHotspot:focus-visible{position:absolute;left:38.2%;top:19.5%;width:14.2%;height:26%;clip-path:polygon(30% 0,67% 0,76% 31%,100% 96%,83% 100%,63% 75%,4% 80%,0 53%,20% 28%);appearance:none;-webkit-appearance:none;border:0;border-radius:0;padding:0;margin:0;background:transparent;box-shadow:none;outline:0;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
#quickMart #garyHotspot::before,#quickMart #garyHotspot::after{content:none}
#garyDialogue{position:fixed;inset:auto auto auto 50%;transform:translateX(-50%);margin:0;width:620px;max-width:calc(100vw - 24px);max-height:55dvh;overflow:auto;padding:12px 18px;color:#f5f0e4;background:rgba(17,22,25,.9);border:1px solid #ffffff20;border-radius:3px;box-shadow:0 3px 18px #0005;font:14px/1.5 'Libre Franklin',Arial,sans-serif}
#garyDialogue::backdrop{background:transparent}
#garyDialogue header{display:flex;align-items:center;justify-content:space-between;gap:12px}
#garyDialogue h2{font-size:10px;letter-spacing:.15em;margin:0;color:#dcc89b}
#garyDialogue nav{display:flex;gap:8px}
#garyDialogue button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:none;border:0;box-shadow:none}
#garyDialogue header button,#garyContinue{font-size:11px;padding:7px 8px;min-height:36px;color:#c7c6bf}
#garyDialogue button:disabled{opacity:.65;cursor:default}
#garySpeaker{display:block;font-size:9px;letter-spacing:.12em;color:#c2b18e;margin-top:3px}
#garyLine{margin:4px 0 3px;line-height:1.6;text-shadow:0 1px 2px #000}
#garyContinue{display:block;margin-left:auto}
#garyChoices{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;border-top:1px solid #ffffff20;margin-top:10px;padding-top:5px}
#garyChoices button{text-align:left;font-size:12px;line-height:1.5;min-height:44px;padding:8px 0;color:#ded9cb}
#garyChoices button:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
#garyDialogue button:focus-visible{outline:1px solid #dfcca5;outline-offset:1px}
#garyDialogue [hidden]{display:none}
@media(max-width:600px){#garyDialogue{padding:10px 14px;font-size:13px}#garyChoices{grid-template-columns:1fr}#garyDialogue header button,#garyContinue{min-height:44px}}
