/* OrmioPixel banner (visitor side). Everything is scoped to .opx-*; colours come from CSS variables set by front.js. */
.opx-cb,.opx-cb *{box-sizing:border-box}
.opx-cb{position:fixed;inset:0;z-index:2147483000;display:flex;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:15px;line-height:1.5;color:var(--opx-text);pointer-events:none}
.opx-cb.opx-preview{position:absolute;z-index:1}
.opx-backdrop{position:absolute;inset:0;background:rgba(12,26,79,.45);pointer-events:auto}
.opx-card{position:relative;pointer-events:auto;background:var(--opx-bg);color:var(--opx-text);border-radius:var(--opx-radius);box-shadow:0 18px 60px rgba(12,26,79,.35);padding:24px;max-height:calc(100% - 32px);overflow:auto;width:min(480px,calc(100% - 32px));margin:auto}
.opx-card:focus{outline:none}
.opx-logo{display:block;max-width:96px;max-height:64px;object-fit:contain;margin:0 auto 12px}
.opx-title{margin:0 0 8px;font-size:19px;font-weight:700;line-height:1.3;color:var(--opx-text)}
.opx-desc{margin:0 0 14px;color:var(--opx-text)}
.opx-desc p{margin:0 0 8px}.opx-desc a,.opx-links a{color:var(--opx-link);text-decoration:underline}
.opx-links{margin:0 0 14px;font-size:13.5px}
.opx-details{margin:0 0 14px;border-top:1px solid rgba(23,32,63,.15)}
.opx-details[hidden]{display:none}
.opx-cat{padding:10px 0;border-bottom:1px solid rgba(23,32,63,.15)}
.opx-cat label{display:flex;align-items:center;gap:10px;font-weight:650;cursor:pointer}
.opx-cat input{width:18px;height:18px;flex:none;margin:0;accent-color:var(--opx-accept)}
.opx-cat .opx-always{margin-left:auto;font-size:12px;font-weight:600;opacity:.7}
.opx-cat p{margin:4px 0 0 28px;font-size:13px;opacity:.85}
.opx-actions{display:flex;gap:10px;flex-wrap:wrap}
.opx-btn{flex:1 1 120px;min-height:44px;padding:10px 16px;border-radius:calc(var(--opx-radius) - 4px);border:2px solid transparent;font:inherit;font-weight:650;cursor:pointer;text-align:center;line-height:1.2}
.opx-btn:focus-visible,.opx-icon:focus-visible,.opx-link:focus-visible{outline:3px solid #2fb1ff;outline-offset:2px}
.opx-accept{background:var(--opx-accept);color:var(--opx-accept-text);border-color:var(--opx-accept)}
.opx-reject{background:var(--opx-reject);color:var(--opx-reject-text);border-color:var(--opx-reject)}
.opx-settings{background:transparent;color:var(--opx-settings);border-color:var(--opx-settings)}
.opx-save{background:var(--opx-accept);color:var(--opx-accept-text);border-color:var(--opx-accept)}
/* layouts */
.opx-l-popup .opx-card,.opx-l-popup_large .opx-card{margin:auto}
.opx-l-popup_large .opx-card{width:min(720px,calc(100% - 32px));padding:32px}
.opx-l-box_left .opx-card{margin:auto auto 16px 16px;width:min(420px,calc(100% - 32px))}
.opx-l-box_right .opx-card{margin:auto 16px 16px auto;width:min(420px,calc(100% - 32px))}
.opx-l-bar_bottom .opx-card,.opx-l-bar_top .opx-card{width:100%;max-width:none;margin:0;border-radius:0;padding:18px 24px;display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.opx-l-bar_bottom{align-items:flex-end}.opx-l-bar_top{align-items:flex-start}
.opx-l-bar_bottom .opx-body,.opx-l-bar_top .opx-body{flex:1 1 420px;min-width:0}
.opx-l-bar_bottom .opx-actions,.opx-l-bar_top .opx-actions{flex:0 1 auto}
.opx-l-bar_bottom .opx-btn,.opx-l-bar_top .opx-btn{flex:0 1 auto;min-width:130px}
.opx-l-bar_bottom .opx-logo,.opx-l-bar_top .opx-logo{margin:0}
.opx-l-fullpage .opx-card{width:100%;max-width:none;height:100%;max-height:none;margin:0;border-radius:0;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}
.opx-l-fullpage .opx-body{max-width:640px;width:100%}
.opx-l-fullpage .opx-details{text-align:left}
.opx-cb.opx-preview.opx-l-bar_top{align-items:flex-start}
/* animation */
@media (prefers-reduced-motion:no-preference){
.opx-a-fade .opx-card,.opx-a-fade .opx-backdrop{animation:opx-fade .25s ease-out}
.opx-a-slide .opx-card{animation:opx-slide .3s ease-out}
.opx-a-slide .opx-backdrop{animation:opx-fade .25s ease-out}
}
@keyframes opx-fade{from{opacity:0}to{opacity:1}}
@keyframes opx-slide{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
/* the round icon that opens the choice again */
.opx-icon{position:fixed;bottom:16px;z-index:2147482999;width:48px;height:48px;border-radius:50%;border:0;background:var(--opx-accept,#1f5fd1);color:var(--opx-accept-text,#fff);box-shadow:0 6px 20px rgba(12,26,79,.35);cursor:pointer;display:grid;place-items:center;padding:0}
.opx-icon svg{width:26px;height:26px}
.opx-icon.opx-pos-bottom_left{left:16px}.opx-icon.opx-pos-bottom_right{right:16px}
.opx-icon[hidden]{display:none}
.opx-link{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}
@media (max-width:520px){.opx-card{padding:18px}.opx-btn{flex:1 1 100%}}

/* notice in place of a blocked embed */
.opx-ph{box-sizing:border-box;width:100%;max-width:100%;display:flex;align-items:center;justify-content:center;background:#eef1f8;color:#17203f;border:1px solid #d5dcec;border-radius:12px;padding:16px;text-align:center;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;overflow:hidden}
.opx-ph-in{max-width:520px}
.opx-ph p{margin:0 0 10px}
.opx-ph-b{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}
.opx-ph .opx-btn{border:0;border-radius:10px;padding:9px 16px;font:600 14px/1.2 inherit;font-family:inherit;cursor:pointer;background:#1f5fd1;color:#fff}
.opx-ph .opx-ph-allow{background:#fff;color:#1f5fd1;border:1px solid #1f5fd1}
.opx-ph-p{font-size:12px;opacity:.85}.opx-ph-p a{color:inherit}
iframe[data-op-src][hidden]{display:none}

/* the attribute "hidden" must win over every display rule above (a closed banner, hidden buttons and details) */
.opx-cb[hidden],.opx-cb [hidden],.opx-icon[hidden]{display:none!important}
