/* Non-modal service agreement: browsing is always available. */
:root{--choice-banner-height:0px}
.visit-choice-banner[hidden]{display:none!important}
.visit-choice-banner{position:fixed;inset:auto 0 0;z-index:95;margin:0;border-top:1px solid #2b719e;background:#04182b;color:#eef8ff;box-shadow:0 -12px 42px #0005;padding:18px max(20px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));font:14px/1.55 Arial,sans-serif;text-align:left;max-height:55dvh;overflow:auto}
.visit-choice-inner{width:min(1320px,100%);margin:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px}
.visit-choice-banner h2{font:700 19px/1.3 Arial,sans-serif;letter-spacing:normal;margin:0 0 7px;color:#fff}
.visit-choice-banner p{margin:0;color:#d4e4f0;max-width:1000px}
.visit-choice-banner .visit-choice-note{font-size:12px;line-height:1.5;color:#b5cddd;margin-top:8px}
.visit-choice-banner a{color:#79ddff;text-decoration:underline;text-underline-offset:3px}
.visit-choice-buttons{display:flex;gap:10px}
.visit-choice-buttons button{min-width:106px;min-height:46px;padding:12px 18px;border:1px solid #4390ba;border-radius:9px;background:#076fae;color:white;font:700 14px/1.3 Arial,sans-serif;cursor:pointer;white-space:nowrap}
.visit-choice-buttons button[data-policy-action="disagree"]{background:#0b2942}
.visit-choice-buttons button:focus-visible,.visit-choice-review button:focus-visible{outline:3px solid #88e6ff;outline-offset:3px}
.visit-choice-review{padding:20px;text-align:center;font:14px/1.5 Arial,sans-serif}
.visit-choice-review button{border:1px solid #2d6488;border-radius:8px;padding:11px 16px;background:#08243c;color:#c5eeff;cursor:pointer;font:inherit;min-height:44px}
.visit-choice-status{color:#b8cddd;margin:10px auto 0;font-size:13px}
.visit-choice-status:empty{display:none}
body.has-choice-banner{padding-bottom:var(--choice-banner-height)}
.has-choice-banner .floating-wa{bottom:calc(var(--choice-banner-height) + 18px)}
.has-choice-banner .ai-launch{bottom:calc(var(--choice-banner-height) + 81px)}
.has-choice-banner .ai-panel{z-index:96}
@media(max-width:800px){
 .visit-choice-banner{padding:15px 16px max(15px,env(safe-area-inset-bottom))}
 .visit-choice-inner{grid-template-columns:minmax(0,1fr);gap:12px}
 .visit-choice-buttons{display:grid;grid-template-columns:1fr 1fr}
 .visit-choice-banner h2{font-size:17px}
 .visit-choice-banner{font-size:13px}
 .visit-choice-banner .visit-choice-note{font-size:12px}
}
@media print{.visit-choice-banner,.visit-choice-review{display:none!important}body.has-choice-banner{padding-bottom:0!important}}
