.visitor-discount{box-sizing:border-box;width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;padding:32px;border:1px solid #4d4320;border-radius:24px;background:#151515;color:#f5f3eb;box-shadow:0 24px 100px #0008;font:16px/1.6 system-ui,sans-serif}
.visitor-discount::backdrop{background:rgba(0,0,0,.7);backdrop-filter:blur(4px)}
.visitor-discount-close{position:absolute;top:10px;right:16px;background:none;border:0;color:#ddd;font-size:30px;cursor:pointer}
.visitor-discount-kicker{display:block;color:#ffd000;font-size:13px;font-weight:700;margin:8px 24px 12px 0}
.visitor-discount h2{font-size:30px;line-height:1.2;letter-spacing:-.8px;color:#fff;margin:0 0 14px;font-weight:800}
.visitor-discount p,.visitor-discount li{color:#c8c6bd;font-size:14px}.visitor-discount label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:1px}
.visitor-discount-code-row{display:flex;gap:8px;padding:10px;background:#222;border:1px dashed #8f7826;border-radius:12px;margin-top:8px}
.visitor-discount-code-row input{min-width:0;width:100%;border:0;background:transparent;color:#ffd000;font:bold 22px/1.3 monospace;letter-spacing:2px}
.visitor-discount-code-row button,.visitor-discount-book{flex-shrink:0;border:0;border-radius:8px;background:#ffd000;color:#111;padding:10px 14px;font-weight:750;cursor:pointer;text-decoration:none}
.visitor-discount-status{min-height:22px;margin:5px 0 12px}.visitor-discount h3{font-size:16px;color:#fff;font-weight:750}.visitor-discount ol,.visitor-discount ul{padding-left:22px;margin:10px 0 18px}.visitor-discount li{margin-bottom:5px}
.visitor-discount details{border-top:1px solid #383838;padding:12px 0 8px;font-size:14px}.visitor-discount summary{cursor:pointer;color:#eee;font-weight:650}.visitor-discount details p{margin-bottom:8px}
.visitor-discount-book{display:block;text-align:center;margin-top:12px}.visitor-discount-later{display:block;width:100%;border:0;background:none;color:#c8c6bd;font-size:14px;padding:12px;cursor:pointer}
.visitor-discount :focus-visible{outline:2px solid #ffd000;outline-offset:3px}
@media(max-width:400px){.visitor-discount{padding:24px}.visitor-discount h2{font-size:25px}.visitor-discount-code-row{flex-wrap:wrap}.visitor-discount-code-row input{padding:6px 0}.visitor-discount-code-row button{width:100%}}
