/* Isolated UI; no tracking images, fonts or external CSS. */
#rupk-root, #rupk-root * { box-sizing: border-box; }
#rupk-root [hidden], #rupk-root[hidden] { display:none !important; }
#rupk-root { --rupk-bg:var(--rupk-inherited-bg,#fff);--rupk-text:var(--rupk-inherited-text,#15253a);--rupk-accent:#2563eb;--rupk-muted:#556475;--rupk-border:#dce2eb;--rupk-radius:14px;--rupk-shadow:0 20px 60px rgba(8,23,49,.15); font-family:var(--wp--preset--font-family--system-font,inherit);font-size:14px;line-height:1.5; color:var(--rupk-text); }
#rupk-root.rupk-theme-light { --rupk-bg:#fff;--rupk-text:#15253a;--rupk-muted:#58687b;--rupk-border:#dce2eb; }
#rupk-root.rupk-theme-dark { --rupk-bg:#182333;--rupk-text:#f5f7fb;--rupk-muted:#ced8e5;--rupk-border:#516074;--rupk-shadow:0 25px 70px rgba(0,0,0,.42); }
@media (prefers-color-scheme:dark){#rupk-root.rupk-theme-system { --rupk-bg:#182333;--rupk-text:#f5f7fb;--rupk-muted:#ced8e5;--rupk-border:#516074; }}
#rupk-root .rupk-banner,#rupk-root .rupk-preferences { z-index:2147482900; background:var(--rupk-bg);color:var(--rupk-text); border:1px solid var(--rupk-border);box-shadow:var(--rupk-shadow);border-radius:var(--rupk-radius);padding:16px 18px;max-height:min(90dvh,850px);overflow:auto; overscroll-behavior:contain; }
#rupk-root h2 { font-family:inherit;line-height:1.3;color:inherit;font-size:16px;font-weight:700;margin:0 0 6px; }
#rupk-root p { margin:0 0 8px;line-height:1.5;color:inherit;font-size:14px; }
#rupk-root a { color:var(--rupk-accent);text-decoration:underline;text-underline-offset:2px; }
#rupk-root .rupk-links { display:flex;gap:12px;flex-wrap:wrap;font-size:13px;margin-bottom:0; }
#rupk-root .rupk-actions,#rupk-root .rupk-modal-actions { display:flex;flex-wrap:nowrap;gap:8px;align-items:center;border-top:0!important;padding-top:0!important; }
#rupk-root button { font-family:inherit;font-size:12px;line-height:1.3;letter-spacing:0;cursor:pointer;min-height:34px;border-radius:calc(var(--rupk-radius) / 2);border:1px solid var(--rupk-border); padding:8px 12px;color:var(--rupk-text);background:transparent;box-shadow:none;font-weight:600;white-space:nowrap; }
#rupk-root button.rupk-primary { background:var(--rupk-accent);border-color:var(--rupk-accent);color:#fff; }
#rupk-root button:hover { filter:brightness(.94); }
#rupk-root button:focus-visible, #rupk-root input:focus-visible { outline:3px solid #e5a900;outline-offset:3px; }
#rupk-root .rupk-banner { position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));display:flex;align-items:flex-end;justify-content:space-between;gap:16px; }
#rupk-root.rupk-layout-bottom .rupk-banner { left:0;right:0;bottom:0;border-radius:0;padding:14px 24px;max-height:55dvh; }
#rupk-root.rupk-layout-top .rupk-banner { left:0;right:0;top:0;bottom:auto;border-radius:0;padding:14px 24px;max-height:50dvh; }
#rupk-root.rupk-layout-card .rupk-banner { left:auto;right:22px;width: min(480px,calc(100vw - 28px));display:block; }
#rupk-root.rupk-layout-card .rupk-actions { margin-top:10px; }
#rupk-root.rupk-layout-minimal .rupk-banner { left:20px;right:auto;width:min(390px,calc(100vw - 28px));display:block;padding:12px 14px; }
#rupk-root.rupk-layout-minimal .rupk-banner h2 { font-size:15px !important; }
#rupk-root.rupk-layout-minimal .rupk-banner p { font-size:12px !important; }
#rupk-root.rupk-layout-minimal .rupk-actions { gap:6px; }
#rupk-root .rupk-copy { min-width:0; }
#rupk-root .rupk-actions { flex:0 0 auto; }
#rupk-root .rupk-actions button { flex:0 1 auto; min-width:0; }

#rupk-root.rupk-layout-modal .rupk-banner { left:50%;right:auto;top:50%;bottom:auto;width:min(550px,calc(100vw - 28px));transform:translate(-50%,-50%);display:block;box-shadow:0 0 0 200vmax rgba(5,17,35,.33),var(--rupk-shadow); }
#rupk-root.rupk-layout-modal .rupk-actions { margin-top:10px; }
#rupk-root .rupk-preferences { position:fixed;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(550px,calc(100vw - 24px));box-shadow:0 0 0 200vmax rgba(5,17,35,.42),var(--rupk-shadow); }
#rupk-root .rupk-preferences>header { display:flex;justify-content:space-between;gap:12px;align-items:center; }
#rupk-root .rupk-close { min-width:38px;font-size:24px; }
#rupk-root .rupk-pref-row { display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--rupk-border);padding:13px 0;font-size:14px; }
#rupk-root .rupk-pref-row span { display:flex;flex-direction:column; }
#rupk-root .rupk-pref-row small { display:block;color:var(--rupk-muted);font-size:12px;line-height:1.4; }
#rupk-root .rupk-pref-row input { width:20px;height:20px;flex:none;accent-color:var(--rupk-accent); }
#rupk-root .rupk-necessary { color:var(--rupk-muted);font-size:12px;white-space:nowrap; }
#rupk-root .rupk-modal-actions { margin-top:16px;justify-content:flex-end; }
#rupk-root .rupk-floating { position:fixed;z-index:2147482889;bottom:calc(12px + env(safe-area-inset-bottom));left:14px;border-radius:100px!important;background:var(--rupk-bg)!important;box-shadow:0 3px 16px rgba(0,0,0,.14)!important;min-height:36px;padding:7px 13px; }
#rupk-root:not(.rupk-decided) .rupk-floating {display:none;}
@media(max-width:760px) {
  #rupk-root .rupk-banner { display:block;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));padding:14px;max-height:76dvh; }
  #rupk-root.rupk-layout-bottom .rupk-banner,#rupk-root.rupk-layout-top .rupk-banner { padding:12px 14px; max-height:70dvh; }
  #rupk-root .rupk-banner .rupk-actions { margin-top:10px; }
  #rupk-root .rupk-banner button { flex:1 1 0; }
  #rupk-root.rupk-layout-card .rupk-banner {right:8px;width:calc(100vw - 16px);}
  #rupk-root.rupk-layout-minimal .rupk-banner {left:8px;width:calc(100vw - 16px);}
  #rupk-root .rupk-preferences { padding:15px;max-height:92dvh; }
  #rupk-root .rupk-modal-actions button {flex:1 1 130px;}
}
/* beta.7: theme-independent fixed panels and compact cards. */
#rupk-root {
  text-align:left;
  text-transform:none;
  letter-spacing:normal;
  font-style:normal;
}
#rupk-root .rupk-banner,
#rupk-root .rupk-preferences {
  position:fixed !important;
  box-sizing:border-box !important;
  float:none !important;
  clear:both !important;
  margin:0 !important;
  max-width:calc(100vw - 16px);
  min-width:0;
  padding:14px 16px;
  overflow-x:hidden;
  overflow-y:auto;
  transform:none !important;
  background:var(--rupk-bg) !important;
  color:var(--rupk-text) !important;
  border:1px solid var(--rupk-border) !important;
  text-align:left;
  text-transform:none;
  letter-spacing:normal;
  line-height:1.45;
}
#rupk-root .rupk-banner { z-index:2147483000 !important; }
#rupk-root .rupk-preferences { z-index:2147483001 !important; }
#rupk-root .rupk-banner h2,
#rupk-root .rupk-preferences h2 {
  display:block;
  font-size:16px !important;
  font-weight:700 !important;
  letter-spacing:normal !important;
  line-height:1.3 !important;
  text-transform:none !important;
  margin:0 0 6px !important;
  padding:0 !important;
  width:auto;
  max-width:100%;
}
#rupk-root .rupk-banner p {
  font-size:13px !important;
  font-weight:400 !important;
  line-height:1.45 !important;
  letter-spacing:normal !important;
  margin:0 0 8px !important;
  padding:0 !important;
  max-width:100%;
}
#rupk-root .rupk-banner .rupk-links {
  display:flex;
  gap:8px 12px;
  flex-wrap:wrap;
  margin:0 !important;
  line-height:1.4;
}
#rupk-root .rupk-banner .rupk-links a {
  display:inline;
  font-size:12px !important;
  font-weight:400 !important;
  line-height:1.4 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  margin:0 !important;
  padding:0 !important;
  text-decoration:underline !important;
}
#rupk-root .rupk-banner .rupk-actions {
  display:flex !important;
  align-items:center;
  flex-wrap:nowrap !important;
  gap:6px;
  margin:10px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  width:100%;
  max-width:100%;
}
#rupk-root .rupk-banner .rupk-actions button {
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  flex:1 1 0;
  min-width:0 !important;
  width:auto;
  max-width:none;
  min-height:34px !important;
  font-size:12px !important;
  font-weight:600 !important;
  line-height:1.15 !important;
  padding:7px 7px !important;
  margin:0 !important;
  white-space:nowrap;
  text-align:center;
  text-transform:none !important;
  letter-spacing:normal !important;
  border-radius:8px !important;
  border:1px solid var(--rupk-border) !important;
  color:var(--rupk-text) !important;
  background:transparent !important;
  box-shadow:none !important;
}
#rupk-root .rupk-banner .rupk-actions button.rupk-primary {
  color:#fff !important;
  background:var(--rupk-accent) !important;
  border-color:var(--rupk-accent) !important;
}
#rupk-root.rupk-layout-card .rupk-banner {
  left:auto !important;
  right:18px !important;
  top:auto !important;
  bottom:calc(18px + env(safe-area-inset-bottom)) !important;
  width:min(420px,calc(100vw - 36px)) !important;
  display:block;
}
#rupk-root.rupk-layout-minimal .rupk-banner {
  left:18px !important;
  right:auto !important;
  top:auto !important;
  bottom:calc(18px + env(safe-area-inset-bottom)) !important;
  width:min(400px,calc(100vw - 36px)) !important;
  display:block;
  padding:13px 15px;
}
#rupk-root.rupk-layout-minimal .rupk-banner h2 { font-size:15px !important; }
#rupk-root.rupk-layout-minimal .rupk-banner p { font-size:12px !important; }
#rupk-root.rupk-layout-top .rupk-banner {
  top:0 !important;
  bottom:auto !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  max-width:100vw;
  border-radius:0;
}
#rupk-root.rupk-layout-bottom .rupk-banner {
  top:auto !important;
  bottom:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  max-width:100vw;
  border-radius:0;
}
#rupk-root.rupk-layout-top .rupk-banner .rupk-actions,
#rupk-root.rupk-layout-bottom .rupk-banner .rupk-actions {
  width:auto;
  flex:0 1 auto;
  margin:0 !important;
}
#rupk-root.rupk-layout-top .rupk-banner .rupk-actions button,
#rupk-root.rupk-layout-bottom .rupk-banner .rupk-actions button { flex:0 0 auto; padding-inline:12px; }
#rupk-root.rupk-layout-modal .rupk-banner {
  top:50% !important;
  left:50% !important;
  bottom:auto !important;
  right:auto !important;
  width:min(480px,calc(100vw - 28px)) !important;
  transform:translate(-50%,-50%) !important;
}
#rupk-root .rupk-preferences {
  top:50% !important;
  left:50% !important;
  bottom:auto !important;
  right:auto !important;
  width:min(520px,calc(100vw - 24px)) !important;
  transform:translate(-50%,-50%) !important;
}
/* Neutralize global theme header/footer rules inside the preferences dialog. */
#rupk-root .rupk-preferences > header,
#rupk-root .rupk-preferences > footer {
  position:static !important;
  height:auto !important;
  width:auto !important;
  min-height:0 !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  transform:none !important;
  background:transparent !important;
  color:var(--rupk-text) !important;
  border:0 !important;
  box-shadow:none !important;
}
#rupk-root .rupk-preferences > header { display:flex !important; align-items:center; justify-content:space-between; gap:10px; }
#rupk-root .rupk-preferences > footer.rupk-modal-actions {
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin-top:14px !important;
}
@media(max-width:760px) {
  #rupk-root.rupk-layout-top .rupk-banner,
  #rupk-root.rupk-layout-bottom .rupk-banner {display:block;}
  #rupk-root.rupk-layout-top .rupk-banner .rupk-actions,
  #rupk-root.rupk-layout-bottom .rupk-banner .rupk-actions {width:100%;margin-top:10px !important;}
  #rupk-root.rupk-layout-top .rupk-banner .rupk-actions button,
  #rupk-root.rupk-layout-bottom .rupk-banner .rupk-actions button {flex:1 1 0;padding-inline:6px;}
  #rupk-root.rupk-layout-card .rupk-banner,
  #rupk-root.rupk-layout-minimal .rupk-banner {
    left:8px !important;
    right:8px !important;
    bottom:calc(8px + env(safe-area-inset-bottom)) !important;
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px);
  }
}
@media(max-width:365px) {
  #rupk-root .rupk-banner {padding:12px 11px;}
  #rupk-root .rupk-banner .rupk-actions button {font-size:11px !important;padding-inline:4px !important;}
  #rupk-root .rupk-banner .rupk-actions {gap:4px;}
  #rupk-root .rupk-banner .rupk-links a {font-size:11px;}
}

@media(prefers-reduced-motion:reduce){#rupk-root *,#rupk-root *:before,#rupk-root *:after {animation:none!important;transition:none!important;}}

/* Browser-settings information notice: not a consent mechanism. */
#rupk-root.rupk-layout-notice .rupk-banner{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));top:auto;display:flex;max-width:870px;width:calc(100vw - 32px);margin:0 auto;padding:12px 44px 12px 16px;gap:8px;align-items:center;box-shadow:var(--rupk-shadow);}
#rupk-root.rupk-layout-notice .rupk-banner .rupk-copy{width:100%;}
#rupk-root.rupk-layout-notice .rupk-banner p{margin:0;font-size:13px;line-height:1.55;}
#rupk-root.rupk-layout-notice .rupk-banner .rupk-actions{display:none!important;}
#rupk-root .rupk-notice-close{display:none;}
#rupk-root.rupk-layout-notice .rupk-notice-close{display:flex!important;position:absolute;right:8px;top:8px;width:30px;min-width:30px;min-height:30px;height:30px;align-items:center;justify-content:center;border:0!important;background:transparent!important;font-size:20px;line-height:1;color:var(--rupk-muted)!important;box-shadow:none!important;padding:0!important;border-radius:8px;}
#rupk-root.rupk-layout-notice .rupk-notice-close:hover{background:var(--rupk-border)!important;}
#rupk-root .rupk-preview-notice{display:none;}
#rupk-root.rupk-layout-notice .rupk-preview-notice{display:block;}
#rupk-root.rupk-layout-notice .rupk-preview-regular{display:none;}
@media(max-width:760px){#rupk-root.rupk-layout-notice .rupk-banner{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));width:calc(100vw - 16px);padding:12px 42px 12px 13px;max-height:55dvh;}}

/* Public Beta 1.0.0-beta.10: genuine micro layout with a single consent action. */
#rupk-root.rupk-layout-micro .rupk-banner{left:12px!important;right:12px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;top:auto!important;position:fixed;display:flex;align-items:center;justify-content:space-between;flex-direction:row;gap:14px;width:calc(100vw - 24px);max-width:none;padding:10px 12px;border-radius:12px;min-height:54px;}
#rupk-root.rupk-layout-micro .rupk-banner .rupk-copy{min-width:0;flex:1 1 auto;}
#rupk-root.rupk-layout-micro .rupk-banner p{font-size:12px;line-height:1.45;margin:0;}
#rupk-root.rupk-layout-micro .rupk-banner .rupk-actions{display:none!important;}
#rupk-root .rupk-micro-accept{display:none;}
#rupk-root.rupk-layout-micro .rupk-micro-accept{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:75px;min-height:34px;background:#101010!important;color:#fff!important;border:0!important;border-radius:7px;font-size:12px;font-weight:700;padding:8px 14px;}
#rupk-root .rupk-preview-micro{display:none;}
#rupk-root.rupk-layout-micro .rupk-preview-micro{display:block;}
#rupk-root.rupk-layout-micro .rupk-preview-regular,#rupk-root.rupk-layout-micro .rupk-preview-notice{display:none;}
@media(max-width:540px){#rupk-root.rupk-layout-micro .rupk-banner{left:7px!important;right:7px!important;bottom:calc(7px + env(safe-area-inset-bottom))!important;width:calc(100vw - 14px);gap:9px;padding:10px;}#rupk-root.rupk-layout-micro .rupk-banner p{font-size:11px;line-height:1.38;}#rupk-root.rupk-layout-micro .rupk-micro-accept{padding:7px 9px;min-width:65px;}}
